CodeSampleX

Ejemplo

go.opentelemetry.io/otel v1.44.0: attribute.String

Muestra verificada para golang go.opentelemetry.io/otel v1.44.0: attribute.String. El contrato se ejecutó en go 1.26 · linux debian/x64 · docker y pasó.

sha256:0d4c021703fcaaeb9c86a1d9f80db09154dd54d608f30a820ab745cfed7b7840

Esta red ofrece una sola cosa: una muestra que compila. La ejecutó en un sandbox y guardó el recibo firmado. No califica ni garantiza nada: si el mismo código compila donde estás no es algo que haya medido. Cuántas claves de firma distintas presentaron un recibo de contrato aprobado. Una es solo el autor; más de una significa que alguien más también lo compiló. Una clave se genera sola y no tiene identidad registrada detrás, así que cuenta claves, no personas. MIT-0

Evidencia de ejecución

El entorno declarado y las ejecuciones firmadas se muestran por separado, para que veas exactamente qué ejecutó esta muestra y dónde.

Base de evidencia
Contrato firmado aprobado
Recibos de verificación
2
Claves de firma que lo compilaron
1
Entorno declarado go 1.26 linux 24 · ubuntu · glibc 2.39 x64 go 1.26 go go 1

Entornos de las ejecuciones de verificación

Entorno Contrato Etapas Ejecución
go 1.26 · linux debian/x64 · docker ed25519:c1973797be207ac4 SKIPPED compile:SKIPPED · contract:SKIPPED · load:SKIPPED · resolve:FAIL
CONTAINER_RUN · golang@1golang:1.26@sha256:e30143be198a…
2026-09-19
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

Caso

HOW
Objetivo
verify go.opentelemetry.io/otel/attribute.String in pkg:golang/go.opentelemetry.io/otel@v1.44.0
Paquetes
Símbolos
  • go.opentelemetry.io/otel/attribute.String
Entorno
go 1.26.6
Creado
2026-09-19T21:44:39Z

Contrato

  1. attribute.String creates a KeyValue with STRING type, the specified key, and string value.
  2. attribute.String value can be retrieved using AsString and Emit.
  3. attribute.Key.String creates an equivalent KeyValue for the given key.
  4. attribute.String KeyValues can be added to an attribute.Set, preserving key uniqueness and lookup.
  5. attribute.String handles empty strings, unicode strings, and whitespace correctly.

Archivos

  • PROMPT.md
  • csx.json
  • go.mod
  • go.sum
  • main.go
  • spec.json
  • test/contract.go

Descargar el artefacto de código fuente (tar.gz)

Código fuente

PROMPT.md
Clean-room public code sample — generation instructions

Write a brand-new, minimal, self-contained code sample in this clean-room directory.
Do not copy, paraphrase, or reference any existing project source. Work only from this spec.

A csx.json manifest scaffold already exists. Do not recreate it from memory. Preserve its case.goal, packages and symbols; fill its empty case.contract with exact assertions and correct its environment, commands and verifierAdapter for the files you generate.

Goal: verify go.opentelemetry.io/otel/attribute.String in pkg:golang/go.opentelemetry.io/otel@v1.44.0
Kind: HOW

Use EXACTLY these public packages and versions:
  - pkg:golang/go.opentelemetry.io/otel@v1.44.0
Demonstrate these symbols/APIs:
  - go.opentelemetry.io/otel/attribute.String
Required runtime conditions:
  - ecosystem: golang
  - language: go
  - packageManager: go@1.26.6
  - runtime: go@1.26.6

Rules:
  - One focused purpose; the smallest project that proves the goal.
  - Include a contract test (test/contract.*) that runs OFFLINE and exits 0 exactly when the goal behavior works.
  - Pin every dependency with a lockfile so resolution is reproducible.
  - No secrets, credentials, or tokens. No real URLs (only example.com or localhost). No absolute paths.
  - No personal names, emails, company names, or project identifiers of any kind.
  - No binaries and no generated output (node_modules, dist, target, venv, .git, .env).
  - Keep it under 200 files and 256KB packed.
csx.json
{"case":{"caseId":"case:sha256:fee5b49c90941f0d3e726146be81172e529742f76f094d3652d567f6a608a82d","contract":["attribute.String creates a KeyValue with STRING type, the specified key, and string value.","attribute.String value can be retrieved using AsString and Emit.","attribute.Key.String creates an equivalent KeyValue for the given key.","attribute.String KeyValues can be added to an attribute.Set, preserving key uniqueness and lookup.","attribute.String handles empty strings, unicode strings, and whitespace correctly."],"goal":"verify go.opentelemetry.io/otel/attribute.String in 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/attribute.String"]},"contractCommand":["go","run","./test"],"environment":{"arch":"x64","distro":"ubuntu","ecosystem":"golang","language":"go","libc":"glibc","libcVersion":"2.39","os":"linux","osVersionBucket":"24","packageManager":"go","packageManagerVersion":"1.26.6","runtime":"go","runtimeVersion":"1.26.6","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/attribute.String"],"verifierAdapter":"golang@1"}
go.mod
module sample

go 1.26.6

require go.opentelemetry.io/otel v1.44.0

require github.com/cespare/xxhash/v2 v2.3.0 // indirect
go.sum
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/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
go.opentelemetry.io/otel v1.44.0 h1:JjwHmHpA4iZ3wBxluu2fbbE7j4kqlE8jXyAyPXH7HqU=
go.opentelemetry.io/otel v1.44.0/go.mod h1:BMgjTHL9WPRlRjL2oZCBTL4whCGtXch2H4BhOPIAyYc=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
main.go
package main

import (
	"fmt"

	"go.opentelemetry.io/otel/attribute"
)

func main() {
	// Demonstrate attribute.String construction
	kv := attribute.String("environment", "production")
	fmt.Printf("Key: %s, Value: %s, Type: %s\n", kv.Key, kv.Value.AsString(), kv.Value.Type())

	// Demonstrate attribute.Key.String construction
	key := attribute.Key("service.name")
	svcKV := key.String("api-gateway")
	fmt.Printf("Key: %s, Value: %s\n", svcKV.Key, svcKV.Value.AsString())

	// Demonstrate attribute.Set usage with string attributes
	set := attribute.NewSet(kv, svcKV)
	if val, ok := set.Value("service.name"); ok {
		fmt.Printf("Set lookup 'service.name': %s\n", val.AsString())
	}
}
spec.json
{
  "schemaVersion": 1,
  "goal": "verify go.opentelemetry.io/otel/attribute.String in pkg:golang/go.opentelemetry.io/otel@v1.44.0",
  "kind": "HOW",
  "packages": [
    "pkg:golang/go.opentelemetry.io/otel@v1.44.0"
  ],
  "symbols": [
    "go.opentelemetry.io/otel/attribute.String"
  ],
  "runtimeConditions": {
    "ecosystem": "golang",
    "language": "go",
    "packageManager": "go@1.26.6",
    "runtime": "go@1.26.6"
  }
}
test/contract.go
package main

import (
	"fmt"
	"os"

	"go.opentelemetry.io/otel/attribute"
)

func main() {
	// Assertion 1: attribute.String creates a KeyValue with STRING type, the specified key, and string value.
	kv := attribute.String("http.status_text", "OK")
	if kv.Key != attribute.Key("http.status_text") {
		fmt.Fprintf(os.Stderr, "FAIL: expected key 'http.status_text', got '%s'\n", kv.Key)
		os.Exit(1)
	}
	if kv.Value.Type() != attribute.STRING {
		fmt.Fprintf(os.Stderr, "FAIL: expected STRING type, got %v\n", kv.Value.Type())
		os.Exit(1)
	}
	if !kv.Valid() {
		fmt.Fprintf(os.Stderr, "FAIL: expected valid KeyValue\n")
		os.Exit(1)
	}

	// Assertion 2: attribute.String value can be retrieved using AsString and Emit.
	if val := kv.Value.AsString(); val != "OK" {
		fmt.Fprintf(os.Stderr, "FAIL: expected AsString 'OK', got '%s'\n", val)
		os.Exit(1)
	}
	if emitted := kv.Value.Emit(); emitted != "OK" {
		fmt.Fprintf(os.Stderr, "FAIL: expected Emit 'OK', got '%s'\n", emitted)
		os.Exit(1)
	}

	// Assertion 3: attribute.Key.String creates an equivalent KeyValue for the given key.
	key := attribute.Key("http.status_text")
	kvFromKey := key.String("OK")
	if kvFromKey != kv {
		fmt.Fprintf(os.Stderr, "FAIL: expected key.String to match attribute.String\n")
		os.Exit(1)
	}

	// Assertion 4: attribute.String KeyValues can be added to an attribute.Set, preserving key uniqueness and lookup.
	set := attribute.NewSet(
		attribute.String("db.system", "postgresql"),
		attribute.String("db.name", "users"),
		attribute.String("db.system", "postgres"), // duplicate key update
	)
	if set.Len() != 2 {
		fmt.Fprintf(os.Stderr, "FAIL: expected set length 2, got %d\n", set.Len())
		os.Exit(1)
	}
	if val, ok := set.Value("db.system"); !ok || val.AsString() != "postgres" {
		fmt.Fprintf(os.Stderr, "FAIL: expected db.system to be 'postgres', got '%s' (ok=%v)\n", val.AsString(), ok)
		os.Exit(1)
	}
	if val, ok := set.Value("db.name"); !ok || val.AsString() != "users" {
		fmt.Fprintf(os.Stderr, "FAIL: expected db.name to be 'users', got '%s' (ok=%v)\n", val.AsString(), ok)
		os.Exit(1)
	}
	if _, ok := set.Value("nonexistent"); ok {
		fmt.Fprintf(os.Stderr, "FAIL: expected nonexistent key lookup to return false\n")
		os.Exit(1)
	}

	// Assertion 5: attribute.String handles empty strings, unicode strings, and whitespace correctly.
	emptyKV := attribute.String("empty.str", "")
	if !emptyKV.Valid() || emptyKV.Value.AsString() != "" {
		fmt.Fprintf(os.Stderr, "FAIL: expected valid KeyValue with empty string\n")
		os.Exit(1)
	}

	unicodeKV := attribute.String("locale.greeting", "안녕하세요 🚀")
	if unicodeKV.Value.AsString() != "안녕하세요 🚀" {
		fmt.Fprintf(os.Stderr, "FAIL: expected unicode string to match\n")
		os.Exit(1)
	}

	whitespaceKV := attribute.String("pad", "   tab\tnewline\n   ")
	if whitespaceKV.Value.AsString() != "   tab\tnewline\n   " {
		fmt.Fprintf(os.Stderr, "FAIL: expected whitespace string to match\n")
		os.Exit(1)
	}

	fmt.Println("PASS: all attribute.String contract assertions passed.")
}

Seeder de origen

anónimo