Phase 1: make Tek9 the durable workspace document/graph store #33
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
priority:P1
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/quasar#33
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Parent: #24
Goal
Make Tek9 the process-durable local persistence engine behind the Quasar Common Lisp control plane for normal workspace mutations while preserving the existing single-writer, revision, atomic commit, journal, graph-integrity, reconnect, and event-ordering guarantees.
Scope for this phase
workspace-store;memory-storefor focused unit tests;If the current
commit-workspaceinterface cannot express an efficient delta, introduce the smallest typed persistence commit plan derived from already-validated Quasar operation application. Do not diff or rewrite the entire corpus per mutation.Hard invariants
tek9::or rawlmdb:*;Required recovery fixture
Create documents of multiple dtypes including a relation, named graphs, nodes/edges, graph metadata, and a multi-operation transaction; stop/close the control plane and Tek9; construct a new store instance on the same path; restore and verify exact canonical state, revision, journal, graph IDs/edge IDs and cross-workspace isolation.
Failure injection
Force a storage failure after mixed document + graph writes are prepared but before outer LMDB commit. Verify the live workspace remains at revision N and a reopened Tek9 instance contains none of the candidate document, topology, adjacency, metadata, revision, or journal changes. Then rerun successfully and prove all records appear together at N+1.
Follow-on explicitly out of scope
Keep #24 open after this lands if active workspaces/import candidates remain heap materialized. The next phase is direct Tek9-backed reads/snapshots and durable staged streaming imports with bounded memory/backpressure.
Tek9 dependencies
Cross-link the Tek9 transaction-composition and any required generic graph-lifecycle API issues/PRs. Quasar must consume an exact merged Tek9 SHA/version, not floating
master.