Brings val into the platform's OpenTelemetry traces.
src/otel.ts is the forge's zero-dependency OTel, the same file the forge itself runs.
Bun.serve(traceServe({...})) makes every request a server span under the forge's span. The full path is visible in Grafana: Traefik → forge → app (and any app wake).
The forge already hands the app OTEL_EXPORTER_OTLP_ENDPOINT and its service name. Without them this is a no-op.
Tests: the app's full suite is green locally. A boot test against a fake collector served 200 and emitted spans.
Brings val into the platform's OpenTelemetry traces.
src/otel.tsis the forge's zero-dependency OTel, the same file the forge itself runs.Bun.serve(traceServe({...}))makes every request a server span under the forge's span. The full path is visible in Grafana: Traefik → forge → app (and any app wake).OTEL_EXPORTER_OTLP_ENDPOINTand its service name. Without them this is a no-op.Tests: the app's full suite is green locally. A boot test against a fake collector served 200 and emitted spans.