Signal Escrow Counteroffer Mechanics
Signal Escrow Counteroffer Mechanics turns a previously escrowed signal into a priced later-reader state. It does not reopen the original live-signal custody question from Signal Escrow Readback. It starts when a later public, sponsor, archive, artist, inspector, lawful, or route reader offers or consumes a counteroffer that would otherwise make the old escrow look universally clean.
Entry Contract
signal_escrow_counteroffer:
trigger_kind: state_pressure
source_signal_escrow_visible: true
escrow_holder_visible: true
counteroffer_reader_visible: true
requested_future_use_visible: true
harmed_or_displaced_reader_visible_or_explicit_absence: true
proof_bridge_or_explicit_absence_visible: true
future_reader_or_route_consumes_escrow_state: true
player_can_accept_limit_bridge_split_quarantine_invert_or_default: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_signal_count_trigger: true
no_dashboard_or_lens_health_trigger: trueEscrow Counteroffer Row
A signal escrow counteroffer row requires:
- a source signal escrow row;
- the current escrow holder;
- the counteroffer reader;
- the requested future use;
- a harmed or displaced reader, or an explicit absence;
- a proof bridge, or an explicit absence;
- a selected posture;
- after-state and future route effect;
- named counter deltas.
The row is invalid if it stores only signal accepted, counteroffer approved, sponsor consent, route cleared, archive ok, signal fixed, or an implied all-reader repair.
Counteroffer States
signal_escrow_counteroffer_states:
- source_escrow_visible
- counteroffer_requested
- public_counteroffer_accepted
- sponsor_limited
- archive_bridged
- split_readers
- quarantined
- artist_option_required
- false_clean_counteroffer
- recovery_onlyBranch Contract
Every non-default branch must record:
signal_escrow_counteroffer_resolution:
source_signal_id: <source signal escrow row>
escrow_holder: <current holder or explicit_absence>
counteroffer_reader: public_receipt_table | sponsor_makegood | archive_clerk | artist_option_holder | inspector | route_reader | lawful_reader | equivalent
requested_future_use: public_receipt | sponsor_package | archive_export | artist_option | inspection_clearance | route_asset | broadcast_reality | ending_gate | equivalent
harmed_or_displaced_reader: public_reader | sponsor_reader | archive_reader | artist_reader | inspector_reader | lawful_reader | route_reader | explicit_absence
proof_bridge_or_explicit_absence: public_receipt | sponsor_exception | archive_checksum | artist_option_notice | inspector_hold | lawful_annex | route_custody_note | explicit_absence
selected_counteroffer_posture: accept_public_counteroffer | limit_sponsor_use | attach_archive_bridge | split_signal_readers | quarantine_counteroffer | invert_to_artist_option
escrow_state_after: <state>
relief_any: []
cost_any: []
future_effect_any: []
counter_deltas_min: 3Branch families are accept_public_counteroffer, limit_sponsor_use, attach_archive_bridge, split_signal_readers, quarantine_counteroffer, invert_to_artist_option, and false_signal_counteroffer_default. Every branch must record a cost and future reader effect; no branch may mark the escrow universally clean.
Default Conditions
False Signal Counteroffer Default fires or arms when:
- the counteroffer is accepted without a source signal row;
- escrow holder is implied instead of named;
- counteroffer reader and harmed reader collapse into one audience;
- proof bridge is absent but not marked explicit absence;
- future route consumes the signal as clean consent;
- raw signal count, day, dashboard state, or lens health declares the counteroffer safe.
Counter Surfaces
Allowed relief surfaces include public_receipt_legitimacy, sponsor_exception_bounded, archive_checksum_attached, reader_scope_visible, counteroffer_quarantined, and artist_control_restored.
Allowed cost surfaces include public_proof_pressure, sponsor_leverage, archive_burden, inspection_heat, artist_option_debt, future_route_cost, and false_clean_signal.
Allowed future surfaces include public_receipt_required, sponsor_limited, archive_bridge_required, split_required, quarantined, artist_option_required, and recovery_only.
Non-Goals
- Not a generic signal outage repair.
- Not a replacement for Signal Escrow Readback.
- Not a sponsor permission shortcut.
- Not valid when the only mutation is a stability counter, raw signal count, fixed day, or
signal_cleanflag.