Skip to content

test(dashboard): bound Bazel workers and isolate auth streams - #4334

Merged
ScriptedAlchemy merged 3 commits into
masterfrom
t3/fix-dashboard-sse-ci
Oct 19, 2026
Merged

ScriptedAlchemy merged 3 commits into
masterfrom
t3/fix-dashboard-sse-ci

Conversation

@ScriptedAlchemy

@ScriptedAlchemy ScriptedAlchemy commented Oct 18, 2026 •

Copy link
Copy Markdown
Owner

Bazel CI uses dynamic TestRunner execution, so the dashboard suite can run on either a remote worker or the hosted runner. The one-worker revision still timed out locally after 172 of 221 files; only 102.6s of the 300s was reported test-body time. Bound Vitest to two workers and reserve four CPUs on both paths (cpu_count=4, cpu:4), leaving capacity for transforms, the coordinator, and runtime helper threads. This follows the existing Rust test CPU reservation pattern without changing timeout or assertion budgets.

Retain the SSE isolation fixes: static imports, teardown of every test-owned stream and installed connection, EventSource restoration, fresh mocked response bodies per fetch, and an exact fake-clock retry assertion with the byte-exact Last-Event-ID check. Production code, settings, and generated contracts are unchanged.

Validation:

  • Hosted baseline: workspace-c job 117790938937 timed out at 300s with 172 files completed; its log identifies local processwrapper-sandbox execution under the dynamic strategy.
  • Sizing measurements: two workers pinned to two CPUs timed out after 111 files. Four workers produced two cold-import UI wait failures. The final two-worker/four-CPU configuration passed the focused 6 files / 43 tests in 20.5s.
  • Full final configuration through Bazel, forced local sandbox execution and pinned to four CPUs: 221 files / 2,137 tests passed in 215.0s, no unhandled rejections; 461.84s user + 58.03s system CPU, 241% average CPU. Total command wall time was 240.0s; the test timeout remains 300s.
  • Bazel aquery confirms both the local cpu:4 execution requirement and remote cpu_count=4 property.
  • TypeScript check passed in the preceding revision; this follow-up changes only dashboard/BUILD.bazel.

Devin Review

@changeset-bot

changeset-bot Bot commented Oct 18, 2026 •

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 1787f22

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔍 Devin Review: 1 flag

Not posted on this PR by your GitHub settings — view it in Devin Review. (Configure)

Devin Review

CI races local and remote TestRunner execution. The one-worker hosted run timed out after 172 of 221 files, with only 103 seconds in reported test bodies.

Keep two workers to avoid cold-import assertion failures seen with four. Reserve four CPUs for the workers, transforms, coordinator, and runtime helpers, following the existing Rust test allocation.

A two-CPU pinned full run timed out after 111 files. With four pinned CPUs, all 221 files and 2,137 tests pass in 215.0 seconds, averaging 241% CPU. The focused six files and 43 tests also pass. Timeout budgets are unchanged.
@ScriptedAlchemy
ScriptedAlchemy merged commit 31667ae into master Oct 19, 2026
16 of 21 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.

1 participant