Expose linked-site world-cell chains in acquisition trace
This commit is contained in:
parent
a9b6b2c809
commit
7e9d536af0
2 changed files with 54 additions and 4 deletions
|
|
@ -4524,6 +4524,8 @@ fn build_periodic_company_service_trace_report(
|
|||
.to_string(),
|
||||
"[peer+0x08] refreshed during 0x00444690 -> 0x004133b0 -> 0x0040ee10 -> 0x0040edf6 -> 0x00480710"
|
||||
.to_string(),
|
||||
"world-cell owner and linked-site chains [cell+0xd4]/[cell+0xd6] republished during 0x00480710 via 0x0042bbf0/0x0042bbb0 and 0x0042c9f0/0x0042c9a0"
|
||||
.to_string(),
|
||||
];
|
||||
let near_city_acquisition_region_input_fields = vec![
|
||||
"[region+0x276] pending amount gate".to_string(),
|
||||
|
|
@ -4538,6 +4540,7 @@ fn build_periodic_company_service_trace_report(
|
|||
"0x0047fd50 linked-peer candidate-class gate over [candidate+0x8c] accepting only 0/1/2".to_string(),
|
||||
"[site+0x2a8] linked peer-site id consumed by 0x0040d1f0".to_string(),
|
||||
"[peer+0x08] route-entry anchor id consumed by 0x0047dda0".to_string(),
|
||||
"world-cell owner chain [cell+0xd4] and linked-site chain [cell+0xd6] republished by 0x00480710".to_string(),
|
||||
"linked-region status branch 0x0047de00 -> 0x0040c990".to_string(),
|
||||
];
|
||||
let near_city_acquisition_company_input_fields = vec![
|
||||
|
|
@ -4553,6 +4556,8 @@ fn build_periodic_company_service_trace_report(
|
|||
.to_string(),
|
||||
"peer-site bring-up replay path reconstructing [site+0x04], [site+0x2a8], and [peer+0x08]"
|
||||
.to_string(),
|
||||
"linked-site post-load replay republishing world-cell owner and linked-site chains through 0x0042bbf0/0x0042bbb0 and 0x0042c9f0/0x0042c9a0"
|
||||
.to_string(),
|
||||
"company stat-family lane 0x2329/0x0d already rehosted in runtime company state".to_string(),
|
||||
"chairman personality byte [profile+0x291] already reconstructed from raw save chairman rows"
|
||||
.to_string(),
|
||||
|
|
@ -4610,6 +4615,9 @@ fn build_periodic_company_service_trace_report(
|
|||
"0x0040ee10 live-site position/scalar refresh helper reaching 0x0040edf6 -> 0x00480710 and 0x0040e360".to_string(),
|
||||
"0x00480710 linked-site runtime side-buffer and route-entry-anchor refresh owner"
|
||||
.to_string(),
|
||||
"0x0042bbf0 / 0x0042bbb0 world-cell owner-chain refresh over [cell+0xd4]".to_string(),
|
||||
"0x0042c9f0 / 0x0042c9a0 world-cell linked-site-chain refresh over [cell+0xd6]"
|
||||
.to_string(),
|
||||
"0x0040df27 / 0x0040e00a / 0x0040edf6 concrete linked-site side-refresh callers of 0x00480710"
|
||||
.to_string(),
|
||||
"0x004160aa non-bring-up runtime caller of 0x0040ee10".to_string(),
|
||||
|
|
@ -27740,7 +27748,7 @@ mod tests {
|
|||
let trace = build_periodic_company_service_trace_report(&analysis);
|
||||
assert_eq!(trace.selected_company_id, Some(7));
|
||||
assert_eq!(trace.atlas_candidate_consumers.len(), 7);
|
||||
assert_eq!(trace.known_bridge_helpers.len(), 39);
|
||||
assert_eq!(trace.known_bridge_helpers.len(), 41);
|
||||
assert_eq!(trace.next_owner_questions.len(), 4);
|
||||
assert_eq!(trace.companies.len(), 1);
|
||||
assert_eq!(
|
||||
|
|
@ -27806,9 +27814,9 @@ mod tests {
|
|||
trace.peer_site_runtime_reconstruction_status,
|
||||
"restore_subset_and_bring_up_reconstruct_runtime_subset"
|
||||
);
|
||||
assert_eq!(trace.peer_site_runtime_reconstruction_steps.len(), 3);
|
||||
assert_eq!(trace.peer_site_runtime_reconstruction_steps.len(), 4);
|
||||
assert_eq!(trace.near_city_acquisition_region_input_fields.len(), 5);
|
||||
assert_eq!(trace.near_city_acquisition_peer_input_fields.len(), 6);
|
||||
assert_eq!(trace.near_city_acquisition_peer_input_fields.len(), 7);
|
||||
assert_eq!(trace.near_city_acquisition_company_input_fields.len(), 4);
|
||||
assert_eq!(
|
||||
trace.near_city_acquisition_shellless_readiness_status,
|
||||
|
|
@ -27818,7 +27826,7 @@ mod tests {
|
|||
trace
|
||||
.near_city_acquisition_runtime_backed_input_families
|
||||
.len(),
|
||||
5
|
||||
6
|
||||
);
|
||||
assert_eq!(trace.near_city_acquisition_remaining_owner_gaps.len(), 4);
|
||||
assert_eq!(trace.near_city_acquisition_region_lane_statuses.len(), 4);
|
||||
|
|
@ -27844,12 +27852,27 @@ mod tests {
|
|||
.iter()
|
||||
.any(|line| line.contains("[site+0x04]"))
|
||||
);
|
||||
assert!(
|
||||
trace
|
||||
.near_city_acquisition_peer_input_fields
|
||||
.iter()
|
||||
.any(|line| line.contains("[cell+0xd4]") && line.contains("[cell+0xd6]"))
|
||||
);
|
||||
assert!(
|
||||
trace
|
||||
.near_city_acquisition_company_input_fields
|
||||
.iter()
|
||||
.any(|line| line.contains("0x2329/0x0d"))
|
||||
);
|
||||
assert!(
|
||||
trace
|
||||
.near_city_acquisition_runtime_backed_input_families
|
||||
.iter()
|
||||
.any(|line| line.contains("0x0042bbf0")
|
||||
&& line.contains("0x0042bbb0")
|
||||
&& line.contains("0x0042c9f0")
|
||||
&& line.contains("0x0042c9a0"))
|
||||
);
|
||||
assert!(
|
||||
trace
|
||||
.near_city_acquisition_runtime_backed_input_families
|
||||
|
|
@ -27869,6 +27892,13 @@ mod tests {
|
|||
.any(|line| line.contains("[region+0x2a4]")
|
||||
&& line.contains("no region-class runtime writer"))
|
||||
);
|
||||
assert!(
|
||||
trace.peer_site_runtime_reconstruction_steps.iter().any(|line| {
|
||||
line.contains("[cell+0xd4]")
|
||||
&& line.contains("[cell+0xd6]")
|
||||
&& line.contains("0x0042bbf0/0x0042bbb0")
|
||||
})
|
||||
);
|
||||
assert!(trace.next_owner_questions.iter().any(|line| {
|
||||
line.contains("0x004160aa")
|
||||
&& line.contains("0x0040ee10")
|
||||
|
|
@ -27925,6 +27955,22 @@ mod tests {
|
|||
.iter()
|
||||
.any(|line| line.contains("0x00480710") && line.contains("route-entry-anchor"))
|
||||
);
|
||||
assert!(
|
||||
trace
|
||||
.known_bridge_helpers
|
||||
.iter()
|
||||
.any(|line| line.contains("0x0042bbf0")
|
||||
&& line.contains("0x0042bbb0")
|
||||
&& line.contains("[cell+0xd4]"))
|
||||
);
|
||||
assert!(
|
||||
trace
|
||||
.known_bridge_helpers
|
||||
.iter()
|
||||
.any(|line| line.contains("0x0042c9f0")
|
||||
&& line.contains("0x0042c9a0")
|
||||
&& line.contains("[cell+0xd6]"))
|
||||
);
|
||||
assert!(
|
||||
trace
|
||||
.known_bridge_helpers
|
||||
|
|
|
|||
|
|
@ -50,6 +50,10 @@ Working rule:
|
|||
- `0x0047dda0` consumes `[peer+0x08]` as the linked route-entry anchor id
|
||||
- `0x00480710 -> 0x0048abc0 / 0x00493cf0` is the linked-site refresh and route-entry rebind or
|
||||
synthesis strip above that anchor lane
|
||||
- the same `0x00480710` replay strip now also republishes the concrete world-cell owner chains:
|
||||
`0x0042bbf0 / 0x0042bbb0` remove or prepend the current site in the owner chain rooted at
|
||||
`[cell+0xd4]`, while `0x0042c9f0 / 0x0042c9a0` remove or prepend it in the linked-site chain
|
||||
rooted at `[cell+0xd6]`
|
||||
- late world bring-up `0x00444690` is the current caller of
|
||||
`0x004133b0 placed_structure_collection_refresh_local_runtime_records_and_position_scalars`
|
||||
- `0x004133b0` drains queued site ids through `0x0040e450` and then sweeps all live sites
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue