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