Confidant Promise Hearing / 私约承诺听证

Confidant Promise Hearing is the assignable rite for deciding whether a private promise can be spent on a current route, proof, public statement, lawful appeal, sponsor copy, or management report.

The rite exists to make character trust playable without reducing it to affinity. It asks who trusted the producer, what was protected, what use is now requested, what scope was promised, and what character or route will inherit the scar.

Assignment requirements

assignment_required:
  docket: storyteller.card.confidant_promise_ledger.v1
  selected_promise_row: <row id>
  confidant_character: <named character or explicit_absence>
  protected_material: confession | refusal | source_identity | route_secret | witness_name | checksum | unreleased_take | private_boundary | equivalent
  requested_use: proof_anchor | public_addendum | lawful_appeal | sponsor_countercopy | management_metric | route_unlock | handler_authority | witness_protection | equivalent
  permission_scope_or_absence: private_only | named_hearing_only | anonymous_public | lawful_only | route_asset_only | emergency_only | disputed | explicit_absence
  pressure_actor: sponsor | archive | inspector | fan_public | management | editor | route_claimant | producer | equivalent
  threat_if_unused: route_blocked | legal_exposure | public_distrust | witness_unprotected | proof_gap | handler_burden | sponsor_capture | equivalent
  handler_or_absence: producer | shen_luo | yu_lan | han_yanshuang | baiya | ai_sheng | fan_delegate | lawful_clerk | archive_clerk | explicit_absence | equivalent
  shield_or_cost_or_absence: witness_payroll | anonymity_shell | lawful_seal | public_contrition | route_quarantine | substitute_proof | sponsor_release | handler_burden | explicit_absence | equivalent
  selected_posture: honor_privacy | renegotiate_consent | anonymize_source | protected_disclosure | trade_promise | refuse_use | public_breach | silent_breach_default
  future_character_or_route: <character route route asset ending scar or explicit_absence>

The rite fails if sponsor money, archive authority, public outrage, edit checksum, or a famous handler can spend private material without these slots.

Branch families

Honor privacy

The producer keeps the promise and refuses the requested use.

selected_posture: honor_privacy
relief_any:
  - confidant_trust_up
  - character_availability_preserved
  - source_exposure_down
cost_any:
  - route_asset_access_cost_up
  - proof_gap_up
  - sponsor_or_archive_pressure_up
future_effect_any:
  - substitute_proof_required
  - route_costlier
  - handler_burden_up

The character grants a narrower permission with visible scar.

selected_posture: renegotiate_consent
relief_any:
  - proof_legitimacy_up
  - route_access_partially_unlocked
  - character_notice_preserved
cost_any:
  - consent_debt_up
  - handler_burden_up
  - future_recovery_cost_up
future_effect_any:
  - scoped_use_only
  - further_notice_required
  - character_route_costlier

Anonymize source

The material can be used without exposing the character, but proof becomes less clean.

selected_posture: anonymize_source
relief_any:
  - source_exposure_down
  - public_or_lawful_use_possible
cost_any:
  - source_ambiguity_up
  - proof_legitimacy_contested
  - archive_debt_up
future_effect_any:
  - corroboration_required
  - contradiction_pending

Protected disclosure

The material enters a named hearing under shield.

selected_posture: protected_disclosure
relief_any:
  - lawful_or_public_hearing_unblocked
  - witness_protection_up
cost_any:
  - protected_witness_payroll_due
  - inspection_heat_up
  - route_delay_up
future_effect_any:
  - shield_required
  - witness_route_open_with_cost

Trade promise

A faction receives access or protection authority in exchange for route relief.

selected_posture: trade_promise
relief_any:
  - immediate_route_pressure_down
  - sponsor_or_archive_gate_opens
cost_any:
  - sponsor_capture_up
  - private_capture_up
  - public_receipt_distrust_up
future_effect_any:
  - faction_gate_required
  - character_route_costlier_or_hostile

Refuse use

The promise blocks the requested use and the game must find a replacement path.

selected_posture: refuse_use
relief_any:
  - breach_blocked
  - private_boundary_preserved
cost_any:
  - legal_exposure_up
  - public_distrust_up
  - proof_gap_up
future_effect_any:
  - lawful_appeal_required
  - public_addendum_required
  - substitute_proof_required

Public breach

The producer intentionally breaks the promise in public to solve a larger pressure.

selected_posture: public_breach
relief_any:
  - public_truth_unblocked
  - route_asset_unlocked
  - sponsor_or_archive_capture_blocked
cost_any:
  - confidant_trust_down
  - witness_exposure_up
  - recruitability_down
  - future_recovery_cost_up
future_effect_any:
  - hostile_witness_possible
  - public_contrition_required
  - route_open_with_character_scar

Silent breach default

The material is consumed without row, scope, shield, or future reader.

selected_posture: silent_breach_default
emitted_or_armed_event: storyteller.event.confidant_breach_default.v1
future_effect_any:
  - hostile
  - unavailable
  - recruit_missed
  - faction_bound
  - blocked
  - recovery_only

Counter contract

Every non-default branch must change at least three surfaces, with one relief, one cost, and one future character or route effect.

The rite cannot produce clean universal permission. A promise scoped to private trust cannot become sponsor-safe copy, lawful proof, public truth, management metric, route unlock, and broadcast reality all at once.

Non-goals

  • Not an affection check.
  • Not a generic handler assignment.
  • Not a free proof conversion.
  • Not a replacement for 受保护证人薪册.
  • Not valid unless the selected posture changes future character availability, route access, or proof state.