Standardize obs with ex repo conventions + bug fixes + test coverage#5
Closed
clairevnext wants to merge 12 commits intomainfrom
Closed
Standardize obs with ex repo conventions + bug fixes + test coverage#5clairevnext wants to merge 12 commits intomainfrom
clairevnext wants to merge 12 commits intomainfrom
Conversation
- Add standard OSS files (CODE_OF_CONDUCT, CONTRIBUTING, LICENSE, SECURITY) - Add GitHub configuration (.github/CODEOWNERS, dependabot.yml, templates) - Add standardized test workflow with GitHub App badge automation - Add golangci-lint configuration and gitignore - Setup badges directory with placeholder badges - Configure repository for professional OSS development This standardization aligns the repository with bold-minds/ex for consistency across the organization and enables automated badge generation with green status.
Replace math/rand with math/rand/v2 (thread-safe global since Go 1.22). Remove the rng field and per-instance seeding; make shouldSampleAtRate a package-level function. Add resetGlobal() for test isolation and 7 comprehensive tests covering concurrency, routing, boundaries, nil manager, and runtime config updates. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
StartSpanWithSampling was returning oteltrace.SpanFromContext(ctx) for
unsampled operations, which is the parent span. Any attributes set on
the returned span would accumulate on the parent. Replace with
noop.NewTracerProvider().Tracer("").Start(...) so the returned span is
a genuine no-op that neither records nor propagates attributes.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
CRITICAL: - Race on globalClient: protect with sync.RWMutex - Race on Client.config: add sync.RWMutex to Client struct - sampling.Init sync.Once silently drops second call: replace with SetManager that always creates a new Manager - Nested timeout in Shutdown: remove inner timeout, honor caller's ctx - Exporter leaked on resource.New failure: shut down exporter on error HIGH: - HighVolumeSampleRate validated even when no endpoints configured: make validation conditional on len(HighVolumeEndpoints) > 0 - Redundant string "duration" attribute: remove, keep only duration_ms - Hardcoded db.system="neo4j": make dbSystem a parameter on AddDatabaseContext - Raw Cypher in span attributes: rename to "statement", add sanitization warning to doc comments - FinishSpanWithResult calls End() without documenting it: add doc MEDIUM: - resetGlobal in production file: move to sampling/export_test.go - Outdated OTel v1.21.0 with transitive CVEs: upgrade to latest - Config test assumes HighVolumeSampleRate always validated: fix test LOW: - Dead code: remove SimpleException/NewException from internal package - Dead code: remove unused trackBatchEvents from examples/generic - Dead config: remove testify from depguard allowlist - Shutdown now nils h.tp to reflect stopped state Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Contributor
Author
|
Redundant — all feature work was already merged via PR #1 (squash). Only net diff was a 2-line GOTOOLCHAIN removal, not pursuing separately. Closing + deleting branch. |
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
Brings obs up to the standards used by the ex repo (the pattern the rest of our bold-minds Go libs follow), fixes several real bugs found along the way, and expands test coverage significantly. 11 commits of substantive work that has been sitting on a feature branch — time to land it.
Commits
Standardization
Bug fixes
Test expansion
Docs + final polish
Verification
Test plan
🤖 Generated with Claude Code