Skip to content

I3935 — An agent session's telemetry reaches the same OpenTelemetry endpoint, configured once and projected to every provider

Declare the OpenTelemetry endpoint once in the repository's environment model and project the variables each provider reads (for Claude Code CLAUDE_CODE_ENABLE_TELEMETRY, OTEL_METRICS_EXPORTER, OTEL_LOGS_EXPORTER, OTEL_EXPORTER_OTLP_ENDPOINT and its headers from the person's local environment), so that sessions' cost, tokens and tool time sit beside CI's traces.

BLOCKED wave 1 · p2 · implementation profile · parallel safe

Part of measurements-are-tracked-over-time — Coverage and CI cost are kept, exported and drawn over time, from the one measurement each has.

Blocked. This issue cannot start until I3934 is done. The status is derived from that, not declared.

Objective

Declare the OpenTelemetry endpoint once in the repository's environment model and project the variables each provider reads (for Claude Code CLAUDE_CODE_ENABLE_TELEMETRY, OTEL_METRICS_EXPORTER, OTEL_LOGS_EXPORTER, OTEL_EXPORTER_OTLP_ENDPOINT and its headers from the person's local environment), so that sessions' cost, tokens and tool time sit beside CI's traces.

Why

Sessions are most of this repository's work and their cost is read from per-provider screens; with CI traces in one endpoint (I3934), session telemetry in the same place makes a slow pipeline and an expensive session one question.

Current state

No provider projection carries telemetry settings; nothing is exported.

Desired state

The environment model names the endpoint once; provider projections export it only when the person's local environment supplies it; the headers stay in the local half and are never committed.

Scope

  • .ai/repo/providers
  • share
  • docs
  • .ai/repo/project/issues/I3935.yaml

Out of scope

  • Committing an endpoint, token or header value

Dependencies

Acceptance criteria

  • With the local endpoint set, a Claude Code session exports its metrics to it
  • With nothing set, no provider exports anything and no projection differs except by the declared names

Validation

  • bin/majordomus doctor

Evidence required

  • suite

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Risk

Telemetry settings are per person; projecting a value rather than a name would leak it into the tracked half.

Timeline

started
—
verified
—
completed
—

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I3935.yaml. Read it back with majordomus plan show I3935.

Searches the titles and descriptions of every page this site publishes.