atproto libraries implementation in ocaml
1# AT Protocol Compliance Report 2 3**Generated:** 2026-01-01T22:04:38Z 4**Repository:** [https://github.com/gdiazlo/atproto](https://github.com/gdiazlo/atproto) 5 6## Summary 7 8| Metric | Value | 9| ------ | ----- | 10| Total Tests | 494 | 11| Passed | 494 | 12| Failed | 0 | 13| Pass Rate | 100.0% | 14 15**Status:** ✅ 494/494 tests passing 16 17## Syntax Validation 18 19📖 [Specification](https://atproto.com/specs/lexicon#string-formats) 20 21**448/448** tests passing (100.0%) 22 23| Category | Fixture | Passed | Failed | Status | 24| -------- | ------- | ------ | ------ | ------ | 25| Handle | `handle_syntax_valid.txt, handle_syntax_invalid.txt` | 119 | 0 | ✅ | 26| DID | `did_syntax_valid.txt, did_syntax_invalid.txt` | 42 | 0 | ✅ | 27| NSID | `nsid_syntax_valid.txt, nsid_syntax_invalid.txt` | 52 | 0 | ✅ | 28| TID | `tid_syntax_valid.txt, tid_syntax_invalid.txt` | 13 | 0 | ✅ | 29| Record Key | `recordkey_syntax_valid.txt, recordkey_syntax_invalid.txt` | 27 | 0 | ✅ | 30| AT-URI | `aturi_syntax_valid.txt, aturi_syntax_invalid.txt` | 95 | 0 | ✅ | 31| Datetime | `datetime_syntax_valid.txt, datetime_syntax_invalid.txt` | 79 | 0 | ✅ | 32| Language | `language_syntax_valid.txt, language_syntax_invalid.txt` | 21 | 0 | ✅ | 33 34## Cryptography 35 36📖 [Specification](https://atproto.com/specs/cryptography) 37 38**12/12** tests passing (100.0%) 39 40| Category | Fixture | Passed | Failed | Status | 41| -------- | ------- | ------ | ------ | ------ | 42| Signature Verification | `signature-fixtures.json` | 6 | 0 | ✅ | 43| P-256 did:key | `w3c_didkey_P256.json` | 1 | 0 | ✅ | 44| K-256 did:key | `w3c_didkey_K256.json` | 5 | 0 | ✅ | 45 46## Data Model (IPLD) 47 48📖 [Specification](https://atproto.com/specs/data-model) 49 50**21/21** tests passing (100.0%) 51 52| Category | Fixture | Passed | Failed | Status | 53| -------- | ------- | ------ | ------ | ------ | 54| DAG-CBOR/CID | `data-model-fixtures.json` | 3 | 0 | ✅ | 55| CID Syntax | `cid_syntax_valid.txt, cid_syntax_invalid.txt` | 18 | 0 | ✅ | 56 57## Merkle Search Tree (MST) 58 59📖 [Specification](https://atproto.com/specs/repository#mst-structure) 60 61**13/13** tests passing (100.0%) 62 63| Category | Fixture | Passed | Failed | Status | 64| -------- | ------- | ------ | ------ | ------ | 65| Key Heights | `key_heights.json` | 0 | 0 | ✅ | 66| Common Prefix | `common_prefix.json` | 13 | 0 | ✅ | 67 68--- 69 70This report is generated from the official [AT Protocol Interoperability Tests](https://github.com/bluesky-social/atproto-interop-tests). 71