test(github): remove costly navigation test polling - #2498
Merged
ymichael merged 2 commits intoAug 27, 2026
Merged
Conversation
…b-removed-file-navigation-5s-t-thr_7mwv7p9tp8
ymichael
deleted the
bb/ci-flake-fix-github-removed-file-navigation-5s-t-thr_7mwv7p9tp8
branch
August 27, 2026 16:05
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Human comments
What was wrong
The GitHub removed-file navigation regression test repeatedly ran whole-tree named
queryByRole/getByRoleaccessibility walks after the pull request rendered, then used another polling query after expanding the diff. Instrumentation showed that the negative removed-link lookup alone cost about 42 ms wall time / 100 ms process CPU unloaded and 1.3–1.8 seconds wall time under contention. The packages CI shard amplifies that avoidable work by running 76 package test tasks, with Turbo's default ten concurrent tasks, on 4 vCPUs. That scheduler contention was the reproduction condition; the root cause was the test's repeated accessible-name computation and polling boundaries.This reproduced the exact failure from run 33001027428, job 98283670219: the exact unchanged case timed out at
app.test.tsx:81under its existing 5-second ceiling. Exact GitHub issue/PR searches for the run ID, job ID, signature, and file/timeout found no open match. BB run-ID/job-ID searches found only this worker, and an exact-substring signature filter found no other active or archived worker.What changed
The existing UI regression test now:
The behavioral coverage is unchanged: removed files do not navigate live workspaces, modified files remain navigable, removed diffs expand, and collapse state is exposed. There are no product, wire-protocol, CLI, guide, or documentation changes, and no timeout was changed.
How you verified
Verified fresh merge-base before task work:
7a6fe643250a93551f31441ff2c8d39aa09c638f(clean worktree; HEAD, fetchedorigin/main, and merge-base all exactly matched, independently confirmed by the parent worker).Measured the exact case through Turbo with the original 5-second ceiling:
Test timed out in 5000msfailure, 5.843-second reported body.Validation commands:
pnpm exec turbo run test --force --filter=bb-plugin-github— 6 files, 25 tests passed.pnpm exec turbo run typecheck --force --filter=bb-plugin-github— passed.pnpm exec turbo run build --force --filter=bb-plugin-github— passed.pnpm exec oxfmt plugins/github/app.test.tsx --check— passed.pnpm exec oxlint plugins/github/app.test.tsx— passed.git diff --check— passed.Follow-up base update: the original independently verified base remains
7a6fe643250a93551f31441ff2c8d39aa09c638f. After PR #2497 resolved the unrelated inherited SDK inventory/version regression, this branch merged current mainead4c605d0fe16066baef12fa544ab14243c9f78non-destructively. The PR still changes onlyplugins/github/app.test.tsxrelative to main, and the structural fix is preserved unchanged.