Skip to content

docs(rendering): Session Recording plan (#467) - #470

Merged
Juliusolsson05 merged 1 commit into
integration/rendering-pipelinefrom
docs/session-recording-plan
Jul 7, 2026
Merged

Juliusolsson05 merged 1 commit into
integration/rendering-pipelinefrom
docs/session-recording-plan

Conversation

@Juliusolsson05

Copy link
Copy Markdown
Owner

Exhaustive plan for #467 — the continuous, debug-gated recorder of a session's rendering-pipeline input stream, replayable deterministically in tests. This is the fuller realization of the rewrite plan's Stage-2 "auto-capture fixture drafts" promise, which shipped only as a 50-entry console ring.

Synthesis of four research sweeps (committed under docs/rendering/research-2026-07/rec-research-*.md). Key decisions:

8-slice build order; slices 1–3 are a shippable MVP. Docs-only.

🤖 Generated with Claude Code

…ture + replay

Exhaustive plan for the Stage-2 auto-capture promise that was never built:
a debug-gated recorder of a session's rendering-pipeline INPUT stream,
replayable deterministically through the real pipeline in tests. Synthesis
of four research sweeps (committed under research-2026-07/rec-research-*.md).

Core decisions:
- Record at the SessionFeed boundary in MAIN (9-channel allowlist at the
  sendToMainWindow funnel), NOT at the ledger seam - because fold-layer bugs
  (the soak's #469 queue-desync) live ABOVE the ledger, and SessionFeed is
  the stable neutral-hub interface (survives the #394 fold rewrite).
- Replay via RecordedSessionFeed implements SessionFeed -> real fold -> real
  runtime -> real pipeline (mirrors the existing FakeSessionFeed double);
  full-stack fidelity, deterministic via injected wall clock.
- Clone feedDebugLog.ts + ghostJournal.ts for the append-only writer (every
  #388 OOM lesson already baked in); backpressure (drop-oldest + counter)
  and a budgeted debugRetention bucket are NON-NEGOTIABLE from day one -
  a continuous recorder re-opens the exact #388 crash vector.
- Two-tier redaction (full-local gitignored vs minimized+redacted checked-in
  fixture); a structure-only mode exercises every ownership/ordering rule
  while dropping free-text bodies - the innovation that makes recordings
  check-in-safe.
- Two replay modes: golden (bless-gated, mirrors bundleCorpus) and invariant
  (single-owner / no-vanish / no-shrink / D11 at every tick, no expected
  output - the broadest net, and the permanent successor to the
  cutover-doomed shadow).
- Attach Recording Note: a live reserve-instant + fill-on-submit marker
  (like save-debug-logs' capture-on-click), dropping a timestamped bookmark
  into the stream that seeds fixture extraction regions.

8-slice build order; slices 1-3 are the shippable MVP.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@Juliusolsson05
Juliusolsson05 merged commit 5e9e90f into integration/rendering-pipeline Jul 7, 2026
@Juliusolsson05
Juliusolsson05 deleted the docs/session-recording-plan branch July 7, 2026 21:51
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