Implement MIP-00 keypackage envelope validation

This commit is contained in:
2026-03-13 21:54:07 +01:00
parent 7646650fb9
commit cf5ae772b2
5 changed files with 367 additions and 8 deletions

View File

@@ -13,11 +13,11 @@ Spec source: `~/marmot/README.md` + MIP-00..05.
## M1 — MIP-00 (credentials + keypackages)
- [ ] Enforce kind `443` required tags and encoding (`encoding=base64`)
- [ ] Validate `mls_protocol_version`, `mls_ciphersuite`, `mls_extensions`, `relays`, and `i` tag shape
- [ ] Add efficient `#i` query/index path for KeyPackageRef lookup
- [ ] Keep replaceable behavior for kind `10051` relay-list events
- [ ] Add conformance tests for valid/invalid KeyPackage envelopes
- [x] Enforce kind `443` required tags and encoding (`encoding=base64`)
- [x] Validate `mls_protocol_version`, `mls_ciphersuite`, `mls_extensions`, `relays`, and `i` tag shape
- [x] Add efficient `#i` query/index path for KeyPackageRef lookup
- [x] Keep replaceable behavior for kind `10051` relay-list events
- [x] Add conformance tests for valid/invalid KeyPackage envelopes
## M2 — MIP-01 (group construction data expectations)