First release. Requires JDK 25+ and Clojure 1.12+. The release JAR supports
macOS ARM64; other native targets are not yet verified.
- Explicit mutable Automerge replicas with GC-managed native ownership,
synchronous changes with rollback, and document-owned object handles.
- Maps, lists, collaborative text, counters and scalar codecs, with explicit
materialization into persistent Clojure data.
- Fork/merge, conflicts, history heads, change metadata, author attribution,
missing-dependency inspection and native history diffs.
- Rich-text blocks, spans, marks, stable cursors and UTF-16 text positions with
Unicode boundary validation.
- Immutable
SavedDocument values with encoded-byte equality, defensive byte
exports, full persistence and incremental save/load streams. - Strict encoded-change batch ingestion with duplicate and out-of-order delivery
support, plus repeatable delta capture using caller-owned acknowledgement
checkpoints. Failed native applications require reloading the working replica.
- Peer synchronization with persistent per-document/per-peer state.
- Pinned Automerge JS 3.5.0 / Rust core 0.12.0 source, a reproducible Rust C-API
extension, generated typed Java FFM bindings and native ABI checks.
- Correctness, rollback, concurrency, Unicode, GC reachability, collaboration and
JavaScript file/rich-text/sync interoperability checks; local timing probes.
- Build/install/deploy tasks, exported clj-kondo hooks and a versioned usage skill
for coding agents, also packaged as a Claude Code plugin.