diff --git a/crates/spt-daemon/src/iobus.rs b/crates/spt-daemon/src/iobus.rs index 80c25f0d..bfd0020c 100644 --- a/crates/spt-daemon/src/iobus.rs +++ b/crates/spt-daemon/src/iobus.rs @@ -296,6 +296,19 @@ impl IoSink for IoLogSink { let (payload, truncated) = bound_payload(&ev.payload); let perch_path = spt_store::perch::resolve_perch_path(&ev.owner, spt_store::perch::ParentHint::Infer); + { + let line = format!( + "RCA_SINK: pid={} owner={:?} kind={:?} peer={:?} path={:?} spt_home={:?} +", + std::process::id(), ev.owner, ev.kind, ev.peer, perch_path, + std::env::var("SPT_HOME").ok() + ); + use std::io::Write as _; + let p = std::env::var("RCA_LOG").unwrap_or_else(|_| "C:/Users/decid/Documents/projects/spt-core/RCA236_win_instr.log".to_string()); + if let Ok(mut f) = std::fs::OpenOptions::new().create(true).append(true).open(&p) { + let _ = f.write_all(line.as_bytes()); + } + } spt_store::iolog::append_at( &perch_path, &spt_store::iolog::IoLogRow { diff --git a/crates/spt/src/api/delivery.rs b/crates/spt/src/api/delivery.rs index 4b505824..6a1212cb 100644 --- a/crates/spt/src/api/delivery.rs +++ b/crates/spt/src/api/delivery.rs @@ -595,6 +595,18 @@ pub fn poll_drain(id: &str, include_deferred: bool) -> Vec { /// neither can affect its caller (REQ-IO-EVENT-BUS). // [impl->REQ-IO-MSG-EDGES] fn publish_msg_io_local(id: &str, kind: &str, peer: &str, body: &str) { + { + let line = format!( + "RCA_DELIV: pid={} id={:?} kind={:?} peer={:?} +", + std::process::id(), id, kind, peer + ); + use std::io::Write as _; + let p = std::env::var("RCA_LOG").unwrap_or_else(|_| "C:/Users/decid/Documents/projects/spt-core/RCA236_win_instr.log".to_string()); + if let Ok(mut f) = std::fs::OpenOptions::new().create(true).append(true).open(&p) { + let _ = f.write_all(line.as_bytes()); + } + } let owlery = perch::owlery_dir(); let bus = spt_daemon::iobus::default_bus(&owlery, crate::api::nowsignal::now_ms()); // The SENDER rides along (W5): LAST_MSGS answers "who", and this edge knows. diff --git a/crates/spt/src/cli.rs b/crates/spt/src/cli.rs index 8cbc697f..733fdbc4 100644 --- a/crates/spt/src/cli.rs +++ b/crates/spt/src/cli.rs @@ -11290,6 +11290,18 @@ pub(crate) fn cmd_send_verdict( // an explicit `--from` is a reply label the caller chose. Same // reasoning as the admission gate's subject, one layer over. let owner = sender_proven.as_deref().unwrap_or(from.as_str()); + { + let line = format!( + "RCA_SEND: pid={} owner={:?} sender_proven={:?} session_proven={:?} from={:?} target={:?} +", + std::process::id(), owner, sender_proven, session_proven, from, target + ); + use std::io::Write as _; + let p = std::env::var("RCA_LOG").unwrap_or_else(|_| "C:/Users/decid/Documents/projects/spt-core/RCA236_win_instr.log".to_string()); + if let Ok(mut f) = std::fs::OpenOptions::new().create(true).append(true).open(&p) { + let _ = f.write_all(line.as_bytes()); + } + } publish_msg_io(owner, spt_proto::ioevent::IO_KIND_MSG_OUT, &target, body); } diff --git a/crates/spt/src/roster.rs b/crates/spt/src/roster.rs index ea691b13..a880ae8d 100644 --- a/crates/spt/src/roster.rs +++ b/crates/spt/src/roster.rs @@ -279,6 +279,19 @@ pub fn detect_self_by_ancestry() -> Option { } } } + { + let chosen = match_self_by_ancestry(&ancestry, &candidates); + let line = format!( + "RCA_ANC: pid={} ancestry={:?} candidates={:?} chosen={:?} +", + std::process::id(), ancestry, candidates, chosen + ); + use std::io::Write as _; + let p = std::env::var("RCA_LOG").unwrap_or_else(|_| "C:/Users/decid/Documents/projects/spt-core/RCA236_win_instr.log".to_string()); + if let Ok(mut f) = std::fs::OpenOptions::new().create(true).append(true).open(&p) { + let _ = f.write_all(line.as_bytes()); + } + } match_self_by_ancestry(&ancestry, &candidates) }