Skip to content

Specifications

The English specifications define Graft’s observable contracts. Use them when implementing a compatible adapter, reviewing a behavior change, or deciding which layer owns a rule. Use the task guides for normal product integration.

ContractSpecification
Repository paths, objects, refs, index, and commitsGraft Repository 1.0
SQLite storage snapshots and restore semanticsGraft Storage Snapshots 1.0
Worktree capture and materializationGraft Worktree Materialization 1.0
Path and SQLite logical diff behaviorGraft Diff 1.0
Three-way merge and conflict behaviorGraft Merge 1.0
Runtime and host adapter boundariesGraft Runtime Adapters 1.0
Remote publication and synchronizationGraft Remote Sync 1.0
Portable fixed-page SQLite deltasGraft SQLite Page Delta 1.0

Start with the specification index for ownership, conformance labels, and the canonical layer order.

Repository identity, snapshot content, diff and merge results, adapter safety, and remote publication order are observable contracts. Cache file names, Rust module boundaries, temporary paths, and storage-engine key encodings are implementation details unless a specification says otherwise.

Behavior changes should update the owning specification and executable conformance evidence together.