Expand description
Worker-session shared types: tag constants, status snapshot,
and the worker_tag() helper used by every crate that needs
to format a worker’s {"type":"tag","tag":"forge:worker:<label>"}
JSONL row consistently.
Re-exports§
use std::time::SystemTime;🔒use serde::Deserialize;🔒use serde::Deserialize;🔒use serde::Serialize;🔒use serde::Serialize;🔒use crate::runtime::SessionLifecycleState;🔒
Structs§
- Worker
Status - Snapshot of one worker. Carried by
agents__listand threaded throughSessionUpdate::WorkerStatusChangedfor a view to render.
Enums§
- Worker
Liveness - Liveness of a worker session in the workspace’s
live_workersmap.Spawningis the brief window betweenCommand::SpawnWorkerdispatch and the new session’sConnectedevent.Failedis set when spawn / resume fails terminally - claude rejected the resume (e.g.,No conversation found), the subprocess exited non-zero, or the connection broke beforeConnectedfired. The human-readable reason lives on the siblingdiagnosticfield ofWorkerStatus/WorkerEntry; keeping it off the enum preserves theCopybound that every match site relies on.
Constants§
- FORGE_
WORKER_ TAG_ PREFIX - Prefix shared by every worker session’s tag. The full tag is
formatted as
forge:worker:<label>viaworker_tag. - LEAD_
LABEL - Reserved label for a project’s own agent, addressed as the
labelof anagents__send_messagetarget.agents__spawnrejects it so no live worker can shadow the keyword.
Functions§
- worker_
tag - Format a worker session’s tag value:
forge:worker:<label>. Used at spawn (writer side) and at scan (reader side).