Call Sheet Amendment Collision / 通告单改签碰撞机制

This mechanism makes late call-sheet edits durable. A changed assignment is not clean until the amendment, authority, affected reader, and future route effect are visible.

Mechanism promise

When a call sheet changes after another system has already relied on it, the game must ask:

Which version does the next reader consume, who authorized the change, and what cost proves the amendment is not a false clean schedule fact?

State-triggered entry

entry_state_required:
  trigger_kind: state_pressure
  source_call_sheet_or_amendment_visible: true
  official_call_sheet_claim_visible: true
  proposed_or_hidden_amendment_visible: true
  expected_subject_or_lane_visible: true
  amendment_authority_or_absence_visible: true
  affected_reader_visible: true
  later_reader_consumes_amendment: true
  future_route_consumes_amendment_state: true
  no_fixed_turn_trigger: true

Core objects

ObjectMeaningRequired field
amendment_ledgervisible row for the changed schedule factsource call sheet, amendment record, authority, reader, future effect
version_pairofficial version plus amended versionbefore/after subject or lane
authority_or_absencewho can vouch for the changenamed authority or explicit absence
reader_collisionthe route/system that consumes the wrong versionreader, contradiction, consequence
default_amendmenthidden change becoming schedule factnarrator, missing inputs, future scar

Amendment states

  • draft_change: visible but not accepted.
  • certified_with_delay: accepted with schedule cost.
  • public_countercopy: affected reader can contest the official sheet.
  • lawful_delay: legal or safety authority slows the slot.
  • rotated_with_receipt: substitution is priced and receipted.
  • quarantined_amendment: future route cannot consume either version cleanly.
  • scarred_absence: the change is refused as clean but recorded as missing.
  • silent_default_ready: hidden amendment can be captured by default.
  • silent_default_hardened: future reader treats the hidden change as fact.

Branch contract

Every branch must mutate at least three values:

  • one relief;
  • one cost;
  • one future reader or route effect.

Accepted future effects include route_costlier, public_countercopy_required, lawful_only, safety_hold, quarantined, blocked, hostile, recovery_only, and reader_acceptance_changed.

Integration

Non-goals

  • Not a generic scheduling note.
  • Not a raw staff-count check.
  • Not a fixed shift turnover.
  • Not valid if the amendment lacks authority or explicit absence.
  • Not valid if future route acceptance does not change.