fix(release): 릴리스 제목 누락 + main 보호 규칙 우회 경로 제거 - #46
Merged
Conversation
두 문제 모두 릴리스 절차에 있었다.
1) 릴리스 제목이 빈 문자열로 발행됐다
`gh release create` 에 `--title` 이 없어 API 가 name=null 을 받았다.
v3.2.15~v3.2.17 이 모두 같은 상태다. 워크플로가 태그명을 제목으로 넣고,
본문에서는 중복되는 `# {tag}` H1 을 뺀다 (제목이 두 번 렌더됐다).
2) 릴리스가 매번 main 보호 규칙을 우회했다
main 은 필수 체크 2개(Build (type-check) · Tests)를 요구하는데 그 체크는
푸시 **후** 실행된다. 구 `pnpm version patch && git push origin main
--follow-tags` 는 구조적으로 체크를 만족시킬 수 없었고, enforce_admins=false
덕에 소유자 권한으로 통과했다 — v3.2.17 푸시 로그에 "Bypassed rule
violations for refs/heads/main" 이 남아 있다. 설정과 절차가 서로 모순이었다.
`scripts/release.sh` 로 전환: 버전 범프를 PR 로 보내 체크를 실제로 통과시킨
뒤 병합하고, 병합 커밋에 태그를 붙여 Release 워크플로를 발동한다. 태그는
브랜치 보호 대상이 아니므로 직접 푸시해도 우회가 아니다.
저장소 설정에서 enforce_admins 를 켰다 — 소유자도 같은 경로를 쓴다.
검증: npm run build exit 0 · 96 files / 1744 tests 통과 (신규 7건)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01J5idecfzZnceLmL2KYW2rG
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.
문제
1. 릴리스 제목이 빈 문자열 —
gh release create에--title이 없어 API 가name=null을 받는다. v3.2.15 · v3.2.16 · v3.2.17 모두 동일.2. 릴리스가 매번 main 보호 규칙을 우회 — main 은 필수 체크 2개(
Build (type-check)·Tests)를 요구하는데 그 체크는 푸시 후 실행된다. 구pnpm version patch && git push origin main --follow-tags는 구조적으로 체크를 만족시킬 수 없었고,enforce_admins=false덕에 소유자 권한으로 통과했다. v3.2.17 푸시 로그에Bypassed rule violations for refs/heads/main이 남아 있다.변경
.github/workflows/release.yml—gh release create에--title "$GITHUB_REF_NAME"추가src/tools/release/releaseNotes.ts— 본문의 중복# {tag}H1 제거 (제목이 두 번 렌더됨)scripts/release.sh(신규) — 버전 범프를 PR 로 보내 체크 통과 후 병합 → 병합 커밋에 태그 → Release 워크플로 발동. 태그는 브랜치 보호 대상이 아니므로 직접 푸시해도 우회가 아니다package.json—release스크립트를 위 경로로 교체enforce_admins활성화 (소유자도 같은 경로를 사용)REQ-release-notes-007,REQ-release-flow-001~005)검증
npm run buildexit 0 · 96 files / 1744 tests 통과이 PR 자체가 새 흐름의 첫 적용 사례다.
🤖 Generated with Claude Code
https://claude.ai/code/session_01J5idecfzZnceLmL2KYW2rG