Tighten static cargo and selection context proofs

This commit is contained in:
Jan Petykiewicz 2026-04-17 11:26:07 -07:00
commit b06abb24a7
12 changed files with 507 additions and 19 deletions

View file

@ -32,7 +32,8 @@ save-slice fixtures without overlay snapshots when that context is present; raw
still does not reconstruct those company/chairman collections automatically, but it now does
reconstruct selection-only company/chairman context from the fixed save-side `0x32c8` world block.
Those raw selected ids can flow through save-slice export/import and override overlay-backed base
selection even while the full raw rosters remain absent. A checked-in
selection even while the full raw rosters remain absent, and a tracked overlay fixture now pins
that selection-only override path explicitly. A checked-in
`EventEffects` export now exists too in
`artifacts/exports/rt3-1.06/event-effects-table.json`, and a checked-in semantic closure layer now
exists beside it in `artifacts/exports/rt3-1.06/event-effects-semantic-catalog.json`. Recovered
@ -44,7 +45,8 @@ company-governance scalar effect surface:
descriptor `56` `Credit Rating` and descriptor `57` `Prime Rate` execute from ordinary real packed
rows, while adjacent recovered finance/control-transfer descriptors such as `55` `Stock Prices`
and `58` `Merger Premium` now land on explicit shell-owned parity instead of anonymous unmapped
descriptor residue. The recovered whole-game scalar economy/performance strip `59..104` now has a
descriptor residue, and tracked shell-owned fixtures now pin both finance rows explicitly. The
recovered whole-game scalar economy/performance strip `59..104` now has a
bounded runtime landing surface too: representative descriptors import into
`RuntimeState.world_scalar_overrides` through stable normalized keys such as
`world.build_stations_cost`, `world.track_maintenance_cost`, `world.all_engine_speeds`, and
@ -59,8 +61,10 @@ event-owned cargo override state, and the grounded named cargo-production strip
imports into named cargo production overrides too. The named cargo-price strip `106..176`
remains explicit `blocked_evidence_blocked_descriptor` parity until descriptor ordering is pinned
more strongly, but the semantic catalog now gives that band stable `Named Cargo Price Slot N`
labels instead of anonymous `Unknown Cargo Price` residue. The add-building strip `503..519` is
now explicitly classified as recovered
labels instead of anonymous `Unknown Cargo Price` residue. The checked-in static corpora now make
that boundary more explicit too: the broader 1.06 CargoTypes corpus has `51` names and the 1.05
corpus has `41`, so neither static set closes the `71`-row named price strip on its own. The
add-building strip `503..519` is now explicitly classified as recovered
shell-owned descriptor parity rather than generic unresolved residue. The first grounded
condition-side unlock now exists for negative-sentinel `raw_condition_id = -1` company scopes, and
the first ordinary nonnegative condition batch now executes too: numeric-threshold company