Semantic state owned by a Pi session process.
Summary
Types
@type status() :: :idle | :running | :done | :failed | :cancelled
@type t() :: %Pi.Session.State{ error: term(), events: [Pi.Session.Event.t()], id: String.t(), messages: [Pi.Protocol.LLM.Message.t()], metadata: map(), name: atom() | String.t() | nil, parent_id: String.t() | nil, result: term(), started_at: DateTime.t() | nil, status: status(), system: String.t() | nil, updated_at: DateTime.t() | nil }