# task-3007 CI 워처 지시서

- PR: #253 (repo `jonghyukjeon/insuro`)
- head_sha: `16c27f42b69aeecf30294a2f2a1bd7a6e3b95120`
- branch: `task/task-3007-dev3`
- handoff: `memory/events/task-3007.ci-watch-handoff.json`

## 할 일
1. `source /home/jay/workspace/projects/insuro/.env.keys` 후 `GH_TOKEN=$BOT_GITHUB_TOKEN`.
2. 2분 간격, 최대 45분 폴링:
   `gh api repos/jonghyukjeon/insuro/commits/16c27f42b69aeecf30294a2f2a1bd7a6e3b95120/check-runs`
3. 종료 판정:
   - 전건 conclusion=success → `MERGE_READY`
   - failure 발생 → expected_files(`server/policy_analyzer.py`, `server/tests/test_policy_analyzer_timeout.py`) 내부 non-critical 이면 자동수렴 후 재폴링. 그 밖이면 `CI_FAILED_NON_REMEDIABLE`.
   - 45분 초과 → `LOOP_BOUNDARY`
4. **머지 금지.** 머지는 ANU 소관이다.
5. 결과를 `memory/events/task-3007.ci-watch-result.json` 에 기록:
   `{"pr":253,"head_sha":"16c27f4...","terminal_state":"...","checks":{...},"ts":"<KST>"}`
6. ANU 에게 콜백 cron 1건 발사 (prompt UTF-8 ≤3900 bytes, 봉투만):
   task_id=task-3007 · pr=253 · terminal_state · result_path · collector_role=ANU · 한 줄 요약.

## 금지
- `src/**`, `server/main.py`, `supabase/**` 수정 금지.
- PR 머지 금지. 배포 금지.
