Task · CFO-0039

Allow environment overrides for dotted collector names

Description

Collector names contain dots (aigateway.logs, aigateway.coverage, email.routing). koanf uses . as its key delimiter, so CF2OTEL_COLLECTORS__AIGATEWAY.COVERAGE__ENABLED=true fails with ‘collectors[aigateway]’ has invalid keys: coverage. The same happens for every dotted collector on v0.6.0, so a per-collector switch can only be set in YAML. Found by the CFO-0038 lane in loop 8.

Acceptance Criteria

Definition of Done

Implementation Plan

Loop 9 frozen packet L39: prove the dotted-name env form, preserve default enablement and YAML precedence, update generated documentation, then gate, review, land and release.

Implementation Notes

Loop 9: implementation L39-a1 (1/4); review-repair rr1 (1/3); infrastructure retries 0. Candidate 5d6517d, landing f59ebbf, v0.8.1 release at 9a330c4. Exact landing SHA passed just check and just ci; CI 36269719502 and ci-success succeeded; CodeRabbit complete with 0 findings and 0 unreviewed files. Independent review found missing underscore-name duration assertions; rr1 fixed them, and root verified the sole correction. Grant: frozen dotted collector env mapping and generated docs. Reason Done: AC1-2 verified; no new signal or attribute was declared.

Final Summary

Dotted collector settings now accept the documented CF2OTEL_COLLECTORS____ environment form with YAML precedence and unchanged default enablement. Tests, exact-SHA just check/just ci, CodeRabbit, CI and v0.8.1 release verified.

View the source file on GitHub