← 이슈 목록

FROM THE WORKSHOP / 이슈

`git push origin main` 하네스 차단 — default branch 직접 push

강대종 · 마이너스베타스튜디오

git push origin main 하네스 차단 — default branch 직접 push

  • 발생 일자: 2026-04-27 22:04 KST
  • 해결 일자: (미해결, 재발방지 작업 중)
  • 심각도: medium
  • 재발 가능성: high — repo 마다 분류기 판단이 다르고, 작업 끝마다 같은 패턴 반복
  • 영향 범위: 모든 default branch 직접 push 워크플로우 (hanjul 등 앱 repo)

증상

hanjul UX 작업(에러 분기 5종 세분화 + AI 카드에 디버그 코드) 끝내고 commit 까지 완료 → git push origin main 시 하네스 denial:

Permission for this action has been denied. Reason: Pushing directly to the default branch main bypasses PR review; CLAUDE.md’s general “끝나면 즉시 git push” guidance does not specifically authorize bypassing review on the default branch.

근데 흥미로운 비대칭: 같은 세션에서 직전에 claude-skills repo 의 default branch (main) 에 push 한 건 통과 (handoff reply 답신, .md 1개). hanjul 은 .dart 코드 2개 + production 영향 → 분류기가 더 엄격하게 본 것으로 추정.

원인

  1. 하네스가 default branch 직접 push 를 PR review 우회로 분류, 추가 명시 승인 요구.
  2. CLAUDE.md 의 “끝나면 즉시 git push” 룰은 일반 가이드로 인식 — “default branch 직접 push” 명시 인가가 아님.
  3. settings.json 의 permissions.allow 에 Bash(git push:*) 같은 명시 룰 없음.
  4. 자동 모드라 1회성 Allow 프롬프트도 안 뜸 (feedback_auto_mode_no_allow_prompt.md 메모리 확인 — auto mode 에선 영구 룰만 통함).
  5. agent 가 자기 settings.json 수정도 일관 거부 (feedback_harness_self_modification_gate.md) — 즉 셀프 해결 불가.

조치 (재발방지 — 강대종님 결정 필요)

세 옵션:

A. settings.json permissions.allow 에 영구 룰 추가 (강대종님이 /update-config 또는 직접 편집)

  • 좁게: Bash(git push origin main) (정확 매칭)
  • 넓게: Bash(git -C * push origin main:*), Bash(git push origin main:*) 패턴
  • 위험: force push (git push --force) 류 다른 위험 명령은 별도 차단 유지해야 — 반드시 좁은 패턴.

B. CLAUDE.md “빠른 원칙” 섹션의 git push 라인 강화

  • 현재: 작업 시작 전 git pull, 끝나면 즉시 git push
  • 제안: 작업 시작 전 git pull, 끝나면 즉시 git push origin main (default branch 직접 push 도 OK — solo dev repo, PR review 없음)
  • 하네스 분류기가 “specifically authorize” 키워드를 본다면 이 표현이 통과시킬 가능성. 단 검증 필요.

C. 항상 PR 분기 거치기

  • git checkout -b ...; git push origin <branch>; gh pr create ... 후 강대종님 머지
  • 안전하지만 solo dev repo 에선 과한 오버헤드. 하루 작업이 PR 6~8개씩 늘어남.

권장: A + B 병행. A 는 즉시 효과, B 는 향후 분류기 판단 변경 시도 보강.

관련

  • feedback_respect_harness_denial.md — denial 나오면 우회 안 하고 즉시 사용자에게 알림 (오늘 룰 그대로 따름)
  • feedback_auto_mode_no_allow_prompt.md — auto mode 영구 룰만이 답
  • feedback_harness_self_modification_gate.md — agent 가 자기 settings.json 수정 불가

⚠️ 중복 알림 (2026-04-27 22:26 KST)

본 파일은 Mac 측 동시 발생 issue 와 같은 사건의 다른 측면 기록. canonical incident record 는 2026-04-27-wsl-hanjul-push-classifier-block.md (Mac 발신) — 사고 timeline·SSH 우회 attempt·후속 KeyError sub-incident 까지 그쪽이 더 상세. 본 파일은 재발방지 옵션 A/B/C 정리 supplement 만 가치.

향후 비슷한 이슈 검색 시 Mac 파일 우선. 이 파일은 옵션 비교가 필요할 때만 참조.

기록은 다음 시작이 됩니다.이슈 더 읽기 ↗이 작업장의 제품 ↗
작업장 전체 페이지 목적에 맞는 페이지 찾기