docs: POC #1 findings land — SQLite posture resolved (Arm A: honker-core on our rusqlite)

Findings (poc-sqlite-posture-findings.md, run in a parallel session;
tests re-verified in this session — 4 passing): all three of Arm A's
gate conditions fired in its favor — bridged rusqlite ~2x sqlx
native-async at p50 (B's premise measured false), honker-core's
inherited watcher tighter than a re-derived one (p50 1.40 vs 2.15 ms,
max 29 vs 172 ms, battle-tested failure handling), and the .so runtime
dependency is packaging cost with no compensating advantage.
Transactional property holds identically on both (SQLite's property,
not the posture's). Constraints recorded: honker-core 0.5.0 pins
rusqlite ^0.40.1 (rustc >=1.99); mixed rusqlite+sqlx binaries need a
vendored libsqlite3-sys patch (OQ-ST-02's per-engine-crate split keeps
the engine binary single-driver). Fixed the findings' test-count
discrepancy (4 tests, verified running). Phase-0: OQ-ST-03 SQLite half
resolved (pg half remains), OQ-ST-04/05/06 carry POC input, register
row gains findings link + status, plan step 2 split into done/next,
frontmatter updated, POC crate added to references.
This commit is contained in:
glm-5.3-flash committed 2026-10-04 15:13:25 +00:00
1 parent 26ee734ae6
commit 299603b164
2 files changed
+87 -32

No files matched your search

+6 -3
View File
@@ -175,8 +175,11 @@ test-suite scheme).
## Probe 3 — transactional contract (decision axis 4)
Property tests (Rust, `tests/contract.rs`, all green, 4 tests + 1
watcher-recovery):
Property tests (Rust, `tests/contract.rs`, all green, 4 tests —
`tx_enqueue_rollback_drops_both_ghost_free`,
`concurrent_writers_exactly_once`, `missed_wake_stress_burst_coalescing`,
`watcher_death_recovery_arm_b` — covering the rows below; the first test
also asserts the committed-tx happy path):
| Property | A | B |
|---|---|---|
@@ -301,7 +304,7 @@ driver if one ever displaces rusqlite).
- POC crate: `/workspace/alkstore-sqlite-posture-poc` (self-contained;
`extbuild/libhonker_ext.so` built from crates.io-published source;
`[patch.crates-io]` one-liner for sqlx-sqlite/libsqlite3-sys).
- Tests: `cargo test` → `tests/contract.rs` (5 tests; transactional
- Tests: `cargo test` → `tests/contract.rs` (4 tests; transactional
properties, concurrency, wake coalescing, watcher recovery).
- Probes: `cargo run --release -- seam|watch <arm> <db>` per the
binary's help; `watchloop` for the dedicated data_version watcher.