Files
suaveplan/openspec/archive/2026-05-02-crypto-hash-spec-conformance/specs/crypto-hash/spec.md
2026-05-27 23:29:53 +01:00

21 lines
1.2 KiB
Markdown

# Capability Spec Delta: crypto-hash (spec-conformance)
**Package**: `@suaveplan/crypto-hash`
**Status**: PROPOSED
This delta annotates each existing requirement in `openspec/specs/crypto-hash/spec.md` with a `**Verified by:**` line. No requirement semantics change.
## MODIFIED Requirements
| Requirement | Verified by |
|---|---|
| Package identity | `tests/spec-conformance.test.ts::"package.json name is @suaveplan/crypto-hash"` |
| Per-primitive replaceability layout | `tests/spec-conformance.test.ts` (every-primitive `noble.ts`+`native.ts` and `*.select.ts` banner) AND `tests/native-stubs.test.ts` |
| Shared test vectors and differential equivalence | `src/hash/sha2.test.ts` AND `src/mac/hmac.test.ts` AND `src/kdf/hkdf.test.ts` AND `src/kdf/pbkdf2.test.ts` AND `src/kdf/argon2id.test.ts` AND `tests/native-stubs.test.ts` |
| Public API stability | `tests/tree-shake.test.ts` |
| CI gate for flipping default to native | `tests/native-stubs.test.ts` AND `tests/spec-conformance.test.ts` (banner check) |
## Newly added tests in this change
- `tests/spec-conformance.test.ts` — pins package-name identity, per-primitive layout (`noble.ts` + `native.ts`), and `*.select.ts` GENERATED banner.