Mono sync protocol (monoprotocol)
Version: mono-sync/0.2.0-draft
License: Mozilla Public License 2.0
The Markdown specification in spec/ is canonical. The Rust crate monoprotocol under rust/monoprotocol/ is a reference implementation that MUST match the spec and conformance/ fixtures; third-party code should implement against the spec first.
Repository layout
| Path | Role |
|---|---|
spec/PROTOCOL.md |
Normative protocol (wire, crypto, journal, capabilities) |
spec/OBJECTS.md |
Normative replicated object model |
spec/CONFORMANCE.md |
How to run and extend test vectors |
conformance/ |
Golden HKDF/AES-GCM vectors, JSON and CBOR wire fixtures |
rust/monoprotocol |
Published crate monoprotocol on crates.io (MPL-2.0) |
rust/monoprotocol-conformance |
Tests that load conformance/ fixtures |
Quick start (Rust)
Implementing in another language
- Read
spec/PROTOCOL.mdandspec/OBJECTS.md. - Implement HKDF + AES-256-GCM exactly as in
spec/CONFORMANCE.md. - Pass all vectors in
conformance/golden/crypto.json. - Parse
conformance/json/*.jsonandconformance/cbor/*.cborinto your envelope type.
Pre-release audit
See AUDIT.md for known limitations (especially 2FA stub behavior) and the release checklist.
Related projects
Product mesh, gateway, browser, and adapters remain in mono and depend on this protocol crate.