fix(feedback-site): lanes 1b and 2c — the owner's review (#659, #696) #699

Closed
claude-bot wants to merge 0 commits from fix/lane1b-review into main
Collaborator

The owner's review of lanes 1b and 2c, applied to the prototype pages and recorded in the surface catalogue.

Lane 1b: Home, and you

  • No card details anywhere. This amends D49. Paying happens on the payment provider's own page (Stripe stands in), so card data stays out of Quest Board's PCI scope.
    • The plan page links out for payment details and invoices.
    • Buying credits goes to Stripe and back. It is drawn in three states: waiting for Stripe to confirm the payment, credits added, and left without paying.
    • A failed payment is fixed on Stripe's page.
    • Adding a slot to a plan that already pays only asks.
    • Patreon for extra perks is recorded as an idea, not decided.
  • Priya's Home said "you run it" on the campaign she plays in. It now says "you play". The other two phone stills are Dana's, and their captions now say so.
  • The hosted no-free-slot warning was crushed. The whole form had been drawn in a quarter-width still. The four states that differ only at the foot of the form now show just the foot, two to a row. Create waits for a free slot.
  • The notification grid squeezed its email choice on a phone. In a container narrower than 32rem, each kind becomes a row with labelled controls beneath it, and "in the bell, always" is said once above.

Lane 2c: the rest of a campaign

  • The highlighted session row put its content against its edges. This affected lanes 2 and 2c. .slist > li overrode the row's side padding. Every row is padded now, and the highlight stays within the column.
  • "The story was not saved" sat right on the Save button. It sits above the buttons now, with room around it.
  • Analytics mixed a tall phone screen with short panels in one row. Now the four phone states share one row, and the five sharing states share another.
  • Not for you now reads "You have strayed from the path", with a plain line beneath saying whose page it is. Lane 5's Prep page says the same.

Shared

When a banner has no room beside its text, it drops its buttons below the text. The icon is taken out of the flow, so the text never wraps away from it. A layout probe across all lanes found the banners whose buttons now wrap. All of them are narrow stills whose text used to be squeezed. Lanes 3 and 2c were checked by eye.

Checks

  • Catalogue: IS-372 to IS-377. It rebuilds to 1,646 rows on 103 surfaces, with no row unplaced.
  • Coverage: lane 1b has 113 placements and lane 2c 106. Nothing is unclassified.
  • The feedback site's tests pass (101). All eight lane pages render in headless Edge. The changed sections were checked in both themes.

🤖 Generated with Claude Code

The owner's review of lanes 1b and 2c, applied to the prototype pages and recorded in the surface catalogue. ## Lane 1b: Home, and you - **No card details anywhere.** This amends D49. Paying happens on the payment provider's own page (Stripe stands in), so card data stays out of Quest Board's PCI scope. - The plan page links out for payment details and invoices. - Buying credits goes to Stripe and back. It is drawn in three states: waiting for Stripe to confirm the payment, credits added, and left without paying. - A failed payment is fixed on Stripe's page. - Adding a slot to a plan that already pays only asks. - Patreon for extra perks is recorded as an idea, not decided. - **Priya's Home said "you run it"** on the campaign she plays in. It now says "you play". The other two phone stills are Dana's, and their captions now say so. - **The hosted no-free-slot warning was crushed.** The whole form had been drawn in a quarter-width still. The four states that differ only at the foot of the form now show just the foot, two to a row. Create waits for a free slot. - **The notification grid squeezed its email choice on a phone.** In a container narrower than 32rem, each kind becomes a row with labelled controls beneath it, and "in the bell, always" is said once above. ## Lane 2c: the rest of a campaign - **The highlighted session row put its content against its edges.** This affected lanes 2 and 2c. `.slist > li` overrode the row's side padding. Every row is padded now, and the highlight stays within the column. - **"The story was not saved" sat right on the Save button.** It sits above the buttons now, with room around it. - **Analytics mixed a tall phone screen with short panels in one row.** Now the four phone states share one row, and the five sharing states share another. - **Not for you** now reads "You have strayed from the path", with a plain line beneath saying whose page it is. Lane 5's Prep page says the same. ## Shared When a banner has no room beside its text, it drops its buttons below the text. The icon is taken out of the flow, so the text never wraps away from it. A layout probe across all lanes found the banners whose buttons now wrap. All of them are narrow stills whose text used to be squeezed. Lanes 3 and 2c were checked by eye. ## Checks - Catalogue: IS-372 to IS-377. It rebuilds to 1,646 rows on 103 surfaces, with no row unplaced. - Coverage: lane 1b has 113 placements and lane 2c 106. Nothing is unclassified. - The feedback site's tests pass (101). All eight lane pages render in headless Edge. The changed sections were checked in both themes. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
fix(feedback-site): lanes 1b and 2c — the owner's review (#659, #696)
All checks were successful
CI / Docker image build (pull_request) Successful in 37s
CI / Bot/backend version sync (pull_request) Successful in 1m11s
CI / Backend lint (ruff) (pull_request) Successful in 1m15s
CI / Feedback site tests (pull_request) Successful in 1m28s
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 1m30s
CI / Bot tests and audit (pull_request) Successful in 2m30s
CI / Frontend tests, audit, and build (pull_request) Successful in 3m3s
CI / Backend migration, tests, and audit (pull_request) Successful in 9m1s
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Successful in 20m20s
afe21746ed
Lane 1b:
- No card details anywhere (D49 amended). Paying happens on the payment
  provider's own page, with Stripe standing in, so card data stays out of
  PCI scope. The plan links out for payment details and invoices; buying
  credits goes to Stripe and back, with confirming, added and
  left-without-paying states; a failed payment is fixed on Stripe's page;
  adding a slot to a plan that already pays only asks.
- Priya's Home said "you run it" on the campaign she plays in.
- The hosted no-free-slot warning was crushed in a quarter-width still. The
  form states that differ only at the foot are drawn as the foot, and
  Create waits for a free slot.
- The notification grid squeezed its email choice on a phone. Below 32rem
  each kind is a row with labelled controls beneath it.

Lane 2c:
- The highlighted session row had its content against its edges (lanes 2
  and 2c): .slist > li overrode its side padding. Every row is padded now.
- "The story was not saved" sat on the Save button; it sits above the
  buttons now, with room around it.
- Analytics: the phone states are drawn together in one row and the
  sharing states in another.
- Not for you: "You have strayed from the path" (lane 5 too).

Shared: a banner drops its buttons below the text when it has no room
beside it, and its icon is out of the flow so the text never wraps away
from it.

Catalogue: IS-372 to IS-377; 1,646 rows on 103 surfaces. Coverage: lane 1b
has 113 placements and lane 2c 106, none missing.

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

CI passed on run 9985. Merged to main as 21cbe28.

Deployed to the review site. Checks:

  • Before deploying, the feedback volume was backed up to /home/claude/backups/qb-feedback-data-20260918-232103.tgz.
  • The container reports healthy.
  • lane1b, lane2c, lane2, lane3 and lane5 all return 200.
  • The site now serves the new stylesheet and the new not-for-you wording.
  • All 6 stored responses are intact.

The owner's payment decision (no card data; payment happens on a hosted provider's page) and the provisional pricing are also recorded on #642.

CI passed on run 9985. Merged to main as 21cbe28. Deployed to the review site. Checks: - Before deploying, the feedback volume was backed up to `/home/claude/backups/qb-feedback-data-20260918-232103.tgz`. - The container reports healthy. - lane1b, lane2c, lane2, lane3 and lane5 all return 200. - The site now serves the new stylesheet and the new not-for-you wording. - All 6 stored responses are intact. The owner's payment decision (no card data; payment happens on a hosted provider's page) and the provisional pricing are also recorded on #642.
claude-bot closed this pull request 2026-09-18 23:22:11 +00:00
All checks were successful
CI / Docker image build (pull_request) Successful in 37s
Required
Details
CI / Bot/backend version sync (pull_request) Successful in 1m11s
Required
Details
CI / Backend lint (ruff) (pull_request) Successful in 1m15s
Required
Details
CI / Feedback site tests (pull_request) Successful in 1m28s
Required
Details
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 1m30s
Required
Details
CI / Bot tests and audit (pull_request) Successful in 2m30s
Required
Details
CI / Frontend tests, audit, and build (pull_request) Successful in 3m3s
Required
Details
CI / Backend migration, tests, and audit (pull_request) Successful in 9m1s
Required
Details
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Successful in 20m20s
Required
Details

Pull request closed

Sign in to join this conversation.
No description provided.