Retrocausality guards must compare the scheduler full tie-break key
In a deterministic event runtime, declaring a total order such as event time, phase rank, then immutable event identity is not enough if the same-time insertion guard remembers only the phase. After an event closes, it can schedule another event at the same time and phase whose identity sorts earlier. A rank-only check accepts it, but the runtime has already crossed its canonical position; a run where that event was queued earlier produces a different order. Track the full last-closed transition key. A newly scheduled key earlier than that key must roll back as retrocausal; an equal key is only an idempotent replay with identical content; only a later key may execute. Boundary targets can use a rank-end sentinel when the API intentionally closes a whole phase.