feat(#2635): wire harness-local questions mirror (inc2 pt2)

This commit is contained in:
damocles 2026-07-23 21:10:51 +02:00 committed by mara
commit e5ef5a72be
8 changed files with 465 additions and 191 deletions

View file

@ -40,19 +40,17 @@ pub fn harness_dir() -> PathBuf {
hive_sh4re::paths::harness_dir()
}
/// Consolidated harness-local state db — currently todos + reminders, one
/// table each — mutable per-agent state the harness owns, kept out of the
/// append-only `hyperhive-events.sqlite` sink. Per mara's call ("not yet
/// another sqlite! todos, reminders, questions should be like three tiny
/// tables in one 500kb sqlite"), this file is the shared home for all
/// loose-ends-v2 stores; each store's `open()` only applies its own
/// Consolidated harness-local state db — todos + reminders + the questions
/// mirror, one table each — mutable per-agent state the harness owns, kept
/// out of the append-only `hyperhive-events.sqlite` sink. Per mara's call
/// ("not yet another sqlite! todos, reminders, questions should be like
/// three tiny tables in one 500kb sqlite"), this file is the shared home
/// for all loose-ends-v2 stores; each store's `open()` only applies its own
/// `CREATE TABLE IF NOT EXISTS`, so opening multiple stores against the
/// same path is safe (distinct table names, no schema collision). A
/// questions mirror table is the planned third tenant (a following
/// increment), not part of this schema yet.
/// Both the todos and reminders stores open this same path directly (see
/// their `open()` call sites) — distinct table names mean no schema
/// collision, so there's no need for per-store path wrapper fns here.
/// same path is safe (distinct table names, no schema collision).
/// All three stores (todos, reminders, questions) open this same path
/// directly (see their `open()` call sites) — distinct table names mean no
/// schema collision, so there's no need for per-store path wrapper fns here.
///
/// Before this consolidation, todos and reminders lived in their own
/// `hyperhive-todos.sqlite` / `hyperhive-reminders.sqlite` files; a