Full committed row for escalation events; lifecycle metadata for engine/worker events. Each dependent cherry-picks fields for its own event shape.
Stable, unique ID per durable transition.
Optionalorigin_Optionalparent_Optionalspan_OptionaltopicOptionaltrace_ISO timestamp at emit time (wall-clock, post-commit).
Canonical topic string.
| Class | Pattern |
|---|---|
| escalation | system.escalation.{id}.{verb} |
| engine | system.engine.{appId}.{verb} |
| worker | system.worker.{taskQueue}.{verb} |
Optionalworkflow_
Canonical lifecycle event emitted by the SDK post-commit.
event_idis stable across replays:${id}:${verb}:${updated_at_iso}— unique per transition; a re-claim after release gets a newupdated_at.${app_id}:${verb}:${ts}.datacarries the full committed row (escalation entry) or lifecycle metadata (engine/worker). Consumers cherry-pick what they need; nothing is pre-projected so the shape is future-proof.