Repository navigation
Send ended Session spans to an optional OTLP endpoint - #1060
Merged
Merged
Conversation
This was referenced Oct 22, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Send ended Session spans live when the User config sets
otlp.endpoint; blank remains the default. Setup and the manual document it.Closes #992
Evidence
cargo test --test otlp_endpoint ended_spans_arrive_before_the_session_finishes -- --exactfailed withunknown section [otlp].After: all four
cargo test --test otlp_endpointtests pass: live tool delivery before Session completion, final Session delivery, failed sends, stalled receiver, and Setup defaults/preservation.cargo test --test security_run otlp_never_receives_a_security_runs_sessions_or_nested_ticket_runs -- --exactpasses for both a Security fix Run and nested Spec/Ticket Runs, with zero exported spans and local traces retained.cargo check --all-targets,cargo clippy --all-targets -- -D warnings, config tests (32), and Setup tests (50) pass.[otlp];cargo test --test setuppasses all 30 integration tests.scripts/affected-tests 7ded7631491eb4400986449c2aadb3416c3ba3a1passed all 36 site tests locally. The full Rust suite and clippy passed in CI on the exact final head,29f8af2; the Linux job took 12m 28s including setup, compilation, linting and tests. Perdocs/testing.md, that result replaces the duplicate local Rust run, which was stopped after CI passed.Test seams
thirdshift setupand its written User config: blank endpoint default and preservation of an existing endpoint.Review coverage
Independent
thirdshift-code-reviewStandards and Spec reviews usedissue-700at7ded7631491eb4400986449c2aadb3416c3ba3a1as their fixed point. Both read all 12 changed files, including generatedsite/docs/index.htmland one coverage follow-up ontests/setup.rsat29f8af2. Standards: 0 findings. Spec: 0 findings.Unread changed files: none under either axis. Generated-output exclusions: none.
Unaddressed findings
Standards
None.
Spec
None.
Merge Danger
Door: two-way
Blast Radius: Sessions
Opting in sends Session span content to the configured receiver. Failed or saturated delivery can drop live spans; local traces remain available. Security run sessions stay local.
Built with codex · gpt-6.1-sol · xhigh