Ejemplo
sigs.k8s.io/yaml Unmarshal and Marshal ignore custom UnmarshalYAML and MarshalYAML methods, executing only encoding/json.Unmarshaler and encoding/json.Marshaler implementations due to intermediate JSON conversion.
sha256:b6f988c23bf960eb73bd32c2f21ec82feba1b52021baad975f2b1fe2fb5ee355
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Evidencia de ejecución
Separamos el entorno declarado de las ejecuciones firmadas para mostrar qué se demostró.
Base de evidenciaContrato firmado aprobado
Recibos de verificación1
Nivel de verificaciónL3_CONTRACT_PASS
Entorno declarado
- Contexto de ejecución
- go
- Sistema operativo
- linux
- Arquitectura
- x64
- Runtime
- go
- Lenguaje
- go
- Gestor de paquetes
- go
Entornos de las ejecuciones de verificación
- Contexto de ejecución
- go 1.26
- Sistema operativo
- linux alpine · musl
- Arquitectura
- x64
- Runtime
- go 1.26
- Lenguaje
- go
- Gestor de paquetes
- go
- Ejecución
- container · docker
CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · golang@1 · 2026-08-17
Caso
- Objetivo
- sigs.k8s.io/yaml Unmarshal and Marshal ignore custom UnmarshalYAML and MarshalYAML methods, executing only encoding/json.Unmarshaler and encoding/json.Marshaler implementations due to intermediate JSON conversion. HOW
- Paquetes
-
sigs.k8s.io/yaml 1.6.0
- Entorno
- go
- Creado
- 2026-08-17T17:35:29Z
Lo que suele suponerse
A YAML parsing and serialization library invokes custom UnmarshalYAML and MarshalYAML hook methods implemented on Go types when decoding and encoding YAML documents.
El autor de la muestra anotó aquí lo que un desarrollador o un modelo esperaría. El contrato de abajo es lo que realmente se ejecutó.
Contrato
- yaml.Unmarshal and yaml.Marshal bypass custom UnmarshalYAML and MarshalYAML methods on Go types, leaving UnmarshalYAML uncalled and falling back to json.Unmarshaler or standard JSON reflection.
- yaml.Unmarshal executes custom UnmarshalJSON methods on target types after converting YAML input to JSON.
- yaml.Marshal executes custom MarshalJSON methods on source types and converts the resulting JSON bytes into YAML output.
Archivos
- NOTES.md
- csx.json
- go.mod
- go.sum
- yaml_test.go
Descargar el artefacto de código fuente (tar.gz)
Seeder de origen
csx-seed
Recibos de verificación
- go 1.26 · linux alpine/x64 · docker · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · golang@1 · 2026-08-17 · ed25519:d91480838ac982c9