pub struct SessionMeta {
pub schema_version: u32,
pub session_id: String,
pub kind: String,
pub parent_id: Option<String>,
pub group: Option<String>,
pub cwd: PathBuf,
pub git: Option<GitMeta>,
pub cli_version: String,
pub harness: String,
pub api_schema: String,
pub model: String,
}Expand description
Line-1 payload: the session header (ADR-0024 §2.3). An open, growing record — every field beyond the identity core is optional-with-default so old and new binaries share one on-disk population (§2.3 rules).
Fields§
§schema_version: u32The trace schema version.
session_id: StringThe session id (also in the filename).
kind: StringThe session kind — an open string: "main" today; "subagent"/
"workflow" later. Listers skip kinds they don’t know.
parent_id: Option<String>The parent session id (subagents/forks — §2.4 rule 4). None = a root session.
group: Option<String>The grouping id (a workflow run — §2.4 rule 5).
cwd: PathBufThe canonical start cwd (the directory key — immutable, §2.1).
git: Option<GitMeta>Git context at session start, None outside a repo.
cli_version: StringThe CLI version that wrote the trace.
harness: StringThe harness pack — recorded so resume rehydrates the right pack
independent of the model catalog (grok’s agent_name rationale).
api_schema: StringThe provider wire schema.
model: StringThe model id.
Trait Implementations§
Source§impl Clone for SessionMeta
impl Clone for SessionMeta
Source§fn clone(&self) -> SessionMeta
fn clone(&self) -> SessionMeta
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more