{
  "task_id": "task-2692",
  "captured_at": "2026-05-26T15:59:16.442323",
  "source": "memory/tasks/task-2692.md",
  "source_sha256": "123869957ee46fff7b0c12fce12b4eed84c4e969f955c7cad7d57469cea0b419",
  "allowed_resources": {
    "paths": [
      "utils/finish_task_timing_logger.py",
      "utils/main_conflict_preflight.py",
      "utils/task_mode_classifier.py",
      "utils/qc_verify.py (★ task_mode import 만 minimal · PR #153 사고 보강: 라인 수 5 미만)",
      "memory/logs/finish-task-timing.jsonl (★ schema · 초기 empty)",
      "memory/logs/.gitkeep",
      "tests/regression/task_mode_classifier/**",
      "tests/regression/main_conflict_preflight/**",
      "tests/regression/finish_task_timing_logger/**",
      "memory/events/task-2691+a.*",
      "memory/reports/task-2691+a.md",
      "memory/tasks/task-2691+a.md",
      "INDEX.md"
    ],
    "forbidden_paths": [
      "/home/jay/.claude/**",
      "/usr/local/bin/cokacdir",
      ".github/**",
      "**/.env*",
      "**/credentials*",
      "settings.json",
      "hooks/**",
      "dispatch.py",
      "Axis/**",
      "scripts/finish-task.sh (★ Phase 2 위임)",
      "scripts/cleanup-stale-tasks.sh (★ PR #153 scope leak)",
      "scripts/cleanup-workspace.py (★ PR #153 scope leak)",
      "scripts/file_cleanup.py (★ PR #153 scope leak)",
      "scripts/task_scope.py (★ PR #153 scope leak)",
      "scripts/git-hooks/** (★ PR #153 scope leak)",
      "scripts/pre_push_guard.py (★ PR #153 scope leak)",
      "memory/plans/tasks/task-2568/** (★ PR #153 scope leak)",
      "memory/plans/tasks/task-2569/** (★ PR #153 scope leak)",
      "memory/reports/task-2568.md (★ PR #153 scope leak)",
      "memory/reports/task-2569.md (★ PR #153 scope leak)",
      "memory/reports/task-2569+1.md (★ PR #153 scope leak)",
      "memory/specs/protection-list.json (★ PR #153 scope leak)",
      "memory/specs/protection-list.md (★ PR #153 scope leak)",
      "memory/task-timer.py (★ PR #153 scope leak)",
      "memory/tasks/task-2569.md (★ PR #153 scope leak)",
      "tests/regression/test_cleanup_workspace_protection_2569.py (★ PR #153)",
      "tests/regression/test_dispatch_smoke_2569_plus_1.py (★ PR #153)",
      "tests/regression/test_finish_task_stash_lifecycle_2569.py (★ PR #153)",
      "tests/regression/test_scope_guard_lock_sha_2569.py (★ PR #153)",
      "tests/regression/test_task_md_preservation_2569.py (★ PR #153)",
      "dispatch/__init__.py (★ PR #151/152 영역 + PR #153 overlap)",
      "dispatch/normal_fallback_callback_helper.py",
      "dispatch/prompt.py",
      "schemas/anu_normal_callback_envelope_v1.json",
      "utils/callback_authority_4source_validator.py",
      "utils/anu_callback_registrar.py",
      "utils/callback_collector_helper_integration.py",
      "utils/anu_codex_micro_refinement_loop.py",
      "utils/pr_watcher_terminal_state_classifier.py",
      "memory/capabilities/**"
    ],
    "commands": [
      "git log / git diff / git show / git add / git commit / git push / git worktree / git fetch / git status",
      "python3 -m pytest",
      "python3 -c",
      "python3 -m json.tool",
      "gh pr view / gh api / gh pr create",
      "ls / cat / wc / grep / find / tail / head / printf / sha256sum",
      "cokacdir --cron / cokacdir --cron-list / cokacdir --currenttime / cokacdir --cron-history"
    ],
    "merge_policy": "phase_1_fresh_retry_pr_create_no_merge_no_auto",
    "ttl_hours": 12
  }
}