Why a GitHub issue and not Slack? Coordination like this would normally live in an OpenTelemetry channel on the CNCF Slack. There isn't one for Dart/Flutter yet, so this issue is its interim public home until the Dart & Flutter SIG is approved and the channel exists. Everything stays public either way, per CNCF norms.
Tracking hub for the current wave of OpenTelemetry specification-compliance work on the Dart OTel reference API (dartastic_opentelemetry_api).
Each item was found by auditing the API against the OpenTelemetry specification (and W3C Trace Context) and follows the same TDD shape: a first commit pins the contract with red tests that quote the spec clause, a second turns them green — or, where the fix needs design, a commit that skips the red tests behind a linked issue so CI stays green until the fix lands.
This is the public coordination point for the batch. Reviews, spec-interpretation debate, and "did we read the spec right?" questions are all welcome here or on the individual PRs.
Fixes (behavior changes) — ready for review
Documented gaps (tests only, skipped) — need a fix / design
Fix / design issues behind the skips
Recently landed
Coordination
All discussion is public, per CNCF norms. This work is part of standing up the Dart & Flutter SIG; once the SIG's CNCF Slack channel and community-calendar meeting exist, they'll be linked here.
/cc @harshitt13 @kevmoo @muhammadkamel @rohit482 @cnbleu @yuzurihaaa @robert-northmind @benjaben @danexello
Tracking hub for the current wave of OpenTelemetry specification-compliance work on the Dart OTel reference API (
dartastic_opentelemetry_api).Each item was found by auditing the API against the OpenTelemetry specification (and W3C Trace Context) and follows the same TDD shape: a first commit pins the contract with red tests that quote the spec clause, a second turns them green — or, where the fix needs design, a commit that skips the red tests behind a linked issue so CI stays green until the fix lands.
This is the public coordination point for the batch. Reviews, spec-interpretation debate, and "did we read the spec right?" questions are all welcome here or on the individual PRs.
Fixes (behavior changes) — ready for review
baggage/api.md+error-handling.md: values are any valid UTF-8 string (the empty string included), and API methods must not throw when misused. 8 contracts red→green.trace/api.md+error-handling.md: mutating operations must validate input and must not return invalid data or throw —TraceState.putnow warns and ignores instead of throwingArgumentError. 5 contracts red→green.trace/api.md+error-handling.md:tracerProvider('')/meterProvider('')/loggerProvider('')must return a working default rather than null-or-throw. 6 contracts red→green.Documented gaps (tests only, skipped) — need a fix / design
isRecording == true, and there's no all-zeroSpanContextwrapper.TextMapPropagator, so instrumentation can't obtain "the" propagator.Fix / design issues behind the skips
trace/api.md: random IDs, recording spans, noSpanContextwrappercontext/api-propagators.mdrequires get/set with a no-op defaultRecently landed
tracestatetenant/system key grammar: leading-digit tenants accepted,tenant-id/system-idlength caps (241/14). Same audit.Coordination
All discussion is public, per CNCF norms. This work is part of standing up the Dart & Flutter SIG; once the SIG's CNCF Slack channel and community-calendar meeting exist, they'll be linked here.
/cc @harshitt13 @kevmoo @muhammadkamel @rohit482 @cnbleu @yuzurihaaa @robert-northmind @benjaben @danexello