design: browse the rules, stage 3 — each system's filters (#1242) #1307

Closed
claude-bot wants to merge 0 commits from design/1242-system-filters into main
Collaborator

Design only, for the owner's sign-off before #1242 is built.

  • docs/design/browse-filters.md:
    • each system declares its filters in a browse definition: data, like the sheet definitions (D76);
    • the import copies each record's filter values into a small facets JSONB column with one GIN index. Measured on PostgreSQL 18.6 with both starter packs: the slowest filter goes from 102 ms to 5 ms, its count from 158 ms to 6 ms, and filling the column costs 0.8 s at import;
    • what the page shows, and the first-party filters per kind.
  • Lane 6g (live at https://questboard-dev.rhoving.com/feedback/prototype/lane6g):
    • PF2e spells, creatures and equipment;
    • 5e spells, and 5e equipment, which hides the Rarity it has no data for;
    • a phone with "Filters (1)", folded and open;
    • four questions at the bottom.
  • The route, its test, and an index row.

🤖 Generated with Claude Code

Design only, for the owner's sign-off before #1242 is built. - **`docs/design/browse-filters.md`:** - each system declares its filters in a browse definition: data, like the sheet definitions (D76); - the import copies each record's filter values into a small `facets` JSONB column with one GIN index. Measured on PostgreSQL 18.6 with both starter packs: the slowest filter goes from 102 ms to 5 ms, its count from 158 ms to 6 ms, and filling the column costs 0.8 s at import; - what the page shows, and the first-party filters per kind. - **Lane 6g** (live at https://questboard-dev.rhoving.com/feedback/prototype/lane6g): - PF2e spells, creatures and equipment; - 5e spells, and 5e equipment, which hides the Rarity it has no data for; - a phone with "Filters (1)", folded and open; - four questions at the bottom. - The route, its test, and an index row. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
design: browse the rules, stage 3 -- each system's filters (#1242)
Some checks failed
CI / Does this change touch the recording path? (pull_request) Successful in 11s
CI / Which journeys does this change need? (pull_request) Successful in 11s
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Has been skipped
CI / Bot/backend version sync (pull_request) Successful in 54s
CI / Backend lint (ruff) (pull_request) Successful in 57s
CI / Feedback site tests (pull_request) Successful in 1m23s
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 1m46s
CI / Docker image build (pull_request) Successful in 2m34s
CI / End-to-end journeys (desktop) (pull_request) Has been skipped
CI / Bot tests and audit (pull_request) Successful in 4m0s
CI / Frontend (shard 2/2) (pull_request) Successful in 9m51s
CI / Frontend (shard 1/2) (pull_request) Successful in 12m3s
CI / Backend migration, tests, and audit (pull_request) Has been cancelled
42474120bb
docs/design/browse-filters.md: filters declared per system in a browse
definition (data, as D76), their values copied at import into a facets
column with one GIN index (PG18: the slowest filter 102 ms -> 5 ms), and
what the page shows. Lane 6g draws it: PF2e spells, creatures and
equipment, 5e spells and equipment, a phone; four questions.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
design: system filters decided, D310-D313 (#1242)
All checks were successful
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 57s
CI / Backend lint (ruff) (pull_request) Successful in 32s
CI / Bot/backend version sync (pull_request) Successful in 24s
CI / Feedback site tests (pull_request) Successful in 51s
CI / Does this change touch the recording path? (pull_request) Successful in 29s
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Has been skipped
CI / Which journeys does this change need? (pull_request) Successful in 18s
CI / Bot tests and audit (pull_request) Successful in 2m5s
CI / Docker image build (pull_request) Successful in 2m25s
CI / End-to-end journeys (desktop) (pull_request) Has been skipped
CI / Frontend (shard 2/2) (pull_request) Successful in 8m42s
CI / Frontend (shard 1/2) (pull_request) Successful in 11m52s
CI / Backend migration, tests, and audit (pull_request) Successful in 1h12m54s
9745ea1d35
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Author
Collaborator

Closing: the design note, lane 6g and D310–D313 are part of #1312, which builds #1242 together with its design.

Closing: the design note, lane 6g and D310–D313 are part of #1312, which builds #1242 together with its design.
claude-bot closed this pull request 2026-11-02 07:19:27 +00:00
All checks were successful
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 57s
Required
Details
CI / Backend lint (ruff) (pull_request) Successful in 32s
Required
Details
CI / Bot/backend version sync (pull_request) Successful in 24s
Required
Details
CI / Feedback site tests (pull_request) Successful in 51s
Required
Details
CI / Does this change touch the recording path? (pull_request) Successful in 29s
Required
Details
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Has been skipped
Required
Details
CI / Which journeys does this change need? (pull_request) Successful in 18s
Required
Details
CI / Bot tests and audit (pull_request) Successful in 2m5s
Required
Details
CI / Docker image build (pull_request) Successful in 2m25s
Required
Details
CI / End-to-end journeys (desktop) (pull_request) Has been skipped
Required
Details
CI / Frontend (shard 2/2) (pull_request) Successful in 8m42s
Required
Details
CI / Frontend (shard 1/2) (pull_request) Successful in 11m52s
Required
Details
CI / Backend migration, tests, and audit (pull_request) Successful in 1h12m54s
Required
Details

Pull request closed

Sign in to join this conversation.
No description provided.