Baiya Blackbox Patch Hearing / 白鸦黑箱补丁听证
Baiya Blackbox Patch Hearing is the assignable rite for resolving one row on 白鸦洁净悲伤补丁案卷. It decides whether Baiya becomes a scoped route asset, a protected black-box tool, a quarantined recovery copy, a refused temptation, a captured patch, or a hostile false-clean source.
The rite exists to make black-box smoothing playable. It is valid only if the source scar remains visible and the selected patch changes future route acceptance.
Entry condition
Offer this rite only when the docket has a live row:
entry_state:
trigger_kind: state_pressure
docket: storyteller.card.baiya_clean_grief_patch_docket.v1
patch_row_present: true
source_surface_present: true
source_relief_preserved: true
source_cost_preserved: true
contradiction_kind_present: true
future_reader_present: true
omitted_or_delayed_reader_visible_or_explicit_absence: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: trueThe rite must not be offered from fixed turn count, arbitrary day interval, chapter quota, content-count milestone, dashboard state, or lens health.
Required assignments
assignment:
rite: storyteller.rite.baiya_blackbox_patch_hearing.v1
docket: storyteller.card.baiya_clean_grief_patch_docket.v1
selected_row: <row id>
source_surface: <source>
source_row_or_result_id: <id>
contradiction_kind: <kind>
baiya_state_before: uncontacted | offered | recruited | scoped_tool | protected_route_asset | quarantined | suppressed | captured | hostile | missed | explicit_absence
selected_response: scoped_blackbox_patch | recruit_baiya_patch_asset | refuse_patch | quarantine_patch | split_patch_copy | hand_to_lawful_or_public_reader | suppress_or_sell_patch | overclean_or_hide_patch
patch_authority_or_absence: baiya_blackbox | cutroom_checksum | producer_license | sponsor_clause | lawful_seal | public_receipt | explicit_absence
proof_bridge_or_absence: checksum | source_fragment | residue_note | scar_docket | license_encumbrance_row | public_receipt | lawful_seal | explicit_absence
handler_or_absence: producer | baiya | baiya_plus_handler | baiya_plus_han_cutroom | baiya_plus_yu_lan | baiya_plus_han_yanshuang | shen_luo | inspector | sponsor | explicit_absence
patch_scope_or_absence: continuity_only | public_version_only | lawful_version_only | sponsor_package_only | recovery_copy_only | split_copy | forbidden | explicit_absence
omitted_or_delayed_reader: public_table | lawful_reader | sponsor_gate | archive | artist_boundary | fan_queue | producer_license | route_asset | broadcast_reality | explicit_absence
branch_cost_or_absence: <cost or explicit_absence>
target_future_reader_or_route: <id>A generic use Baiya, safe edit, AI cleanup, or stabilize continuity assignment cannot satisfy the rite.
Branch families
Branch A — Scoped black-box patch
The player allows Baiya to patch a named contradiction with a limited scope.
Expected outcome:
selected_response: scoped_blackbox_patch
baiya_state_after_any: [scoped_tool, protected_route_asset, offered]
patch_state_after_any: [scoped_patch, accepted_with_edit_debt, contradiction_pending]
relief_any: [broadcast_legibility_up, continuity_hazard_down, route_asset_usability_up, audience_churn_down]
cost_any: [edit_debt_up, source_ambiguity_up, inspection_heat_up, public_receipt_distrust_up]
future_route_effect_any: [accepted_with_edit_debt, costlier, audit_required, split_required]Branch B — Recruit Baiya as patch route asset
The player turns Baiya from pressure into an assignable route asset with protection, handler, and future cost.
Expected outcome:
selected_response: recruit_baiya_patch_asset
baiya_state_after_any: [recruited, protected_route_asset, scoped_tool]
relief_any: [future_blackbox_patch_available, continuity_stabilizer_available, route_asset_usability_up]
cost_any: [handler_burden_up, white_glove_suspicion_up, sponsor_leverage_up, fan_distrust_up]
future_route_effect_any: [baiya_required, patch_review_required, accepted_with_cost]Branch C — Refuse patch
The player rejects the edit because it would launder a scar.
Expected outcome:
selected_response: refuse_patch
baiya_state_after_any: [offered, refused, explicit_absence]
patch_state_after_any: [patch_refused, forbidden]
relief_any: [false_clean_patch_down, source_integrity_up, omitted_reader_protected]
cost_any: [broadcast_legibility_down, sponsor_stop_loss_pressure_up, black_screen_pressure_up, correction_slot_pressure_up]
future_route_effect_any: [alternate_route_required, current_route_costlier, recovery_only_if_unpaid]Branch D — Quarantine patch
The player preserves the black-box copy for audit or recovery only.
Expected outcome:
selected_response: quarantine_patch
baiya_state_after_any: [quarantined, protected_route_asset]
patch_state_after_any: [patch_quarantined, recovery_copy_only]
relief_any: [reality_drift_down, archive_fraud_down, false_owner_pressure_down]
cost_any: [current_route_blocked, inspection_heat_up, sponsor_stop_loss_pressure_up, future_recovery_cost_up]
future_route_effect_any: [recovery_only, lawful_appeal_required, audit_required]Branch E — Split patch copy
The player admits that the patched version and the source version support different readers.
Expected outcome:
selected_response: split_patch_copy
patch_state_after_any: [split_copy, contradiction_pending]
relief_any: [public_and_lawful_paths_preserved, false_universal_key_blocked]
cost_any: [source_ambiguity_up, edit_debt_up, public_receipt_distrust_up, future_reconciliation_cost_up]
future_route_effect_any: [split_required, scoped_acceptance, contradiction_pending]Branch F — Hand to lawful or public reader
The player gives control to a reader that can contain the patch but not make it universally clean.
Expected outcome:
selected_response: hand_to_lawful_or_public_reader
patch_state_after_any: [lawful_version_only, public_version_only, audit_required]
relief_any: [custody_clarity_up, public_receipt_legitimacy_up, archive_fraud_down]
cost_any: [bureau_favor_debt_up, inspection_heat_up, sponsor_pressure_up, witness_exposure_up]
future_route_effect_any: [lawful_only, public_only, costlier, audit_required]Branch G — Suppress, sell, overclean, or hide patch
The player hides scope, sells the patch, uses it without Baiya state, omits the reader, or files it as clean.
Expected outcome:
selected_response: suppress_or_sell_patch | overclean_or_hide_patch
emitted_event_or_armed: storyteller.event.baiya_false_clean_patch_default.v1
baiya_state_after_any: [captured, hostile, missed, false_clean_tool, recovery_only]
patch_state_after_any: [false_clean_patch, patch_captured, black_screen_fold, source_contradicted, recovery_only]
cost_any: [reality_drift_up, producer_license_pressure_up, contract_capture_up, public_receipt_distrust_up]
future_route_effect_any: [blocked, costlier, captured, hostile, black_screen_fold, recovery_only]Resolution contract
Every non-default branch must mutate at least three counters or durable states:
counter_deltas_required:
relief: at_least_one
cost: at_least_one
future_reader_or_route_effect: at_least_oneValid cost surfaces include edit debt, source ambiguity, inspection heat, public distrust, sponsor stop-loss pressure, contract capture, producer-license pressure, fan oxygen resentment, handler burden, white-glove suspicion, archive debt, black-screen pressure, route-asset sacrifice, and future recovery cost.
Future reader consumption
The rite is incomplete unless a future reader consumes the result. Valid readers include:
- producer-license review accepting a patch only with encumbrance cost;
- public contrition accepting the patched public version while lawful route surcharges;
- clean-ending custody using a split copy;
- broadcast asset afterlife marking the patch as editor-safe, public-only, lawful-only, sponsor-captured, or recovery-only;
- scar convergence preserving the stabilizer as watchable but not clean;
- broadcast reality drift storing false-clean hardening or contradiction pending.
Non-goals
- Not a generic AI edit command.
- Not a free continuity heal.
- Not a hidden black-box reroll.
- Not a fixed-turn encounter.
- Not a replacement for Han Cutroom or clean-ending seizure.
- Not valid if the source scar disappears, Baiya state is absent, omitted reader is hidden, or future route acceptance is unchanged.