Split peer-site restore and runtime inputs

This commit is contained in:
Jan Petykiewicz 2026-04-18 19:07:20 -07:00
commit 1d6eed09ab
2 changed files with 29 additions and 5 deletions

View file

@ -3475,6 +3475,10 @@ pub struct SmpPeriodicCompanyServiceTraceReport {
#[serde(default)]
pub peer_site_selector_candidate_helper_linkage: Vec<String>,
#[serde(default)]
pub peer_site_restore_input_fields: Vec<String>,
#[serde(default)]
pub peer_site_runtime_input_fields: Vec<String>,
#[serde(default)]
pub atlas_candidate_consumers: Vec<String>,
#[serde(default)]
pub known_bridge_helpers: Vec<String>,
@ -4074,6 +4078,17 @@ fn build_periodic_company_service_trace_report(
"0x0040d1e1 -> 0x0045c3c0 consumes the same owner family's [site+0x246] child lane"
.to_string(),
];
let peer_site_restore_input_fields = vec![
"[site+0x3cc] saved placed-structure id feeding 0x62b2fc".to_string(),
"[site+0x3d0] saved companion-region id from [placed+0x173] feeding 0x62b268".to_string(),
"0x5dc1 payload lane [owner+0x23e] feeding 0x0045c36e selector arg 1".to_string(),
"0x5dc1 payload lane [owner+0x242] companion lane paired with [owner+0x23e]".to_string(),
];
let peer_site_runtime_input_fields = vec![
"[site+0x04] live backing-record selector consumed by 0x0047efe0 / 0x0047fd50".to_string(),
"[site+0x2a8] linked peer-site id consumed by 0x0040d1f0".to_string(),
"[peer+0x08] route-entry anchor id consumed by 0x0047dda0".to_string(),
];
let atlas_candidate_consumers = vec![
"0x004019e0 periodic company outer service owner".to_string(),
"0x00406050 city-connection bonus/news owner".to_string(),
@ -4144,7 +4159,7 @@ fn build_periodic_company_service_trace_report(
"0x00409950 linked-transit roster sibling owner".to_string(),
];
let next_owner_questions = vec![
"Which minimum persisted site and peer fields behind the now-grounded local helper strip are sufficient to rehost 0x004014b0 shelllessly: [site+0x3cc/+0x3d0], the 0x5dc1-backed [owner+0x23e/+0x242] selector lanes, [site+0x2a8], [peer+0x08], or some smaller subset?".to_string(),
"Which minimum persisted fields are actually needed to rehost 0x004014b0 shelllessly once the selector seam is grounded: only the restore subset [site+0x3cc/+0x3d0] plus the 0x5dc1-backed [owner+0x23e/+0x242] lanes, or must the live runtime subset [site+0x04], [site+0x2a8], and [peer+0x08] also be materialized explicitly in the headless state contract?".to_string(),
"How much of the linked-peer refresh path is strictly post-load versus recurring runtime maintenance now that 0x004133b0 reaches 0x0040ee10 -> 0x0040edf6 -> 0x00480710 during bring-up and 0x004160aa also re-enters 0x0040ee10 later?".to_string(),
"Which persisted linkage fields behind 0x0047efe0, [region+0x2a4], and [region+0x276] are sufficient to rehost the 0x004014b0 proximity-and-news branch without shell state?".to_string(),
"Which infrastructure consumer above the grounded 0x38a5 seam actually drives the linked-transit branch that 0x00409950 follows?".to_string(),
@ -4325,6 +4340,8 @@ fn build_periodic_company_service_trace_report(
peer_site_selector_candidate_selector_lane,
peer_site_selector_candidate_class_identity_status,
peer_site_selector_candidate_helper_linkage,
peer_site_restore_input_fields,
peer_site_runtime_input_fields,
atlas_candidate_consumers,
known_bridge_helpers,
next_owner_questions,
@ -25995,6 +26012,8 @@ mod tests {
"grounded_direct_local_helper_strip"
);
assert_eq!(trace.peer_site_selector_candidate_helper_linkage.len(), 4);
assert_eq!(trace.peer_site_restore_input_fields.len(), 4);
assert_eq!(trace.peer_site_runtime_input_fields.len(), 3);
assert!(trace.atlas_candidate_consumers.iter().any(|line| {
line.contains("0x00420030 / 0x00420280")
&& line.contains("0x006cec20")
@ -26003,7 +26022,7 @@ mod tests {
assert!(trace.next_owner_questions.iter().any(|line| {
line.contains("[site+0x3cc/+0x3d0]")
&& line.contains("[owner+0x23e/+0x242]")
&& line.contains("[peer+0x08]")
&& line.contains("[site+0x04]")
}));
assert!(trace.next_owner_questions.iter().any(|line| {
line.contains("0x004160aa")