The Header Band Rests and Steps
A card's header strip is its body's colour at rest, steps darker while the card is selected, and goes darkest under its own hover; blocks stay white to the top
Decision
At rest a card's header row is the same colour as its body, on every Folio kind. The strip steps darker while the card is selected and darkest under the header's own hover. The pointer anywhere else on the card leaves the strip alone. Blocks have no band and stay white to the top of their header. Owner ruling 2026-09-10, looking at the live module and document cards after the concertina (GB-220) moved the fold beneath the title: "the header row should be same colour as the body row at rest for the module and for the document and any other folios." This narrows the 2026-09-08 ruling below, which had restored a permanent resting strip; the selection and hover steps it set survive unchanged.
The 2026-09-08 ruling, from the Folio slots story:
When a folio is selected, I think its header row should remain with the darker tone. … I think we initially agreed that there would be a darker tone on hover than when you select the folio. … At the moment, when a stack card is open, there is no distinction between the header row and the body row, as the card is all one colour. But I think there should be some clear separation.
And on the block exception, same sitting:
Blocks are part of the paper, so therefore they should appear white, including the header, other than when hovered or selected, whereas we want to distinguish modules and document folios as not part of the paper and therefore they have a light background even at rest.
In plain terms: a module or document card is a folder, not a page. Its title strip is the folder's label, always a shade darker than the folder, darker still when that folder is the one you picked, and darkest when you point at the label to open it. A block is a page, and a page has no label strip.
Note, 2026-09-10 — the resting seam, parked then settled
GB-220 moved the Contains row out of the band and beneath the fold, so the band is now the title row alone. The owner first parked the question of a permanent seam at rest, then settled it the same day by looking at the live module and document cards: no seam at rest. The +5 resting base is gone; selected +6 and hover +12 stand, and the block exception survives — a block's strip rests white and folds only its Guide and Tags (GB-220 slice 4).
What this supersedes, and what survives
The 2026-08-24 sitting ruled the band engaged-only: it appeared under the header row's hover and at no other time, so a resting or selected card read as one uniform wash. That answered a real problem — the strip had been lighting whenever the pointer was anywhere on the card — but it also removed the seam between header and body, and the schedule the docs recorded (a rest/hover/selected ladder on the band) was never wired: each tier's palette adapter kept computing the band's rung and the card shell dropped it.
What survives from 2026-08-24, unchanged: only the header strip reacts to the pointer. The card's own hover rung (pointer on the body) maps to the resting strip. What survives from the same date's block correction, unchanged: a block prints, and prints without its header row, so it states no tone, gets no band, and only its spine steps.
The schedule
Painted over the card's own 5 / 7 / 12 wash, as a step of the same hue:
| Resting card | Hovered card (pointer on the body) | Selected card | |
|---|---|---|---|
| Header band | none (the card's wash) | none | +6 |
| Header band under its own hover | +12 on top of the above |
Starting points to be settled by looking, over the usual narrowing rounds. The hover cue rose from +8 to +12 so a hovered strip reads clearly darker than a selected one rather than level with it.
Where the law lives
stackHeaderBand(tone, state)instack-palette.ts— base from the card's state, cue from the row's own:hover; pinned instack-palette.node.test.ts.StackHeaderBandandStackHeadertakestate— the adapter'sheaderState, which theStackroot no longer accepts.- The module card and document folio pass it; the block card states no tone.
Guards
stack-palette.node.test.tspins the doses, that every rung butactiveis the resting strip, and that the hover cue is the darkest step.Step2bTheHeaderBandandStep6TheWholeCard(stack-anatomy.stories.tsx) pin the resting strip on a toned row, no strip on an untoned one, and no strip on the row inside a band. Since 2026-09-10Step6TheWholeCardalso pins that the band wraps the title row alone and the contents subrow stands outside it.
Goldie Tags by Instruction
A Library's guide tells Goldie how to write each item's guide and tags, in one turn. Tags are free words, set by the Library's guide; a default guide covers a Library that has none. Only Goldie writes tags, and since 2026-10-07 every tag change she makes is a proposal the Builder accepts.
Independent Block Agent Threads
Why each working-document block owns a separate reactive Goldie conversation