Forecast Variance Reconciliation / 预测偏差复核机制
Forecast Variance Reconciliation is the mechanic for the narrow but common afterlife of a checked forecast: the actual result lands somewhere relative to the forecast, and a later reader wants to cite that comparison.
Risk Forecast Commitment makes the forecast accountable before the decision proceeds. This mechanic begins after the future check exists. It prevents the checked variance from becoming a hidden accuracy flag, generic miss, or clean authority for the faction that benefited from the forecast.
Core Rule
When a checked outcome is consumed after a forecast, the game must create or update a forecast_variance_addendum row.
forecast_variance_addendum_required:
source_forecast:
source_forecast_row: storyteller.card.risk_forecast_commitment_docket.v1 | <equivalent>
forecast_owner: producer | management | sponsor | inspector | archive | editor | fan_public | route_claimant | explicit_absence | equivalent
beneficiary_if_clean_accuracy: <actor or explicit_absence>
check_result:
actual_check_surface: fan_oxygen_recheck | audience_grievance | lawful_recheck | sponsor_gate | capacity_liability | route_asset_maintenance | broadcast_reality | producer_license | equivalent
forecasted_range_or_claim: <range claim or explicit_absence>
actual_observed_result: <observed result>
variance_kind: within_range | above_range | below_range | wrong_reader | delayed_surface | hidden_harmed_reader | reserve_exhausted | equivalent
reconciliation:
owner_or_beneficiary_or_absence: producer | management | sponsor | inspector | archive | editor | route_claimant | explicit_absence | equivalent
harmed_reader_or_absence: fan_public | lawful_reader | sponsor_counterdesk | route_asset_holder | archive_reader | public_receipt_reader | explicit_absence
variance_state_after: reconciled | noticed_publicly | reserve_consumed | clawback_assigned | review_reopened | split_interpretation | unreconciled_false_accuracy | equivalent
future_reader_or_route_effect: accepted_with_addendum | public_notice_required | reserve_spent | clawback_due | recheck_required | split_required | blocked | recovery_only | equivalentThe mechanism fails if it records only forecast accurate, forecast wrong, risk score adjusted, or miss severity changed.
State-Triggered Entry
Open this mechanism only from live future-check pressure:
entry_state:
trigger_kind: state_pressure
source_forecast_row_present: true
actual_check_surface_present: true
variance_between_forecast_and_actual_visible: true
beneficiary_or_owner_visible_or_explicit_absence: true
harmed_reader_or_explicit_absence_visible: true
future_reader_consumes_variance_state: true
no_fixed_turn_trigger: true
no_fixed_day_or_week_trigger: true
no_raw_forecast_count_trigger: true
no_dashboard_or_lens_health_trigger: trueVariance States
| State | Meaning | Required consequence |
|---|---|---|
within_range | The outcome fits the forecast but still needs reader context. | Addendum preserves harmed reader and future use limit. |
above_range | Actual pressure exceeded the forecast. | Reserve, clawback, addendum, or recheck must absorb excess. |
below_range | Forecast overestimated risk or cost. | Beneficiary and excluded reader must be named before savings are spent. |
wrong_reader | The forecast checked the wrong consumer. | Future route needs split interpretation or recheck. |
delayed_surface | The check arrived late or on another surface. | Delay scar, addendum, or recovery-only route appears. |
reserve_exhausted | Hedge exists but is insufficient. | Reserve is spent and future cost remains. |
unreconciled_false_accuracy | A claimant books accuracy while hiding variance. | Default mutates future play. |
Branch Contract
Forecast Variance Reconciliation must offer or explicitly block these posture families:
- accept within-range addendum;
- publish variance notice;
- consume hedge reserve;
- assign owner clawback;
- reopen forecast review;
- split reader interpretation;
- unreconciled forecast variance default.
Each branch must produce different variance state, cost, and future route effect.
Future-Reader Acceptance Rule
A future route must read variance state before accepting a forecast as safe, accurate, or sufficient.
future_reader_acceptance_check:
source_forecast_row: <row>
actual_check_surface: <surface>
variance_state_after: <state>
accepted_states: []
rejected_or_costlier_states: []
required_addendum_or_absence: <addendum or explicit_absence>
route_effect_after_branch: accepted_with_addendum | notice_required | reserve_spent | clawback_due | recheck_required | split_required | blocked | recovery_onlyThe mechanic fails if reconciled, reserve_consumed, review_reopened, split_interpretation, and unreconciled_false_accuracy all unlock the same future route.
Default Contract
Unreconciled Forecast Variance Default fires or arms when:
- a checked result is filed as clean forecast accuracy without an addendum;
- the actual check surface is hidden;
- within-range is used as universal accuracy;
- an above-range result consumes a reserve without naming who is still harmed;
- a below-range result releases a beneficiary without naming the excluded reader;
- a wrong-reader or delayed-surface variance is treated as harmless;
- the future route accepts the forecast without variance state.
Counter Contract
Every branch resolution must mutate at least three durable surfaces:
required_delta_families:
relief:
- forecast_accuracy_legibility
- harmed_reader_notice
- false_accuracy_pressure_down
- future_reader_protected
cost_or_scar:
- owner_liability
- reserve_capacity_spent
- sponsor_stop_loss_pressure
- inspection_heat
- public_receipt_distrust
- producer_license_pressure
- handler_burden
future_state:
- accepted_with_addendum
- public_notice_required
- reserve_spent
- clawback_due
- recheck_required
- split_required
- blocked
- recovery_onlyNon-goals
Not a forecast generator, analytics subsystem, probability model, or replacement for forecast commitment. This mechanic only controls the checked variance and its future consumption.