The v1.0-rc1 simplification audit
(docs/v1-rc1-simplification-audit.md)
identified components/exporters/stdoutexporter/ as a zero-risk
deletion candidate. The package is not wired through the OCB
binary — builder-config.yaml line 60
brings in upstream go.opentelemetry.io/collector/exporter/debugexporter v0.130.0 instead. The in-tree wrapper has no Go importers outside
its own _test.go files.
RFC-0013 §audit-trail footer
(docs/rfcs/0013-distro-first-pivot.md
line 295) lists "RFC-0004 (clockreceiver + stdoutexporter) —
superseded by 0013; archived" — the doc has already been moved to
docs/rfcs/archived/0004-clockreceiver-stdoutexporter.md, but
the code carrying its decision is still in-tree.
Numbers
- Total LOC: 1,077 across 6 files (
find components/exporters/stdoutexporter -name "*.go" | xargs wc -l)
- Non-test LOC: 392
- External Go importers: 0 (
grep -rln 'github.com/tracecoreai/tracecore/components/exporters/stdoutexporter' --include="*.go" . | grep -v components/exporters/stdoutexporter/)
Verification steps before deletion
Risk score
1 (zero risk). No Go importers, no operator-visible surface,
upstream replacement already in the OCB build.
The v1.0-rc1 simplification audit
(
docs/v1-rc1-simplification-audit.md)identified
components/exporters/stdoutexporter/as a zero-riskdeletion candidate. The package is not wired through the OCB
binary —
builder-config.yamlline 60brings in upstream
go.opentelemetry.io/collector/exporter/debugexporter v0.130.0instead. The in-tree wrapper has no Go importers outsideits own
_test.gofiles.RFC-0013 §audit-trail footer
(
docs/rfcs/0013-distro-first-pivot.mdline 295) lists "RFC-0004 (clockreceiver + stdoutexporter) —
superseded by 0013; archived" — the doc has already been moved to
docs/rfcs/archived/0004-clockreceiver-stdoutexporter.md, butthe code carrying its decision is still in-tree.
Numbers
find components/exporters/stdoutexporter -name "*.go" | xargs wc -l)grep -rln 'github.com/tracecoreai/tracecore/components/exporters/stdoutexporter' --include="*.go" . | grep -v components/exporters/stdoutexporter/)Verification steps before deletion
_build/components.godoes not reference the in-treewrapper (currently it does not)
make buildstill produces a working_build/tracecoreafter the directory is removed
make cipasses (no test under./...imports the wrapper)make coverage-checkstill passes after dropping thecomponents/exporters/stdoutexportercoverage row (current80.0% per
docs/research/baselines.md);debugexporterisnot policed for coverage
docs/STRATEGY.mdline 166'scomponents/exporters/stdoutexporterreference to point atdebugexporterdocs/research/baselines.mdto drop the stdoutexporter row
reference the in-tree wrapper
register-lintto confirm no stale-allowlist row needsremoving
docs/followups/skipped.mdfor any deferral that pinnedon the in-tree wrapper
Risk score
1 (zero risk). No Go importers, no operator-visible surface,
upstream replacement already in the OCB build.