Route Tag Momentum Ledger / 路线标签动量账本
Route Tag Momentum Ledger records the source rows behind a future route claim before accumulated tags become a character gate, forced main seed, deck unlock, route asset, or ending reader state.
The ledger is not a route score. It proves which rows created the pressure, which rows are scarred or scoped, and which future reader is allowed to consume the result.
Required payload
route_tag_momentum_ledger:
card_id: storyteller.card.route_tag_momentum_ledger.v1
entry_context:
accumulated_route_tags_visible: true
source_broadcast_or_legacy_rows_min: 2
conflicting_route_families_min: 2
dominant_route_claim_visible: true
future_reader_or_route_consumes_momentum: true
source_broadcast_or_legacy_rows:
- row_id: <stable row id>
source_surface: on_screen_slot_readback | weekly_broadcast_cycle_audit | ending_scar_ledger | explicit_absence_register | broadcast_reality_drift | equivalent
route_tag: company | intimacy | liquidation | resistance | chaos | public_only | lawful_only | sponsor_captured | blackout_fold | recovery_only | equivalent
route_tag_scope: public | lawful | sponsor | archive | character | route_asset | ending | explicit_absence | equivalent
scar_or_cost: <scar cost debt contradiction or explicit_absence>
reader_that_accepted: <reader or explicit_absence>
reader_that_rejected_or_absence: <reader or explicit_absence>
future_claim: <route character forced main deck ending or explicit_absence>
dominant_route_claim:
claimed_route_family: company | intimacy | liquidation | resistance | chaos | equivalent
claiming_reader: forced_main | character_gate | deck_unlock | route_asset | ending_reader | sponsor | public_table | equivalent
raw_tag_count_or_hidden_row_used: false
conflicting_route_families:
- company
- intimacy
- liquidation
- resistance
- chaos
momentum_state_before: unreviewed | conflicted | sponsor_captured | split | scarred | recovery_only | equivalent
selected_posture: bind_dominant_route | split_route_momentum | convert_route_tag | quarantine_false_momentum | spend_momentum_with_scar | publish_route_addendum | false_route_momentum_default
momentum_state_after: dominant_bound_with_scope | split_momentum | converted_with_cost | quarantined_false_momentum | spent_with_scar | addendum_required | false_dominant | hostile_split | recovery_only | equivalent
harmed_or_deferred_reader: <reader or explicit_absence>
future_reader_or_route_effect: blocked | costlier | accepted_with_scope | addendum_required | contradiction_pending | ending_scar_required | recovery_only | equivalent
false_route_momentum_default_risk: none | armed | firedThe card fails if it only records total tag counts, route progress, route affinity, ending eligibility, or a dominant family without source rows.
Row rules
Every row must answer four questions:
- Which broadcast, cycle, legacy, scar, or explicit absence produced this route pressure?
- Which route family and reader scope did it actually support?
- Which scar, cost, rejected reader, or absence travels with it?
- What future claim is trying to consume it?
Valid entry surfaces
Create or update this ledger when:
- a route deck or route asset unlocks from accumulated tags;
- a character gate tests player route direction;
- a forced main slot selects future pressure from prior route tags;
- an ending reader asks for dominant route family;
- a sponsor, public table, archive, lawful reader, or route asset claims the current route identity;
- several scarred broadcast or cycle rows are about to be folded into one route claim.
Do not create the ledger from fixed turn count, day/week cleanup, raw route tag count, dashboard state, or lens-health state.
Non-goals
- Not a route score card.
- Not a generic achievements summary.
- Not an ending selector.
- Not valid unless source_broadcast_or_legacy_rows, route_tag, route_tag_scope, scar_or_cost, dominant_route_claim, conflicting_route_families, momentum_state_after, and future_reader_or_route_effect remain visible.