canonical-ml — Canonical Merkle Log
Tier L2 — a single-algorithm canonical library. canonical-ml is the append-only
engine over the structural Merkle Spine (merkle-spine). It is the append-only peer of the
mutable canonical-mt tree; both build on merkle-spine and neither depends on the other.
The one currency they exchange is the spine's general structural Seal.
Role
CML (Canonical Merkle Log) owns one algorithm's append-only mechanism:
- Frontier carry — the base-
kreduction schedule (the bounded continuation state), itself an optimization of the spine's proof topology. - The member-root fold — one algorithm's raw root, the fold of its frontier peaks.
- Append-only consistency — the
ConsistencyProof(append-only prefix), sound here precisely because the log only ever grows. It is the proof a mutable tree cannot offer. - Inclusion and leaf proof generation, verified in the spine.
- The structural snapshot facet — the frontier peaks a
spine::Sealfreezes, and the base case for filling.
Epoch-free and substrate-borrowing
CML is epoch-free and multi-algorithm-free: it reads one algorithm's view over a
borrowed node-reader substrate and never owns the store. That is what lets the
polydigest combinator drive N CML views over one shared data substrate without
duplicating leaf data. The activation timeline, the null-run-extents, the binding
root, and coupling are the combinator's facet, not CML's. The structural commitment
a CML seal produces is the general spine::Seal; the epoch facet over it is
polydigest::BoundSnapshot.
Place in the layered model
merkle-spine ◄── the structural core
│
├── canonical-ml ◄── this crate (append-only)
└── canonical-mt (mutable)
│
polydigest (the combinator that lifts both; polydigest(canonical-ml) is EML)
│
EML / EMT / ETL (k=2 instantiations)
Further reading
merkle-spine— the structural core this library builds on.canonical-mt— the mutable peer; both exchangeSeal.polydigest— the combinator that lifts canonical-ml to EML with the activation timeline and binding root.../docs/architecture.md— the full design.