---
task_id: task-2516+1
type: plan
scope: task
created: 2026-05-09
updated: 2026-05-09
status: completed
---

# 계획서: task-2516+1

**task**: task-2516+1
**목표**: task-2516의 3파일 minimal fix를 origin/main 최신 HEAD 기반 새 clean branch (`task/task-2516+1-dev3`)에서 옵션 B로 replay하여 contaminated ancestry 없이 PR 머지.
**승인**: 회장(드럼밴드) 2026-05-09 "task-2516은 옵션 B(clean branch replay)로 진행한다. force-with-lease 승인하지 않는다."
**근거**: `memory/tasks/task-2516+1.md` (회장 명시 7단계), `memory/feedback/feedback_critical_escalation_only_260508.md`

---

## 목표

1. 새 clean branch `task/task-2516+1-dev3` 를 origin/main(`05259f81`) 기반으로 생성
2. expected_files 정확히 3건만 변경:
   - `utils/replacement_pr_runner.py` (top-level circular import 제거 → wrapper lazy import 4건)
   - `tests/regression/test_replacement_pr_runner_2510.py` (T16 wiring 활성화 회귀 추가)
   - `tests/e2e/test_auto_merge_e2e_replay_2515.py` (default runtime path e2e 1건 추가)
3. `_WIRING_AVAILABLE=True` default 활성화 검증
4. 기존 `task/task-2516-dev3` branch 및 worktree는 보존 (force push/delete 0)
5. 새 PR 생성 → CI/Gemini 리뷰 PASS → 머지

## 범위

### 포함
- 새 worktree/branch 생성 (회장 §2)
- 3파일 patch replay (회장 §3) — task-2516 commit `e9f807e7` 동일 fix
- regression/e2e 테스트 실행 + import smoke
- Merge Topology Gate 자기참조 (`compare_effective_diff` 사용)
- 새 PR 생성 (회장 §5)

### 제외 (다음 페이즈 이후)
- live pilot (본 task 완료 후 회장 승인 필요)
- lifecycle reconciliation hardening
- canonical workspace resolver hardening
- 기존 `task/task-2516-dev3` PR/branch 정리 (회장 §6 — 보존만)

## 위임 계획

- **patch 적용**: **루(백엔드)** — 3파일 minimal fix replay (commit e9f807e7와 동일 코드)
- **테스트 실행**: **모리건(테스터)** — regression/e2e/import smoke 3종 + `_WIRING_AVAILABLE=True` 검증
- **PR 생성/검토**: **다그다(팀장)** — Codex 사전 검증 + Gemini PR 리뷰 대응

## 검증 기준

- effective diff 정확히 3 파일: `git diff origin/main...HEAD --name-only | wc -l` → `3`
- ancestry clean: `git log origin/main..HEAD --oneline` → 정확히 1 commit
- import smoke: `python3 -c "from utils.replacement_pr_runner import ReplacementPRRunner; from utils.merge_queue_executor import evaluate_pr"` → exit 0
- regression: `pytest tests/regression/test_replacement_pr_runner_2510.py -q` → ALL PASS (T16 포함 19건+)
- e2e: `pytest tests/e2e/test_auto_merge_e2e_replay_2515.py -q` → 108 assertions PASS (default runtime test 포함 12건+)
- Merge Topology Gate 자기참조 PASS
- CI 11/11 SUCCESS
- 기존 `task/task-2516-dev3` branch HEAD 불변 (`e9f807e7`)
