Plan: .agents/plans/2026-07-04-detach-canvas-pipeline.md (WS-5)
Replace Mastra's workflow observability (lost when Mastra dropped in WS-2) with standard OTel.
- @opentelemetry/api span creation in plain-async pipeline steps (packages/pipeline)
- @opentelemetry/sdk-node for desktop runtime; fetch-based OTLP exporter for browser SW
- otelcol-contrib for local dev -> Tempo/console
- Token usage aggregation per step (extend telemetry.ts in packages/core)
- /api/metrics endpoint (Prometheus-compatible)
Stack: standard OTel + OTLP. NOTE: WS-5 depends on WS-2 (instruments the plain-async pipeline, not Mastra steps).
Effort: M (~2d). Depends on WS-2.
Plan: .agents/plans/2026-07-04-detach-canvas-pipeline.md (WS-5)
Replace Mastra's workflow observability (lost when Mastra dropped in WS-2) with standard OTel.
Stack: standard OTel + OTLP. NOTE: WS-5 depends on WS-2 (instruments the plain-async pipeline, not Mastra steps).
Effort: M (~2d). Depends on WS-2.