Fork port: connection architecture + watcher machinery into the substrate (ADR-011/012 §3–§5, task fork-port-connection-watcher)
Kept half of the honker-core fork lands in alkstore-sqlite/src/substrate/ as schema.rs / watcher.rs / ops.rs (register D-17): PRAGMA/WAL open posture + set_journal_mode_wal retry, Writer, Readers, the polling watcher family (SharedUpdateWatcher, WatcherDeathGuard, stat_identity dead-man's switch), in_savepoint/ UnwindUndo mutation discipline, REAL-coercion arg helpers, notify scalar + notifications table with the ADR-010 §6 at-attach pruning cap, stream functions, lock functions. Port deltas (ADR-012 §4): W-1 bounded reconnect backoff (MAX_RECONNECT_TICKS=100), W-2 fallible watcher spawn (Result; engine maps to Database at open in wave 3), dead-man's-switch panic replaced by log-and-exit through the ordinary death path — death still closes every subscriber (pinned by test, join now Ok). Table family _honker_* -> __alkstore_* (D-10); duplicate-column race swallow re-keyed to pragma_table_info (D-11); scheduler cron_expr -> spec; fresh-only bootstrap, append-column migrations kept, column-order equality pinned. Drops confirmed absent: cron, kernel/shm backends, rate-limit/result tables, superseded queue functions (D-01..D-04). file-id retained for the kept dead-man's switch (D-18). 43 engine-crate tests green (adapted inherited suites + delta tests + cross-mechanism pressure); cargo build/clippy -D warnings/fmt clean. PROVENANCE.md register updated to the landed state (D-01..D-20).
This commit is contained in:
1 parent
2d855b9546
commit
43a135c453
8 files changed
+2751
-30
No files matched your search
@@ -33,8 +33,23 @@
|
||||
//! this directory) is the preservation obligation's carrier;
|
||||
//! provenance register: [`PROVENANCE.md`](PROVENANCE.md).
|
||||
//!
|
||||
//! Scaffold state: this module is intentionally empty of machinery.
|
||||
//! The port tasks (`fork-port-connection-watcher`,
|
||||
//! `fork-rederive-queue-ops`) land the forked lineage and the
|
||||
//! re-derived queue ops here; the register and the license notice are
|
||||
//! already in place so the ports land into a finished frame.
|
||||
//! Scaffold state: the connection/watcher machinery (the kept half
|
||||
//! of the fork, ported by `fork-port-connection-watcher`) lives under
|
||||
//! this module below — `schema.rs`, `watcher.rs`, `ops.rs` in
|
||||
//! upstream's `lib.rs` / `honker_ops.rs` order. The re-derived queue
|
||||
//! ops (`fork-rederive-queue-ops`) land beside them.
|
||||
//!
|
||||
//! Port state (wave 2): the machinery below is ported but not yet
|
||||
//! wired by the engine layer (wave 3 wires `open`, the trait impl, the
|
||||
//! seam). A subset of the ported surface is therefore unreachable
|
||||
//! until that wiring lands.
|
||||
|
||||
#![allow(dead_code)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
mod ops;
|
||||
mod schema;
|
||||
mod watcher;
|
||||
|
||||
pub(crate) use schema::{attach_notify, bootstrap_schema, open_conn};
|
||||
pub(crate) use watcher::SharedUpdateWatcher;
|
||||
Reference in new issue
Block a user