Description
internal/telemetry/delivery.go deliveryTracker.setDiagnostics (#365) has no non-test caller on main (checked at 2a00edb4 and 54915a36), so first-failure, still-failing and recovery delivery-health log lines never print in the running exporter. Found by the loop19 TSO-0153 lane. Also: the InstallExportErrorHandler comment in internal/telemetry/selfobs.go still says the backend body is included, which is stale after TSO-0153.
Acceptance Criteria
- #1 Every provider’s delivery tracker has its logger and emitter bound in production, proven by an app-level test that observes a first-failure and a recovery log line from a real failing then recovering exporter
- #2 Those lines carry only bounded classes (TSO-0153), never backend response text
- #3 The stale selfobs.go comment is corrected
Definition of Done
- #1 just check passes (the full gate; it is what CI enforces)
- #2 just gen leaves no diff (only if a generated artifact’s inputs changed)
- #3 just –fmt –check passes and every new recipe has a # doc comment and a [group(…)]
Implementation Notes
loop19: loop-created; 1 implementation attempt; landed 79779879; security review approve; CodeRabbit 0 findings; composed just check green; CI green on f759c418 (79779879’s own run was cancelled by a later push).
Final Summary
NewProvider binds the delivery tracker’s logger (and emitter with self-obs on) for every provider before the reader starts; outage/recovery lines now print; no OTLP feedback or extra collections. Landed 79779879.