Skip to content

fix(app): keep the session view mounted across SSE loss (#1203) - #1231

Merged
aarontrowbridge merged 2 commits into
devfrom
1203-session-view-survives-sse-loss
Sep 16, 2026
Merged

aarontrowbridge merged 2 commits into
devfrom
1203-session-view-survives-sse-loss

Conversation

@aarontrowbridge

Copy link
Copy Markdown
Member

On stream loss the session view now STAYS MOUNTED: a reconnecting veil over the last rendered timeline (v2 tokens, pointer-events none), cleared in place on gap-clear — no reload, no refetch on the reconnect path. A send during the gap refuses honestly (toast, before history/clear). The #638 staleness machine's transitions unchanged — the render response is what changed. The session page's cached-timeline read is gated on messagesReady() so a failed refetch stops suspending the whole view.

Director gate: the slice's 22 tests green across 5 files (bun test, the materialized runner); the #638 server-sdk tests 14/14; parity 4/4. The runner's 3 lineage artifacts + 1 loader error verified pre-existing on pristine main (the runner's base diverged from dev). Fixes #1203.

…l + honest send refusal + stale-resource read gate

On stream loss the session view now STAYS MOUNTED: a reconnecting veil
(v2 tokens, pointer-events none) over the last rendered timeline, cleared
in place on gap-clear — no reload, no session-list refetch on the
reconnect path. A send during the gap refuses honestly (toast, before
history/clear) — never a fake success. The #638 staleness machine's
transitions are unchanged; the render response is what changed.
The session page's cached-timeline read is gated on messagesReady() so a
failed refetch stops suspending the whole view.
@coderabbitai

coderabbitai Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 0f57ab78-7a3c-4e74-95bc-12e7c428d497


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

…le check)

The new session-stream-veil/stream-veil-view/stream-gap files plus the 30
changed overlay paths' hashes — the manifest is the overlay's provenance
record; the drift gate catches unregistered files by design.
@aarontrowbridge
aarontrowbridge merged commit 25da732 into dev Sep 16, 2026
11 checks passed
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.

the session view must survive transient SSE loss — keep the rendered state, show a reconnecting badge

1 participant