{
  "schema": "task.dispatch_decision.v1",
  "task_id": "task-2554+2",
  "team": "dev5",
  "lead": "marduk",
  "issued_at_kst": "2026-05-12",
  "owner_directive": "회장 §명시 옵션 E 해석 2 (2026-05-12 KST) — OWNER_TRIGGER_ONLY_CAPABILITY 5 layer 통합 완성",
  "level": "Lv.4",
  "track": "A (control-plane, replacement PR — PR #105 IMPLEMENTATION_INCOMPLETE_PER_OWNER_SPEC 회복)",
  "base_sha": "33d9792b299aa775c93047239cbf6a5a93cf7f28",
  "base_ref": "origin/main",
  "branch": "task/task-2554+2-dev5",
  "predecessor_pr": 105,
  "predecessor_head": "08f2d29ccb149fd721722e69909e45ceaebc71ba",
  "predecessor_classification": "IMPLEMENTATION_INCOMPLETE_PER_OWNER_SPEC",
  "layers_owner_spec_1to5": {
    "§1_runner": "anu_v2/owner_trigger_only.py",
    "§2_audit": "anu_v2/owner_trigger_audit.py",
    "§3_executor_integration": "anu_v2/merge_queue_executor.py",
    "§4_file_evidence": "memory/events/task-2554+2.*",
    "§5_regression_fixtures": "anu_v2/tests/test_*_2554plus2*.py / test_*_pr105.py / test_owner_trigger_*_same_head.py / test_owner_trigger_*_fail_closed.py / test_owner_trigger_token_unavailable.py / test_executor_posted_but_no_fresh_evidence.py"
  },
  "chain_policy": "code-changing 재발 시 자동 task-2554+3 발행 X — OWNER_DECISION_REQUIRED",
  "forbidden_paths": [
    "PR #98/#99/#100/#101/#102/#103/#104/#105 branch 변경 0",
    "scripts/ci.sh / dashboard/ / dispatch/ / team_prompts.py / .github/workflows/ / .env(.keys) 변경 0",
    "다른 task markers (task-2545~2554 외) 변경 0",
    "POC 영역 (memory/poc/, tools/poc/, tests/poc/) 변경 0",
    "main 직접 push 0",
    "다른 anu_v2 modules (worktree_cleanup, post_merge_smoke_runner, auto_gemini_triage, critical_escalation_reporter, replacement_pr_runner) Phase 외 변경 0 — merge_queue_executor 만 §3 hook minimal patch 허용"
  ]
}
