feat(feedback-site): lane 6d — the party and its world (#659, #696) #709

Closed
claude-bot wants to merge 0 commits from feat/lane6d-party into main
Collaborator

Lane 6d of the redesign mockups (#659) is the last part of step 4 in #696. It draws the map, the party, quests, handouts and the rules, at /prototype/lane6d.

What's drawn

WIKI-11: The map. This is Design A's screen 9, placed in the shell.

  • Views: the GM's full map, Priya's copy on a phone, and a deeper map (the Drowned Halls, as their own atlas).
  • Opened markers:
    • a place with no map of its own, which opens its page (IS-072);
    • a GM-only landing with Reveal it…, and the reveal with an undo (IS-075);
    • a stop on the trail showing "12 days on the road" (IS-077, IS-093);
    • Priya's own note, which only she and the GM can see (IS-076).
  • Forms: adding a marker (a player gets three choices), recording where the party ended a session, a travel link, and adding a map (picking a file, cutting it into tiles, and a file that is too big).
  • Also drawn: a map with no markers yet, and the quest-markers-only filter.

WIKI-12: The party. This is Design A's screen 10. D6 moves all of today's Loot & XP editing onto this page, and D3 puts downtime beside "What we carry".

  • Views: the GM, and Priya on a phone. The loot ledger stacks on a phone.
  • Loot ledger:
    • adding a line;
    • giving an item to a character, the pool, an NPC or a place;
    • changing a line;
    • removing a line, with an undo (D12);
    • a failed save;
    • an empty ledger.
  • XP and gold:
    • each character's total;
    • awarding XP;
    • adding gold.
  • Downtime: logging an entry, and the GM approving it or editing it first.
  • Also drawn: a character moving to another party, and a session page's loot failing to load.

WIKI-13: A quest and the quest log. This is Design A's screen 11.

  • The quest page: status, who gave the quest, the reward, objectives (two of them GM-only), where it is on the map, and its timeline.
  • New on the quest page: Talk about this quest, which lists lane 6a's threads about the quest, including an open rumour.
  • Views: Priya on a phone (only what Ossian knows).
  • The quest editor reads the quest's own record. It replaces Prep's Quest Tracker, and lane 6a's picker replaces the "Visible to players" checkbox.
  • Also drawn: no quests yet, a log that fails to load, and a deleted quest with an undo.

WIKI-14: Handouts.

  • Lists: the GM's list by session, including one not yet revealed, and Priya's list, with the handout shown to her alone marked "Just you".
  • Revealing: showing a handout with or without a Discord post (D61), and taking it back.
  • Handout pages: a PDF previewed with a download button, an image, and a torn letter revealed in three pieces.

WIKI-15: Rules & bestiary. For the first time, the rules are a chapter of the wiki.

  • Searching: a search, a rule with its source cited, a creature shown as a stat block, and "make it ours".
  • Also drawn: house rules, no results, and no rules loaded (with no licence line when no pack is loaded).
  • "Ask the rules" (IS-189) is left out, as the catalogue asks.

Shared renderer changes

  • wiki.js:
    • A trail stop can say how long the road took. days is set on trail points in data.js.
    • Party members show their pronouns (IS-234).
  • data.js: adds a handout revealed to Ossian alone, and the trail's travel days.
  • talk.js: adds a rumour thread on the Tidewatch Ledger. It is appended last, so lane 6a's THREADS[0] is unchanged; lane 6a's article board now lists it too.

Decided while drawing (open to reversal)

These are listed on the page, and in headers.md against each surface:

  • a player's map marker uses lane 6a's picker, cut to #593's three choices;
  • revealing a GM-only marker uses the picker too;
  • where the party ended a session is recorded from the map, with the days on the road;
  • a quest's visibility is set with the picker, and an objective can stay hidden until it is revealed;
  • a quest page lists the threads about it, and a rumour is started from there;
  • XP and gold show each character's total.

Coverage

coverage/lane6d.py checks 112 placements, and none are missing:

Result Placements
Drawn 85
Replaced by a decision 15
Belong to another surface 10
Behaviour only 1
Deferred (IS-189) 1

All nine coverage scripts pass against the rebuilt catalogue (1,652 rows).

Checks

  • Render-checked in headless Edge, in dark and light. The checks caught and fixed:
    • a .ledger class that collided with a shell grid, which broke the table;
    • a PDF preview that named the wrong session;
    • an XP line that gave away Ossian's secret debt;
    • XP and gold figures that disagreed with the party card;
    • a quest editor that disagreed with the quest it edits;
    • a "no rules loaded" state that still credited a pack's licence.
  • DOM probes of lanes 4, 6a, 6b, 6c and 6d, and of the look page, find no undefined or NaN after the shared changes.
  • Feedback-site tests pass (115).

🤖 Generated with Claude Code

Lane 6d of the redesign mockups (#659) is the last part of step 4 in #696. It draws the map, the party, quests, handouts and the rules, at `/prototype/lane6d`. ## What's drawn **WIKI-11: The map.** This is Design A's screen 9, placed in the shell. - Views: the GM's full map, Priya's copy on a phone, and a deeper map (the Drowned Halls, as their own atlas). - Opened markers: - a place with no map of its own, which opens its page (`IS-072`); - a GM-only landing with **Reveal it…**, and the reveal with an undo (`IS-075`); - a stop on the trail showing "12 days on the road" (`IS-077`, `IS-093`); - Priya's own note, which only she and the GM can see (`IS-076`). - Forms: adding a marker (a player gets three choices), recording where the party ended a session, a travel link, and adding a map (picking a file, cutting it into tiles, and a file that is too big). - Also drawn: a map with no markers yet, and the quest-markers-only filter. **WIKI-12: The party.** This is Design A's screen 10. D6 moves all of today's Loot & XP editing onto this page, and D3 puts downtime beside "What we carry". - Views: the GM, and Priya on a phone. The loot ledger stacks on a phone. - Loot ledger: - adding a line; - giving an item to a character, the pool, an NPC or a place; - changing a line; - removing a line, with an undo (D12); - a failed save; - an empty ledger. - XP and gold: - each character's total; - awarding XP; - adding gold. - Downtime: logging an entry, and the GM approving it or editing it first. - Also drawn: a character moving to another party, and a session page's loot failing to load. **WIKI-13: A quest and the quest log.** This is Design A's screen 11. - The quest page: status, who gave the quest, the reward, objectives (two of them GM-only), where it is on the map, and its timeline. - New on the quest page: **Talk about this quest**, which lists lane 6a's threads about the quest, including an open rumour. - Views: Priya on a phone (only what Ossian knows). - The quest editor reads the quest's own record. It replaces Prep's Quest Tracker, and lane 6a's picker replaces the "Visible to players" checkbox. - Also drawn: no quests yet, a log that fails to load, and a deleted quest with an undo. **WIKI-14: Handouts.** - Lists: the GM's list by session, including one not yet revealed, and Priya's list, with the handout shown to her alone marked "Just you". - Revealing: showing a handout with or without a Discord post (D61), and taking it back. - Handout pages: a PDF previewed with a download button, an image, and a torn letter revealed in three pieces. **WIKI-15: Rules & bestiary.** For the first time, the rules are a chapter of the wiki. - Searching: a search, a rule with its source cited, a creature shown as a stat block, and "make it ours". - Also drawn: house rules, no results, and no rules loaded (with no licence line when no pack is loaded). - "Ask the rules" (`IS-189`) is left out, as the catalogue asks. ## Shared renderer changes - `wiki.js`: - A trail stop can say how long the road took. `days` is set on trail points in `data.js`. - Party members show their pronouns (`IS-234`). - `data.js`: adds a handout revealed to Ossian alone, and the trail's travel days. - `talk.js`: adds a rumour thread on the Tidewatch Ledger. It is appended last, so lane 6a's `THREADS[0]` is unchanged; lane 6a's article board now lists it too. ## Decided while drawing (open to reversal) These are listed on the page, and in `headers.md` against each surface: - a player's map marker uses lane 6a's picker, cut to #593's three choices; - revealing a GM-only marker uses the picker too; - where the party ended a session is recorded from the map, with the days on the road; - a quest's visibility is set with the picker, and an objective can stay hidden until it is revealed; - a quest page lists the threads about it, and a rumour is started from there; - XP and gold show each character's total. ## Coverage `coverage/lane6d.py` checks 112 placements, and none are missing: | Result | Placements | |---|---| | Drawn | 85 | | Replaced by a decision | 15 | | Belong to another surface | 10 | | Behaviour only | 1 | | Deferred (`IS-189`) | 1 | All nine coverage scripts pass against the rebuilt catalogue (1,652 rows). ## Checks - Render-checked in headless Edge, in dark and light. The checks caught and fixed: - a `.ledger` class that collided with a shell grid, which broke the table; - a PDF preview that named the wrong session; - an XP line that gave away Ossian's secret debt; - XP and gold figures that disagreed with the party card; - a quest editor that disagreed with the quest it edits; - a "no rules loaded" state that still credited a pack's licence. - DOM probes of lanes 4, 6a, 6b, 6c and 6d, and of the look page, find no `undefined` or `NaN` after the shared changes. - Feedback-site tests pass (115). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
feat(feedback-site): lane 6d — the party and its world (#659, #696)
All checks were successful
CI / Backend lint (ruff) (pull_request) Successful in 58s
CI / Bot/backend version sync (pull_request) Successful in 30s
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 1m35s
CI / Feedback site tests (pull_request) Successful in 44s
CI / Bot tests and audit (pull_request) Successful in 2m37s
CI / Frontend tests, audit, and build (pull_request) Successful in 3m8s
CI / Docker image build (pull_request) Successful in 4m27s
CI / Backend migration, tests, and audit (pull_request) Successful in 12m7s
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Successful in 13m5s
1fa9af6224
Draws WIKI-11 to WIKI-15 at /prototype/lane6d: the map and its trail,
the party page with today's Loot & XP editing moved onto it (D6) and
downtime beside what the party carries (D3), a quest and the quest log,
handouts (D61), and the rules as a chapter of the wiki.

Shared renderers:
- wiki.js: a trail stop can say how long the road took (IS-093); the
  party's members show their pronouns (IS-234).
- data.js: trail legs carry their days; a handout for Ossian alone.
- talk.js: a rumour thread on the Tidewatch Ledger, last in the list.

coverage/lane6d.py: 112 placements, none missing (85 drawn,
15 replaced, 10 elsewhere, 1 behaviour, 1 deferred).

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

CI green (run 10074). Merged to main as f5edf88.

CI green (run 10074). Merged to main as f5edf88.
claude-bot closed this pull request 2026-09-19 21:10:46 +00:00
All checks were successful
CI / Backend lint (ruff) (pull_request) Successful in 58s
Required
Details
CI / Bot/backend version sync (pull_request) Successful in 30s
Required
Details
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 1m35s
Required
Details
CI / Feedback site tests (pull_request) Successful in 44s
Required
Details
CI / Bot tests and audit (pull_request) Successful in 2m37s
Required
Details
CI / Frontend tests, audit, and build (pull_request) Successful in 3m8s
Required
Details
CI / Docker image build (pull_request) Successful in 4m27s
Required
Details
CI / Backend migration, tests, and audit (pull_request) Successful in 12m7s
Required
Details
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Successful in 13m5s
Required
Details

Pull request closed

Sign in to join this conversation.
No description provided.