Add queue exports for Tier-2 and dispatch control lanes
This commit is contained in:
parent
486b061558
commit
556335238e
8 changed files with 2566 additions and 4 deletions
|
|
@ -31,6 +31,8 @@ Canonical derived outputs for the patch 1.06 executable.
|
|||
- `event-effects-building-bindings.json`
|
||||
- `economy-cargo-sources.json`
|
||||
- `building-type-sources.json`
|
||||
- `candidate-table-named-runs.json`
|
||||
- `compact-event-dispatch-cluster-counts.json`
|
||||
- `selected-year-bucket-ladder.json`
|
||||
|
||||
## Subgraphs and Branch Notes
|
||||
|
|
|
|||
2305
artifacts/exports/rt3-1.06/candidate-table-named-runs.json
Normal file
2305
artifacts/exports/rt3-1.06/candidate-table-named-runs.json
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,215 @@
|
|||
{
|
||||
"root_path": "rt3_wineprefix/drive_c/rt3_105/maps",
|
||||
"report": {
|
||||
"maps_scanned": 41,
|
||||
"maps_with_event_runtime_collection": 41,
|
||||
"maps_with_dispatch_strip_records": 38,
|
||||
"dispatch_strip_record_count": 318,
|
||||
"dispatch_strip_records_with_trigger_kind": 0,
|
||||
"dispatch_strip_records_missing_trigger_kind": 318,
|
||||
"dispatch_strip_payload_families": {
|
||||
"real_packed_nondirect_compact_v1": 318
|
||||
},
|
||||
"dispatch_descriptor_occurrence_counts": {
|
||||
"1 Player Cash": 3,
|
||||
"16 Company Track Pieces Buildable": 5,
|
||||
"39 Game Variable 1": 46,
|
||||
"40 Game Variable 2": 19,
|
||||
"41 Game Variable 3": 16,
|
||||
"42 Game Variable 4": 17,
|
||||
"43 Company Variable 1": 46,
|
||||
"44 Company Variable 2": 34,
|
||||
"45 Company Variable 3": 40,
|
||||
"46 Company Variable 4": 36,
|
||||
"47 Player Variable 1": 24,
|
||||
"48 Player Variable 2": 2,
|
||||
"49 Player Variable 3": 4,
|
||||
"50 Player Variable 4": 5,
|
||||
"506 Add Building Barracks": 2,
|
||||
"507 Add Building Bauxite Mine": 1,
|
||||
"52 Territory Variable 2": 1,
|
||||
"521 Add Building FarmGrain": 2,
|
||||
"526 Add Building Furniture Factory": 1,
|
||||
"528 Add Building Logging Camp": 2,
|
||||
"54 Territory Variable 4": 9,
|
||||
"548 Add Building Port01": 1,
|
||||
"563 Add Building Warehouse05": 1,
|
||||
"8 Economic Status": 47
|
||||
},
|
||||
"dispatch_descriptor_map_counts": {
|
||||
"1 Player Cash": 3,
|
||||
"16 Company Track Pieces Buildable": 4,
|
||||
"39 Game Variable 1": 22,
|
||||
"40 Game Variable 2": 9,
|
||||
"41 Game Variable 3": 8,
|
||||
"42 Game Variable 4": 8,
|
||||
"43 Company Variable 1": 25,
|
||||
"44 Company Variable 2": 22,
|
||||
"45 Company Variable 3": 18,
|
||||
"46 Company Variable 4": 19,
|
||||
"47 Player Variable 1": 12,
|
||||
"48 Player Variable 2": 2,
|
||||
"49 Player Variable 3": 3,
|
||||
"50 Player Variable 4": 3,
|
||||
"506 Add Building Barracks": 1,
|
||||
"507 Add Building Bauxite Mine": 1,
|
||||
"52 Territory Variable 2": 1,
|
||||
"521 Add Building FarmGrain": 1,
|
||||
"526 Add Building Furniture Factory": 1,
|
||||
"528 Add Building Logging Camp": 1,
|
||||
"54 Territory Variable 4": 1,
|
||||
"548 Add Building Port01": 1,
|
||||
"563 Add Building Warehouse05": 1,
|
||||
"8 Economic Status": 13
|
||||
},
|
||||
"unknown_descriptor_ids": [],
|
||||
"unknown_descriptor_special_condition_label_matches": [],
|
||||
"add_building_dispatch_record_count": 10,
|
||||
"add_building_dispatch_records_with_trigger_kind": 0,
|
||||
"add_building_dispatch_records_missing_trigger_kind": 10,
|
||||
"add_building_descriptor_occurrence_counts": {
|
||||
"506 Add Building Barracks": 2,
|
||||
"507 Add Building Bauxite Mine": 1,
|
||||
"521 Add Building FarmGrain": 2,
|
||||
"526 Add Building Furniture Factory": 1,
|
||||
"528 Add Building Logging Camp": 2,
|
||||
"548 Add Building Port01": 1,
|
||||
"563 Add Building Warehouse05": 1
|
||||
},
|
||||
"add_building_descriptor_map_counts": {
|
||||
"506 Add Building Barracks": 1,
|
||||
"507 Add Building Bauxite Mine": 1,
|
||||
"521 Add Building FarmGrain": 1,
|
||||
"526 Add Building Furniture Factory": 1,
|
||||
"528 Add Building Logging Camp": 1,
|
||||
"548 Add Building Port01": 1,
|
||||
"563 Add Building Warehouse05": 1
|
||||
},
|
||||
"add_building_row_shape_occurrence_counts": {
|
||||
"[0:8:-25,0:8:0,0:8:0]": 4,
|
||||
"[0:8:0,0:8:0,0:8:0,0:8:0]": 1,
|
||||
"[0:8:0,0:8:0,0:8:0]": 1,
|
||||
"[0:8:0]": 4
|
||||
},
|
||||
"add_building_row_shape_map_counts": {
|
||||
"[0:8:-25,0:8:0,0:8:0]": 1,
|
||||
"[0:8:0,0:8:0,0:8:0,0:8:0]": 1,
|
||||
"[0:8:0,0:8:0,0:8:0]": 1,
|
||||
"[0:8:0]": 3
|
||||
},
|
||||
"add_building_signature_family_occurrence_counts": {
|
||||
"nondirect-ge1e-h0001-0007-0000-5200-0200-p0000-0000-0000-ffff": 1,
|
||||
"nondirect-ge1e-h0001-0007-0000-6d00-0200-p0000-0000-0000-ffff": 1,
|
||||
"nondirect-ge1e-h0001-ffff-0004-0000-0200-p0000-0000-0000-ffff": 3,
|
||||
"nondirect-ge34-h0002-0007-0004-7300-0200-p0000-0000-ffff-ffff": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-7500-0200-p0000-0000-ffff-ffff": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-7b00-0200-p0000-0000-ffff-ffff": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-8500-0200-p0000-0000-ffff-ffff": 1,
|
||||
"nondirect-ge34-h0002-0022-0000-3200-0200-p0000-0000-0000-ffff": 1
|
||||
},
|
||||
"add_building_signature_family_map_counts": {
|
||||
"nondirect-ge1e-h0001-0007-0000-5200-0200-p0000-0000-0000-ffff": 1,
|
||||
"nondirect-ge1e-h0001-0007-0000-6d00-0200-p0000-0000-0000-ffff": 1,
|
||||
"nondirect-ge1e-h0001-ffff-0004-0000-0200-p0000-0000-0000-ffff": 2,
|
||||
"nondirect-ge34-h0002-0007-0004-7300-0200-p0000-0000-ffff-ffff": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-7500-0200-p0000-0000-ffff-ffff": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-7b00-0200-p0000-0000-ffff-ffff": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-8500-0200-p0000-0000-ffff-ffff": 1,
|
||||
"nondirect-ge34-h0002-0022-0000-3200-0200-p0000-0000-0000-ffff": 1
|
||||
},
|
||||
"add_building_condition_tuple_occurrence_counts": {
|
||||
"[-1:4]": 3,
|
||||
"[34:0,130:4]": 1,
|
||||
"[7:0]": 2,
|
||||
"[7:4,42:0]": 4
|
||||
},
|
||||
"add_building_condition_tuple_map_counts": {
|
||||
"[-1:4]": 2,
|
||||
"[34:0,130:4]": 1,
|
||||
"[7:0]": 2,
|
||||
"[7:4,42:0]": 1
|
||||
},
|
||||
"add_building_signature_condition_cluster_occurrence_counts": {
|
||||
"nondirect-ge1e-h0001-0007-0000-5200-0200-p0000-0000-0000-ffff :: [7:0]": 1,
|
||||
"nondirect-ge1e-h0001-0007-0000-6d00-0200-p0000-0000-0000-ffff :: [7:0]": 1,
|
||||
"nondirect-ge1e-h0001-ffff-0004-0000-0200-p0000-0000-0000-ffff :: [-1:4]": 3,
|
||||
"nondirect-ge34-h0002-0007-0004-7300-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-7500-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-7b00-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-8500-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": 1,
|
||||
"nondirect-ge34-h0002-0022-0000-3200-0200-p0000-0000-0000-ffff :: [34:0,130:4]": 1
|
||||
},
|
||||
"add_building_signature_condition_cluster_map_counts": {
|
||||
"nondirect-ge1e-h0001-0007-0000-5200-0200-p0000-0000-0000-ffff :: [7:0]": 1,
|
||||
"nondirect-ge1e-h0001-0007-0000-6d00-0200-p0000-0000-0000-ffff :: [7:0]": 1,
|
||||
"nondirect-ge1e-h0001-ffff-0004-0000-0200-p0000-0000-0000-ffff :: [-1:4]": 2,
|
||||
"nondirect-ge34-h0002-0007-0004-7300-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-7500-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-7b00-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": 1,
|
||||
"nondirect-ge34-h0002-0007-0004-8500-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": 1,
|
||||
"nondirect-ge34-h0002-0022-0000-3200-0200-p0000-0000-0000-ffff :: [34:0,130:4]": 1
|
||||
},
|
||||
"add_building_signature_condition_cluster_descriptor_keys": {
|
||||
"nondirect-ge1e-h0001-0007-0000-5200-0200-p0000-0000-0000-ffff :: [7:0]": [
|
||||
"563 Add Building Warehouse05"
|
||||
],
|
||||
"nondirect-ge1e-h0001-0007-0000-6d00-0200-p0000-0000-0000-ffff :: [7:0]": [
|
||||
"548 Add Building Port01"
|
||||
],
|
||||
"nondirect-ge1e-h0001-ffff-0004-0000-0200-p0000-0000-0000-ffff :: [-1:4]": [
|
||||
"16 Company Track Pieces Buildable",
|
||||
"39 Game Variable 1",
|
||||
"40 Game Variable 2",
|
||||
"41 Game Variable 3",
|
||||
"42 Game Variable 4",
|
||||
"43 Company Variable 1",
|
||||
"44 Company Variable 2",
|
||||
"46 Company Variable 4",
|
||||
"47 Player Variable 1",
|
||||
"48 Player Variable 2",
|
||||
"49 Player Variable 3",
|
||||
"50 Player Variable 4",
|
||||
"506 Add Building Barracks",
|
||||
"507 Add Building Bauxite Mine"
|
||||
],
|
||||
"nondirect-ge34-h0002-0007-0004-7300-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": [
|
||||
"528 Add Building Logging Camp"
|
||||
],
|
||||
"nondirect-ge34-h0002-0007-0004-7500-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": [
|
||||
"521 Add Building FarmGrain"
|
||||
],
|
||||
"nondirect-ge34-h0002-0007-0004-7b00-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": [
|
||||
"521 Add Building FarmGrain"
|
||||
],
|
||||
"nondirect-ge34-h0002-0007-0004-8500-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": [
|
||||
"528 Add Building Logging Camp"
|
||||
],
|
||||
"nondirect-ge34-h0002-0022-0000-3200-0200-p0000-0000-0000-ffff :: [34:0,130:4]": [
|
||||
"526 Add Building Furniture Factory"
|
||||
]
|
||||
},
|
||||
"add_building_signature_condition_cluster_non_add_building_descriptor_keys": {
|
||||
"nondirect-ge1e-h0001-0007-0000-5200-0200-p0000-0000-0000-ffff :: [7:0]": [],
|
||||
"nondirect-ge1e-h0001-0007-0000-6d00-0200-p0000-0000-0000-ffff :: [7:0]": [],
|
||||
"nondirect-ge1e-h0001-ffff-0004-0000-0200-p0000-0000-0000-ffff :: [-1:4]": [
|
||||
"16 Company Track Pieces Buildable",
|
||||
"39 Game Variable 1",
|
||||
"40 Game Variable 2",
|
||||
"41 Game Variable 3",
|
||||
"42 Game Variable 4",
|
||||
"43 Company Variable 1",
|
||||
"44 Company Variable 2",
|
||||
"46 Company Variable 4",
|
||||
"47 Player Variable 1",
|
||||
"48 Player Variable 2",
|
||||
"49 Player Variable 3",
|
||||
"50 Player Variable 4"
|
||||
],
|
||||
"nondirect-ge34-h0002-0007-0004-7300-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": [],
|
||||
"nondirect-ge34-h0002-0007-0004-7500-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": [],
|
||||
"nondirect-ge34-h0002-0007-0004-7b00-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": [],
|
||||
"nondirect-ge34-h0002-0007-0004-8500-0200-p0000-0000-ffff-ffff :: [7:4,42:0]": [],
|
||||
"nondirect-ge34-h0002-0022-0000-3200-0200-p0000-0000-0000-ffff :: [34:0,130:4]": []
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -64,6 +64,30 @@ The broader `compare-candidate-table` surface agrees with the same conclusion:
|
|||
- `difference_count = 43`, but those differences are still driven by the wider industrial mix,
|
||||
header words, and the zero-trailer-name set rather than by any unique `Warehouse05` bit
|
||||
|
||||
## Current Export Join
|
||||
|
||||
The checked-in Tier-2 evidence set now joins three canonical exports directly:
|
||||
|
||||
- `artifacts/exports/rt3-1.06/building-type-sources.json`
|
||||
- `artifacts/exports/rt3-1.06/event-effects-building-bindings.json`
|
||||
- `artifacts/exports/rt3-1.06/candidate-table-named-runs.json`
|
||||
|
||||
Taken together they keep the current frontier narrow and concrete:
|
||||
|
||||
- `building-type-sources.json` still shows the stock `Data/BuildingTypes` corpus only owns the
|
||||
bare source stems `port` and `warehouse`; the numbered `port00..11` / `warehouse00..11`
|
||||
families remain binding-only canonical stems rather than stock numbered assets.
|
||||
- `event-effects-building-bindings.json` is still the checked event-side naming surface that
|
||||
proves those numbered `Port%02d` / `Warehouse%02d` families matter to runtime dispatch.
|
||||
- `candidate-table-named-runs.json` now shows the shipped `37` probe-bearing maps split into two
|
||||
stable `00`-row families while keeping `Port01..11` fixed at rows `45..55` and
|
||||
`Warehouse01..11` fixed at rows `56..66` in every probe-bearing map.
|
||||
|
||||
So the open question is no longer whether the numbered families exist in stock assets, bindings,
|
||||
or shipped candidate tables. The real remaining question is which earlier seed/projection seam
|
||||
lets that fixed candidate-table cluster reach `0x00412d70` with nonzero bank-qualified state
|
||||
before `0x00419230` ever clones or renames it.
|
||||
|
||||
## Current Implication
|
||||
|
||||
The Tier 2 candidate/world-state rebuild strip remains plausible in general because it owns named
|
||||
|
|
@ -179,6 +203,9 @@ That makes the next Tier 2 question more concrete still:
|
|||
drives the later `Warehouse%02d` side in `Louisiana.gmp`
|
||||
- and whether that preserved bank/template state is the real bridge from the minimal recipe cluster
|
||||
to the shipped `5200 :: [7:0]` `Add Building Warehouse05` row
|
||||
- and, more concretely, which earlier seed/projection seam lets candidate-table rows
|
||||
`35/43/45..66` reach `0x00412d70` with nonzero `[candidate+0xba/+0xbb]` before the later
|
||||
rebank-or-clone owner `0x00419230` consumes them
|
||||
|
||||
## Later Consumer-Side Reads Already Narrowed
|
||||
|
||||
|
|
|
|||
|
|
@ -35,6 +35,8 @@ pub const REQUIRED_EXPORTS: &[&str] = &[
|
|||
"artifacts/exports/rt3-1.06/event-effects-building-bindings.json",
|
||||
"artifacts/exports/rt3-1.06/event-effects-semantic-catalog.json",
|
||||
"artifacts/exports/rt3-1.06/building-type-sources.json",
|
||||
"artifacts/exports/rt3-1.06/candidate-table-named-runs.json",
|
||||
"artifacts/exports/rt3-1.06/compact-event-dispatch-cluster-counts.json",
|
||||
"artifacts/exports/rt3-1.06/economy-cargo-sources.json",
|
||||
"artifacts/exports/rt3-1.06/selected-year-bucket-ladder.json",
|
||||
];
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ pub(super) fn push_acquisition_frontier_notes(
|
|||
.to_string(),
|
||||
);
|
||||
notes.push(
|
||||
"Installed-map cluster counts now sharpen that candidate lane too: the current rt3_105/maps corpus has 41 bundled maps, 38 of them with dispatch-strip rows, and 318 dispatch-strip records total, all still on the non-direct compact family with null trigger kind. The add-building subset inside that corpus is narrower still at 10 grouped occurrences across 7 recovered descriptor keys (Barracks, Bauxite Mine, FarmGrain, Furniture Factory, Logging Camp, Port01, Warehouse05), again all with null trigger kind. So the open question is no longer whether ordinary loaded rows can reach the 0x00431b20 strip at scale; it is specifically how any of those rows acquire or bypass the missing trigger-kind control lane."
|
||||
"Installed-map cluster counts now sharpen that candidate lane too: the checked-in export `artifacts/exports/rt3-1.06/compact-event-dispatch-cluster-counts.json` now captures the current rt3_105/maps corpus at 41 bundled maps, 38 of them with dispatch-strip rows, and 318 dispatch-strip records total, all still on the non-direct compact family with null trigger kind. The add-building subset inside that corpus is narrower still at 10 grouped occurrences across 7 recovered descriptor keys (Barracks, Bauxite Mine, FarmGrain, Furniture Factory, Logging Camp, Port01, Warehouse05), again all with null trigger kind. So the open question is no longer whether ordinary loaded rows can reach the 0x00431b20 strip at scale; it is specifically how any of those rows acquire or bypass the missing trigger-kind control lane."
|
||||
.to_string(),
|
||||
);
|
||||
notes.push(
|
||||
|
|
|
|||
|
|
@ -1252,6 +1252,12 @@
|
|||
`Port01..11` and `Warehouse01..11` runs stay fixed at rows `45..55` and `56..66` in every
|
||||
probe-bearing map. Trailer families split independently too: `28` maps keep the numbered rows
|
||||
on trailer `0x00000001`, while `9` maps keep the same row layout but zero the same trailers.
|
||||
The checked-in evidence join is explicit now too:
|
||||
`artifacts/exports/rt3-1.06/building-type-sources.json` still bounds the stock side to bare
|
||||
`port` / `warehouse`, `artifacts/exports/rt3-1.06/event-effects-building-bindings.json` keeps
|
||||
the numbered `Port%02d` / `Warehouse%02d` dispatch family grounded on the event side, and the
|
||||
new `artifacts/exports/rt3-1.06/candidate-table-named-runs.json` export keeps the scenario-side
|
||||
row families grounded across the shipped `37`-map probe-bearing corpus.
|
||||
Raw string presence is broader than that actual fixed-candidate-table seam too: `Port00`
|
||||
appears in all `41` shipped `.gmp` files, but `Central Pacific.gmp`, `Italy.gmp`,
|
||||
`Tex-Mex.gmp`, and `Texas Tea.gmp` do not expose the fixed candidate-table header at all. So
|
||||
|
|
@ -1425,6 +1431,10 @@
|
|||
`0x0050a1cd` keeps the same seeded rows out of one later availability branch. So the remaining
|
||||
Tier-2 seed question is now sharper: which source/live rows become the first seeded rows that let
|
||||
`0x00412d70` propagate nonzero bank bytes within that clone family?
|
||||
The same question can now be stated against the fixed shipped scenario rows too: which earlier
|
||||
seed/projection seam lets candidate-table rows `35/43/45..66` reach `0x00412d70` with nonzero
|
||||
`[candidate+0xba/+0xbb]` before the later rebank-or-clone strip `0x00419230` ever consumes
|
||||
them?
|
||||
The later rebank-or-clone owner is bounded now too. Direct disassembly of `0x00419230` shows one
|
||||
outer pass over bank selector `0` then `1`, with an inner `12`-ordinal sweep for each pass. For
|
||||
each `(bank, ordinal)` pair it scans already-linked aux/source rows by owner candidate id
|
||||
|
|
|
|||
|
|
@ -10,9 +10,10 @@ This file is the short active queue for the current runtime and reverse-engineer
|
|||
|
||||
## Current Active Items
|
||||
|
||||
- Keep the periodic-company trace as the main shellless simulation frontier.
|
||||
- Push the next static/rehost slice through the near-city industry acquisition owner seam under `0x004014b0`.
|
||||
- Keep the building style-family source pass focused on `0x004196c0 -> 0x00414490 -> 0x00416ce0 -> 0x00419230`.
|
||||
- Keep the periodic-company trace as the main shellless simulation frontier, with the next concrete control-lane pass focused on the ordinary loaded runtime-effect strip `0x00444d92 -> 0x00432f40(kind 8) -> 0x004323a0 -> 0x00431b20`.
|
||||
The checked `rt3_105/maps` compact-dispatch corpus is now exported directly: `41` maps scanned, `38` with dispatch-strip rows, `318` nondirect rows total, and the add-building subset is only `10` grouped occurrences across `7` descriptor keys, all still missing trigger kind. The active open question is therefore which ordinary loaded rows acquire or bypass the missing trigger-kind control lane before they can reach placed-structure mutation opcodes.
|
||||
- Keep the next static Tier-2 building pass focused on the earlier seed/projection seam into `0x00412d70`, not another broad `BuildingTypes` sweep.
|
||||
The grounded owner strip is `0x004196c0 -> 0x00414490 -> 0x00416ce0 -> 0x00419230`, but the active open question is which earlier seed/projection path lets the fixed candidate-table cluster at rows `35/43/45..66` reach `0x00412d70` with nonzero `[candidate+0xba/+0xbb]` before `0x00419230` clones or renames it.
|
||||
|
||||
## Preserved Detail
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue