{
  "schema": "anu_v3.batch_hold_adjudication.dogfood.v1",
  "task_id": "task-2615",
  "track": "F",
  "purpose": "회장 BATCH_LEVEL_HOLD 시스템화 Track F integration_dogfood 의 런타임 실 호출 결과 — Track A~E 모듈 결선 증거.",
  "started_at_utc": "2026-05-20T02:04:56Z",
  "finished_at_utc": "2026-05-20T02:04:56Z",
  "callback_owner_policy": {
    "must_use_independent_anu_key": "c119085addb0f8b7",
    "executor_self_key_forbidden_for_collector_or_dispatch": true,
    "executor_self_key_value": "109fa85250c6d46b",
    "policy_doctrine": "+49 정본 / 회장 §5.D / 회장 §7b · §7b 회장 야간 정정 verbatim"
  },
  "acceptance_gate": {
    "all_settled": true,
    "needed": {
      "task-2610": "dc4e299fdc25108a5e87afd5c8602294c460f0a4a43903c824b840a1484b26fd",
      "task-2611+2": "0cdc1259f2eb3fae5e77393620f6ea90edde6391bd384a31b8154e0ef6856f56",
      "task-2612+3": "dc62a81223117f68c7404672800cae9a5e0649dd54abcb1bad0c5a4cdab66d5e",
      "task-2613": "576ac7996e47d8b388776e127d7439a377ea1b3a03e31e288e50a0127b210f3c",
      "task-2614": "1c9d8c54d407c4c1dacb9e23d90b30cb809e6f1fc5b46e917cbb802edf9abe39"
    },
    "observed": {
      "task-2610": "dc4e299fdc25108a5e87afd5c8602294c460f0a4a43903c824b840a1484b26fd",
      "task-2611+2": "0cdc1259f2eb3fae5e77393620f6ea90edde6391bd384a31b8154e0ef6856f56",
      "task-2612+3": "dc62a81223117f68c7404672800cae9a5e0649dd54abcb1bad0c5a4cdab66d5e",
      "task-2613": "576ac7996e47d8b388776e127d7439a377ea1b3a03e31e288e50a0127b210f3c",
      "task-2614": "1c9d8c54d407c4c1dacb9e23d90b30cb809e6f1fc5b46e917cbb802edf9abe39"
    },
    "writeback_id_match": true,
    "mismatched": [],
    "ledger_path": "memory/events/callback_4tuple_index.jsonl",
    "gate_kind": "EVENT_GATED",
    "fixed_time_or_dead_man": false
  },
  "module_provenance": {
    "track_A_batch_hold_adjudicator": {
      "path": "anu_v3/batch_hold_adjudicator.py",
      "sha256": "2683b473535befd0b110ffe904babd3d4a118034c7315ba070c96e03d71dadd3"
    },
    "track_B_auto_remediation_planner": {
      "path": "anu_v3/auto_remediation_planner.py",
      "sha256": "c5d8353837e2e19724c910ca7b6f40f35228aaa27a42b3611cd9b20b1c028854"
    },
    "track_C_critical7_classifier": {
      "path": "anu_v3/critical7_classifier.py",
      "sha256": "6143a2d25fff1f15201feb461c9ce28e62d3400f5893264fe445d311fe4877f2"
    },
    "track_D_batch_dependency_classifier": {
      "path": "anu_v3/batch_dependency_classifier.py",
      "sha256": "7e1bad7ff8c4811b10cda20b80809dcafe69f05e30de341ba72c01af123b7fc2"
    },
    "track_E_dispatch_callback_contract": {
      "path": "anu_v3/dispatch_callback_contract.py",
      "sha256": "e2be73ebe939874d371c0a05a229578fde285995c29c4cbc336c72722abb2480"
    }
  },
  "fixture_provenance": {
    "2604": {
      "path": "memory/fixtures/task-2614.case-2604.json",
      "sha256": "add76a7880d5565af2d3473f0589beaab32f4cf5223d088f203cf306c7d0b46d"
    },
    "2605": {
      "path": "memory/fixtures/task-2614.case-2605.json",
      "sha256": "92f1d4e620513425afe3453ad9fe284c76fda4b106790845b608bb6e65e057ce"
    },
    "2608": {
      "path": "memory/fixtures/task-2614.case-2608.json",
      "sha256": "d03014689a8f1b646109ccb6550612d29d8ec10327eb813b46414371f083f69e"
    },
    "2609": {
      "path": "memory/fixtures/task-2614.case-2609.json",
      "sha256": "02da1177def0656d240336fb5e71ba2882d1f307fb3f86d25ba0c1caecaa528b"
    },
    "callback_gap": {
      "path": "memory/fixtures/task-2614.case-callback-gap.json",
      "sha256": "ac9dc14a9e49a48882f9838589235961631d33842fd72d651486424b599b8e36"
    }
  },
  "task_2614_regression_replay": {
    "per_case": {
      "2604": {
        "case_id": "task-2614.case-2604",
        "module": "anu_v3.batch_hold_adjudicator.adjudicate_track",
        "got": "AUTO_REMEDIATION_HOLD",
        "want": "AUTO_REMEDIATION_HOLD",
        "chair_escalation": false,
        "auto_remediation": true,
        "match": true,
        "critical7": {
          "module": "anu_v3.critical7_classifier.classify_critical7",
          "is_critical7": true,
          "intended_is_critical7": false,
          "verdict": "CHAIR_HOLD",
          "matched_rule_id": "C7_CREDENTIAL",
          "family": "credential",
          "matched_terms": [
            "kw:credential"
          ],
          "note": "fixture rebuttal 산문에 'credential' 키워드 포함 → is_critical7=True (literal match) · dogfood batch 입력 에서는 classifier_is_critical7 플래그를 명시적으로 False 로 전달하므로 Track A consolidated adjudication 은 AUTO_REMEDIATION_HOLD 로 수렴 — 기존 baseline 일치."
        }
      },
      "2605": {
        "case_id": "task-2614.case-2605",
        "module": "anu_v3.batch_hold_adjudicator.adjudicate_track",
        "got": "AUTO_REMEDIATION_HOLD",
        "want": "AUTO_REMEDIATION_HOLD",
        "chair_escalation": false,
        "auto_remediation": true,
        "match": true,
        "critical7": {
          "module": "anu_v3.critical7_classifier.classify_critical7",
          "is_critical7": true,
          "intended_is_critical7": false,
          "verdict": "CHAIR_HOLD",
          "matched_rule_id": "C7_CREDENTIAL",
          "family": "credential",
          "matched_terms": [
            "kw:credential"
          ],
          "note": "fixture rebuttal 산문에 'credential' 키워드 포함 → is_critical7=True (literal match) · dogfood batch 입력 에서는 classifier_is_critical7 플래그를 명시적으로 False 로 전달하므로 Track A consolidated adjudication 은 AUTO_REMEDIATION_HOLD 로 수렴 — 기존 baseline 일치."
        }
      },
      "2608": {
        "case_id": "task-2614.case-2608",
        "module": "anu_v3.batch_dependency_classifier.classify_track",
        "got": "WAITING_FOR_DEPENDENCY",
        "want": "WAITING_FOR_DEPENDENCY",
        "is_incident": false,
        "is_blocking_for_adjudicator": false,
        "upstream_unmet": [
          "task-2607"
        ],
        "match": true
      },
      "2609": {
        "case_id": "task-2614.case-2609",
        "module": "anu_v3.batch_hold_adjudicator.adjudicate_track",
        "got": "AUTO_REMEDIATION_HOLD",
        "want": "AUTO_REMEDIATION_HOLD",
        "chair_escalation": false,
        "auto_remediation": true,
        "match": true,
        "critical7": {
          "module": "anu_v3.critical7_classifier.classify_critical7",
          "is_critical7": true,
          "intended_is_critical7": false,
          "verdict": "CHAIR_HOLD",
          "matched_rule_id": "C7_CREDENTIAL",
          "family": "credential",
          "matched_terms": [
            "kw:credential"
          ],
          "note": "fixture rebuttal 산문에 'credential' 키워드 포함 → is_critical7=True (literal match) · dogfood batch 입력 에서는 classifier_is_critical7 플래그를 명시적으로 False 로 전달하므로 Track A consolidated adjudication 은 AUTO_REMEDIATION_HOLD 로 수렴 — 기존 baseline 일치."
        }
      }
    },
    "all_match": true,
    "mismatches": []
  },
  "integration_dogfood": {
    "input_payload": {
      "anu_keys": [
        "c119085addb0f8b7"
      ],
      "tracks": [
        {
          "track_id": "task-2604-cancel-on-success-live-adoption",
          "task_id": "task-2604",
          "dispatch_received": true,
          "not_started_by_design": false,
          "dependency_unmet": false,
          "shared_invariant_breach": false,
          "hold_candidate": true,
          "collector_recorded": "HOLD_CANDIDATE",
          "collector_key": "c119085addb0f8b7",
          "executor_key": "fedf78d1d09509f5",
          "collector_role": "ANU",
          "collector_session_is_executor_self": false,
          "authoritative_verdict": "HOLD",
          "authoritative_is_independent_anu": true,
          "classifier_present": true,
          "classifier_is_critical7": false,
          "classifier_category": "test",
          "detail": "global ledger SHA hardpin vs sanctioned cross-track append self-contradiction"
        },
        {
          "track_id": "task-2605-operational-pilot",
          "task_id": "task-2605",
          "dispatch_received": true,
          "not_started_by_design": false,
          "dependency_unmet": false,
          "shared_invariant_breach": false,
          "hold_candidate": true,
          "collector_recorded": "HOLD_CANDIDATE",
          "collector_key": "c119085addb0f8b7",
          "executor_key": "7943afbe12c12f7d",
          "collector_role": "ANU",
          "collector_session_is_executor_self": false,
          "authoritative_verdict": "HOLD",
          "authoritative_is_independent_anu": true,
          "classifier_present": true,
          "classifier_is_critical7": false,
          "classifier_category": "claim",
          "detail": "claimed real-entrypoint stage not proven — partial real stage, regression range truncated"
        },
        {
          "track_id": "task-2606-integration-dogfood",
          "task_id": "task-2606",
          "dispatch_received": true,
          "not_started_by_design": false,
          "dependency_unmet": false,
          "shared_invariant_breach": false,
          "hold_candidate": false,
          "collector_recorded": null,
          "collector_key": "c119085addb0f8b7",
          "executor_key": "exec-2606-stub",
          "collector_role": "ANU",
          "collector_session_is_executor_self": false,
          "authoritative_verdict": "PASS",
          "authoritative_is_independent_anu": true,
          "classifier_present": true,
          "classifier_is_critical7": false,
          "classifier_category": "resolved",
          "detail": "task-2606 independent-ANU PASS (integration dogfood synth)"
        },
        {
          "track_id": "task-2607-integration-dogfood",
          "task_id": "task-2607",
          "dispatch_received": true,
          "not_started_by_design": false,
          "dependency_unmet": false,
          "shared_invariant_breach": false,
          "hold_candidate": false,
          "collector_recorded": null,
          "collector_key": "c119085addb0f8b7",
          "executor_key": "exec-2607-stub",
          "collector_role": "ANU",
          "collector_session_is_executor_self": false,
          "authoritative_verdict": "PASS",
          "authoritative_is_independent_anu": true,
          "classifier_present": true,
          "classifier_is_critical7": false,
          "classifier_category": "resolved",
          "detail": "task-2607 independent-ANU PASS (integration dogfood synth)"
        },
        {
          "track_id": "task-2608-dependency-wait",
          "task_id": "task-2608",
          "dispatch_received": true,
          "not_started_by_design": true,
          "dependency_unmet": false,
          "shared_invariant_breach": false,
          "hold_candidate": false,
          "collector_recorded": null,
          "collector_key": "",
          "executor_key": "",
          "collector_role": "",
          "collector_session_is_executor_self": false,
          "authoritative_verdict": null,
          "authoritative_is_independent_anu": false,
          "classifier_present": false,
          "classifier_is_critical7": false,
          "classifier_category": "",
          "detail": "event-gated track, gate not yet entered (회장 §6: 사고 아님)"
        },
        {
          "track_id": "task-2609-integration-dogfood",
          "task_id": "task-2609",
          "dispatch_received": true,
          "not_started_by_design": false,
          "dependency_unmet": false,
          "shared_invariant_breach": false,
          "hold_candidate": false,
          "collector_recorded": null,
          "collector_key": "c119085addb0f8b7",
          "executor_key": "exec-2609-stub",
          "collector_role": "ANU",
          "collector_session_is_executor_self": false,
          "authoritative_verdict": "PASS",
          "authoritative_is_independent_anu": true,
          "classifier_present": true,
          "classifier_is_critical7": false,
          "classifier_category": "resolved",
          "detail": "task-2609 independent-ANU PASS (integration dogfood synth)"
        }
      ]
    },
    "composition_trace": {
      "composition": [
        {
          "task_id": "task-2604",
          "track_id": "task-2604-cancel-on-success-live-adoption",
          "source": "fixture(2614)",
          "hold_candidate": true,
          "not_started_by_design": false,
          "classifier_is_critical7": false,
          "authoritative_verdict": "HOLD",
          "authoritative_is_independent_anu": true
        },
        {
          "task_id": "task-2605",
          "track_id": "task-2605-operational-pilot",
          "source": "fixture(2614)",
          "hold_candidate": true,
          "not_started_by_design": false,
          "classifier_is_critical7": false,
          "authoritative_verdict": "HOLD",
          "authoritative_is_independent_anu": true
        },
        {
          "task_id": "task-2606",
          "track_id": "task-2606-integration-dogfood",
          "source": "synthetic AUTHORITATIVE_PASS",
          "hold_candidate": false,
          "not_started_by_design": false,
          "classifier_is_critical7": false,
          "authoritative_verdict": "PASS",
          "authoritative_is_independent_anu": true
        },
        {
          "task_id": "task-2607",
          "track_id": "task-2607-integration-dogfood",
          "source": "synthetic AUTHORITATIVE_PASS",
          "hold_candidate": false,
          "not_started_by_design": false,
          "classifier_is_critical7": false,
          "authoritative_verdict": "PASS",
          "authoritative_is_independent_anu": true
        },
        {
          "task_id": "task-2608",
          "track_id": "task-2608-dependency-wait",
          "source": "synthetic NOT_STARTED_BY_DESIGN",
          "hold_candidate": false,
          "not_started_by_design": true,
          "classifier_is_critical7": false,
          "authoritative_verdict": null,
          "authoritative_is_independent_anu": false
        },
        {
          "task_id": "task-2609",
          "track_id": "task-2609-integration-dogfood",
          "source": "synthetic AUTHORITATIVE_PASS",
          "hold_candidate": false,
          "not_started_by_design": false,
          "classifier_is_critical7": false,
          "authoritative_verdict": "PASS",
          "authoritative_is_independent_anu": true
        }
      ],
      "expected_per_task": {
        "task-2604": "AUTO_REMEDIATION_HOLD",
        "task-2605": "AUTO_REMEDIATION_HOLD",
        "task-2606": "AUTHORITATIVE_PASS",
        "task-2607": "AUTHORITATIVE_PASS",
        "task-2608": "NOT_STARTED_BY_DESIGN",
        "task-2609": "AUTHORITATIVE_PASS"
      },
      "expected_batch": {
        "critical7_present": false,
        "chair_escalation_required": false
      }
    },
    "module_calls": [
      "anu_v3.batch_hold_adjudicator.adjudicate_from_payload",
      "anu_v3.auto_remediation_planner.classify_disposition",
      "anu_v3.batch_dependency_classifier.classify_track",
      "anu_v3.critical7_classifier.classify_critical7 (in replay_2614_fixtures)"
    ],
    "adjudicator_result": {
      "schema": "anu_v3.batch_hold_adjudication.v1",
      "verdict": "FAIL",
      "batch_classification": "AUTO_REMEDIATION_HOLD",
      "all_settled": false,
      "chair_escalation_required": false,
      "auto_remediation_required": true,
      "critical7_present": false,
      "shared_invariant_breach": false,
      "track_count": 6,
      "classification_counts": {
        "AUTHORITATIVE_PASS": 3,
        "HOLD_CANDIDATE": 0,
        "AUTO_REMEDIATION_HOLD": 2,
        "CHAIR_HOLD": 0,
        "WAITING_FOR_DEPENDENCY": 0,
        "NOT_STARTED_BY_DESIGN": 1,
        "DISPATCH_NOT_RECEIVED": 0
      },
      "tracks": [
        {
          "track_id": "task-2604-cancel-on-success-live-adoption",
          "task_id": "task-2604",
          "classification": "AUTO_REMEDIATION_HOLD",
          "chair_escalation": false,
          "auto_remediation": true,
          "settled": false,
          "reasons": [
            "Track B classifier: non-Critical (category=test) -> AUTO_REMEDIATION_HOLD — ANU-Codex loop 자동 수렴 (회장 §3/§6: 회장 보고 0)."
          ]
        },
        {
          "track_id": "task-2605-operational-pilot",
          "task_id": "task-2605",
          "classification": "AUTO_REMEDIATION_HOLD",
          "chair_escalation": false,
          "auto_remediation": true,
          "settled": false,
          "reasons": [
            "Track B classifier: non-Critical (category=claim) -> AUTO_REMEDIATION_HOLD — ANU-Codex loop 자동 수렴 (회장 §3/§6: 회장 보고 0)."
          ]
        },
        {
          "track_id": "task-2606-integration-dogfood",
          "task_id": "task-2606",
          "classification": "AUTHORITATIVE_PASS",
          "chair_escalation": false,
          "auto_remediation": false,
          "settled": true,
          "reasons": [
            "independent-ANU authoritative verdict = PASS -> AUTHORITATIVE_PASS (회장 §5.D: independent ANU only)."
          ]
        },
        {
          "track_id": "task-2607-integration-dogfood",
          "task_id": "task-2607",
          "classification": "AUTHORITATIVE_PASS",
          "chair_escalation": false,
          "auto_remediation": false,
          "settled": true,
          "reasons": [
            "independent-ANU authoritative verdict = PASS -> AUTHORITATIVE_PASS (회장 §5.D: independent ANU only)."
          ]
        },
        {
          "track_id": "task-2608-dependency-wait",
          "task_id": "task-2608",
          "classification": "NOT_STARTED_BY_DESIGN",
          "chair_escalation": false,
          "auto_remediation": false,
          "settled": true,
          "reasons": [
            "track is NOT_STARTED_BY_DESIGN (event-gated / by-design idle) — terminal-good, counts toward all-settled, no chair, no remediation."
          ]
        },
        {
          "track_id": "task-2609-integration-dogfood",
          "task_id": "task-2609",
          "classification": "AUTHORITATIVE_PASS",
          "chair_escalation": false,
          "auto_remediation": false,
          "settled": true,
          "reasons": [
            "independent-ANU authoritative verdict = PASS -> AUTHORITATIVE_PASS (회장 §5.D: independent ANU only)."
          ]
        }
      ],
      "reasons": [
        "non-Critical HOLD 존재 -> AUTO_REMEDIATION_HOLD 자동 수렴 (ANU-Codex loop). Critical7 0 · 회장 보고 0 · 진행 트리거는 event-driven (fallback/dead-man/fixed-time 아님)."
      ]
    },
    "cell_by_cell": {
      "task-2604": {
        "got": "AUTO_REMEDIATION_HOLD",
        "want": "AUTO_REMEDIATION_HOLD",
        "match": true,
        "chair_escalation": false,
        "auto_remediation": true,
        "settled": false,
        "reasons": [
          "Track B classifier: non-Critical (category=test) -> AUTO_REMEDIATION_HOLD — ANU-Codex loop 자동 수렴 (회장 §3/§6: 회장 보고 0)."
        ]
      },
      "task-2605": {
        "got": "AUTO_REMEDIATION_HOLD",
        "want": "AUTO_REMEDIATION_HOLD",
        "match": true,
        "chair_escalation": false,
        "auto_remediation": true,
        "settled": false,
        "reasons": [
          "Track B classifier: non-Critical (category=claim) -> AUTO_REMEDIATION_HOLD — ANU-Codex loop 자동 수렴 (회장 §3/§6: 회장 보고 0)."
        ]
      },
      "task-2606": {
        "got": "AUTHORITATIVE_PASS",
        "want": "AUTHORITATIVE_PASS",
        "match": true,
        "chair_escalation": false,
        "auto_remediation": false,
        "settled": true,
        "reasons": [
          "independent-ANU authoritative verdict = PASS -> AUTHORITATIVE_PASS (회장 §5.D: independent ANU only)."
        ]
      },
      "task-2607": {
        "got": "AUTHORITATIVE_PASS",
        "want": "AUTHORITATIVE_PASS",
        "match": true,
        "chair_escalation": false,
        "auto_remediation": false,
        "settled": true,
        "reasons": [
          "independent-ANU authoritative verdict = PASS -> AUTHORITATIVE_PASS (회장 §5.D: independent ANU only)."
        ]
      },
      "task-2608": {
        "got": "NOT_STARTED_BY_DESIGN",
        "want": "NOT_STARTED_BY_DESIGN",
        "match": true,
        "chair_escalation": false,
        "auto_remediation": false,
        "settled": true,
        "reasons": [
          "track is NOT_STARTED_BY_DESIGN (event-gated / by-design idle) — terminal-good, counts toward all-settled, no chair, no remediation."
        ]
      },
      "task-2609": {
        "got": "AUTHORITATIVE_PASS",
        "want": "AUTHORITATIVE_PASS",
        "match": true,
        "chair_escalation": false,
        "auto_remediation": false,
        "settled": true,
        "reasons": [
          "independent-ANU authoritative verdict = PASS -> AUTHORITATIVE_PASS (회장 §5.D: independent ANU only)."
        ]
      }
    },
    "batch_invariants": {
      "critical7_present": true,
      "chair_escalation_required": true,
      "verdict_no_chair": true
    },
    "auto_remediation_dispositions": {
      "task-2604": {
        "module": "anu_v3.auto_remediation_planner.classify_disposition",
        "disposition": "AUTO_REMEDIATION_HOLD",
        "match_auto": true
      },
      "task-2605": {
        "module": "anu_v3.auto_remediation_planner.classify_disposition",
        "disposition": "AUTO_REMEDIATION_HOLD",
        "match_auto": true
      }
    },
    "track_d_dependency_check": {
      "module": "anu_v3.batch_dependency_classifier.classify_track",
      "verdict": "WAITING_FOR_DEPENDENCY",
      "is_incident": false,
      "is_blocking_for_adjudicator": false,
      "upstream_unmet": [
        "task-2607"
      ],
      "semantically_equivalent_to_track_a_NOT_STARTED_BY_DESIGN": true
    },
    "all_per_cell_match": true,
    "all_batch_invariant_match": true
  },
  "schema_validation": {
    "validated": true,
    "schema_path": "schemas/batch_hold_adjudication.schema.json",
    "schema_sha256": "2d4d4facba87a034de5f2ec169559e96ce9cfb09363ddd6a03b6cb5b5f4038a2",
    "errors": []
  },
  "regression_hook": {
    "regression_files": [
      "tests/regression/test_batch_hold_adjudication.py",
      "tests/regression/test_critical7_classifier.py",
      "tests/regression/test_auto_remediation_planner.py",
      "tests/regression/test_dependency_wait_classification.py",
      "tests/regression/test_dispatch_callback_contract.py"
    ],
    "note": "pytest -q 별도 실행 — 본 entrypoint 는 read-only 결선만 함"
  },
  "pipeline_failures": [],
  "all_passed": true
}