Sample
github.com/google/go-cmp v0.5.4: cmpopts.EquateEmpty
Verified sample for golang github.com/google/go-cmp v0.5.4: cmpopts.EquateEmpty. The contract ran on go 1.26 · linux debian/x64 · docker and passed…
sha256:6f15e0288c1b18f8ea363c50a303ab6e0e69fccf8aab6fd847d2a40ef8f0637f
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
linux 24 · ubuntu · glibc 2.39 x64 go
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-05 |
Case
HOW- Goal
- verify github.com/google/go-cmp/cmp/cmpopts.EquateEmpty in pkg:golang/github.com/google/go-cmp@v0.5.4
- Packages
- Symbols
-
- github.com/google/go-cmp/cmp/cmpopts.EquateEmpty
- Created
- 2026-09-05T06:25:50Z
Contract
- cmpopts.EquateEmpty treats nil and empty slices of the same type as equal
- cmpopts.EquateEmpty treats nil and empty maps of the same type as equal
- cmpopts.EquateEmpty preserves inequality for non-empty slices or maps with different elements
- cmpopts.EquateEmpty equates empty slices and maps nested within structs
Files
- PROMPT.md
- csx.json
- go.mod
- go.sum
- main.go
- spec.json
- test/contract.go
Source
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 github.com/google/go-cmp/cmp/cmpopts.EquateEmpty in pkg:golang/github.com/google/go-cmp@v0.5.4
Kind: HOW
Use EXACTLY these public packages and versions:
- pkg:golang/github.com/google/go-cmp@v0.5.4
Demonstrate these symbols/APIs:
- github.com/google/go-cmp/cmp/cmpopts.EquateEmpty
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.
{"case":{"caseId":"case:sha256:aa20bbcaeff4411f684aa19c15e9441290c0cf584169d5cddc0b477083ac993f","contract":["cmpopts.EquateEmpty treats nil and empty slices of the same type as equal","cmpopts.EquateEmpty treats nil and empty maps of the same type as equal","cmpopts.EquateEmpty preserves inequality for non-empty slices or maps with different elements","cmpopts.EquateEmpty equates empty slices and maps nested within structs"],"goal":"verify github.com/google/go-cmp/cmp/cmpopts.EquateEmpty in pkg:golang/github.com/google/go-cmp@v0.5.4","kind":"HOW","packages":["pkg:golang/github.com/google/go-cmp@v0.5.4"],"schemaVersion":1,"symbols":["github.com/google/go-cmp/cmp/cmpopts.EquateEmpty"]},"contractCommand":["go","run","./test"],"environment":{"arch":"x64","distro":"ubuntu","ecosystem":"golang","libc":"glibc","libcVersion":"2.39","os":"linux","osVersionBucket":"24","packageManager":"go","schemaVersion":1},"license":"MIT-0","packages":["pkg:golang/github.com/google/go-cmp@v0.5.4"],"schemaVersion":1,"subject":"pkg:golang/github.com/google/go-cmp@v0.5.4","symbols":["github.com/google/go-cmp/cmp/cmpopts.EquateEmpty"],"verifierAdapter":"golang@1"}
module sample
go 1.22.0
require github.com/google/go-cmp v0.5.4
require golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 // indirect
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
package main
import (
"fmt"
"github.com/google/go-cmp/cmp"
"github.com/google/go-cmp/cmp/cmpopts"
)
// DataContainer represents a structure with slice and map fields.
type DataContainer struct {
Name string
Tags []string
Values map[string]int
}
// CompareContainers compares two DataContainer structs treating empty slices/maps as equal to nil.
func CompareContainers(a, b DataContainer) bool {
return cmp.Equal(a, b, cmpopts.EquateEmpty())
}
func main() {
c1 := DataContainer{
Name: "item-1",
Tags: []string{},
Values: map[string]int{},
}
c2 := DataContainer{
Name: "item-1",
Tags: nil,
Values: nil,
}
defaultEqual := cmp.Equal(c1, c2)
equateEmptyEqual := CompareContainers(c1, c2)
fmt.Printf("Default cmp.Equal: %v\n", defaultEqual)
fmt.Printf("With cmpopts.EquateEmpty: %v\n", equateEmptyEqual)
}
{
"schemaVersion": 1,
"goal": "verify github.com/google/go-cmp/cmp/cmpopts.EquateEmpty in pkg:golang/github.com/google/go-cmp@v0.5.4",
"kind": "HOW",
"packages": [
"pkg:golang/github.com/google/go-cmp@v0.5.4"
],
"symbols": [
"github.com/google/go-cmp/cmp/cmpopts.EquateEmpty"
]
}
package main
import (
"fmt"
"os"
"github.com/google/go-cmp/cmp"
"github.com/google/go-cmp/cmp/cmpopts"
)
type structWithCollections struct {
ID int
Labels []string
Attrs map[string]string
}
func main() {
// Assertion 1: cmpopts.EquateEmpty treats nil and empty slices of the same type as equal
{
var nilSlice []string
emptySlice := []string{}
if cmp.Equal(nilSlice, emptySlice) {
fmt.Fprintf(os.Stderr, "FAIL: assertion 1 - default cmp.Equal should distinguish nil and empty slices\n")
os.Exit(1)
}
if !cmp.Equal(nilSlice, emptySlice, cmpopts.EquateEmpty()) {
fmt.Fprintf(os.Stderr, "FAIL: assertion 1 - cmpopts.EquateEmpty should treat nil and empty slices as equal\n")
os.Exit(1)
}
if diff := cmp.Diff(nilSlice, emptySlice, cmpopts.EquateEmpty()); diff != "" {
fmt.Fprintf(os.Stderr, "FAIL: assertion 1 - unexpected diff: %s\n", diff)
os.Exit(1)
}
}
// Assertion 2: cmpopts.EquateEmpty treats nil and empty maps of the same type as equal
{
var nilMap map[string]int
emptyMap := make(map[string]int)
if cmp.Equal(nilMap, emptyMap) {
fmt.Fprintf(os.Stderr, "FAIL: assertion 2 - default cmp.Equal should distinguish nil and empty maps\n")
os.Exit(1)
}
if !cmp.Equal(nilMap, emptyMap, cmpopts.EquateEmpty()) {
fmt.Fprintf(os.Stderr, "FAIL: assertion 2 - cmpopts.EquateEmpty should treat nil and empty maps as equal\n")
os.Exit(1)
}
if diff := cmp.Diff(nilMap, emptyMap, cmpopts.EquateEmpty()); diff != "" {
fmt.Fprintf(os.Stderr, "FAIL: assertion 2 - unexpected diff: %s\n", diff)
os.Exit(1)
}
}
// Assertion 3: cmpopts.EquateEmpty preserves inequality for non-empty slices or maps with different elements
{
var nilSlice []int
nonEmptySlice := []int{1}
if cmp.Equal(nilSlice, nonEmptySlice, cmpopts.EquateEmpty()) {
fmt.Fprintf(os.Stderr, "FAIL: assertion 3 - cmpopts.EquateEmpty should not equate nil and non-empty slice\n")
os.Exit(1)
}
sliceA := []int{1, 2}
sliceB := []int{1, 3}
if cmp.Equal(sliceA, sliceB, cmpopts.EquateEmpty()) {
fmt.Fprintf(os.Stderr, "FAIL: assertion 3 - cmpopts.EquateEmpty should not equate different slices\n")
os.Exit(1)
}
var nilMap map[string]int
nonEmptyMap := map[string]int{"a": 1}
if cmp.Equal(nilMap, nonEmptyMap, cmpopts.EquateEmpty()) {
fmt.Fprintf(os.Stderr, "FAIL: assertion 3 - cmpopts.EquateEmpty should not equate nil and non-empty map\n")
os.Exit(1)
}
}
// Assertion 4: cmpopts.EquateEmpty equates empty slices and maps nested within structs
{
valA := structWithCollections{
ID: 42,
Labels: []string{},
Attrs: map[string]string{},
}
valB := structWithCollections{
ID: 42,
Labels: nil,
Attrs: nil,
}
if cmp.Equal(valA, valB) {
fmt.Fprintf(os.Stderr, "FAIL: assertion 4 - default cmp.Equal should distinguish structs with empty vs nil collections\n")
os.Exit(1)
}
if !cmp.Equal(valA, valB, cmpopts.EquateEmpty()) {
fmt.Fprintf(os.Stderr, "FAIL: assertion 4 - cmpopts.EquateEmpty should equate structs with empty vs nil collections\n")
os.Exit(1)
}
if diff := cmp.Diff(valA, valB, cmpopts.EquateEmpty()); diff != "" {
fmt.Fprintf(os.Stderr, "FAIL: assertion 4 - unexpected diff: %s\n", diff)
os.Exit(1)
}
}
fmt.Println("PASS: cmpopts.EquateEmpty contract passed")
}
Origin Seeder
anonymous