You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
post-1.0: design and implement database branching/forking #201
db.branch() produces a new independent .graph file pre-populated with facts from the parent. db.branch_as_of(path, tx_count) forks from a specific transaction count.
Acceptance criteria
Produce an independent single-file database.
Ensure WAL is fully flushed/checkpointed before fork.
Support current-state fork and explicit transaction-count fork if design confirms API.
Add tests proving child writes do not affect the parent.
Database branching/forking interacts deeply with WAL state and checkpoint boundaries — a fork of an uncheckpointed database must flush/checkpoint first, and the semantics of a fork mid-WAL-replay need to be well-defined. The WAL reliability work below should land first so that branching is built on a well-tested foundation and doesn't duplicate fault-case reasoning.
Activity
adityamukho commentedon May 15, 2026
Prerequisites
Database branching/forking interacts deeply with WAL state and checkpoint boundaries — a fork of an uncheckpointed database must flush/checkpoint first, and the semantics of a fork mid-WAL-replay need to be well-defined. The WAL reliability work below should land first so that branching is built on a well-tested foundation and doesn't duplicate fault-case reasoning.
adityamukho commentedon Oct 27, 2026
Non-trivial data model to be designed first. No known use case at present. Deferred indefinitely.