"""Core protocol layer: canonical encoding, identifiers, keys, signed operations, and the append-only operation log. These modules implement the wire format and operation-log schema published in milestone 2 ("MNC-1" canonical encoding, ed25519-signed operation envelopes, content-addressed operation ids). The derivation engine in :mod:`mnema.derive` is built strictly on top of this layer so that another implementation can interoperate by speaking the same wire format. """ from mnema.core.canonical import CanonicalEncodingError, canonical_bytes, canonical_dumps from mnema.core.ids import ( AUTHOR_ID_PREFIX, CLAIM_KEY_PREFIX, OP_ID_PREFIX, claim_key, is_author_id, is_claim_key, is_op_id, op_id_for_wire, value_fingerprint, ) from mnema.core.keys import Identity, verify_signature, verify_signature_strict from mnema.core.log import DanglingReferenceError, LogError, OpLog from mnema.core.operations import ( ALL_OP_TYPES, CLAIM_ASSERT, CLAIM_CORRECT, CLAIM_INVALIDATE, CLAIM_REFUTE, EVIDENCE_ADD, EXPLANATION_RECORD, REFUTE_SCOPE_KEY, REFUTE_SCOPE_VALUE, Operation, OperationError, SchemaError, SignatureError, ) __all__ = [ "CanonicalEncodingError", "canonical_bytes", "canonical_dumps", "AUTHOR_ID_PREFIX", "CLAIM_KEY_PREFIX", "OP_ID_PREFIX", "claim_key", "is_author_id", "is_claim_key", "is_op_id", "op_id_for_wire", "value_fingerprint", "Identity", "verify_signature", "verify_signature_strict", "DanglingReferenceError", "LogError", "OpLog", "ALL_OP_TYPES", "CLAIM_ASSERT", "CLAIM_CORRECT", "CLAIM_INVALIDATE", "CLAIM_REFUTE", "EVIDENCE_ADD", "EXPLANATION_RECORD", "REFUTE_SCOPE_KEY", "REFUTE_SCOPE_VALUE", "Operation", "OperationError", "SchemaError", "SignatureError", ]