pub struct StopReport {
pub pid: u32,
pub endpoint_closed: bool,
pub process_gone: bool,
pub frontmost_before: Option<String>,
pub frontmost_after: Option<String>,
pub frontmost_unchanged: bool,
pub frontmost_states: Vec<String>,
pub owned_never_frontmost: bool,
pub owned_frontmost_pids: Vec<u32>,
}Fields§
§pid: u32§endpoint_closed: bool§process_gone: bool§frontmost_before: Option<String>§frontmost_after: Option<String>§frontmost_unchanged: bool§frontmost_states: Vec<String>Every distinct foreground state sampled during the session (empty when unmeasurable).
owned_never_frontmost: boolEvery sampled foreground PID belonged to no app process started by this control session.
This is the background invariant; frontmost_unchanged remains diagnostic only.
macOS checks the started pid and every process under the bundle executable; Windows
checks the started pid only (the owner of the foreground window, from
GetForegroundWindow + GetWindowThreadProcessId, sampled every 20 ms). Both fail
closed when a foreground owner exists but cannot be read. Other targets always report
false for a non-visible launch.
owned_frontmost_pids: Vec<u32>Owned fixture PIDs observed in foreground, if any.
Implementations§
Source§impl StopReport
impl StopReport
Sourcepub fn permission_dialog(&self) -> Option<String>
pub fn permission_dialog(&self) -> Option<String>
The first sampled foreground name that belongs to a system permission-dialog agent.
Positive evidence only: None does not prove no dialog appeared.