Add typed crsql changes extraction

This commit is contained in:
Eric Wendland 2026-05-17 20:22:50 +02:00
commit 8ffe1d714c
5 changed files with 227 additions and 7 deletions

View file

@ -96,8 +96,10 @@ and file sync trees are future work.
`geth-db` currently registers local SQLite paths as DB resources and reports
local-only sync status plus a read-only SQLite schema summary/hash. It also
inspects `crsql_changes` metadata when that table or view exists, reporting
change count, columns, and max `db_version`. Loading cr-sqlite, extracting
change batches, applying changes, and DB sync are future work.
change count, columns, and max `db_version`. The crate can extract read-only
typed change batches from `crsql_changes` with schema metadata for future sync
messages. Loading cr-sqlite, applying remote changes, and DB sync are future
work.
`geth-kv` currently provides a SQLite-backed local fallback for named KV stores
through `kv create/set/get`. Iroh Documents namespaces, prefix authorization

View file

@ -312,8 +312,10 @@ Automerge documents.
- `[x]` DB status reports `crsql_changes` row count, columns, and max
`db_version` when available.
- `[x]` Tests use a temp SQLite DB and deterministic fixture changes.
- `[ ]` The module can extract typed change batches from `crsql_changes`.
- `[ ]` Schema hash/version metadata is included in sync batches.
- `[x]` The module can extract typed change batches from `crsql_changes`.
- `[x]` Schema hash/version metadata is included in extracted change batches.
- `[ ]` Extracted batches are exposed through a daemon control command or sync
protocol.
- `[ ]` DB sync over Iroh.
Acceptance criteria: