This is the testing home for Katomia. New here? The strip below is the live pulse — one chip per test, green/red, greyed if it only runs on demand. Below it, four sections in the order you'll actually ask the questions: is it working, what do we test, when did it break, and how testing works here. What we don't test is stated plainly at the bottom — this page should never look like more coverage than it is.
Current health, one screen per area. Testnet runs constantly (free — "does the logic work"); mainnet runs daily at real cost ("is it true with real money") — a testnet-green/mainnet-red split is information, not a duplicate.
pilot (the sign job in katui.yml): the built modal is driven in a real browser and every reason the backend's precheck can refuse a transaction — a fungible or HBAR shortfall, a missing association, an NFT the sender no longer holds — must ring the right card red, mark the chip, and explain itself in the card's detail; the header must never stay on "Ready to submit". Added after 2026-09-06, when an unowned serial left every card green. qa/sign/run.mjs · fixture-driven, no networkpilot (the board job in katui.yml): the built board is driven in a real browser over the demo reducer; the Round Table must still render its ring, hub, chip census and uniform counter bands, and the Carousel (nerd-mode skin, ?skin=carousel) must render its two stripes and centre strip, land a real drag in the basket via the amount modal, count down a pending signing in the centre, and run and stop its conveyor. Added with CAROUSEL1 (2026-09-07) so a second board shape cannot break the first. qa/board/run.mjs · demo fixture, no networkEvery test id resolves here: what it asserts, step by step, how to run it, what a failure means. If an id isn't in the index, it doesn't exist.
History: verdicts against commits, so a regression points at the change that caused it.
The process and its reasoning. The first two are current practice; the rest is planning material — it describes ambition, not coverage.
Admin area. These pages are development scaffolding.
Nothing here is secret — every page under qa/ is static and readable by anyone who has the
URL — so treat this as a signpost, not a lock. The one page that holds real data, Feedback,
is gated server-side by an account signature and shows nothing without it.
Rule of this page: every page under qa/ is linked from here, or it does
not exist. Data lives in qa/data/ (git-tracked); pages only display it. All testing —
cron, scripted, manual — reports the same test:start/test:verdict kflow
language. Home reorganised 2026-08-14 (QA-REORG1).