Files
alkstore/alkstore-sqlite
..
core: verify and pin the receiver's pre-yield offset() value (review 004 item 12, core-pin-offset-initial-value) — the three engines verified equal live, so the doc-pin branch applies: offset() reads 0 before any yield on every receiver — fresh consumer, stored positive checkpoint, stored negative seed (ADR-023 §2's totality arm, the one a checkpoint-seeded realization would surface on) — the no-yield sentinel, never the stored checkpoint: the checkpoint gates the feed's attach-read start while the receiver's offset tracks the last-yielded event only, composing with the pinned pre-yield save_offset() no-op; the attach read's prefetches sit unobserved and the first recv/try_recv observation is the first move (then the post-yield value, receiver_close_and_save_arms' pin). Verified by code read first (all three offset() bodies are self.position, all three constructors seed position: 0 unconditionally — mem stream.rs:353, sqlite :399, pg :620) then live: new suite row receiver_offset_pre_yield_is_zero (alkstore-contract-suite, stamped ADR-008 §8 + the core-contract.md pin, four arms incl. the first-observation composition leg) green on all three columns, pg against the harness server (parked pglo-poc :15432); pinned in three places: core-contract.md streams/subscribe row (dated 2026-10-11 annotation) + a verification-backlog bullet recording the verified pin, the core trait doc on offset() (core's doc comments are contract text), and the suite row itself — ADR-008 §8's shape comment deliberately left untouched (doc-only verification takes no ADR amendment, noted in the task); no engine code changed, no divergence to raise; gates green: workspace build/tests server-less, full pg column vs harness (135+26+9), clippy -D warnings, fmt --check, doc gate zero warnings, fuzz corpus replay 6/6, wasm32 mem check, taskgraph validate (96); task -> completed
2026-10-11 14:34:15 +00:00

alkstore-sqlite

The SQLite engine of the alkstore family: the core contract implemented on rusqlite over the forked honker-core substrate carried in-tree.

let store = alkstore_sqlite::open("store.db", alkstore_sqlite::SqliteOpts::default())?;

Engine posture — single-host, file-backed. Cross-process on one host is verified territory; a .db on network storage (NFS two-writers) is not a supportable deployment posture. SqliteOpts carries the watcher cadence and the reader-pool size; synchronous = NORMAL is hardwired at connection bootstrap — there is no consumer surface to raise the sync level.

See the family README for the interface and the deployment matrix, and the SQLite engine spec for the substrate's details. The substrate (forked third-party code) ships with its own bundled license notice in the crate tree — the root dual license files do not replace it.