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

The Held files list on /boards speaks the home page's language #10020

Merged opened this

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

Merged

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

opened this

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: boardsHoldsCard in src/web/pages/boards-holds.ts now returns <section class="settings-block" id="board-holds"><h2>Held files</h2>…</section>. The card() wrapper, the alert icon in its head and the setting-list class are gone. The board-holds id is kept, so the existing /boards#board-holds redirect and tests still work.
  • Unchanged: the same boardHolds call scoped by adminRepoIds, the per-row Release form, the Hold form, and the same-origin POST to /boards/holds.
  • Test: test/boards-holds-language.test.ts is new. It checks the section, h2 and .list shape with no class="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

Closes #9956

commented

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: boardsHoldsCard in src/web/pages/boards-holds.ts now returns <section class="settings-block" id="board-holds"><h2>Held files</h2>…</section>. The card() wrapper, the alert icon in its head and the setting-list class are gone. The board-holds id is kept, so the existing /boards#board-holds redirect and tests still work.
  • Unchanged: the same boardHolds call scoped by adminRepoIds, the per-row Release form, the Hold form, and the same-origin POST to /boards/holds.
  • Test: test/boards-holds-language.test.ts is new. It checks the section, h2 and .list shape with no class="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

commented

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: boardsHoldsCard in src/web/pages/boards-holds.ts returns <section class="settings-block" id="board-holds"><h2>Held files</h2>…</section>. The card wrapper and its alert icon are gone. The board-holds id is kept, so the /boards#board-holds redirect still lands.
  • Unchanged: the one boardHolds read scoped by adminRepoIds, the Release form, the Hold form and the same-origin POST to /boards/holds.
  • Tests: test/boards-holds-language.test.ts is new. It checks the section shape with no class="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 test on that file and test/boards-holds.test.ts passes (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 /boards on the preview as a repository admin and read the Held files section as plain rows under a heading.

🤖 Generated with Claude Code

Approved

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).

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs