release-crate-docs: crate docs final pass — doc gate green with -D warnings posture recorded in AGENTS.md, warn(missing_docs) adopted on the four published crates (audit probe 0; Error enum+fields, sqlite substrate fuzz-surface fns filled), accuracy pass fixed core drifts (trim_to wake nuance, ADR-023 §2 domain rules + shared paragraph, QueueOpts gloss, MemStore::new exception) and engine postures (eleven-vs-ten tx-method count, spawn_blocking rationale via sync substrate, one-host cross-process honesty element), spec-side aligned (pg locks family + row-backed wording, mem clock-accessor home), two boundary-wording dispositions recorded for release-contract-window-close (try_recv arms, 8000-byte <= reading), queue round-trip doctest landed in alkstore-mem crate docs; task -> completed with Notes + Summary

This commit is contained in:
glm-5.3-flash committed 2026-10-11 00:08:01 +00:00
1 parent 5f5f6741d5
commit 8e27f4b64b
22 files changed
+289 -49

No files matched your search

+12 -4
View File
@@ -5,8 +5,10 @@
//! # Posture
//!
//! **Single-host** (ADR-016): this engine is file-backed, one machine,
//! no runtime capability surface, no multi-host mode — NFS
//! two-writers-unsupported is the inherited lineage honesty, stated
//! no runtime capability surface, no multi-host mode — cross-process
//! *on one host* is verified ground (`data_version` is cross-process
//! by nature; deployment.md's matrix line), NFS two-writers
//! unsupported is the inherited lineage honesty, stated
//! here as the crate's deployment boundary (compile-time engine
//! identity is the only engine-discovery mechanism — pick this crate,
//! get this posture). Durability knobs, pool sizing, and the watcher
@@ -20,8 +22,14 @@
//! points holds it; consumers budget transactions accordingly.
//!
//! Every engine call round-trips a blocking thread (the
//! `spawn_blocking` seam — rusqlite connections are not
//! `Send`-across-await; the family REQ-TTY-01 posture).
//! `spawn_blocking` seam — the substrate is sync machinery, std
//! threads and blocking iterators, bridged at the trait seam per the
//! family REQ-TTY-01 posture).
//!
//! Every public item carries doc text; the missing-docs lint is part
//! of the standing gates.
#![warn(missing_docs)]
mod lock;
mod notify;
+6 -3
View File
@@ -26,9 +26,12 @@
//! [`SqliteStore::close`].
//!
//! Every engine call round-trips the `spawn_blocking` seam
//! ([`crate::seam`]); rusqlite connections are not
//! `Send`-across-await. Single-host by nature: file-backed, one
//! machine; NFS two-writers-unsupported (the lineage's honesty
//! ([`crate::seam`]) — the substrate is sync machinery (std threads,
//! blocking iterators) bridged at the trait seam, per the family
//! REQ-TTY-01 posture. Single-host by nature: file-backed, one
//! machine; cross-process on one host is verified ground
//! (`data_version` is cross-process by nature); NFS
//! two-writers-unsupported (the lineage's honesty
//! posture, inherited — ADR-016).
use alkstore::Store;
@@ -487,6 +487,8 @@ fn now_unix(conn: &Connection) -> rusqlite::Result<i64> {
conn.query_row("SELECT unixepoch()", [], |r| r.get(0))
}
/// The substrate's `@every` interval parser (`@every <n><unit>`,
/// `<unit>` in `s|m|h|d`) — fuzz/test-only surface.
pub fn parse_every_interval(spec: &str) -> Result<i64, String> {
let body = spec
.strip_prefix("@every ")
@@ -524,6 +526,8 @@ fn next_every_boundary(spec: &str, after: i64) -> Result<i64, String> {
.ok_or_else(|| format!("next boundary overflows for {spec:?}"))
}
/// The substrate's schedule skip-forward arithmetic — fuzz/test-only
/// surface.
pub fn skip_forward(next_fire_at: i64, now: i64, interval: i64) -> i64 {
let gap = now as i128 - next_fire_at as i128;
let interval = interval.max(1) as i128;
+1 -1
View File
@@ -1,6 +1,6 @@
//! The transactional seam's SQLite arm — `begin_tx`, the
//! [`SqliteTxHandle`] (the writer-slot lease, ADR-007), and all eleven
//! `*_tx` methods (`sqlite-engine-seam-tx`).
//! transaction-handle methods (ten `*_tx` ops plus `commit`) (`sqlite-engine-seam-tx`).
//!
//! `begin_tx` acquires the writer slot and opens `BEGIN IMMEDIATE` on
//! the acquired connection; the handle owns connection + slot. Every