Repository navigation
Conversation
refresh 가 PR HEAD 의 기존 pull_request_target run 을 rerun 해 같은 suite 안에서 guard 를 갱신한다. run 이 없거나 재실행이 거절될 때만 dispatch 로 내려가 check-run 을 붙인다. 정책 테스트는 rerun 을 pull_request_target run 으로 좁힌 새 경계를 잠근다.
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.
변경
#1977 뒤에도 선행 이슈가 닫힐 때의 갱신 경로는
workflow_dispatch결과를POST /check-runs로 PR HEAD 에 붙였다. GITHUB_TOKEN 이 만든 check-run 은 그 SHA 의 임의 github-actions suite 에 얹혀CodeQL / guard처럼 무관한 워크플로 이름 아래 guard 가 또 떴다(실측 #1763 HEAD a3dd0a3, run 34577656946).refreshjob 이 기다리던 PR 의 HEAD SHA 로 최신pull_request_targetguard run 을 찾아gh run rerun한다. 그 run 은 base 의 YAML 과 default branch 의 스크립트로 돌았고 재실행도 스크립트를 default branch 에서 다시 받으므로, 같은 suite 안의 guard 가 제자리에서 갱신된다.publish-dispatch-result는 그대로 둔다.headRefOid를 실어 읽는다. PR 마다 REST 왕복을 더하지 않는다(CI: GitHub App API rate limit 소진으로 게이트 잡이 저장소 전체에서 실패한다 #1465).--event pull_request_target으로 좁혀진 것, 재실행 성공 시 dispatch 가 안 나가는 것, run 부재·재실행 거절 시 dispatch 로 내려가는 것, 실패 한 건이 나머지를 막지 않는 것을 셸 실행으로 잠근다.검증
node --test .github/scripts/*.test.mjs689건 통과.actionlint: 새 지적 없음(기존 SC2016 info 만).리뷰어에게
연결 이슈
Closes #1983
Refs #1977
CI Test Plan
{ "androidTest": { "mode": "none", "reason": "merge-order-guard 워크플로의 refresh job 과 정책 테스트만 바꾼다. Android 앱·네비게이션·계측 경계는 건드리지 않는다.", "tests": [] } }