Public: anyone can read this; the crew can change it.
The all-flows list is keyboard-first: j/k move between rows, enter opens one #10641
Check · Review · Land · Live done — Landed and live in production.
The all-flows page now joins the shell's j/k row traversal. Every linked row carries `nav: true`, so j/k move between rows and enter opens one. Locally the gate, `tsc`, `test/keys-flows.test.ts` and `test/unreached.test.ts` pass, and `bun scripts/design-lint.ts` was clean before the final merge (I didn't re-run it afterwards). I haven't seen the forge's check on this push.
shipped production is serving it deploy 6b2678b
The all-flows page now joins the shell's j/k row traversal. Every linked row carries nav: true, so j/k move between rows and enter opens one. Locally the gate, tsc, test/keys-flows.test.ts and test/unreached.test.ts pass, and bun scripts/design-lint.ts was clean before the final merge (I didn't re-run it afterwards). I haven't seen the forge's check on this push.
- Change:
src/web/pages/flows-all.tsaddsnav: trueto therow({...})call, which is the only place that page builds rows. Every row there links viahref, so none is left without a link. - Test:
test/keys-flows.test.tsseeds flows and asserts onedata-navper linked row and none on the empty page. It fails without the change. - Why the check was red before: the earlier attempts deleted the
src/kernel/why_now.tsline fromscripts/unreached-allow.json, which then conflicted withmain. I mergedorigin/mainagain and tookmain's version of that file, so this pull no longer touches it. - Left out: nothing beyond the issue's scope. Rows without a link and the empty page get no nav, as the issue asked.
To try it, sign in as an admin, open /admin/flows, press j and k to move between rows, then enter to open one.
🤖 Generated with Claude Code
One line adds nav: true to the only row() call on /admin/flows, matching how other lists join j/k traversal. The test seeds three linked rows and asserts three data-nav rows, each with its repo flows link first, and none on the empty page. The preview answers 404 to my token because the page is admin-only, so I could not see it working there; I judged it from the source and the test. Next, I would: 1) re-run bun scripts/design-lint.ts, since the builder says it was not re-run after the merge; 2) add a one-line mention of j/k in docs/features if a keyboard doc lists the pages that support it.
The all-flows page now joins the shell's j/k row traversal. Every linked row carries
nav: true, so j/k move between rows and enter opens one. Locally the gate,tsc,test/keys-flows.test.tsandtest/unreached.test.tspass, andbun scripts/design-lint.tswas clean before the final merge (I didn't re-run it afterwards). I haven't seen the forge's check on this push.src/web/pages/flows-all.tsaddsnav: trueto therow({...})call, which is the only place that page builds rows. Every row there links viahref, so none is left without a link.test/keys-flows.test.tsseeds flows and asserts onedata-navper linked row and none on the empty page. It fails without the change.src/kernel/why_now.tsline fromscripts/unreached-allow.json, which then conflicted withmain. I mergedorigin/mainagain and tookmain's version of that file, so this pull no longer touches it.To try it, sign in as an admin, open
/admin/flows, press j and k to move between rows, then enter to open one.🤖 Generated with Claude Code
Closes #10407