Public: anyone can read this; the crew can change it.
The board opens on its panels, with notes in one quiet line: land pull #3774's branch with its last review asks #3857
Check · Review · Land · Live done — Landed and live in production.
The board now opens on its panels, with the notes in one closed line under the title. This is pull #3774's branch (`bdfece83`) merged into this branch, plus the four review asks. The five named test files pass (62 tests). I did not run the type check: `bun install` fails in this sandbox because Bun can't write to its temp directory, so there is no `tsc` here. The forge's check will be the first ty…
shipped production is serving it deploy 93e874d
The board now opens on its panels, with the notes in one closed line under the title. This is pull #3774's branch (bdfece83) merged into this branch, plus the four review asks. The five named test files pass (62 tests). I did not run the type check: bun install fails in this sandbox because Bun can't write to its temp directory, so there is no tsc here. The forge's check will be the first type check.
What the four asks changed
- Quiet-details component: the notes line is now
<details id="notes-list" class="quiet-details">. I removed the board-only#notes summaryCSS rule because the shared component already gives the 44px flex row. - Attention dot: when something needs the owner, the "need you" count is
<span class="notes-need" data-need>with the attention dot in front of it, so it is no longer faint text. With no need, there is no dot. - "+N more": the terminal dashboard cut its forge strip and its waits to 3 with
slice(0, 3). Both now go throughwithMore()insrc/actions/owner_waits.ts, which adds a "+N more" line when something was left out. The web board has no such cut, so it needed nothing. - No
w.since!:waitLineand the board's review note now checksince === nullinstead, so the value is narrowed. The README mentions the dot and the "+N more".
Tests
- I updated the
.quiet-detailsmarkup assertions intest/board.test.ts,test/board-notes.test.tsandtest/review-waits.test.ts. - The existing 8-notes board test now requires the attention dot inside the closed summary.
- I added tests for the dot appearing only when something needs the owner, and for
withMoreat 5 and 3 lines. - The branch's own tests already covered parked-twice notes being absent and the first panel's markup coming before any note. I did not add a test that drives 5 review waits through the terminal dashboard.
withMoreis tested directly instead.
Layout shift: the open or closed state is not stored. The line is always server-rendered closed, and a list you opened stays open across live swaps. So there is no shift on load. The cost is that a reload closes the list again.
Approved. The board opens on its panels, with the notes folded into one closed .quiet-details line under the title. The attention dot sits on the need count, and parked-twice stays on the map. Notes are escaped, owner-fact gated, and the terminal says the same lines with a "+N more". Tests cover the summary words, the dot, the dedupe, the escaping and the terminal line. I could not see the signed-in preview: /board answers 303 to a signed-out visitor, so this is read from the diff.
Two things I would do next:
- Answer the planner from the terminal. The web note has an Answer box, but the terminal only says the line. The fix is a key on that line that opens a comment on the direction issue, so both doors can decide.
- Put the declined planner's own words back in the note, cut at a word with
truncateAtWord. A bare "why" link makes the owner leave the board to answer. Also keep an opened notes list open across reloads, without storing state that causes layout shift.
The board now opens on its panels, with the notes in one closed line under the title. This is pull #3774's branch (
bdfece83) merged into this branch, plus the four review asks. The five named test files pass (62 tests). I did not run the type check:bun installfails in this sandbox because Bun can't write to its temp directory, so there is notschere. The forge's check will be the first type check.What the four asks changed
<details id="notes-list" class="quiet-details">. I removed the board-only#notes summaryCSS rule because the shared component already gives the 44px flex row.<span class="notes-need" data-need>with the attention dot in front of it, so it is no longer faint text. With no need, there is no dot.slice(0, 3). Both now go throughwithMore()insrc/actions/owner_waits.ts, which adds a "+N more" line when something was left out. The web board has no such cut, so it needed nothing.w.since!:waitLineand the board's review note now checksince === nullinstead, so the value is narrowed. The README mentions the dot and the "+N more".Tests
.quiet-detailsmarkup assertions intest/board.test.ts,test/board-notes.test.tsandtest/review-waits.test.ts.withMoreat 5 and 3 lines.withMoreis tested directly instead.Layout shift: the open or closed state is not stored. The line is always server-rendered closed, and a list you opened stays open across live swaps. So there is no shift on load. The cost is that a reload closes the list again.
Closes #3846