Skip to content

Self-healing git status subscriptions - #100

Merged
badcuban merged 2 commits into
mainfrom
self-healing-status-streams
Aug 2, 2026
Merged

Self-healing git status subscriptions#100
badcuban merged 2 commits into
mainfrom
self-healing-status-streams

Conversation

@badcuban

@badcuban badcuban commented Aug 2, 2026

Copy link
Copy Markdown
Collaborator

Re-lands the self-healing status subscription stack reverted from main in c36a7cd.

What it does: watchdog rebuilds a silent stream (2x, 20s apart) before showing the stale notice; panel Retry rebuilds the stream as well as refreshing; the 5s local poll feeds a broken atom via the shared applyGitStatusStreamEvent reducer; rate-limited client.stream.* diagnostic spans land in server.trace.ndjson.

Why it is a draft: the ChatView full-app palette browser test ("selects an environment before browsing...") fails on CI machines with this stack while passing locally (repeated consecutive full-suite runs). Two churn sources were already eliminated (pending<->stale rebuild oscillation, poll-heal vs retry-stale alternation - both pinned by reference-stability regression tests) and the CI test still timed out three times. Root cause of the remaining CI-only instability is unidentified; this PR exists so CI can run the suite against iterations of this branch without holding main red.

Last green main baseline for comparison: abe76b8.

@vercel

vercel Bot commented Aug 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
threadlines Skipped Skipped Aug 2, 2026 6:23pm

Request Review

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L labels Aug 2, 2026
The transport announces every reconnect attempt via onResubscribe before any
data arrives. Treating those announcements as recovery reset the first-snapshot
watchdog and refilled the rebuild budget, so attempts arriving faster than the
watchdog postponed it forever and the bounded rebuild cycle never converged.
Only a delivered status ends the waiting phase now; attempt starts during one
are inert. Also hardens the palette browser test to await the committed
Sources view and an attached action before clicking, which was the actual CI
failure signature all along.
@badcuban
badcuban merged commit 2ed42bf into main Aug 2, 2026
8 of 9 checks passed
@badcuban
badcuban deleted the self-healing-status-streams branch August 2, 2026 18:23
@badcuban

badcuban commented Aug 2, 2026

Copy link
Copy Markdown
Collaborator Author

Landed on main as 2ec2b50 (linearized; the branch-tip SHA changed so GitHub can't auto-mark this merged). Includes the bounded-recovery guard and the palette test hardening.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant