{
  "fixture_id": "task-2553plus43.normal-callback-consumed.v1",
  "schema": "callback_4tuple_registry.regression_fixture.v1",
  "purpose": "Reproduce the +43 session-discontinuity observability gap (회장 §2.1 / diagnosis report_items.6): normal completion callback fired & ANU-received (E2EC61F2), one-shot cron auto-deleted, separate spawn session, no durable 4-tuple ledger. Additionally +43 had a minor collector .done/.done.acked non-creation vs +42. The durable registry MUST still yield NORMAL_CALLBACK_COMPLETED (regression 9).",
  "authority_ref": "memory/events/task-2553-callback-lifecycle-diagnosis_260518.json",
  "evidence_anchor": "schedule_history 4D770723(dispatch)/E2EC61F2(normal callback) + task-2553+43.{result,decision,wiring-candidates}",
  "chat_id": "6937032012",
  "gap_case": {
    "task_id": "task-2553+43",
    "description": "NORMAL_CALLBACK_REGISTERED_BUT_CONSUMED — fired & ANU-received; collector .done/.done.acked NOT created (minor, vs +42).",
    "durable_ledger_present": false,
    "classify_expected_without_ledger": "NO_LEDGER_RECORD",
    "collector_done_present": false,
    "note": "registry verdict must NOT depend on the missing .done — it depends on the durable ledger COMPLETED row (§3.B), so the minor collector inconsistency does not regress the verdict."
  },
  "resolved_case": {
    "task_id": "task-2553+43",
    "ledger_record": {
      "schema": "callback_4tuple_ledger_record.v1",
      "task_id": "task-2553+43",
      "dispatch_id": "4D770723",
      "dispatch_cron_id": "4D770723",
      "executor": "dev7-team 이참나",
      "chat_id": "6937032012",
      "normal_collector_cron_id": "E2EC61F2",
      "fallback_callback_cron_id": "FB-2553p43",
      "role": "executor",
      "status": "COMPLETED",
      "no_fallback": false,
      "ts_kst": "2026-05-18 10:28 KST"
    },
    "classify_expected_with_ledger": "NORMAL_CALLBACK_COMPLETED",
    "record_valid_expected": true,
    "identity_match_expected": true
  },
  "track_mismatch_probe": {
    "wrong_task_id": "task-2553+99",
    "classify_expected": "TRACK_MISMATCH",
    "note": "unrelated-task callback must NOT be cited (regression 16)."
  },
  "no_cron_invariants": {
    "ledger_cron_add_remove": 0,
    "guard_cron_add_remove": 0,
    "executor_completion_callback_is_cron_violation": false,
    "layer_b_executor_callback_preserved": true
  },
  "no_actor_attribution_change": true
}
