Public: anyone can read this; the crew can change it.
The Held files list on /boards speaks the home page's language #10020
Check · Review · Land · Live done — Landed and live in production.
The Held files list on `/boards` is now a plain section under an `h2`, with its rows in a `.list`, instead of a card. I ran `bun test` on the two holds test files only (15 pass), plus `tsc --noEmit`, `scripts/design-lint.ts` and `scripts/gate.ts`; none reported a problem. I did not run the full suite; the forge runs it on the push.
shipped production is serving it deploy 9e8c29c
The Held files list on /boards is now a plain section under an h2, with its rows in a .list, instead of a card. I ran bun test on the two holds test files only (15 pass), plus tsc --noEmit, scripts/design-lint.ts and scripts/gate.ts; none reported a problem. I did not run the full suite; the forge runs it on the push.
- What moved:
boardsHoldsCardinsrc/web/pages/boards-holds.tsnow returns<section class="settings-block" id="board-holds"><h2>Held files</h2>…</section>. Thecard()wrapper, the alert icon in its head and thesetting-listclass are gone. Theboard-holdsid is kept, so the existing/boards#board-holdsredirect and tests still work. - Unchanged: the same
boardHoldscall scoped byadminRepoIds, the per-row Release form, the Hold form, and the same-origin POST to/boards/holds. - Test:
test/boards-holds-language.test.tsis new. It checks the section,h2and.listshape with noclass="card, and that the Release form is present. It also checks that a private repository's hold shows to its admin and not to another member. Run against the old code, the shape test fails; with the change it passes. - Not done: no new component class, so nothing was added under
docs/design/areas/. - Try it: sign in as a repository admin and open
/boards.
🤖 Generated with Claude Code
The Held files list on /boards is now a plain section under an h2, with its rows in a .list, not a card. The check on #10020 failed only because no commit had a Try: line. I added an empty commit carrying one and pushed it without rewriting history. bun scripts/gate.ts passes locally; the forge's check has not yet rerun on this push.
- What changed:
boardsHoldsCardinsrc/web/pages/boards-holds.tsreturns<section class="settings-block" id="board-holds"><h2>Held files</h2>…</section>. The card wrapper and its alert icon are gone. Theboard-holdsid is kept, so the/boards#board-holdsredirect still lands. - Unchanged: the one
boardHoldsread scoped byadminRepoIds, the Release form, the Hold form and the same-origin POST to/boards/holds. - Tests:
test/boards-holds-language.test.tsis new. It checks the section shape with noclass="card, and that a private repository's hold shows to its admin and not to another member. With the page change stashed, its shape test fails.bun teston that file andtest/boards-holds.test.tspasses (15 tests). - Not done: no new component class, so nothing was added under
docs/design/areas/. I ran only those two test files, not the full suite. - Try: open
/boardson the preview as a repository admin and read the Held files section as plain rows under a heading.
🤖 Generated with Claude Code
Clean. The section uses the existing settings-block and list components, with an h2 and rows, no card, and no new class. The scoped adminRepoIds read, the Release and Hold forms and the same-origin POST are unchanged. The tests cover the shape and the private-hold scoping. Minor, not blocking: the function is still named boardsHoldsCard. I could not view the preview /boards page past login (303).
The Held files list on
/boardsis now a plain section under anh2, with its rows in a.list, instead of a card. I ranbun teston the two holds test files only (15 pass), plustsc --noEmit,scripts/design-lint.tsandscripts/gate.ts; none reported a problem. I did not run the full suite; the forge runs it on the push.boardsHoldsCardinsrc/web/pages/boards-holds.tsnow returns<section class="settings-block" id="board-holds"><h2>Held files</h2>…</section>. Thecard()wrapper, the alert icon in its head and thesetting-listclass are gone. Theboard-holdsid is kept, so the existing/boards#board-holdsredirect and tests still work.boardHoldscall scoped byadminRepoIds, the per-row Release form, the Hold form, and the same-origin POST to/boards/holds.test/boards-holds-language.test.tsis new. It checks the section,h2and.listshape with noclass="card, and that the Release form is present. It also checks that a private repository's hold shows to its admin and not to another member. Run against the old code, the shape test fails; with the change it passes.docs/design/areas/./boards.🤖 Generated with Claude Code
Closes #9956