feat: consolidate TraceDecay V2 PR8-PR13 delivery#421
feat: consolidate TraceDecay V2 PR8-PR13 delivery#421ScriptedAlchemy wants to merge 1124 commits into
Conversation
|
e50f8f5 to
4f5ab66
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 986f25cca6
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
5862bd6 to
53502de
Compare
642a33a to
5f2f610
Compare
Shell entry drops to 28K; sigma/echarts/graphology load only on their routes; suspense fallback matches header geometry (zero CLS). Verified across five routes with zero page errors. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Knowledge's trust distribution moves onto the ECharts host; explorer archetype results gain arrows/Home/End/Page roving focus with native Enter/Space activation. Verified live: End lands on the last row and Enter opens the inspector. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The single nav-rail dot lights when any finding is neither healthy nor unsupported; the status strip surfaces retained operation receipts from the SSE reducer with the latest operation labeled. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
build.rs stamps the frontend sources, runs npm ci/build when stale (TRACEDECAY_SKIP_DASHBOARD_BUILD escapes), and generates an OUT_DIR manifest embedding every app-dist file with its content type. The daemon serves the app at /, hashed assets under /static, an SPA fallback for client-routed deep links, and the legacy shell moves to /legacy pending Hermes wrapper adaptation. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Four ordered fill patterns (solid, hatched, dotted, dashed) carry measured/associated/predicted/unknown as a non-color axis that survives monochrome and forced-colors; the truth strip renders known score kinds through it with the label alongside. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Generic envelope helper carries the DoctorFindingsPayload type so the fixture literals check against the canonical schema; clears the last type errors in the dashboard tree. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Selecting a project rewrites every workspace read (legacy and envelope
alike) to /api/projects/{id}/{tail}, splitting query caches per scope;
the registry and dashboard chrome stay unscoped. Verified live: scoped
requests traverse the gateway and clearing scope returns unprefixed.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…nt-a96dacf1057587b56 # Conflicts: # dashboard/src/workspaces/brain/BrainPage.tsx # dashboard/src/workspaces/brain/SignalPanel.dom.test.tsx
Co-Authored-By: Claude <noreply@anthropic.com>
Two breakages arrived together on trunk. GraphCanvas.dom.test.tsx carried two `subscribe()` implementations in one mock class — a leftover stub beside the real strike-listener version — which is TS2393 and made the whole typecheck fail. SignalPanel.dom.test.tsx then failed before any test body ran: `ReferenceError: WebGLRenderingContext is not defined`. Sigma reads WebGL(2)RenderingContext at MODULE scope, so merely importing a component whose module graph reaches Sigma throws under jsdom, whether or not the test touches a canvas. Both constructors are now declared in the shared dom setup so the module can evaluate. They are deliberately empty, not working implementations: components probe for a real context via hasWebGl() and take their documented no-WebGL path, which is the behavior jsdom should exercise anyway. 19 files / 178 tests pass; tsc clean. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…nt-a96dacf1057587b56
"in ring" leaked an implementation term into the UI; the value counts events held in the decay window, so say that. And when the stream is offline, the panel already says everything in its sentence — repeating "no events observed yet" under it read as a second, redundant apology. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
WIP checkpoint covering three brain-canvas visual defects: - resting node colour now clamps its fade so a fully-dormant node keeps a perceivable offset from the substrate on both themes (fixes white-on-white in light theme), with a hairline halo floor for near-fully-faded nodes - brain HUD flows above the canvas in normal document flow below `md` (canvas keeps a 55vh minimum) instead of overlaying the whole field - FA2 gravity strengthened further for very small graphs and the constellation ring resized from exact non-overlap geometry, so disconnected components stop drifting into a mostly-empty frame that the camera then faithfully (but uselessly) fits
Root cause of the light-theme white-disc defect: Sigma's `zIndex` renderer setting was never enabled, so the halo/bloom glow companions (added after the real body, via `syncGlow`) always painted in graph-insertion order, i.e. on TOP of the opaque body -- their own faint colour, stacked twice, read as a plain white disc on the near-white light substrate (worst on the largest, highest-degree bodies, which carry the largest glow). Every nodeReducer/syncGlow zIndex attribute was already correct; it was simply being ignored. Enabling `zIndex: true` makes draw order honour it. Also fixes a stacking regression introduced by reordering the brain HUD before GraphCanvas for the mobile-flow fix: GraphCanvas's own container is `position:relative`, making it a positioned z-index:auto box exactly like the HUD, so swapping DOM order made the canvas paint over the HUD at every width. `z-10` on the HUD restores it above the canvas regardless of DOM order.
…0 flow, camera fit
Summary
This draft PR is the consolidated delivery branch for TraceDecay V2 PR8 through PR13.
The branch also contains the supporting rusqlite runtime cutover, worktree-aware incremental indexing, storage retention/Doctor integration, and direct product tests required by the canonical V2 plans.
Verification
cargo check --all-featurescargo test --all-featurescargo clippy --workspace --all-targets --all-features -- -D warningscargo fmt --all -- --checkCurrent status: implementation is still being consolidated from the shared checkout and CI is red. This PR remains draft until the working tree is committed, broad verification is stable, and the historical conventional-commit blocker is resolved. It must not be merged in its current state.
Safety boundaries
GitHub review ingestion is read-only. Semantic indexing never blocks exact/lexical/graph retrieval and publishes only complete compatible generations. Local coordination logs, private transcript evidence, secrets, and ad hoc artifacts are excluded from commits.