Sample
go.opentelemetry.io/otel v1.44.0: Version, GetTracerProvider, Tracer
Verified sample for golang go.opentelemetry.io/otel v1.44.0: Version, GetTracerProvider, Tracer. The contract ran on go 1.26 · linux debian/x64 · docker and…
sha256:0edbfaa3595ab0a9ec9db6ccdf19a14cb1b04781bbe4c594a1e7655557f0409f
This network offers one thing: a sample that builds. It ran the sample in a sandbox and kept the signed receipt. It grades nothing and warrants nothing — whether the same code builds where you are is not something it measured.
How many distinct signing keys filed a passing contract receipt. One is the author alone; more than one means somebody else built it too. A key is self-generated with nothing registered behind it, so it counts keys, not people.
MIT-0
Execution evidence
The declared environment and the signed runs are kept apart, so you can see exactly what this sample ran and where.
- Evidence basis
- Signed contract pass
- Verification receipts
- 1
- Signing keys that built it
- 1
Declared environment
go linux 24 · ubuntu · glibc 2.39 x64 go go gomod
Verification-run environments
| Environment | Contract | Stages | Run |
|---|---|---|---|
| go 1.26 · linux debian/x64 · docker ed25519:c1973797be207ac4 | PASS | compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS CONTAINER_RUN · golang@1golang:1.26@sha256:e30143be198a… |
2026-09-19 |
Case
HOW- Goal
- verify pkg:golang/go.opentelemetry.io/otel@v1.44.0
- Packages
- Symbols
-
- go.opentelemetry.io/otel.Version
- go.opentelemetry.io/otel.GetTracerProvider
- go.opentelemetry.io/otel.Tracer
- go.opentelemetry.io/otel.GetMeterProvider
- go.opentelemetry.io/otel.Meter
- go.opentelemetry.io/otel/propagation.NewCompositeTextMapPropagator
- go.opentelemetry.io/otel/attribute.NewSet
- Environment
- go
- Created
- 2026-09-19T19:04:36Z
Contract
- otel.Version returns exactly 1.44.0
- default TracerProvider and MeterProvider return non-nil instances
- CompositeTextMapPropagator extracts and injects across carriers
- attribute.NewSet sorts and deduplicates keys with last-value-wins precedence
Files
- NOTES.md
- csx.json
- go.mod
- go.sum
- otel_test.go
Source
# OpenTelemetry Core API Contract Verification
## Overview
Verifies `go.opentelemetry.io/otel` at exactly `v1.44.0`.
## Verified Behaviors
- **Version Guarantee**: `otel.Version()` reports `1.44.0`.
- **Default Providers**: Unconfigured global providers `GetTracerProvider()` and `GetMeterProvider()` return non-nil no-op instances that successfully create usable `Tracer` and `Meter` instances without panics or nil dereferences.
- **Context Propagation**: `propagation.NewCompositeTextMapPropagator` combining `TraceContext` and `Baggage` performs safe injection and extraction across context carriers.
- **Attribute Set Deduplication**: `attribute.NewSet` sorts key-value attributes and enforces last-value-wins precedence on duplicate keys.
{"case":{"caseId":"case:sha256:321fff134cf5281e017a3f74bcb24aca97f4234380f8b2e85e1ffd305b857e5a","contract":["otel.Version returns exactly 1.44.0","default TracerProvider and MeterProvider return non-nil instances","CompositeTextMapPropagator extracts and injects across carriers","attribute.NewSet sorts and deduplicates keys with last-value-wins precedence"],"goal":"verify pkg:golang/go.opentelemetry.io/otel@v1.44.0","kind":"HOW","packages":["pkg:golang/go.opentelemetry.io/otel@v1.44.0"],"schemaVersion":1,"symbols":["go.opentelemetry.io/otel.Version","go.opentelemetry.io/otel.GetTracerProvider","go.opentelemetry.io/otel.Tracer","go.opentelemetry.io/otel.GetMeterProvider","go.opentelemetry.io/otel.Meter","go.opentelemetry.io/otel/propagation.NewCompositeTextMapPropagator","go.opentelemetry.io/otel/attribute.NewSet"]},"contractCommand":["go","test","./..."],"environment":{"arch":"x64","distro":"ubuntu","ecosystem":"golang","executionContext":"go","language":"go","libc":"glibc","libcVersion":"2.39","os":"linux","osVersionBucket":"24","packageManager":"gomod","runtime":"go","schemaVersion":1},"license":"MIT-0","packages":["pkg:golang/go.opentelemetry.io/otel@v1.44.0"],"schemaVersion":1,"subject":"pkg:golang/go.opentelemetry.io/otel@v1.44.0","symbols":["go.opentelemetry.io/otel.Version","go.opentelemetry.io/otel.GetTracerProvider","go.opentelemetry.io/otel.Tracer","go.opentelemetry.io/otel.GetMeterProvider","go.opentelemetry.io/otel.Meter","go.opentelemetry.io/otel/propagation.NewCompositeTextMapPropagator","go.opentelemetry.io/otel/attribute.NewSet"],"verifierAdapter":"golang@1"}
module sample
go 1.26.6
require (
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/go-logr/logr v1.4.3 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
go.opentelemetry.io/otel v1.44.0
go.opentelemetry.io/otel/metric v1.44.0 // indirect
go.opentelemetry.io/otel/trace v1.44.0 // indirect
)
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64=
go.opentelemetry.io/auto/sdk v1.2.1/go.mod h1:KRTj+aOaElaLi+wW1kO/DZRXwkF4C5xPbEe3ZiIhN7Y=
go.opentelemetry.io/otel v1.44.0 h1:JjwHmHpA4iZ3wBxluu2fbbE7j4kqlE8jXyAyPXH7HqU=
go.opentelemetry.io/otel v1.44.0/go.mod h1:BMgjTHL9WPRlRjL2oZCBTL4whCGtXch2H4BhOPIAyYc=
go.opentelemetry.io/otel/metric v1.44.0 h1:1w0gILTcHdr3YI+ixLyjemwrVnsMURbTZFrSYCdDdmc=
go.opentelemetry.io/otel/metric v1.44.0/go.mod h1:8O7hanEPBNgEMmybD3s2VBKcgWOCsA6tzHBPODAiquo=
go.opentelemetry.io/otel/trace v1.44.0 h1:jxF5CsGYCe74MCRx2X4g7WsY/VBKRqqpNvXlX/6gtIk=
go.opentelemetry.io/otel/trace v1.44.0/go.mod h1:oLl1jrMQAVo6v3GAggN+1VH9VIz9iUSvW53sW1Q8PIE=
package sample_test
import (
"context"
"testing"
"go.opentelemetry.io/otel"
"go.opentelemetry.io/otel/attribute"
"go.opentelemetry.io/otel/propagation"
)
func TestOtelCore(t *testing.T) {
t.Run("otel.Version returns exactly 1.44.0", func(t *testing.T) {
v := otel.Version()
if v != "1.44.0" {
t.Fatalf("expected version 1.44.0, got %s", v)
}
})
t.Run("default TracerProvider and MeterProvider return non-nil instances", func(t *testing.T) {
tp := otel.GetTracerProvider()
if tp == nil {
t.Fatal("expected non-nil default TracerProvider")
}
tracer := otel.Tracer("sample-tracer")
if tracer == nil {
t.Fatal("expected non-nil Tracer from default provider")
}
mp := otel.GetMeterProvider()
if mp == nil {
t.Fatal("expected non-nil default MeterProvider")
}
meter := otel.Meter("sample-meter")
if meter == nil {
t.Fatal("expected non-nil Meter from default provider")
}
})
t.Run("CompositeTextMapPropagator extracts and injects across carriers", func(t *testing.T) {
propagator := propagation.NewCompositeTextMapPropagator(
propagation.TraceContext{},
propagation.Baggage{},
)
carrier := propagation.MapCarrier{}
ctx := context.Background()
propagator.Inject(ctx, carrier)
extracted := propagator.Extract(ctx, carrier)
if extracted == nil {
t.Fatal("expected extracted context to be non-nil")
}
})
t.Run("attribute.NewSet sorts and deduplicates keys with last-value-wins precedence", func(t *testing.T) {
kvs := []attribute.KeyValue{
attribute.String("env", "staging"),
attribute.String("env", "production"),
attribute.Int("port", 8080),
}
set := attribute.NewSet(kvs...)
if set.Len() != 2 {
t.Fatalf("expected 2 unique attributes, got %d", set.Len())
}
val, exists := set.Value(attribute.Key("env"))
if !exists || val.AsString() != "production" {
t.Fatalf("expected env to be 'production', got %v (exists: %v)", val, exists)
}
portVal, exists := set.Value(attribute.Key("port"))
if !exists || portVal.AsInt64() != 8080 {
t.Fatalf("expected port to be 8080, got %v (exists: %v)", portVal, exists)
}
})
}
Origin Seeder
anonymous