Skip to content

feat(explorer): every gate as a filterable facet (full weakness picture) - #151

Merged
AlexTavor merged 1 commit into
mainfrom
pdd/explorer-gates
Jul 7, 2026
Merged

feat(explorer): every gate as a filterable facet (full weakness picture)#151
AlexTavor merged 1 commit into
mainfrom
pdd/explorer-gates

Conversation

@AlexTavor

Copy link
Copy Markdown
Owner

The explorer and report showed only atlas findings + mutation survivors. This folds in the mechanical check/prove gates (boundary-tests, cover-the-mirror, no-op-paths, pin-values, prove), so the located-issues are the full weakness picture — and adds a gate facet to filter by any of them.

On the reference run the located-issues go from 205 → 266 across 8 gates.

Design

  • Payload — generalize the per-node located-issues from rk/fg/sf to a gates map, keyed by the same gateOf rule the roadmap list uses (mirrored in the payload with a note that the UI one is canonical, so the explorer's gate names match the list's chips). Every located-issue source is included; mutation (the coverage axis) and code-map (context) are dropped.
  • explorer-encode.jssumGates / issuesUnder / gateList added (unit-tested); the "located issues" color and size honor the active-gate set.
  • explorer.js — a gate chip row toggles each gate on/off; the KPI and the issues color/size recompute to the active subset; the detail dock shows the per-gate split.
  • report.js — the issues column now counts every gate.

Gates

tsc · eslint src bin · 895 tests (882 pass, +3 for the gate helpers) · pdd check no blocking findings. Verified live against the reference run: 266 located issues across 8 gate chips, color = located issues, toggling risk off drops the count 266 → 179 and re-encodes, dock shows the per-gate breakdown, no console errors.

🤖 Generated with Claude Code

The explorer and report showed only atlas findings + mutation; this adds the
mechanical check/prove gates (boundary-tests, cover-the-mirror, no-op-paths,
pin-values, prove) so the located-issues are the full weakness picture (205 →
266 on the reference run), with a gate facet to filter by any of them.

- payload: generalize the per-node located-issues from rk/fg/sf to a `gates` map,
  keyed by the same gateOf rule the roadmap list uses (mirrored in the payload,
  that UI one stays canonical), so the explorer's gate names match the list's
  chips. Every located-issue source is included; mutation and code-map are dropped.
- explorer-encode.js: sumGates / issuesUnder / gateList added (unit-tested); the
  "located issues" color and size honor the active-gate set.
- explorer.js: a gate chip row toggles each gate; the KPI and the issues
  color/size recompute to the active subset; the dock shows the per-gate split.
- report.js: the issues column counts every gate.

Gates: tsc, eslint, 895 tests (882 pass, +3 for the gate helpers), pdd check all
green. Verified live: 266 located issues across 8 gates, toggling a gate off
updates the count and the encoding, no console errors.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@AlexTavor
AlexTavor merged commit cc106c8 into main Jul 7, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant