Repository navigation
fix(gh-pr-flow): approve-via-relay.sh --base NAME for promotion-branch PRs (#2492) - #2494
Merged
Merged
Conversation
…h PRs (#2492) The relay approval helper accepted only PRs into the default branch, so a promotion PR (#2292) that the protected-branch-NAME ruleset requires a cross-account approval for had no approval path (wiki-agent#223, refused with exit 65). --base NAME accepts the PR only when its base is NAME and NAME's applied rules include deletion, non_fast_forward and a pull_request rule requiring >=1 approval (unreadable rules fail closed); required checks are read from NAME. master/main and non-plain names are refused locally, NAME equal to the default branch remotely; without --base the default-branch check is unchanged. The result JSON gains `promotion`. Exact-head checks remain mandatory. Tests: 12 new cases in scripts/gh-pr-flow-jinon86.test.sh (34/34); the rule predicate was checked against live data (wiki-agent stable=true, wiki-agent master/ccc-node main/missing branch=false). Skill doc + registry hash updated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
seoseo-ai
approved these changes
Oct 23, 2026
seoseo-ai
left a comment
Collaborator
There was a problem hiding this comment.
Approved after exact-head validation and fresh operator authorization using the relay-held seoseo-ai credential.
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 #2492
문제
approve-via-relay.sh가 기본 브랜치 대상 PR만 승인한다. 승격 브랜치(#2292, 예: wiki-agentstable)는protected-branch-NAMEruleset이 교차 계정 승인 1건을 요구하는데, 그 승인을 기록할 경로가 없다. 실측: wiki-agent#223 오너 승인 후 헬퍼 실행 →review target base is not the repository default branch(exit 65).변경
--base NAME(명시 옵션)master/main(대소문자 무관) 거부 — 릴레이 접속 전.NAME == default_branch면 거부.rules/branches/NAME에deletion+non_fast_forward+pull_request(required_approving_review_count ≥ 1)가 모두 있어야 허용, 읽기 실패는 fail-closed.NAME과 같아야 하며, 필수 체크(classic + ruleset)는NAME기준으로 평가.--base가 없으면 기본 브랜치 검사·메시지 그대로. 결과 JSON에promotion필드 추가(소비자 영향 없음 — 추가 키).stable추가로 별도 처리).skills/gh-pr-flow/SKILL.mdPromotion branches 절 +skills/registry.json해시, changelog 조각.검증
scripts/gh-pr-flow-jinon86.test.sh34/34 (신규 12): 승격 dry-run·실승인(base=stable, promotion=true, 필수 체크를stable에서 조회) /--base없이 stable → 기존 메시지로 거부 / 미보호 브랜치·규칙 읽기 실패·base 불일치·--base=기본 브랜치 → 거부(리뷰 미제출) /master·MAIN·refs/heads/stable·origin/stable→ 릴레이 접속 전 거부.stable=true, wiki-agentmaster=false, ccc-nodemain=false, 없는 브랜치=false.CCC_HARNESS_PHASE=static bash scripts/validate-harness.shPASS(레지스트리 해시 갱신 후), shellcheck-S warning,changelog_fragments.py check,git diff --check.범위 밖
🤖 Generated with Claude Code