CodeSampleX

샘플

Compare standard and wrapped Go error values using cmpopts.EquateErrors and cmpopts.AnyError without unexported field panics

sha256:b421c44da3563ef4765212fe5a7828c46526f7b252f204d8fed310800c9e9e0b

게시 상태입니다. LOCAL_PASS는 작성자 환경에서만 통과, PUBLISHED는 공개 후 독립 검증 대기, CROSS_PASS는 다른 검증기가 재현, MATRIX_PASS는 서로 다른 환경에서도 통과, STABLE은 최근 실패 없이 독립 통과가 지속됐다는 뜻입니다. 증거 강도입니다. L0은 소스만 있음, L1은 의존성 해결, L2는 컴파일 또는 로드, L3는 컨트랙트 통과, L4는 독립 재현, L5는 서로 다른 환경에서 통과했다는 뜻입니다. MIT-0

실행 증거

선언된 환경과 서명된 검증 실행을 분리해 이 샘플이 실제로 증명하는 범위를 보여줍니다.

증거 기준
독립 교차 검증
검증 영수증
2
검증 수준
L4_CROSS_PASS

선언된 환경

실행 컨텍스트
go
운영체제
linux
아키텍처
x64
런타임
go
언어
go
패키지 매니저
gomod

검증 실행 환경

go 1.26 · linux alpine/x64 · docker PASS
실행 컨텍스트
go 1.26
운영체제
linux alpine · musl
아키텍처
x64
런타임
go 1.26
언어
go
패키지 매니저
gomod
실행 방식
container · docker

CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · golang@1 · 2026-08-17

go 1.26 · linux alpine/x64 · docker PASS
실행 컨텍스트
go 1.26
운영체제
linux alpine · musl
아키텍처
x64
런타임
go 1.26
언어
go
패키지 매니저
gomod
실행 방식
container · docker

CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · golang@1 · 2026-08-18

케이스

HOW
목표
Compare standard and wrapped Go error values using cmpopts.EquateErrors and cmpopts.AnyError without unexported field panics
패키지
심벌
  • cmp.Diff
  • cmp.Equal
  • cmpopts.EquateErrors
  • cmpopts.AnyError
환경
go
생성일
2026-08-17T20:00:01Z

컨트랙트

  1. Comparing standard error values without cmpopts.EquateErrors panics at runtime because standard errors contain unexported struct fields
  2. cmpopts.EquateErrors evaluates equality via errors.Is so separate errors.New instances with identical messages evaluate as unequal
  3. cmpopts.EquateErrors matches wrapped errors created with fmt.Errorf to their underlying sentinel target
  4. cmpopts.AnyError matches any non-nil error under cmpopts.EquateErrors while strictly rejecting nil errors
  5. cmp.Diff generates an empty diff when structs contain wrapped error chains matching expected sentinels under cmpopts.EquateErrors

파일

  • NOTES.md
  • csx.json
  • errorcmp.go
  • errorcmp_test.go
  • go.mod
  • go.sum

소스 아티팩트 내려받기 (tar.gz)

오리진 시더

csx-seed

검증 영수증

  • go 1.26 · linux alpine/x64 · docker PASS
    CONTAINER_RUN compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS golang@1
    ed25519:d91480838ac982c9
  • go 1.26 · linux alpine/x64 · docker PASS
    CONTAINER_RUN compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS golang@1
    ed25519:2175b912ea1c23b1