Ground acquisition cached candidate bridge
This commit is contained in:
parent
261cc02e67
commit
b6a8f13483
2 changed files with 51 additions and 21 deletions
|
|
@ -4595,14 +4595,13 @@ fn build_periodic_company_service_trace_report(
|
||||||
let near_city_acquisition_site_cached_tri_lane_projection_status =
|
let near_city_acquisition_site_cached_tri_lane_projection_status =
|
||||||
"delta_reader_grounded_projection_missing".to_string();
|
"delta_reader_grounded_projection_missing".to_string();
|
||||||
let near_city_acquisition_candidate_subtype_projection_status =
|
let near_city_acquisition_candidate_subtype_projection_status =
|
||||||
"owner_strip_grounded_backing_record_projection_missing".to_string();
|
"cached_candidate_id_bridge_grounded_projection_missing".to_string();
|
||||||
let near_city_acquisition_backing_record_projection_status =
|
let near_city_acquisition_backing_record_projection_status =
|
||||||
"selector_owner_grounded_projection_sufficient_for_peer_helpers_not_candidate_row"
|
"cached_source_candidate_bridge_grounded_projection_missing".to_string();
|
||||||
.to_string();
|
|
||||||
let near_city_acquisition_projection_hypotheses = vec![
|
let near_city_acquisition_projection_hypotheses = vec![
|
||||||
SmpServiceConsumerHypothesis {
|
SmpServiceConsumerHypothesis {
|
||||||
label: "site_owner_and_self_id_replay_from_post_load_refresh".to_string(),
|
label: "site_owner_and_self_id_replay_from_post_load_refresh".to_string(),
|
||||||
status: "bounded_candidate".to_string(),
|
status: "ruled_down_local_runtime_only".to_string(),
|
||||||
candidate_consumers: vec![
|
candidate_consumers: vec![
|
||||||
"0x00444690 late world bring-up caller".to_string(),
|
"0x00444690 late world bring-up caller".to_string(),
|
||||||
"0x004133b0 placed-structure local-runtime replay owner".to_string(),
|
"0x004133b0 placed-structure local-runtime replay owner".to_string(),
|
||||||
|
|
@ -4613,14 +4612,15 @@ fn build_periodic_company_service_trace_report(
|
||||||
"[site+0x276] live owner-company meaning is grounded through 0x0047efe0 / 0x0040d210".to_string(),
|
"[site+0x276] live owner-company meaning is grounded through 0x0047efe0 / 0x0040d210".to_string(),
|
||||||
"[site+0x2a4] self-id meaning is grounded through 0x0041f7e0 / 0x0041f810 / 0x0041f850".to_string(),
|
"[site+0x2a4] self-id meaning is grounded through 0x0041f7e0 / 0x0041f810 / 0x0041f850".to_string(),
|
||||||
"0x00444690 -> 0x004133b0 -> 0x0040ee10 is the current checked-in replay family above live placed structures".to_string(),
|
"0x00444690 -> 0x004133b0 -> 0x0040ee10 is the current checked-in replay family above live placed structures".to_string(),
|
||||||
|
"0x004133b0 rebuilds cloned local-runtime records through 0x0040e450 and 0x0040ee10 only republishes local position/scalar triplets before 0x0040e360".to_string(),
|
||||||
],
|
],
|
||||||
blockers: vec![
|
blockers: vec![
|
||||||
"no checked-in replay write ownership yet ties 0x004133b0 / 0x0040ee10 directly to [site+0x276] or [site+0x2a4]".to_string(),
|
"current atlas evidence does not tie 0x004133b0 / 0x0040ee10 directly to [site+0x276] or [site+0x2a4], so another owner strip is still needed for those lanes".to_string(),
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
SmpServiceConsumerHypothesis {
|
SmpServiceConsumerHypothesis {
|
||||||
label: "site_cached_tri_lane_payload_or_restore_owner".to_string(),
|
label: "site_cached_tri_lane_payload_or_restore_owner".to_string(),
|
||||||
status: "bounded_candidate".to_string(),
|
status: "ruled_down_for_checked_in_save_seams_restore_family_still_open".to_string(),
|
||||||
candidate_consumers: vec![
|
candidate_consumers: vec![
|
||||||
"0x36b1/0x36b2/0x36b3 placed-structure triplet owner".to_string(),
|
"0x36b1/0x36b2/0x36b3 placed-structure triplet owner".to_string(),
|
||||||
"0x00455fc0 shared tagged payload loader".to_string(),
|
"0x00455fc0 shared tagged payload loader".to_string(),
|
||||||
|
|
@ -4629,27 +4629,31 @@ fn build_periodic_company_service_trace_report(
|
||||||
evidence: vec![
|
evidence: vec![
|
||||||
"0x0040cac0 is only the exact raw delta reader over [site+0x310/+0x338/+0x360]".to_string(),
|
"0x0040cac0 is only the exact raw delta reader over [site+0x310/+0x338/+0x360]".to_string(),
|
||||||
"the current binary write scan finds no direct placed-structure runtime writer for [site+0x310/+0x338/+0x360]".to_string(),
|
"the current binary write scan finds no direct placed-structure runtime writer for [site+0x310/+0x338/+0x360]".to_string(),
|
||||||
"current checked-in save owners still do not serialize those lanes directly, which keeps payload or restore ownership as the leading hypothesis".to_string(),
|
"current checked-in save owners still do not serialize those lanes directly, which rules down the known save seams while leaving a later restore family open".to_string(),
|
||||||
],
|
],
|
||||||
blockers: vec![
|
blockers: vec![
|
||||||
"no checked-in triplet or side-buffer payload field is yet tied directly to the tri-lane".to_string(),
|
"no checked-in triplet or side-buffer payload field is tied directly to the tri-lane, and no later restore owner is grounded yet".to_string(),
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
SmpServiceConsumerHypothesis {
|
SmpServiceConsumerHypothesis {
|
||||||
label: "backing_record_selector_to_candidate_subtype_projection".to_string(),
|
label: "cached_source_candidate_id_to_subtype_projection".to_string(),
|
||||||
status: "bounded_candidate".to_string(),
|
status: "cached_candidate_bridge_grounded_restore_projection_missing".to_string(),
|
||||||
candidate_consumers: vec![
|
candidate_consumers: vec![
|
||||||
"0x0045c150 -> 0x0045c310 -> 0x0045c36e -> 0x00456100 -> 0x00455b70".to_string(),
|
"0x0045c150 -> 0x0045c310 -> 0x0045c36e -> 0x00456100 -> 0x00455b70".to_string(),
|
||||||
"0x0052edf0 base constructor seeding [site+0x04]".to_string(),
|
"0x0040cd70 cached source/candidate resolver seeding [site+0x3cc/+0x3d0]".to_string(),
|
||||||
|
"0x0040cee0 cached candidate resolver through 0x0062b268".to_string(),
|
||||||
"0x004131f0 -> 0x00412fb0 -> 0x004120b0 -> 0x00412ab0 aux-candidate load chain".to_string(),
|
"0x004131f0 -> 0x00412fb0 -> 0x004120b0 -> 0x00412ab0 aux-candidate load chain".to_string(),
|
||||||
],
|
],
|
||||||
evidence: vec![
|
evidence: vec![
|
||||||
"[site+0x04] backing-record selector owner is grounded".to_string(),
|
"[site+0x04] backing-record selector owner is grounded, but the stronger checked-in bridge is now [site+0x3cc/+0x3d0]".to_string(),
|
||||||
|
"0x0040cd70 rebuilds cached source id [site+0x3cc] and candidate/profile id [site+0x3d0]".to_string(),
|
||||||
|
"0x0040cee0 resolves cached candidate id [site+0x3d0] back into the live candidate pool 0x0062b268".to_string(),
|
||||||
|
"0x004138f0 already counts live placed structures by cached candidate id [site+0x3d0], confirming that lane as a real live selector bridge".to_string(),
|
||||||
"candidate subtype ownership is bounded under the aux-candidate load and stem-policy chain".to_string(),
|
"candidate subtype ownership is bounded under the aux-candidate load and stem-policy chain".to_string(),
|
||||||
"0x0040d360 only consumes the loaded candidate subtype byte [candidate+0x32] == 4".to_string(),
|
"0x0040d360 only consumes the loaded candidate subtype byte [candidate+0x32] == 4".to_string(),
|
||||||
],
|
],
|
||||||
blockers: vec![
|
blockers: vec![
|
||||||
"no checked-in bridge yet maps one restored [site+0x04] selector value back onto the loaded aux-candidate row used by 0x0040d360".to_string(),
|
"no checked-in replay or restore owner yet guarantees the cached candidate id bridge [site+0x3d0] is projected for the acquisition-side rows before 0x0040d360 runs".to_string(),
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
@ -4657,7 +4661,7 @@ fn build_periodic_company_service_trace_report(
|
||||||
"save-native or replay projection of placed-structure owner-company field [site+0x276] for the acquisition-side owner-present gate; the live meaning is already grounded through 0x0047efe0".to_string(),
|
"save-native or replay projection of placed-structure owner-company field [site+0x276] for the acquisition-side owner-present gate; the live meaning is already grounded through 0x0047efe0".to_string(),
|
||||||
"save or replay projection of [site+0x2a4] as the current record's placed-structure id lane before 0x004269b0 commits the chosen site".to_string(),
|
"save or replay projection of [site+0x2a4] as the current record's placed-structure id lane before 0x004269b0 commits the chosen site".to_string(),
|
||||||
"save payload or restore owner for [site+0x310/+0x338/+0x360] cached tri-lane sampled by 0x0040cac0; current binary scan finds no direct placed-structure runtime writer".to_string(),
|
"save payload or restore owner for [site+0x310/+0x338/+0x360] cached tri-lane sampled by 0x0040cac0; current binary scan finds no direct placed-structure runtime writer".to_string(),
|
||||||
"aux-candidate projection from the restored backing-record selector [site+0x04] into the subtype byte consumed by 0x0040d360 as [candidate+0x32] == 4".to_string(),
|
"restore projection that guarantees cached candidate id bridge [site+0x3d0] is populated for the acquisition-side rows before 0x0040d360 consumes subtype byte [candidate+0x32] == 4".to_string(),
|
||||||
];
|
];
|
||||||
let near_city_acquisition_region_lane_statuses = vec![
|
let near_city_acquisition_region_lane_statuses = vec![
|
||||||
"[site+0x276] owner-present gate: consumed directly by 0x004014b0, and the live owner-company meaning is already grounded through 0x0047efe0, but its save-native or replay projection is still missing".to_string(),
|
"[site+0x276] owner-present gate: consumed directly by 0x004014b0, and the live owner-company meaning is already grounded through 0x0047efe0, but its save-native or replay projection is still missing".to_string(),
|
||||||
|
|
@ -27995,24 +27999,36 @@ mod tests {
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
trace.near_city_acquisition_candidate_subtype_projection_status,
|
trace.near_city_acquisition_candidate_subtype_projection_status,
|
||||||
"owner_strip_grounded_backing_record_projection_missing"
|
"cached_candidate_id_bridge_grounded_projection_missing"
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
trace.near_city_acquisition_backing_record_projection_status,
|
trace.near_city_acquisition_backing_record_projection_status,
|
||||||
"selector_owner_grounded_projection_sufficient_for_peer_helpers_not_candidate_row"
|
"cached_source_candidate_bridge_grounded_projection_missing"
|
||||||
);
|
);
|
||||||
assert_eq!(trace.near_city_acquisition_projection_hypotheses.len(), 3);
|
assert_eq!(trace.near_city_acquisition_projection_hypotheses.len(), 3);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
trace.near_city_acquisition_projection_hypotheses[0].label,
|
trace.near_city_acquisition_projection_hypotheses[0].label,
|
||||||
"site_owner_and_self_id_replay_from_post_load_refresh"
|
"site_owner_and_self_id_replay_from_post_load_refresh"
|
||||||
);
|
);
|
||||||
|
assert_eq!(
|
||||||
|
trace.near_city_acquisition_projection_hypotheses[0].status,
|
||||||
|
"ruled_down_local_runtime_only"
|
||||||
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
trace.near_city_acquisition_projection_hypotheses[1].label,
|
trace.near_city_acquisition_projection_hypotheses[1].label,
|
||||||
"site_cached_tri_lane_payload_or_restore_owner"
|
"site_cached_tri_lane_payload_or_restore_owner"
|
||||||
);
|
);
|
||||||
|
assert_eq!(
|
||||||
|
trace.near_city_acquisition_projection_hypotheses[1].status,
|
||||||
|
"ruled_down_for_checked_in_save_seams_restore_family_still_open"
|
||||||
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
trace.near_city_acquisition_projection_hypotheses[2].label,
|
trace.near_city_acquisition_projection_hypotheses[2].label,
|
||||||
"backing_record_selector_to_candidate_subtype_projection"
|
"cached_source_candidate_id_to_subtype_projection"
|
||||||
|
);
|
||||||
|
assert_eq!(
|
||||||
|
trace.near_city_acquisition_projection_hypotheses[2].status,
|
||||||
|
"cached_candidate_bridge_grounded_restore_projection_missing"
|
||||||
);
|
);
|
||||||
assert!(
|
assert!(
|
||||||
trace.near_city_acquisition_projection_hypotheses[0]
|
trace.near_city_acquisition_projection_hypotheses[0]
|
||||||
|
|
@ -28030,9 +28046,7 @@ mod tests {
|
||||||
trace.near_city_acquisition_projection_hypotheses[2]
|
trace.near_city_acquisition_projection_hypotheses[2]
|
||||||
.candidate_consumers
|
.candidate_consumers
|
||||||
.iter()
|
.iter()
|
||||||
.any(|line| line.contains(
|
.any(|line| line.contains("0x0040cd70 cached source/candidate resolver"))
|
||||||
"0x0045c150 -> 0x0045c310 -> 0x0045c36e -> 0x00456100 -> 0x00455b70"
|
|
||||||
))
|
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
trace
|
trace
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,23 @@ Working rule:
|
||||||
- the same trace now also carries three explicit projection hypotheses for the next pass:
|
- the same trace now also carries three explicit projection hypotheses for the next pass:
|
||||||
- `site_owner_and_self_id_replay_from_post_load_refresh`
|
- `site_owner_and_self_id_replay_from_post_load_refresh`
|
||||||
- `site_cached_tri_lane_payload_or_restore_owner`
|
- `site_cached_tri_lane_payload_or_restore_owner`
|
||||||
- `backing_record_selector_to_candidate_subtype_projection`
|
- `cached_source_candidate_id_to_subtype_projection`
|
||||||
|
- the first of those is now partly ruled down by the checked-in atlas:
|
||||||
|
`0x004133b0 -> 0x0040e450 / 0x0040ee10` rebuilds cloned local-runtime records and local
|
||||||
|
position/scalar triplets, but current evidence still does not tie that replay family directly
|
||||||
|
to `[site+0x276]` or `[site+0x2a4]`
|
||||||
|
- the second is narrower in the same way:
|
||||||
|
the checked-in `0x36b1/0x36b2/0x36b3` triplet seam and the
|
||||||
|
`0x4a9d/0x4a3a/0x4a3b` side-buffer seam still do not serialize `[site+0x310/+0x338/+0x360]`
|
||||||
|
directly, so the known save seams are ruled down even though a later restore family is still open
|
||||||
|
- the third hypothesis is now a cached source/candidate bridge question, not just a raw
|
||||||
|
`[site+0x04]` selector question:
|
||||||
|
`0x0040cd70` seeds `[site+0x3cc/+0x3d0]` from `0x62b2fc / 0x62b268`,
|
||||||
|
`0x0040cee0` resolves cached candidate id `[site+0x3d0]` back into the live candidate pool,
|
||||||
|
and `0x004138f0` already counts live placed structures by that cached candidate id
|
||||||
|
- that leaves the remaining subtype blocker narrower:
|
||||||
|
no checked-in replay or restore owner yet guarantees `[site+0x3d0]` is populated for the
|
||||||
|
acquisition-side rows before `0x0040d360` consumes candidate subtype byte `[candidate+0x32]`
|
||||||
- direct disassembly now shows the generic base constructor `0x0052edf0` clearing base state
|
- direct disassembly now shows the generic base constructor `0x0052edf0` clearing base state
|
||||||
through `0x0052ecd0` and then writing `[this+0x04]` from caller arg `1`
|
through `0x0052ecd0` and then writing `[this+0x04]` from caller arg `1`
|
||||||
- `0x00455b70` is the concrete placed-structure specialization constructor feeding
|
- `0x00455b70` is the concrete placed-structure specialization constructor feeding
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue