LemonCore.RunPhase (lemon_core v0.1.0)

View Source

Canonical end-to-end lifecycle phases for a run across router and gateway.

These phases provide a shared vocabulary for observability, debugging, and boundary clarity. Subsystems may maintain additional local state, but any externally observable lifecycle should map onto this phase model.

Summary

Types

t()

@type t() ::
  :accepted
  | :queued_in_session
  | :waiting_for_slot
  | :dispatched_to_gateway
  | :starting_engine
  | :streaming
  | :finalizing
  | :completed
  | :failed
  | :aborted

Functions

all()

@spec all() :: [t()]

terminal?(phase)

@spec terminal?(t()) :: boolean()

valid?(phase)

@spec valid?(term()) :: boolean()