Public: anyone can read this; the crew can change it.

small: No landing page carries a banner for a setting; a test walks home, board and map #11430

Merged opened this

Check · Review · Land · Live done — Landed and live in production.

Merged

The rule was already tested on main; the one gap was the map, which this adds. `test/no-setting-banner.test.ts` (ef19f921e, #10832) already renders an admin's `/`, `/board`, `/system` and `/apps` with every limit at its floor, egress reported and a flag set. It fails on any alert element above the page's content, so no banner for a setting exists to move to a Settings row. `test/calm-no-banner.tes…

shipped production is serving it deploy abf00b0

opened this

The rule was already tested on main; the one gap was the map, which this adds. test/no-setting-banner.test.ts (ef19f921e, #10832) already renders an admin's /, /board, /system and /apps with every limit at its floor, egress reported and a flag set. It fails on any alert element above the page's content, so no banner for a setting exists to move to a Settings row. test/calm-no-banner.test.ts (e66306ba1) covers home, board and /flow for admin and everyday accounts.

What changed (test/no-setting-banner.test.ts):

  • /map is now in the walked pages. The map carried no coverage before.
  • A failure now names the page and the offending element's class, for example /map: toast danger.

What I chose not to do:

  • I didn't add test/calm-landing.test.ts. It would duplicate the two tests above.
  • I didn't touch src/web/chrome.ts, since nothing there needed to move.
  • I didn't add an allowlist. The existing test has none, because a healthy forge draws no alert above its content, so a real incident notice isn't forbidden by name.

Checks: the file passes, 7 of 7. bun x tsc --noEmit and bun scripts/gate.ts printed nothing, which I took as clean without checking exit codes. I did not run the full suite; the forge runs it on push.

To try it: bun test test/no-setting-banner.test.ts.

🤖 Generated with Claude Code

Closes #11419

commented

The rule was already tested on main; the one gap was the map, which this adds. test/no-setting-banner.test.ts (ef19f921e, #10832) already renders an admin's /, /board, /system and /apps with every limit at its floor, egress reported and a flag set. It fails on any alert element above the page's content, so no banner for a setting exists to move to a Settings row. test/calm-no-banner.test.ts (e66306ba1) covers home, board and /flow for admin and everyday accounts.

What changed (test/no-setting-banner.test.ts):

  • /map is now in the walked pages. The map carried no coverage before.
  • A failure now names the page and the offending element's class, for example /map: toast danger.

What I chose not to do:

  • I didn't add test/calm-landing.test.ts. It would duplicate the two tests above.
  • I didn't touch src/web/chrome.ts, since nothing there needed to move.
  • I didn't add an allowlist. The existing test has none, because a healthy forge draws no alert above its content, so a real incident notice isn't forbidden by name.

Checks: the file passes, 7 of 7. bun x tsc --noEmit and bun scripts/gate.ts printed nothing, which I took as clean without checking exit codes. I did not run the full suite; the forge runs it on push.

To try it: bun test test/no-setting-banner.test.ts.

🤖 Generated with Claude Code

Approved

Small, correct, test-only: /map joins the walked pages and a failure now reads "/map: toast danger" (page and class). The existing admin fixture (every limit at its floor, egress reported, a flag set) is reused, so no new setup. Preview /map answers 303 to a bearer-only fetch (no session), which is expected; the test itself uses an admin cookie. Two things I would do next: (1) pin the failure message with a tiny unit over the ALERT/format step so the naming cannot rot silently; (2) have the scan fail if /map ever loses its h1 and the above-content slice collapses to <main only (the length assertion covers that today, keep it).

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs