pub struct ObserveRequest {
pub session_id: String,
pub cwd: Option<PathBuf>,
pub transcript_path: Option<PathBuf>,
pub event: SessionEvent,
pub repo: Option<String>,
pub model: Option<String>,
}Expand description
An idempotent session sighting sent to the registry — the wire payload of the
observe op, and the argument to SessionsRegistry::observe.
The hook sink and the transcript watcher both produce these; every field but
session_id and event is best-effort and fills in missing data on an
existing entry without ever clobbering known data with None.
Fields§
§session_id: StringThe Claude session_id (a UUID) — the primary key. Equal to the
transcript filename stem and (per ADR-0052) the VS Code extension’s tab
key, so the three feeds join without heuristics.
cwd: Option<PathBuf>The session’s working directory, when known (from the hook cwd).
transcript_path: Option<PathBuf>The ~/.claude/projects/**/<session-id>.jsonl transcript path, when known.
event: SessionEventThe event that produced this sighting; drives the state inference.
repo: Option<String>The repository name enriched from cwd by the adapter (git2), when
resolvable. Stored verbatim; the engine does no disk I/O.
model: Option<String>The model id, when a hook reports one.
Trait Implementations§
Source§impl Clone for ObserveRequest
impl Clone for ObserveRequest
Source§fn clone(&self) -> ObserveRequest
fn clone(&self) -> ObserveRequest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more