Check out a referenced angr/binaries pull request on macOS and Windows - #738
Conversation
|
THIS MESSAGE WAS GENERATED BY AN AUTOMATED PROCESS Validation record for head Why the generic step went. cle's
Resolver. The
The first four rows are the point of the third and fourth: End to end. this description names angr/binaries#184, which was open when the run started, so both jobs logged Lint. Not run: the workspace Python gate, since this changes no Python. Checks. All 19 checks on Caveats. A description edit does not retrigger CI and a re-run replays the original event payload, so the reference has to be in the description when the run starts. A GitHub API failure while checking that the referenced pull request is open leaves the checkout on master rather than failing the job. Only the first |
|
Corpus decompilation diffs can be found at angr/dec-snapshots@master...angr/cle_738 |
2b0085b to
b153602
Compare
|
Could we limit the scope of this to just the binaries repo, since that seems to be the motivating factor in all of our cases? |
b153602 to
1c19703
Compare
The ci job cle inherits from angr/ci-settings resolves a sibling angr/binaries pull request out of the description before it builds, but Test macos-15 and Test windows-2022, which this workflow defines itself, check out binaries master unconditionally. A cle change that needs a new fixture therefore passes every inherited job and fails those two until the fixture lands. Both jobs now read the reference out of the pull request body the way resolve_refs.py does: angr/binaries#<number> or a pull request URL, first one found, and its head only while that pull request is still open. A push, or a body naming no binaries pull request, takes master. The body reaches the step as an environment variable and only the digits extracted from it reach the ref, so nothing in it is interpreted. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
1c19703 to
0c3eddb
Compare
|
THIS MESSAGE WAS GENERATED BY AN AUTOMATED PROCESS You are right. The generic step is deleted; the branch is now one step and 23 added lines in I enumerated rather than guessed. cle's Worth knowing separately, because it is the same subject: Head Landing this unblocks #740, #755, #756, #757 and #764, whose only macOS and Windows failures are missing-file errors on fixtures that are open in angr/binaries. |
|
Thanks, if you haven't already, can you mirror these changes in your other PRs and rebase the blocked ones? |
The resolution logic added in #738 is duplicated in each repository that needs it. Call the shared composite action instead.
THIS MESSAGE WAS GENERATED BY AN AUTOMATED PROCESS
The
cijobs cle inherits checkangr/binariesout at the pull request thedescription names.
Test macos-15andTest windows-2022, which this workflowdefines itself, check it out with no
ref:, so they get master. A cle changewhose regression loads a new fixture therefore passes every inherited job and
fails those two until the fixture lands.
Both jobs now read the reference out of the body the way
resolve_refs.pydoes:angr/binaries#<number>or a pull request URL, first one found, and its headonly while that pull request is still open. A push, or a body naming no binaries
pull request, takes master. The body reaches the step in an environment variable
and only the digits extracted from it reach the ref, so nothing in it is
interpreted.
This description names angr/binaries#184, the fixture #764 needs, so the
run on it exercises the path.
Validation: #738 (comment)