Repository navigation
test(fleet): verify the event-stream campaign on the two-machine fleet #1780
Copy link
Copy link
Open
Labels
hitlNeeds human review before mergeNeeds human review before merge
Description
Important
Problem — The campaign is only done when the reporter's real workflow is clean: two or more views onto a remote hub during live activity, on the two-machine fleet.
Approach — Deploy through the agreed path — scratch-engine validation, then one human-scheduled hub restart per machine, then the window extension build — run the scenario, and record the census and engine evidence against the parent's acceptance criteria.
Scope — in: the deployment runbook, the scenario run, the evidence record, and closing or updating the superseded issues. out: new fixes (filed as follow-ups).
Assumptions — Both machines on the LAN for the primary run; an off-LAN run is recorded if available.
Acceptance Criteria
- The scenario runs as specified: two windows plus the Chat Deck on a Studio session; a live turn with a multi-file edit and a chatty shell command; the peer link killed once mid-turn and restored.
- The Studio engine's global-stream reconnect rate stays at its background level for the whole run — no once-per-second series.
- The census shows zero evictions and exactly one arm re-open for the link kill, recovered by replay — no gap signal and no full resync.
- After the turn, the transcript in every view equals a fresh reload.
- 95th-percentile per-hop lag (from heartbeat time) stays under 1 s on the LAN, and the largest live frame stays under 256 KB.
- The superseded issues are closed with a link to the evidence, or updated if a symptom remains.
Testing Decisions
- The manual scenario, plus the slow two-peer fleet E2E and the full gate set: fast suite, engine typecheck, engine unit tests, boot smoke.
Source
- Part of Fleet event stream is lossy by construction — remote sessions lag and desync during live activity #1770 · Blocked by fix(fleet): fan-in serves every listener — a second view no longer evicts the first #1772, fix(fleet): ownership map keeps a peer's sessions across a failed refresh #1774, fix(fleet): installer-managed per-peer SSH forwards with standard keepalives + healthcheck #1775, fix(fleet): lossless resume end to end — relays and client resume from engine ids #1777, perf(engine): cut live-stream burst volume — opt-in sync copies, patches on demand, throttled shell output #1778, perf(fleet): linear-time SSE frame splitting in the relay and app readers #1779 (and transitively feat(fleet): fan-in census line + engine-shaped stream fixtures #1771, fix(fleet): every lost stretch of events forces a resync — no silent gaps #1773, feat(engine): sequenced, replayable global event stream (epoch:seq ids, replay buffer, reset) #1776).
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
hitlNeeds human review before mergeNeeds human review before merge
Activity