{
  "id": "FILE_TOUCH_RATIO_CHECK_CODE_ROOT_RECOGNITION_DISPATCH_READY",
  "candidate_task_id": "task-2729+20 (회장 확인 요망)",
  "ts": "2026-06-08T13:40+09:00",
  "base": "origin/main 571a4ce3",
  "design_doc": "memory/plans/p0b-pickup/file_touch_ratio_check_code_root_recognition_design_260608.md",
  "root_cause_audit": {
    "1_caller": "qc_verify.py:563 file_touch_ratio_check.verify(task_id) — workspace_root 미전달 → canonical 기본값",
    "2_verifier": "verify(task_id, workspace_root='/home/jay/workspace') 가 PROJECT_PATH/WORKTREE_PATH/QC_EVIDENCE_ROOT env 미인식. report_path + git -C diff 둘 다 canonical",
    "3_effect": "finish-task #190 가 env 전파해도 canonical(task-2716 무관커밋) diff → ratio 0.00 false-negative → SKIP(PASS 아님)",
    "4_contrast": "git_evidence.verify(#190)는 _resolve_project_dir_with_source 로 env 인식 — file_touch_ratio_check 만 격차",
    "5_copies": "shared 1 + per-team 9 = 10 파일 전부 sha 동일(cf8f2cf3f91d, drift 0). git_evidence 와 동일 10-카피 구조"
  },
  "fix_design": {
    "recommended_locus_B": "verify 진입 시 PROJECT_PATH→WORKTREE_PATH→QC_EVIDENCE_ROOT env 해석(유효 git dir 시 사용, 없으면 workspace_root fallback). report_path+git diff 둘 다 해석된 root. git_evidence 선례 미러링. 10 카피 parity 수정.",
    "alt_locus_A": "qc_verify L563 에서 env-resolved root forward(비권장 단독 — 역시 10 카피)"
  },
  "expected_files_reality": {
    "count": "verifier 10 + regression 1 + report 1 (+ design 1) ≈ 12 — 통상 ≤4 초과(10-카피 구조 산물)",
    "chair_decision_needed": "(a) 10-카피 일괄(1 논리단위) vs (b) shared 만(per-team drift, 비권장) vs (c) 디듀프 별도 task",
    "recommendation": "(a) 10-카피 일괄 — git_evidence #190 선례와 동일"
  },
  "verification_caveat": "FAIL 오발 방지 — 정상 worktree 에서 PASS 유지, env 미설정 시 backward-compat(기존 동작). 기존 SKIP 조건(report 없음 등) 유지.",
  "production_code_modification": "YES (verifier 10 카피) → 회장 DISPATCH 승인 후에만 착수. 본 라운드는 audit-first 설계+DISPATCH_READY 보고만.",
  "team_candidate": "+17 dev6/+18 dev5/+19 dev2 회피 권장(idle dev1/dev3/dev4). #190 git_evidence env-인식 선례 익숙한 팀 우대 가능.",
  "callback_prereg_phaseB": "DEFER 유지(confirmed blocker 아님)",
  "backlogs_retained": ["CALLBACK_COLLECTOR_REEXECUTED_DOGFOOD_OR_DUPLICATE_VERIFICATION_CAVEAT", "OPERATIONAL_LOG_KEY_LITERAL_HYGIENE_BACKLOG", "G4_FIX_LOOP_CAP_PATTERN", "AUTO_MICROCOMMIT_WATCHER_PROCESS_CAVEAT", "PR_POST_CREATE_PRE_GEMINI_REPORT_SYNC_PROCESS_CAVEAT"],
  "production_activation": "not approved — 자동 진행 0",
  "verdict": "DISPATCH_READY (회장 확인: expected_files 10-카피 결정 + DISPATCH 승인 후 착수)"
}
