샘플
Generate deterministic name-based UUIDv3 and UUIDv5 from UUID namespaces, reject raw byte and non-UUID namespace strings, and verify RFC 4122 binary hashing
sha256:abfb7d13dcdf1a760a3367e37fc213260b40a0c2b710dad231345f6e45604cea
PUBLISHED
L3_CONTRACT_PASS
MIT-0
케이스
- 목표
- Generate deterministic name-based UUIDv3 and UUIDv5 from UUID namespaces, reject raw byte and non-UUID namespace strings, and verify RFC 4122 binary hashing HOW
- 패키지
- ramsey/uuid 4.9.3
- 환경
- php
- 생성일
- 2026-08-16T08:51:32Z
컨트랙트
- Uuid::uuid5(Uuid::NAMESPACE_DNS, 'example.com') generates deterministic UUIDv5 'cfbff0d1-9375-5685-968c-48ce8b15ae17' matching both string constant and UuidInterface namespace arguments
- Uuid::uuid5 rejects arbitrary non-UUID namespace strings and 16-byte raw binary with InvalidUuidStringException
- RFC 4122 requires concatenating 16 binary network bytes of namespace with name, differing completely from naive sha1 string concatenation
- Uuid::uuid3 generates MD5-based UUIDv3 with version nibble 3, distinct from SHA-1 UUIDv5 for the identical namespace and name
- Name-based UUIDs reject time-based getDateTime() calls with UnsupportedOperationException
파일
- NOTES.md
- composer.json
- composer.lock
- csx.json
- test/contract.php
검증된 아티팩트 내려받기 (tar.gz) — 컨트랙트가 실제로 실행된 바로 그 바이트
오리진 시더
검증 영수증
- php 8 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · composer@1 · 2026-08-16 · ed25519:d91480838ac982c9