Skip to content

Rebuild the graph page: Explorer panel, growth filter and Turing toggle - #1211

Merged
GiggleLiu merged 72 commits into
feat/polynomial-comparator-v1from
feat/graph-explorer-overhead-structure
Oct 29, 2026
Merged

GiggleLiu merged 72 commits into
feat/polynomial-comparator-v1from
feat/graph-explorer-overhead-structure

Conversation

@isPANN

@isPANN isPANN commented Oct 18, 2026

Copy link
Copy Markdown
Collaborator

Stacked on #1196 (base: feat/polynomial-comparator-v1).

What

  • Rebuilds the graph page as Find, Explore and Navigate, with an Explorer panel (identity, variant and reductions as separate levels, overhead chips, a dedicated reduction view) and a per-rule growth filter.
  • Replaces the Witness / Value / Turing selector with one view. Value rules are a subset of Witness rules in the data, so the split added nothing for readers.
  • Turing rules (the 22 P → Decision<P> edges, solved by binary search on the bound) sit behind an off-by-default Turing toggle and are drawn dash-dot. Directions never routes through them.
  • activeRules accepts one scope or a list, with a test for the combined view.

Checks

tsc, eslint, npm run test:frontend-contracts (41 pass) and scripts/build_website.py succeed. The Playwright site tests were not run.

🤖 Generated with Claude Code

peda-cos and others added 19 commits October 12, 2026 13:36
… groups, reachability

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…nd short group chips

Fade ILP edges on the map, frame the dense core, and lead with the finding that most reductions are at most quadratic.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…n hover

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Explore is a map-style search over problems and rules with place cards, a layered view by distance from SAT, and a growth legend. Directions is its own mode. Drop italics and the mutually-reducible default panel.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…sk at a time

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
… panel, one toolbar, Layers view and route objective

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…rate levels, overhead chips, a dedicated reduction view

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Witness and Value rules share one view (Value is a subset of Witness); Turing
rules, which call the target several times, are shown on request as dash-dot edges.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The static hero illustration becomes a small force simulation over problem
families, drawn with the existing hero classes and palette. Hovering lights a
problem's direct reductions; nodes can be dragged. It pauses off-screen and
settles without animation under reduced motion.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Layout: one deterministic force model (lib/force-layout.mts) replaces the
  fCoSE build layout. Rules into ILP and QUBO pull weakly, so the map shows
  clusters instead of a star around ILP. The page reuses the same model live:
  dragging a problem pulls its neighbours, and the "Without ILP & QUBO" and
  "NP-hard only" views settle in place.
- Colour: nodes show whether a problem is proven NP-hard (reached from SAT)
  and whether it reaches ILP, with a legend and a status line on the card.
  Problem categories are no longer shown.
- Panel: folds to its search bar when idle; a labelled Directions button and
  a labelled Growth filter replace the bare icon and chips.
- Details: rules stay neutral until in focus, labels try four sides to avoid
  collisions, formulas print as tidy polynomials, the intro unfolds the map,
  and phones get a one-row header with a peeking search bar.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Every route step, including variant changes inside one problem, now shows
its rule's growth badge in the timeline, and each route edge on the map
takes the same growth colour. The selected route is laid out as an evenly
spaced chain from start to end, with the rest of the map relaxing around
it; labels sit across the chain, and other best routes are no longer drawn.
Returning to explore restores the published map.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Defer the path engine until Directions opens, warm it before search, and settle graph layouts in cancellable batches. Fix the mobile panel transition and replace oversized focus outlines with a thin circular ring.

Remove unused layout dependencies and homepage highlights, and update existing browser and build checks for the current behavior.
…ucture' into fix/simultaneous-incongruences-complexity
@GiggleLiu

Copy link
Copy Markdown
Contributor

Review fixes

Pushed 7c1ea4c45fab40aa9f5d5a21371c63242a4d6cc4. Route indicators now follow concrete variants and describe only registered witness-route existence. They no longer infer NP-hardness or solver availability. Mixed families are distinguished, and a shared visible alert reports load failures in both Explorer and Directions.

The fixed parent UI is integrated. Sixteen Node tests, TypeScript/ESLint checks, production bundling, and the three focused desktop/mobile browser regressions pass, including K2/K3 separation, incompatible family variants, excluded Turing/aggregate-only routes, and visible load failures. The combined stack passed 7,194 native tests and the paper build at d96e7c8b84733dbdd5873e19b8bf1185c7e7396d. Full website validation is running; final main CI remains required before landing.

[Critical] Remove KSatisfiability KN variant and short-clause constructors
Declare exact parameter counts that constructions always produce
Tighten ILP num_nonzeros bounds to per-constraint counts
Tighten StaffScheduling and SWRTD QUBO size bounds
Add binary decision ILP to SAT and fix solution validators
Add staff-scheduling QUBO and tighten direct-reduction bounds
Add Phase 3 conditional direct QUBO reductions
Add Phase 1 direct QUBO encodings for scheduling and assignment
…nces-complexity

Fix SimultaneousIncongruences complexity to include the search period

@GiggleLiu GiggleLiu left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agentic Review Report: integration follow-up

The previous blocking findings are fixed: concrete-variant witness-route indicators replace false hardness claims, both views show loading failures, and the inherited growth labels now describe conservative size bounds. The full production artifact passed cross-browser testing; the newly found WebKit inline-math rendering issue also has an independently reviewed CSS fix and regression.

The semantic source tree is 0cf54de5aa06ad17aae5a480e77ad62747ef308c. Backend child PRs retain their merge records. The previously reviewed integration resolutions and this PR's original source are preserved; the GitHub ancestry merges have identical trees. #1219, #1220, and #1221 remain excluded.

Validation: the combined Rust 2024 integration passed 7,194 native tests, formatting, all-target/all-feature Clippy, the paper build, and 23 pipeline tests. The subsequent website-only changes do not alter native sources. The production verifier passed 336 browser cases before the last visual fix; that fix passes focused Chromium/Firefox/WebKit dark/light tests and independent review. Its fresh complete website run and final main CI are pending and remain required before merging the aggregate into main. This approval is for folding into the feature parent only.

Rechecked PR comments, inline comments, reviews, linked conversation, and coverage feedback. No new material concern. The independent quality and harm-signal gates passed. The previously documented compatibility breaks were accepted by the maintainer.

@GiggleLiu
GiggleLiu merged commit 37e381c into feat/polynomial-comparator-v1 Oct 29, 2026
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.

3 participants