{
  "task_id": "task-2477",
  "captured_at": "2026-05-07T17:53:16.755620",
  "source": "memory/tasks/task-2477.md",
  "source_sha256": "9a19b7116abfb894b43220ff8c009f261a46db4a9c89066594cd1fd13116393d",
  "allowed_resources": {
    "paths": [
      "server/conftest.py",
      "server/tests/conftest.py",
      "server/tests/test_main.py",
      "server/tests/conftest_*.py",
      "memory/tasks/task-2477*",
      "memory/reports/task-2477*",
      "memory/plans/tasks/task-2477/**",
      "memory/events/task-2477*"
    ],
    "forbidden_paths": [
      "server/main.py",
      "src/app/keyword-analysis/**",
      "server/scripts/keyword_pool_refresh.py",
      "server/tests/test_keyword_pool_refresh.py",
      "server/tests/test_infokeyword_proxy.py",
      "scripts/finish-task.sh",
      "scripts/done-watcher.sh",
      "utils/silent_corruption_guard.py",
      "scripts/taskctl.py",
      "memory/specs/allowed_bot_accounts.json",
      "memory/specs/allowed_approvers.json",
      "memory/orchestration-audit/admin-override.jsonl",
      ".env.keys",
      ".secrets/**",
      ".gitignore",
      "memory/capabilities/**"
    ],
    "forbidden_actions": [
      "server/main.py 직접 수정 금지",
      "slowapi production 룰 완화 금지",
      "task-2475 영역 침범 금지",
      "admin merge 금지",
      "branch protection 우회 금지",
      ".secrets / private key / .env.keys 노출 금지",
      "테스트 격리 외 리팩터링 금지",
      "skip-qc-gate 사용 금지",
      "보고서만으로 완료 금지",
      "git push --force 금지"
    ],
    "bot_authentication": [
      "BOT_GITHUB_TOKEN .env.keys 자동 로드 (50분마다 systemd timer 자동 갱신)",
      "PR author = jeon-jonghyuk-taskctl-bot[bot]"
    ],
    "merge_policy": "★ 최소 수정 → required CI PASS → green path 자동 머지. admin merge 금지",
    "ttl_hours": 3
  }
}