Facility Extraction Permit Review / 设施撤离许可复核

Facility Extraction Permit Review resolves whether a scoped extraction permit can be cited by a future reader.

The rite opens only from Facility Extraction Permit Docket. It must not open from fixed turn number, day/week cadence, raw room count, dashboard state, or lens health.

Assignment Required

assignment_required:
  docket: storyteller.card.facility_extraction_permit_docket.v1
  source_facility_row: <required>
  extraction_subject: <required>
  permit_holder_or_absence: <required>
  origin_node: <required>
  destination_node: <required>
  route_edge_or_missing_route: <required>
  permitted_scope: <required>
  excluded_reader_or_room_or_absence: <required>
  escort_or_proof_bridge_or_absence: <required>
  selected_posture: certify_narrow_extraction | split_escort_scope | service_corridor_reroute | ward_archive_seal | publish_public_receipt | refuse_permit | false_extraction_default

Branches

Certify narrow extraction

selected_posture: certify_narrow_extraction
permit_state_after: certified_named_scope
relief_any: [subject_extracted, route_asset_reached_destination, proof_seizure_down]
cost_any: [inspection_heat_up, escort_debt_up, handler_burden_up]
future_effect_any: [accepted_for_named_scope, route_costlier_if_scope_expands]

Split escort scope

selected_posture: split_escort_scope
permit_state_after: split_scope_required
relief_any: [lawful_and_public_versions_separated, false_clean_access_down]
cost_any: [schedule_pressure_up, handler_burden_up, public_addendum_due]
future_effect_any: [dual_reader_required, split_scope_required]

Service-corridor reroute

selected_posture: service_corridor_reroute
permit_state_after: service_reroute_costlier
relief_any: [seizure_avoided, proof_reaches_destination]
cost_any: [service_corridor_heat_up, runner_risk_up, proof_contamination_up]
future_effect_any: [service_route_costlier, corridor_witness_required]

Ward or archive seal

selected_posture: ward_archive_seal
permit_state_after: sealed_lawful_or_ward_only
relief_any: [ward_harm_down, archive_copy_preserved, false_public_use_down]
cost_any: [public_receipt_distrust_up, sponsor_pressure_up, lawful_addendum_due]
future_effect_any: [lawful_only, ward_only, public_addendum_required]

Publish public receipt

selected_posture: publish_public_receipt
permit_state_after: public_only_addendum_required
relief_any: [public_visibility_up, sponsor_room_claim_down, hidden_access_down]
cost_any: [witness_exposure_up, inspection_heat_up, facility_access_pressure_up]
future_effect_any: [public_only, lawful_annex_required, sponsor_route_costlier]

Refuse permit

selected_posture: refuse_permit
permit_state_after: blocked_or_recovery_only
relief_any: [false_clean_access_blocked, unsafe_extraction_down]
cost_any: [encounter_delay_up, route_asset_pressure_up, future_recovery_cost_up]
future_effect_any: [blocked_until_room_collision_review, recovery_only]

False extraction default

selected_posture: false_extraction_default
event_seen_or_armed: storyteller.event.false_facility_extraction_default.v1
permit_state_after: false_clean_extraction
relief_any: [immediate_access_seems_open]
cost_any: [wrong_reader_capture_up, public_receipt_distrust_up, future_recovery_cost_up]
future_effect_any: [false_clean_extraction, recovery_only]

Resolution Contract

Every branch must output:

resolution:
  permit_state_after: <state>
  future_reader_or_route_effect: <effect>
  event_seen_or_armed: storyteller.event.false_facility_extraction_default.v1 | none
  counter_deltas:
    relief:
      - <at least one relief>
    cost:
      - <at least one cost>
    future:
      - <at least one future reader or route effect>

No branch may let one extraction permit become universal clean access for every facility, encounter, lawful, public, archive, sponsor, editor, ward, floor, and route-asset reader.