Repository navigation
fix(downstream-upgrade): reserve sync stdout for PR number - #367
Merged
Merged
Conversation
Contributor
Visual regression report✅ No visual changes across 3280 screenshot(s). 📦 Open the full visual report (artifact Baseline from this run · commit |
jeffredodd
marked this pull request as ready for review
October 23, 2026 02:47
This was referenced Oct 23, 2026
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.
pr-sync.sh syncleaked the URL printed bygh pr edit/gh pr createbefore echoing the PR number. The workflow captures that stdout and passes it togh pr checks, so a value such ashttps://github.com/Fiestaboard/FiestaBoard/pull/2310\n2310is treated as a branch that cannot be found. That lookup error enters the CI-failure recovery path and can drop adoption commits.Redirect those two command outputs to stderr, reserving stdout for the PR number. Regression mocks now emit GitHub-style URLs, make a newly created PR discoverable on the second lookup, and assert the captured stdout for both create and edit paths. Only the script and its existing test change.
Original evidence: downstream upgrade run 39218165144, docs job (
URL\n182) and core job (URL\n2310, followed by the adoption rollback).TDD verification
Fresh base:
370980102472519e35ce46a9e8d52dfd231c8209(main). Original downstream suite: 7/7 scripts passed.Before changing production code,
bash scripts/downstream-upgrade/tests/test_pr_sync.shwas run with each new assertion and exited 1 for the intended reason:After the fix:
bash scripts/downstream-upgrade/tests/test_pr_sync.sh— exit 0, both exact stdout assertions pass.bash scripts/downstream-upgrade/tests/run.sh— exit 0, 7/7 test scripts pass.shellcheck scripts/downstream-upgrade/*.sh scripts/downstream-upgrade/tests/*.sh— exit 0.git diff --check— exit 0.Local full-suite limitation: this clean Mac checkout has no node dependencies, and no software was installed.
npm testexited 127 (vitest: command not found).npm run release:testreported 256 passes and 12 module-loading failures, all becauseesbuildis absent:board-accessible-name,board-characters,board-code-62-glyph,board-dimensions-identity,board-flap-cascade,board-live-region,board-lookup-proto,cn-equivalence,component-inventory-coverage,plugin-preview-code-62-glyph,story-variant-coverage, andtoken-registryunderscripts/ci/tests/. The PR's normal CI installs dependencies and runs the full suite.Exact-head CI
CI run 39317763475 completed successfully for head
a32fc12340c1b4ab090bc1150e92a59d266f1971: all 37 jobs passed, includingCI Success. The normal dependency-installed CI passed all 7 downstream test scripts, 46 perf harness tests, 392 release tests, and 1,434 unit tests (33 skipped), plus lint/format/typecheck, package build, all 12 accessibility shards, all 16 visual capture shards and visual comparison, and Bundle Budget with no regressions. This covers the suites that could not run fully in the clean local checkout.No downstream PRs or adoption commits were modified. This is a draft for review; do not merge automatically.