Skip to content

feat: consolidate TraceDecay V2 PR8-PR13 delivery#421

Draft
ScriptedAlchemy wants to merge 1124 commits into
masterfrom
codex/tracedecay-total-redesign-plan
Draft

feat: consolidate TraceDecay V2 PR8-PR13 delivery#421
ScriptedAlchemy wants to merge 1124 commits into
masterfrom
codex/tracedecay-total-redesign-plan

Conversation

@ScriptedAlchemy

@ScriptedAlchemy ScriptedAlchemy commented Jul 10, 2026

Copy link
Copy Markdown
Owner

Summary

This draft PR is the consolidated delivery branch for TraceDecay V2 PR8 through PR13.

  • PR8: completed session/LCM temporal retrieval authority.
  • PR9/PR10: code intelligence, exact/lexical/graph retrieval, FastEmbed semantic projection, calibration, and byte-stable fallback.
  • PR11: application, policy, configuration, catalog, Git transaction, and feedback-cycle core.
  • PR12: CLI/MCP/HTTP/LSP production bindings and canonical diagnostics/impact readers.
  • PR13: Hook V2, Context Scout, host lifecycle/bundles, read-only GitHub/CI feedback, and agent proximity.

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

  • Focused PR8-PR13 product tests
  • cargo check --all-features
  • cargo test --all-features
  • cargo clippy --workspace --all-targets --all-features -- -D warnings
  • cargo fmt --all -- --check
  • Dashboard and host integration checks
  • Distribution/FastEmbed acceptance
  • Linux, macOS, and Windows CI

Current 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.

@changeset-bot

changeset-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 9ea206b

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@ScriptedAlchemy ScriptedAlchemy added the WIP Work in progress; do not merge label Jul 10, 2026
@ScriptedAlchemy
ScriptedAlchemy force-pushed the codex/tracedecay-total-redesign-plan branch from e50f8f5 to 4f5ab66 Compare July 10, 2026 05:54
@ScriptedAlchemy

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 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".

Comment thread docs/plans/2026-07-09-tracedecay-brain-rewrite.md Outdated
@ScriptedAlchemy
ScriptedAlchemy force-pushed the codex/tracedecay-total-redesign-plan branch 4 times, most recently from 5862bd6 to 53502de Compare July 11, 2026 16:52
@ScriptedAlchemy
ScriptedAlchemy force-pushed the codex/tracedecay-total-redesign-plan branch 4 times, most recently from 642a33a to 5f2f610 Compare July 23, 2026 17:06
ScriptedAlchemy and others added 17 commits July 24, 2026 02:02
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>
ScriptedAlchemy and others added 30 commits July 24, 2026 23:50
…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>
"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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

WIP Work in progress; do not merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant