Skip to content

fix(nightly-v2): give the server config snapshot its own connect budget - #97

Closed
saphid wants to merge 1 commit into
mainfrom
fix/nightly-v2-snapshot-connect-budget
Closed

saphid wants to merge 1 commit into
mainfrom
fix/nightly-v2-snapshot-connect-budget

Conversation

@saphid

@saphid saphid commented Sep 30, 2026

Copy link
Copy Markdown
Owner

What Changed

Pin the connect budget fix, a clean cherry-pick of the same change proposed for upstream (branch fix/client-snapshot-timeout). Fork main carries release configuration, not V2 source, so this PR only appends the manifest entry. The source commit is on the branch named below. Incident: research/t3-v2-server-update-outage-2026-09-30.md. Pins append at the end of .github/downstream-nightly-v2.json, so the PRs in this series conflict textually; whichever merges later rebases and keeps every entry. CI on this fork has been stuck, so verification is local.

Why

The client's 15 second establishment timeout covered the whole attempt, including the wait for the first subscribeServerConfig snapshot. A cold server with a 33 GB database missed it, so the desktop tore down a healthy websocket and looped connect, interrupt, retry for 10 minutes. The 15 seconds now covers resolving credentials and creating the session; once the driver reports the synchronizing stage, 75 more seconds cover the socket open (still capped at 15 by the RPC session) and the snapshot. Shared supervisor, so web, desktop and mobile all get it.

Verification

  • vp test run packages/client-runtime/src/connection/supervisor.test.ts: 39 passed, including a 40 second snapshot that now connects on the first attempt and a never-ready session that still fails at 75 seconds.
  • Also passes on the V2 lineage (d0c468e3e51).
  • Review finding kept: the stage switches when the session is created, before the socket opens, so credential time plus a stalled socket can take about 25 seconds to fail. Documented in the constant's comment.

Implementation: Claude Sonnet 5.5 through T3 Code. Cross-vendor review: GPT-6 Astra (high) via codex exec read-only, because T3 delegate_task reported the Codex provider unavailable.

🤖 Generated with Claude Code

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XS labels Sep 30, 2026
@saphid

saphid commented Oct 1, 2026

Copy link
Copy Markdown
Owner Author

Superseded by the upstream PR pingdotgg#14518 (issue pingdotgg#14516). Fixes go upstream, not to the fork.

@saphid saphid closed this Oct 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS 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