Lifecycle Record • AI Agent SDK
LifecycleRecord: Durable, boot-scoped snapshot of the gateway process's lifecycle.
LifecycleRecord
Defined in the protocols module.
AI Agent
Durable, boot-scoped snapshot of the gateway process’s lifecycle.
Written by the runtime at boot (`phase="running") and on a graceful stop (phase="exited"), with a memory sample folded in by the heartbeat. On the next boot the runtime reads the prior record and runs :func:classify_unclean_exit: a record still marked running` means the previous process never reached its graceful-stop path — an unclean exit, and (given a high last memory sample) a suspected OOM-kill.
Pure and JSON-round-trippable so both the durable store and the health surface share one shape; the wrapper owns persistence.
Attributes: phase: `"running" | "draining" | "exited" — the last phase the process recorded for itself. exit_kind: "clean" | "unclean" | "unknown" — set by :func:classify_unclean_exit on the next boot (never "unknown"-treated-as-healthy downstream). suspected_oom: True when an unclean exit coincided with a high last memory sample (memory pressure at death). last_mem_fraction: Last sampled memory-budget fraction in [0, 1], or None when the platform could not report it. restart_events: Persisted monotonic-independent wall-clock timestamps of restart-worthy boots, for :class:PersistentRestartLoopGuard`.
Properties
LiteralNo description available.
LiteralNo description available.
boolNo description available.
Optional[float]No description available.
List[float]No description available.
Internal & Generic Methods
- from_dict: Rebuild from a persisted dict, tolerating partial/legacy shapes.
- to_dict: Convert to a JSON-serializable dict for the durable sentinel.
Source
View on GitHubpraisonaiagents/gateway/protocols.py at line 6100