README.md
In docs/specs/ · At e15865eCopy the commit ID
Preview
Text · 3.9 KiBmkit specifications
The authoritative wire-format, on-disk, and subsystem specifications.
Each spec carries its own status (stable / normative / draft) in its
front matter.
FORMAL.md maps spec clauses to the formal models and proofs that check them, with each result's bounds.
- SPEC-ATTESTATIONS — native attestations: in-toto v1 statements in DSSE envelopes.
- SPEC-CONCURRENCY — the total mkit lock order across worktree, ref-history, and CAS locks.
- SPEC-CONFIG-SECURITY — user-vs-repo config trust boundary and key classification rules.
- SPEC-CONVENTIONS — shared vocabulary (RFC 2119 keywords, status vocabulary, encoding notation) for the SPEC-*.md corpus.
- SPEC-DELTA — delta encoding for packfile objects.
- SPEC-DISCLOSURE — partial-disclosure bundle (path/chunk/byte-range proofs) and the closure profile (full disclosure against a commit id).
- SPEC-EXTERNAL-SIGNER — subprocess protocol for out-of-process signers (HSM, TPM, WebAuthn, …).
- SPEC-FASTCDC — deterministic content-defined chunking for chunked blobs.
- SPEC-GC — garbage collection, object pruning, and recovery.
- SPEC-GIT-BRIDGE — mkit→git export bridge (fork mode) and its verifiers.
- SPEC-GIT-IMPORT — git→mkit import bridge (one-way fork) and its verifiers.
- SPEC-HISTORY-ORDER — bounded timestamp/discovery all-parent traversal order and reducer snapshot format.
- SPEC-HISTORY-PROOF — MMB-based history proofs for light-client verification.
- SPEC-HTTP-OBJECTS — HTTP object serving, published-view access, and disclosure proofs.
- SPEC-INDEX — repo-local staging-area index (advisory, not exchanged).
- SPEC-KEYSTORE — key vault interface, backends, and
mkit keyCLI surface. - SPEC-MERKLE-OBJECTS — merkelized ChunkedBlob and Tree object hashing.
- SPEC-OBJECTS — on-disk object model and canonical serialization over BLAKE3 IDs.
- SPEC-PACK-SHARDS — sharded pack production and transport delivery.
- SPEC-PACKFILE — packfile wire format for object exchange.
- SPEC-REFS — ref names, storage, and CAS update variants.
- SPEC-RELEASE-THRESHOLD — BLS threshold signatures for release-party attestation.
- SPEC-RPC — shared stdio protobuf framing for subprocess protocols.
- SPEC-SERVER — draft server pipeline, durable outcomes and lifecycle events, storage leases, server GC, takedown notices, storage receipts, and authenticated remote-hook contract.
- SPEC-SIGNING — commit / remix / tag signing hashes and verification.
- SPEC-SPARSE-CHECKOUT — verifiable server-side sparse checkout over HTTP/S3.
- SPEC-TRANSPORT — seven-verb transport wire protocol (file, SSH, HTTP [legacy, see SPEC-TRANSPORT-CONNECT], S3, memory).
- SPEC-TRANSPORT-CONNECT — draft
mkit.transport.v1Connect service, the canonical remote protocol superseding SPEC-TRANSPORT §5. - SPEC-TRANSPORT-ENC — self-contained encrypted-stream transport (
mkit+enc://; deprecated, no maintained server). - SPEC-WORKTREE — linked working trees: common-dir/per-tree state split, discovery, and cross-worktree locking.
- SPEC-WRITE-GRANTS — draft owner-signed grants that let Ed25519 keys write to, or read from, a namespace's repositories.