Packages
@loop-engine/observability
@loop-engine/observability converts instance + transition data into metrics and replayable timelines.
Install
1npm install @loop-engine/observabilityMetrics
1computeMetrics(2 instances: LoopInstance[],3 history: TransitionRecord[],4 period: { from: string; to: string }5): LoopMetricsLoopMetrics includes completionRate, avgDurationMs, medianDurationMs, p95DurationMs, aiActorRate, humanActorRate, and avgTransitionCount.
1import { computeMetrics } from "@loop-engine/observability"2 3const metrics = computeMetrics(instances, history, {4 from: "2026-03-01T00:00:00.000Z",5 to: "2026-03-31T23:59:59.999Z"6})Timeline
1buildTimeline(instance: LoopInstance, history: TransitionRecord[]): LoopTimeline2getStateResidency(timeline: LoopTimeline): StateResidency[]Use timeline output to power audit UIs and state-duration debugging.
Replay
1replayLoop(2 definition: LoopDefinition,3 history: TransitionRecord[]4): { valid: boolean; errors: string[] }Replay verifies that recorded transitions are valid against the current loop definition.