docs(plan): stream-realtime production campaign — RG0–RG6 gate blueprint#157
Merged
Conversation
…RG6 gates The CTO blueprint to lift PORTAL_REALTIME=stream from experimental to production-ready, on par with the proven Portal-backfill evidence discipline. Contents: correctness gap register (RT-G1–RT-G15) with per-gap severity and test cites — validating/correcting the reorg/finalize logic (RT-G3/G4/G5/G6/G9 already mutation-tested; cited) and isolating the real gaps: a liveness cluster (RT-G8 #48 teardown, RT-G10 silent-tip stall, RT-G11 unbounded realtime read, RT-G12 delivery-gated finalize poll → RT-1) and one suspected correctness bug (RT-G13 isolated-cutover finality floor → RT-2, verify-first). Evidence gates RG0–RG6 with concrete acceptance numbers (≥200 chaos kills / 100% clean resumes / byte-identical digests; ≥72h multichain soak; 7-day A/B + patched-build re-soak), sequencing that leaves the in-flight soak untouched pre-2026-07-13, INV-22/INV-23 candidates, and the single atomic README label flip at RG6. Full autonomy granted (execution is GO; the label flip's gate transferred to the evidence dossier). This doc is the campaign's single source of truth. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Lands the CTO campaign blueprint (
.agents/plans/stream-realtime-production.md) for liftingPORTAL_REALTIME=streamfrom experimental to production-ready, held to the same evidence discipline that certified the Portal backfill (byte-diff matrix, chaos, A/B soak) — adapted to the realtime leg.What the plan establishes
portal-client.ts: "Absent ⇒ no stall guard (realtime path)"), RT-G12 finalize-poll gated on block delivery, RT-G10 silent-tip stall, RT-G8 undici teardown (closes stream wire: watchdog/teardown unwind depends on the aborted read settling — harden against the open undici abort-hang race (nodejs/undici#4089) #48).floor(unlike the multichain site), so a stale-LOW replica could regress the boundary and double-index finalized rows on single-chain apps. Flagged honestly as must-verify (RG0) before the fix.RING_CAP2048 → 8192 + an eviction-fatal proof (the F5 availability edge).Review basis
CTO-authored; the orchestrator independently verified the load-bearing empirical claims before landing — RT-G11's
portal-client.tsdocstring cite and the RT-G3 409-oscillation test cite (portal-realtime.test.ts) both confirmed, the "already-covered" corrections spot-checked against the test files. Doc-only, public-safe (no infra internals). Execution is GO; this doc is the single source of truth the RT-1/RT-2/RT-3 code PRs will cite (each committee-gated + mutation-verified in the normal way).🤖 Generated with Claude Code