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

The board speaks the studio's five words, from the same place the pages do #67

open deferred: filed under Later opened this has it
opened this

/board is the studio on a second monitor, and it has its own vocabulary: stateWord and a board-outcome set with shipped/green (src/web/pages/board.ts:31,208,508) decided separately from the studio's wordFor/checkWord. When #54 lands the one function that decides what a run, a check and a merge are called, the board must read from it — otherwise the wall behind you says shipped about something the page in front of you does not.

Done looks like

  • [ ] The board's run cards, its landed list and its decided list take their words from the studio's single word function; stateWord and the board's private outcome mapping are deleted, not wrapped.
  • [ ] Shipped on the board means the same thing it means on the app page — production is serving the change — and a merge whose production deploy has not answered yet says the same in-between word both places.
  • [ ] The board's colours keep mapping from the word, so a word added later cannot render uncoloured.
  • [ ] The board's numbers per app — spend, runs, shipped, paused — are the ones the app page shows, from the same reads, and honour whatever #65 decides about who may see money.
  • [ ] Nothing about the board's layout, its regions, its keys or its live swapping changes; this is vocabulary, not design.
  • [ ] test/board.test.ts: a merged pull whose production deploy has not served does not read as shipped on the board; a run in flight reads as the studio's working; the region markup is otherwise unchanged.
  • [ ] docs/STUDIO.md's board section says the board speaks the same five words and nothing of its own.

Files I expect to change

src/web/pages/board.ts, src/web/pages/studio.ts (only the export), docs/STUDIO.md, test/board.test.ts.

Risks

  • Landing before #54 would mean copying today's rules into a shared place and then changing them twice; this waits on it deliberately.
  • The board renders a lot, fast — the word function must stay a pure function of facts already read, not a new query per card.
  • A third copy is what this issue exists to prevent: if the board needs a word the pages do not have, add it to the one place, with a comment saying why.

Who

Mason — delete the duplicate, keep the behaviour, prove it with the tests that exist.

commented

You've hit your weekly limit · resets Sep 20, 2am (UTC)

commented

Interrupted, not the work (outage; strike cleared 2026-10-02) — was: Parked by the crew: the run ended without a pull: no changes pushed: You've hit your weekly limit · resets Sep 20, 2am (UTC) (api_error)

commented

You've hit your weekly limit · resets Sep 20, 2am (UTC)

commented

Interrupted, not the work (outage; strike cleared 2026-10-02) — was: Parked by the crew: the run ended without a pull: no changes pushed: You've hit your weekly limit · resets Sep 20, 2am (UTC) (api_error)

commented

Planner, 2026-09-20: src/web/pages/studio.ts was split into src/web/studio/*.ts by #100, so the file references in the body above point at a file that no longer holds this code. Read them as:

  • the five words and their badge live in src/web/studio/words.ts (Word, wordBadge, tellWord/pullWord/runWord) — that is the export the board should read
  • files to change: src/web/pages/board.ts, src/web/studio/words.ts (only the export), docs/STUDIO.md, test/board.test.ts

Nothing else about this issue changed — what done looks like still stands.

commented

Parked by the crew: the check failed ("apps that are busy > an app whose child is still working survives the sweep, then sleeps once it is done") and the decider saw no point in another try (pull #478 closed). Planner: split this smaller, or rewrite what done looks like; a person can also say what to try.

commented

Released from Later to use the week's subscription: Behind pace: 44.9% of the week left, reset 2026-11-08 02:00 UTC, burning 0.2% an hour against 0.3% allowed; speeding up to 5 of 5 slots and releasing the next issue.

the crew's run was interrupted: restart, resumes on the next pass — cancelled
Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs