Repository navigation
ci(tools): hold the run-syntax self-test's e6eac090 inputs as pinned files - #911
Merged
Merged
Conversation
…ed files The self-test built its two regression cases with `git show e6eac09:<path>`. main was rewritten after that commit, so a fresh clone no longer has it, the read returned nothing, and both cases went BAD (rc 2 instead of 1) on every PR that touches a workflow. The two inputs are now files in tools/run_syntax_fixtures/, byte-identical to the blobs at e6eac09, and the test checks each against its pinned blob id (9d07d67, 034f4e9). A missing or edited fixture is an empty input and a named BAD line. Expected rcs and the case count (63) are unchanged. The checkout no longer needs full history, and the gate now also runs when a fixture changes. Closes #910
Summary by t27-beesThe PR fixes a flaky self-test by replacing Worth a look
Read: 4 files, +379 -13, the whole diff. Head |
X Brain Health CheckScore: 100.0/100 X Brain is above merge threshold |
🧪 Brain Stress Test ResultsScore: not measured (no stress test prints a Score: line) X Stress test passed |
dmitrii-f-t27
added a commit
that referenced
this pull request
Oct 11, 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.
Closes #910
run-syntaxfails on every PR that touches a workflow, whatever that PR changes. This PR fixes the cause.Why it fails
tools/test_check_run_syntax.pyreads its two regression inputs withgit show e6eac090:<path>.mainwas rewritten after that commit.e6eac090is no longer an ancestor ofmain; the same tree is78606c5dthere. A fresh clone does not have the commit, so the read returns nothing. The empty input gives rc 2 instead of 1, and both cases go BAD:61 of 63 cases as expected(#907, run 38010467066).What changes
tools/run_syntax_fixtures/build-matrix.e6eac090.yml.txtandiddr-golden-diff.e6eac090.yml.txtare byte-identical to the blobs ate6eac090, made withgit show e6eac090:<path>. Theirgit hash-objectvalues are9d07d679…and034f4e96…, the blob idsgit rev-parse e6eac090:<path>gives.BAD fixture …line names it..txtsuffix keeps the files away from YAML tooling.check_run_syntax.pyreads only.github/workflows/*.yml.tools/run_syntax_fixtures/**.No expected rc changes, no case is dropped, no step is disabled.
Checks run locally (Python 3, macOS)
python3 tools/test_check_run_syntax.py63 of 63 cases as expectedpython3 tools/check_run_syntax.pyworkflows read: 122 of 122; steps that do not parse: 0BAD fixture build-matrix.e6eac090.yml.txt: blob 74ae8f62…, pinned 9d07d679…,62 of 63BAD fixture build-matrix.e6eac090.yml.txt: missing,62 of 63Related: #893 and #894 change the same gate. They do not touch these lines.
Dmitrii Fedorov (@dmitrii-f-t27)