{
  "task_id": "task-2468",
  "captured_at": "2026-05-06T14:54:34.385384",
  "source": "memory/tasks/task-2468.md",
  "source_sha256": "ee8de499fecfa9ce263248042bca280813e6017f58549bc77141f186c2d4f6bd",
  "allowed_resources": {
    "paths": [
      "scripts/taskctl.py",
      "scripts/finish-task.sh",
      "scripts/worktree_manager.py",
      "scripts/g3_independent_verifier.py",
      "scripts/anu_confirm_bot/main.py",
      "scripts/lifecycle_guards.py",
      "scripts/gemini_severity_parser.py",
      "tests/taskctl/**",
      "tests/state_machine/**",
      "tests/lifecycle_guards/**",
      "memory/specs/allowed_bot_accounts.json",
      "memory/specs/allowed_approvers.json",
      "memory/orchestration-audit/admin-override.jsonl",
      "memory/specs/pr-lifecycle-spec*.md",
      "memory/specs/taskctl-state-machine-spec*.md",
      "memory/tasks/task-2468*",
      "memory/reports/task-2468*",
      "memory/plans/tasks/task-2468/**",
      ".github/workflows/ci.yml"
    ],
    "forbidden_paths": [
      "PR #29 / #30 / #31 / #32 / #33",
      "memory/events/task-2467+3*",
      "memory/reports/task-2467+3.md",
      "task-2465* / task-2466* / task-2467*",
      "dispatch.py",
      "memory/organization-structure.json",
      "bot_settings.json",
      ".env.keys",
      ".secrets/**",
      "memory/capabilities/**"
    ],
    "forbidden_actions": [
      "구현 없이 MD/spec만 수정 (회장 reject)",
      "task-2467+3 events/reports 수정 금지 (read-only)",
      "admin override 사용 금지",
      "gh pr merge / gh pr create 직접 호출 금지 (taskctl 외)",
      "git push origin main 직접 호출 금지",
      "GEMINI_API_KEY 도입 금지",
      "task-2469 (Phase D) 선행 금지"
    ],
    "bot_authentication": [
      "BOT_GITHUB_TOKEN .env.keys에서 자동 로드 (Installation token 갱신 cron 필요 시 별도 task)",
      "PR author = jeon-jonghyuk-taskctl-bot[bot] 강제",
      "approver != PR author 강제 (시스템 승인자 사용)"
    ],
    "merge_policy": "★ 본 task에서 만든 새 Guard 통과 시에만 머지 (drink your own champagne 두 번째)",
    "ttl_hours": 12
  }
}