{
  "task_id": "task-2487",
  "captured_at": "2026-05-08T01:23:23.634937",
  "source": "memory/tasks/task-2487.md",
  "source_sha256": "e6294a92bd5f69238c5c76fb3577c30c15be2ea72c564269612269f10c7a434c",
  "allowed_resources": {
    "paths": [
      "dispatch/__init__.py",
      "scripts/done-watcher.py",
      "scripts/notify-completion.py",
      "scripts/auto_merge.py",
      "scripts/token-tracker.py",
      "scripts/pattern-detector.py",
      "scripts/report_utils.py",
      "scripts/start_task_guard.py",
      "dashboard/helpers.py",
      "report_parser.py",
      "tests/regression/test_*hardening_2487*.py",
      "memory/tasks/task-2487*",
      "memory/reports/task-2487*",
      "memory/plans/tasks/task-2487/**",
      "memory/events/task-2487*"
    ],
    "forbidden_paths": [
      "utils/task_id_parser.py",
      "utils/state_repair.py",
      "utils/g3_fail_classifier.py",
      "scripts/taskctl.py",
      "scripts/dispatch.py",
      "scripts/finish-task.sh",
      "scripts/refresh_bot_token.py",
      "scripts/gemini_review_gate.py",
      ".github/workflows/**",
      "teams/**",
      ".secrets/**",
      "memory/events/task-2472*",
      "memory/events/task-2479*",
      "memory/events/task-2481*",
      "memory/events/task-2483*",
      "memory/events/task-2484*",
      "memory/events/task-2485*",
      "memory/events/task-2486*",
      "memory/capabilities/**"
    ],
    "forbidden_actions": [
      "admin_override",
      "branch_protection_bypass",
      "force_merge",
      "hardcoded_task_id",
      "utils_task_id_parser_modification",
      "merge_all_groups_in_one_pr"
    ]
  }
}