Bound compact event loader and control copy seams

This commit is contained in:
Jan Petykiewicz 2026-04-19 00:55:11 -07:00
commit a760825376

View file

@ -4785,7 +4785,8 @@ fn build_periodic_company_service_trace_report(
"the trigger-kind field itself is now bounded as an ordinary loaded per-event lane rather than a startup-only special class: restore-side loader 0x00433130 repopulates live event collection 0x0062be18 from packed chunk family 0x4e21/0x4e22, and the event-detail editor strip 0x004d90ba..0x004d91ed writes [event+0x7ef] across the full 0x00..0x0a range through controls 0x4e98..0x4ea2, including kind 8 at 0x004d91b3".to_string(), "the trigger-kind field itself is now bounded as an ordinary loaded per-event lane rather than a startup-only special class: restore-side loader 0x00433130 repopulates live event collection 0x0062be18 from packed chunk family 0x4e21/0x4e22, and the event-detail editor strip 0x004d90ba..0x004d91ed writes [event+0x7ef] across the full 0x00..0x0a range through controls 0x4e98..0x4ea2, including kind 8 at 0x004d91b3".to_string(),
"that keeps 0x00444d92 -> 0x00432f40(kind 8) on the ordinary loaded runtime-effect pipeline too: world bring-up is servicing pre-existing rows from 0x0062be18 rather than a one-off startup-only record class synthesized outside the collection".to_string(), "that keeps 0x00444d92 -> 0x00432f40(kind 8) on the ordinary loaded runtime-effect pipeline too: world bring-up is servicing pre-existing rows from 0x0062be18 rather than a one-off startup-only record class synthesized outside the collection".to_string(),
"the event-detail editor family now ties that trigger-kind field to the ordinary runtime-effect builders too: selected-event control family 0x004db02a / 0x004db1b8..0x004db309 mirrors current [event+0x7ef] back into controls 0x4e98..0x4ea2 under root control 0x4e84, while editor-side builder 0x004db9e5..0x004db9f1 allocates a runtime-effect row from compact payload into 0x0062be18 through 0x00432ea0 before rebinding the selected event id".to_string(), "the event-detail editor family now ties that trigger-kind field to the ordinary runtime-effect builders too: selected-event control family 0x004db02a / 0x004db1b8..0x004db309 mirrors current [event+0x7ef] back into controls 0x4e98..0x4ea2 under root control 0x4e84, while editor-side builder 0x004db9e5..0x004db9f1 allocates a runtime-effect row from compact payload into 0x0062be18 through 0x00432ea0 before rebinding the selected event id".to_string(),
"bundle-side inspection now grounds the ordinary startup collection further too: the non-direct 0x4e99/0x4e9a/0x4e9b runtime-event collection decodes as a compact serializer family recovered from 0x00433060/0x00430d70/0x00433130 rather than an opaque raw blob, and sampled maps such as War Effort/British Isles/Germany/Texas Tea now decode their compact rows into actual condition/grouped summaries instead of signature-only parity".to_string(), "bundle-side inspection now grounds the ordinary startup collection further too: the non-direct 0x4e99/0x4e9a/0x4e9b runtime-event collection decodes as a compact serializer family recovered from 0x00433060/0x00430d70 plus the paired 0x00433130/0x0042db20 load path rather than an opaque raw blob, and sampled maps such as War Effort/British Isles/Germany/Texas Tea now decode their compact rows into actual condition/grouped summaries instead of signature-only parity".to_string(),
"the adjacent control-lane owner is bounded too now: nearby helper 0x0042e050 copies text bands plus [event+0x7ee..0x80f] between live runtime-event rows, which separates full event-control cloning from the narrower compact row-body loader 0x0042db20".to_string(),
], ],
blockers: vec![ blockers: vec![
"current atlas evidence now grounds one tuple-backed owner path too: loader tuple field [+0x0c] reaches [site+0x276] through 0x0046f073 / 0x004707ff -> 0x0040ef10, but the classified 0x004707ff caller belongs to multiplayer transport selector-0x13 rather than ordinary save-load restore, so a non-transport persisted source family is still needed for shellless acquisition".to_string(), "current atlas evidence now grounds one tuple-backed owner path too: loader tuple field [+0x0c] reaches [site+0x276] through 0x0046f073 / 0x004707ff -> 0x0040ef10, but the classified 0x004707ff caller belongs to multiplayer transport selector-0x13 rather than ordinary save-load restore, so a non-transport persisted source family is still needed for shellless acquisition".to_string(),
@ -4793,7 +4794,7 @@ fn build_periodic_company_service_trace_report(
"the paired collection-side triplet serializer 0x00413440 is ruled down too, so the missing ordinary restored-row owner seam likely sits outside the currently bounded direct allocator/finalize/store families and the tagged 0x36b1/0x36b2/0x36b3 load-save strip".to_string(), "the paired collection-side triplet serializer 0x00413440 is ruled down too, so the missing ordinary restored-row owner seam likely sits outside the currently bounded direct allocator/finalize/store families and the tagged 0x36b1/0x36b2/0x36b3 load-save strip".to_string(),
"the load-side stream owner 0x00413280 is ruled down to cached-source/candidate replay through vtable slot +0x40 and 0x0040ce60, so the missing ordinary restored-row owner seam still sits beyond the current stream-load bridge too".to_string(), "the load-side stream owner 0x00413280 is ruled down to cached-source/candidate replay through vtable slot +0x40 and 0x0040ce60, so the missing ordinary restored-row owner seam still sits beyond the current stream-load bridge too".to_string(),
"the checked ordinary restore ordering is ruled down too: 0x00413280 stream load, 0x00481210 dynamic side-buffer refresh, and 0x004133b0 local-runtime replay all sit on the bring-up strip without re-entering 0x004134d0 / 0x0040f6d0 / 0x0040ef10 for already-restored rows".to_string(), "the checked ordinary restore ordering is ruled down too: 0x00413280 stream load, 0x00481210 dynamic side-buffer refresh, and 0x004133b0 local-runtime replay all sit on the bring-up strip without re-entering 0x004134d0 / 0x0040f6d0 / 0x0040ef10 for already-restored rows".to_string(),
"the grouped opcode dispatcher 0x00431b20 is still not a tagged restore owner, but the remaining uncertainty is now narrower than compact row framing too: restore-side 0x00433130 reloads ordinary live event rows into 0x0062be18, 0x00433060/0x00430d70 serialize the compact non-direct bundle rows, the event-detail editor exposes [event+0x7ef] across 0x00..0x0a including kind 8, and sampled map bundles now decode into concrete grouped descriptors, so the open question is which serialized/live rows correlate to trigger kind 8 and which of those loaded rows can actually reach the placed-structure mutation opcodes under 0x00431b20".to_string(), "the grouped opcode dispatcher 0x00431b20 is still not a tagged restore owner, but the remaining uncertainty is now narrower than compact row framing too: restore-side 0x00433130 with 0x0042db20 reloads compact row bodies into ordinary live event rows in 0x0062be18, nearby 0x0042e050 is the separate full-event copy owner for [event+0x7ee..0x80f], the event-detail editor exposes [event+0x7ef] across 0x00..0x0a including kind 8, and sampled map bundles now decode into concrete grouped descriptors, so the open question is which serialized/live rows feed trigger kind 8 into that control lane and which of those loaded rows can actually reach the placed-structure mutation opcodes under 0x00431b20".to_string(),
], ],
}, },
SmpServiceConsumerHypothesis { SmpServiceConsumerHypothesis {
@ -9540,7 +9541,7 @@ fn parse_nondirect_event_runtime_record_summary(
.map(ascii_preview); .map(ascii_preview);
let mut notes = vec![ let mut notes = vec![
"decoded from compact non-direct 0x4e99/0x4e9a/0x4e9b map-bundle row framing recovered from the 0x430d70..0x431101 writer strip".to_string(), "decoded from compact non-direct 0x4e99/0x4e9a/0x4e9b map-bundle row framing recovered from the paired 0x433060/0x430d70 writer strip and 0x433130/0x42db20 loader strip".to_string(),
format!( format!(
"compact signature family = {}", "compact signature family = {}",
compact_nondirect_signature_family( compact_nondirect_signature_family(
@ -9573,6 +9574,9 @@ fn parse_nondirect_event_runtime_record_summary(
"compact non-direct grouped row counts by group = {:?}", "compact non-direct grouped row counts by group = {:?}",
grouped_effect_row_counts grouped_effect_row_counts
)); ));
notes.push(
"the compact non-direct row body reconstructs standalone/grouped rows only; the separate 0x42e050 full-event clone helper is the nearby owner that copies text bands plus control lane [event+0x7ee..0x80f] between live runtime-event rows".to_string(),
);
let decoded_conditions = decode_real_condition_rows(&standalone_condition_rows, None); let decoded_conditions = decode_real_condition_rows(&standalone_condition_rows, None);
@ -29467,7 +29471,8 @@ mod tests {
.iter() .iter()
.any(|line| line.contains("0x00431b20") .any(|line| line.contains("0x00431b20")
&& line.contains("0x00433130") && line.contains("0x00433130")
&& line.contains("0x00433060/0x00430d70") && line.contains("0x0042db20")
&& line.contains("0x0042e050")
&& line.contains("0x0062be18") && line.contains("0x0062be18")
&& line.contains("[event+0x7ef]") && line.contains("[event+0x7ef]")
&& line.contains("kind 8")) && line.contains("kind 8"))