D37 — the shelf is a freeform canvas that may outgrow the screen (#659) #692

Closed
claude-bot wants to merge 0 commits from docs/d37-shelf-canvas into main
Collaborator

Part of #659 (lane 4 review).

Decision

The owner confirmed the GM's shelf stays freeform, not look.html's reflowing grid, and made sideways scrolling an officially supported way to get more room. This came from the question of what happens when a GM preps on a 4K monitor and plays on a 1080p one. The variable turns out to be CSS width, not resolution: a 4K monitor at 200% scaling is exactly as wide as a 1080p one. Card positions were already screen-independent. What was missing was deliberate scrolling. Today the whole page scrolls rather than the board, and nothing tells the GM a card is off to the right.

Catalogue

  • D37 in the decisions table and a Decided (D37) line on TABLE-1.
  • IS-325: the board scrolls within itself and grows when a card is dragged past its edge.
  • IS-326: off-screen cards are counted at the edge.
  • IS-327: "see the whole board" is an optional overview, not the default.
  • Rebuilt: 1,596 rows on 102 surfaces.

Lane 4

  • A new still, Prepped on a wide screen, played on a narrow one, shows the same board on a laptop: five cards fit, and a marker counts the two further right.
  • The TABLE-1 note and the open section now record D37 as settled.

What rendering caught

  • Table stills took the page's accent in the light theme. The sweep, the phone sweep and the new canvas sit outside tableFrame and lacked the tablemode class. "review it" and the on-the-table labels were dark blue on navy. This was already live in lane 4's first version.
  • Stacked headings. A screen that opens straight into an h3 stacked the h2, h3 and body with no space between them. This affected lane 3 as well; fixed in shell.css.

Feedback-site tests: 92 passed.

🤖 Generated with Claude Code

Part of #659 (lane 4 review). ## Decision The owner confirmed the GM's shelf stays **freeform**, not `look.html`'s reflowing grid, and made **sideways scrolling an officially supported way to get more room**. This came from the question of what happens when a GM preps on a 4K monitor and plays on a 1080p one. The variable turns out to be CSS width, not resolution: a 4K monitor at 200% scaling is exactly as wide as a 1080p one. Card positions were already screen-independent. What was missing was deliberate scrolling. Today the whole page scrolls rather than the board, and nothing tells the GM a card is off to the right. ## Catalogue - **D37** in the decisions table and a `Decided (D37)` line on TABLE-1. - **IS-325**: the board scrolls within itself and grows when a card is dragged past its edge. - **IS-326**: off-screen cards are counted at the edge. - **IS-327**: "see the whole board" is an optional overview, not the default. - Rebuilt: 1,596 rows on 102 surfaces. ## Lane 4 - A new still, *Prepped on a wide screen, played on a narrow one*, shows the same board on a laptop: five cards fit, and a marker counts the two further right. - The TABLE-1 note and the open section now record D37 as settled. ## What rendering caught - **Table stills took the page's accent in the light theme.** The sweep, the phone sweep and the new canvas sit outside `tableFrame` and lacked the `tablemode` class. "review it" and the on-the-table labels were dark blue on navy. This was already live in lane 4's first version. - **Stacked headings.** A screen that opens straight into an `h3` stacked the h2, h3 and body with no space between them. This affected lane 3 as well; fixed in `shell.css`. Feedback-site tests: 92 passed. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
The owner confirmed the GM's shelf stays freeform (not look.html's
reflowing grid) and made sideways scrolling an officially supported way
to get more room. Recorded as D37 in the decisions table and on the
TABLE-1 header, with three new features: the board scrolls within itself
and grows when a card is dragged past its edge (IS-325), off-screen cards
are counted at the edge (IS-326), and "see the whole board" is an
optional overview rather than the default (IS-327).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
feat(feedback-site): lane 4 draws D37 — the same board on a laptop (#659)
All checks were successful
CI / Bot/backend version sync (pull_request) Successful in 56s
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 58s
CI / Backend lint (ruff) (pull_request) Successful in 1m0s
CI / Feedback site tests (pull_request) Successful in 1m20s
CI / Docker image build (pull_request) Successful in 1m23s
CI / Bot tests and audit (pull_request) Successful in 1m51s
CI / Frontend tests, audit, and build (pull_request) Successful in 2m29s
CI / Backend migration, tests, and audit (pull_request) Successful in 9m25s
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Successful in 25m55s
56c9a895a6
Adds a still of the board prepped on a wide screen and played on a
narrow one: positions unchanged, the board scrolls within itself, and the
two cards past the right edge are counted by a marker. The TABLE-1 note
and the open section now record D37 as settled.

Rendering caught two faults. The Table stills outside tableFrame (the
sweep, the phone sweep, the new canvas) lacked the tablemode class, so
in the light theme they took the page's accent: dark blue on navy. And a
screen that opens straight into an h3 stacked h2, h3 and body with no
space between them, in lane 3 as well as lane 4.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Author
Collaborator

Merged to main as 631e911 on green CI (run 9927). Deployed to the review site (feedback data backed up first; all 6 responses intact; container healthy).

Merged to main as 631e911 on green CI (run 9927). Deployed to the review site (feedback data backed up first; all 6 responses intact; container healthy).
claude-bot closed this pull request 2026-09-18 04:06:47 +00:00
All checks were successful
CI / Bot/backend version sync (pull_request) Successful in 56s
Required
Details
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 58s
Required
Details
CI / Backend lint (ruff) (pull_request) Successful in 1m0s
Required
Details
CI / Feedback site tests (pull_request) Successful in 1m20s
Required
Details
CI / Docker image build (pull_request) Successful in 1m23s
Required
Details
CI / Bot tests and audit (pull_request) Successful in 1m51s
Required
Details
CI / Frontend tests, audit, and build (pull_request) Successful in 2m29s
Required
Details
CI / Backend migration, tests, and audit (pull_request) Successful in 9m25s
Required
Details
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Successful in 25m55s
Required
Details

Pull request closed

Sign in to join this conversation.
No description provided.