Lane 11 PR 0: the drawing and coverage follow the decisions; the build contract (#737) #959

Merged
claude-bot merged 2 commits from build/lane11-0-drawing into main 2026-09-30 07:59:47 +00:00
Collaborator

Lane 11 (#737) PR 0. It changes the drawing and docs only; no app code.

The build contract: docs/design/lane11-build-contract.md is the lane's survey and contract. It covers:

  • what exists and what it becomes;
  • the drawing, screen by screen, with its coverage rows;
  • the DB, the expression grammar, the shared fixtures, the definition, visibility and the API;
  • the 18-PR plan;
  • the owner's questions L1–L10, which are built on their recommendations and are on the morning page.

It records the decisions that override character-sheets-spec.md: D202, D220, D200, and the snapshot kept by a gone row.

The drawing (lane9.html):

  • D209:
    • "Notes & actions" gains Actions: Ossian's six, each with its cost and full text, plus a "Basic actions" fold. There are no roll buttons (D85).
    • The header gains Rest…, a PF2e daily preparations / Refocus dialog and a 5e short/long rest dialog.
    • There are new stills, including Notes & actions on a phone.
  • Removed:
    • the D208 lines ("Quest Board does not roll these…", "Each opens its pack entry", "A field a player keeps…", the Sneak Attack roll line);
    • the D210 recap line;
    • the Foundry actor from Export (JSON and Print stay).
  • The level-up hint now says reaching a level adds a milestone (D210).

Coverage:

  • Deferred (D200, #958): IS-423, 424, 427 and 429. IS-428 is split: JSON and Print ship here, and the Foundry half is deferred.
  • New rows: IS-459 (Actions), IS-460 (Rest…), IS-461 (levels by XP or milestone, D204, on CAMP-9 and WIKI-19) and IS-462 (the "reached level n" milestone).
  • The count: lane9.py classifies all 42 placements (drawn 35, deferred 5, behaviour 2). Every coverage/lane*.py reports "unclassified: none".
  • The catalogue is rebuilt with sources/build.ps1.

Checks:

  • the feedback-site tests pass (127);
  • changelog.py check passes;
  • the stills render in headless Edge in both themes, and I checked them by eye. The check found and fixed a shared radio-group name between the two Rest dialogs.

The deferred stills (Foundry import, Pathbuilder, Update, Convert) stay drawn as phase 2's design. They're absent from the app (D36).

🤖 Generated with Claude Code

Lane 11 (#737) PR 0. It changes the drawing and docs only; no app code. **The build contract:** `docs/design/lane11-build-contract.md` is the lane's survey and contract. It covers: - what exists and what it becomes; - the drawing, screen by screen, with its coverage rows; - the DB, the expression grammar, the shared fixtures, the definition, visibility and the API; - the 18-PR plan; - the owner's questions L1–L10, which are built on their recommendations and are on the morning page. It records the decisions that override `character-sheets-spec.md`: D202, D220, D200, and the snapshot kept by a gone row. **The drawing** (`lane9.html`): - **D209:** - "Notes & actions" gains **Actions**: Ossian's six, each with its cost and full text, plus a "Basic actions" fold. There are no roll buttons (D85). - The header gains **Rest…**, a PF2e daily preparations / Refocus dialog and a 5e short/long rest dialog. - There are new stills, including Notes & actions on a phone. - **Removed:** - the D208 lines ("Quest Board does not roll these…", "Each opens its pack entry", "A field a player keeps…", the Sneak Attack roll line); - the D210 recap line; - the Foundry actor from Export (JSON and Print stay). - **The level-up hint** now says reaching a level adds a milestone (D210). **Coverage:** - **Deferred (D200, #958):** IS-423, 424, 427 and 429. IS-428 is split: JSON and Print ship here, and the Foundry half is deferred. - **New rows:** IS-459 (Actions), IS-460 (Rest…), IS-461 (levels by XP or milestone, D204, on CAMP-9 and WIKI-19) and IS-462 (the "reached level n" milestone). - **The count:** `lane9.py` classifies all 42 placements (drawn 35, deferred 5, behaviour 2). Every `coverage/lane*.py` reports "unclassified: none". - **The catalogue** is rebuilt with `sources/build.ps1`. **Checks:** - the feedback-site tests pass (127); - `changelog.py check` passes; - the stills render in headless Edge in both themes, and I checked them by eye. The check found and fixed a shared radio-group name between the two Rest dialogs. The deferred stills (Foundry import, Pathbuilder, Update, Convert) stay drawn as phase 2's design. They're absent from the app (D36). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
docs(lane11-0): review tracker, changelog fragment, radio-group names, phone Notes still
All checks were successful
CI / Backend lint (ruff) (pull_request) Successful in 35s
CI / Bot/backend version sync (pull_request) Successful in 35s
CI / Feedback site tests (pull_request) Successful in 43s
CI / Does this change touch the recording path? (pull_request) Successful in 40s
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Has been skipped
CI / Docker image build (pull_request) Successful in 1m21s
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 2m55s
CI / Bot tests and audit (pull_request) Successful in 4m34s
CI / End-to-end journeys (phone) (pull_request) Successful in 7m18s
CI / End-to-end journeys (keyboard) (pull_request) Successful in 8m3s
CI / End-to-end journeys (desktop) (pull_request) Successful in 8m49s
CI / Frontend (shard 2/2) (pull_request) Successful in 14m55s
CI / Frontend (shard 1/2) (pull_request) Successful in 19m52s
CI / Backend migration, tests, and audit (pull_request) Successful in 43m33s
234418502b
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Sign in to join this conversation.
No description provided.