# ANU 전수검사 — task-3016 (머지·배포 통제 복구)

검토: 2026-08-25 · 보고서 해시 69581ea08d9bde9d · 영수증 `memory/events/task-3016.anu-reviewed.json`

## 1. 재측정으로 확인된 것 (봇 보고와 일치)

| 항목 | ANU 재측정 방법 | 결과 |
|---|---|---|
| 머지 8건 주체 | 세션 JSONL 에서 tool_use 실호출만 추출(텍스트 언급 제외) | 8건 전부 ANU 작업공간 세션. 실행시각이 merged_at 과 1~2초 일치 |
| merged_by | GitHub API 8건 개별 GET | 봇 6 / JonghyukJeon 2 — 보고서와 동일 |
| #249 머지일 | API | 2026-08-24 (명세 8/25 는 오기 — 봇 정정이 옳다) |
| .finalize-only | 마커 6/6 직접 확인 | 전부 merge_executed:false. .merge-done 6/6 부재 |
| InsuWiki 통제 | rulesets API + rules/branches/master | ruleset 2개 전부 disabled, master 적용규칙 빈 배열 — 통제 부재 확정 |
| InsuRo 승인강제 | ruleset 15953275 파라미터 | required_approving_review_count = 0 확정 |
| 승인 fail-open | taskctl.py L1151-1165 직접 열람 | 신원검사 실패 시 WARN + manual 라벨만, HUMAN_APPROVED 전이 진행. ImportError 시 skip |
| 봉인 테스트 | 워크트리에서 pytest 직접 실행 | 34 passed |
| audit-hidden-paths 거짓 PASS | 명령 직접 실행 | "PASS: 우회 경로 0건" 출력 — 실제 우회 호출 85건 존재. 거짓 PASS 확정 |
| Vercel PAT | InsuWiki 파일 직접 조회 | `vcp_` 접두 실토큰 평문 존재 확정 (repo 는 private) |
| 타이머 | task-timers.json | completed, 1시간 44분 — 고스트 없음 |

## 2. 봇 보고가 틀린 것 (ANU 반증)

### 반증 1 — 드리프트 지속시간 "11시간 21분" 은 과대. 실측 2시간 21분
`/home/jay/insuro-releases/.monitor/drift-state.json` 기준 first_seen 과 origin/main 커밋 시각이
조사시점보다 약 2.4시간 앞선다. 약 9시간 과대이며 UTC/KST 혼동으로 보인다.
드리프트 사실 자체는 참이고 **검토시점에도 미해소**(verdict=CRITICAL 유지).

### 반증 2 — #253 은 gh api 가 아니라 curl. 제안한 장치가 이걸 못 잡는다 (가장 중요)
세션 로그 원문은 `curl -s -X PUT -H "Authorization: Bearer ..." https://api.github.com/repos/.../pulls/253/...` 이다.
제안된 `classify_merge_invocation` 에 실제 명령을 넣어 실행한 결과:

- curl PUT → **is_merge=False / ALLOW** (미탐)
- gh api -X PUT → BLOCK_OFF_PATH
- gh pr <merge> → BLOCK_OFF_PATH
- gh api --method PUT → BLOCK_OFF_PATH

조사 대상 8건 중 1건은 T2/T3 를 활성화해도 그대로 통과한다.
활성화 전에 curl/직접 HTTP 경로를 반드시 추가해야 한다.

### 반증 3 — "팀 봇 머지 0건" 은 이번 8건 한정으로만 참
dev2 세션에서 PR #207·212·214·216·217·218·221·223·224·225·226·236·238·239·240 을
`gh api -X PUT` 로 직접 머지한 실호출 기록을 확인했다(8/14~8/21).
정본경로 우회는 ANU 개인 습관이 아니라 **약 2주간 팀 전체에 제도화된 관행**이다.
T1(서버측) 필요성이 봇 보고보다 강하다.

### 누락 1 — PR #272 CI 미보고
mergeable_state=unstable. phase3-merge-gate·gemini-review-gate 2건 FAILURE,
사유는 `evidence timeout (5min exceeded), no valid evidence` (Gemini 증거 0건).
콜백·result.json 어디에도 CI 언급이 없다. 머지금지 상태라 당장 무해하나 이 PR 은 현재 게이트상 머지 불가다.

## 3. ANU 판정

- 보고서 채택: **채택** (핵심 결론 성립). 위 수치 2건·분류 1건 정정 반영.
- PR #272 머지: **불가** — 명세상 머지금지 + CI 게이트 2건 block.
- T2/T3 활성화: **보류** — curl 경로 미탐 해소 전 활성화는 "이제 안전하다"는 착시만 만든다.
- T1 서버측: 회장 승인 대기. 반증 3 때문에 우선순위가 봇 제안보다 높다.
