Skip to content

[CI] Reset the canonical PR stack cache in GraphQL test fixtures - #26346

Merged
nwparker merged 1 commit into
mainfrom
nwparker/github-fixture-stack-cache-reset
Oct 7, 2026
Merged

nwparker merged 1 commit into
mainfrom
nwparker/github-fixture-stack-cache-reset

Conversation

@nwparker

@nwparker nwparker commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

ELI5

A GitHub test can fail depending on which earlier tests filled the pull-request stack cache. Clear that existing cache with the other caches when setting up the GraphQL rate-limit fixtures.

What Changed

Add the already-imported _resetPRStackSummaryCacheForTests() call to resetGraphQLRateLimitGuardMocks. The canonical reset clears the stack-summary cache and pending lookups. Existing mock queues, production code, imports, tests, assertions and runtime routing remain the same.

Why

The raw traces in both Node and Bun show that a warm stack cache skips a REST request, shifting which queued mock result the next PR-view call consumes. Reuse the existing reset already used by the neighboring fixture setup. Changing mock responses or assertions would conceal the state leak.

Linked Issue

The incoming manifest lint repair #26342 is merged. This PR now targets main with only the existing cache-reset call.

Visual Proof

N/A — test setup only; no visual or interaction change.

Testing

  • Local formatting, changed-code checks and Node typecheck on macOS with background launch policy.
  • Existing cases retained; no mirrored test added. Isolated Linux ARM CI measures the actual failing fixture and all 27 existing GitHub suites under both runtimes and two shuffled orders.

Before/after correctness measurements from run 37692284347, all eight counted commands retained:

Runtime Shuffle seed Before After
Bun 1.4.2 104729 291 pass, 1 fail 292 pass, 0 fail
Node 24.21.0 104729 291 pass, 1 fail 292 pass, 0 fail
Bun 1.4.2 130363 292 pass, 0 fail 292 pass, 0 fail
Node 24.21.0 130363 292 pass, 0 fail 292 pass, 0 fail

There are no skipped cases or unhandled errors. The failure is the existing unknown-merge-queue assertion after a GraphQL failure; its exact identity is retained and is the only permitted status change. Full file/case/status multisets, source fingerprints, routes, settings and natural process exit match. Root independently replayed the frozen collector and checked all eight raw reports against the actual green CI result.

These are measurements on frozen source 29ad785b1cd000b580ba3b3da87affb835a601ad using Vitest 5.0.3, four workers, isolation, the six stock setup files and filesystem module cache disabled. The current product harness has the same qualified before and after bytes; all checks passed on earlier product head 01b94d6, including ten unit shards, relay integration, and Linux/Windows package checks. It is now normally rebased onto merged main 7abd74e8187d39cbdc8ff127969c5cd384a2a20b, head 9538edd6fff193868f5909d54300a9811feebadb; only the qualified harness changes. Fresh changed-code checks and Node typecheck pass. Fresh current-head CI 37701762819 also passed: all ten unit shards, static analysis/typecheck, relay integration, Linux/Windows package checks and selection evidence. All 35 checks completed, with 19 passes and 16 explicit skips; no failures. This fixture correctness improvement makes no speed, import-optimization or production reliability claim. No native integration suite was launched on the user's desktop.

Review

The canonical owner and reset behavior were independently reviewed. Full current-head CI passed. There are no unresolved review threads or actionable findings; independent canonical-reset and raw-data reviews passed. No new bot coverage is assumed.

Agent skill upstream boundary

  • Not applicable.

Notes

No production host, remote GitHub/GitLab execution, workspace ownership, protocol or platform behavior changes.

Checklist

  • Small and focused; before/after, mechanism and alternatives explained.
  • N/A visual proof explained.
  • Self-reviewed for correctness and independently qualified.
  • Cross-platform and SSH impact considered.
  • Complete current-head CI and review disposition; qualified harness bytes verified on main before merge.

Pre-merge main is de4ee59cba964d45489a2fbc3ab1a2f7937557aa. Later upstream work, including #26350, #25845, #26334 and the measured Radix imports #26256, is retained. The incoming harness still exactly matches its qualified before bytes. Current-head CI above does not claim coverage of those extra upstream commits as a combined tree.

Merged squash 1f790332303926ef8bbec86006dc12ee8654865d has actual parent de4ee59cba964d45489a2fbc3ab1a2f7937557aa. Root verifies that only the qualified harness changed and all before/after bytes match. Later upstream commits are retained; prior qualified-head CI does not claim coverage of those extra commits as a combined tree.

@nwparker
nwparker changed the base branch from nwparker/structured-surface-manifest-line-limit to main October 7, 2026 23:20
@nwparker
nwparker force-pushed the nwparker/github-fixture-stack-cache-reset branch from 01b94d6 to 9538edd Compare October 7, 2026 23:20
@coderabbitai

coderabbitai Bot commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 22b09125-8296-474e-b86e-f1a7bfcddbc1
📥 Commits

Reviewing files that changed from the base of the PR and between a07f4b2 and 9538edd.

📒 Files selected for processing (1)
  • src/main/github/client-test-harness.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 7 remain after this review.


📝 Walkthrough

Walkthrough

resetGraphQLRateLimitGuardMocks now clears the PR stack summary cache along with its existing caches.

Priority: ⬇️ Low

Merge Risk: ⚪ Minimal · up to 9538e

This test-fixture change clears cached PR-stack summaries. The relevant tests await these lookups and do not run them concurrently, so no actionable merge blocker is established.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly and concisely describes the main change: resetting the canonical PR stack cache in GraphQL test fixtures.
Description check ✅ Passed The description is complete and focused. It explains the problem, mechanism, rationale, testing evidence, visual-proof status, review status, compatibility considerations, and checklist items. The lin…
  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

@nwparker
nwparker merged commit 1f79033 into main Oct 7, 2026
35 checks passed
@nwparker nwparker changed the title Reset the canonical PR stack cache in GraphQL test fixtures [CI] Reset the canonical PR stack cache in GraphQL test fixtures Oct 9, 2026
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