feat: report store durability status

This commit is contained in:
Eric Wendland 2026-07-05 18:10:41 +02:00
commit 6953e3acde
7 changed files with 124 additions and 18 deletions

View file

@ -10,7 +10,12 @@ The local metadata store is SQLite product state. `geth-store` tracks a numeric
`schema_version` in the `meta` table and applies ordered migrations up to the
crate's current schema version when the store opens. Fresh database creation and
repeated opens are idempotent; migrations that change existing schemas run in a
SQLite transaction where SQLite supports it.
SQLite transaction where SQLite supports it. File-backed stores deliberately use
SQLite WAL mode with `synchronous=NORMAL`: committed transactions remain
consistent after process crashes, while the most recent transaction can be lost
on an OS crash or power loss before the WAL is durable. `geth status` reports
the observed schema version, journal mode, synchronous mode, and whether those
values match the expected store policy.
Service management is also exposed through the single binary. `geth daemon
service ...` installs and controls a user-level service definition for the local

View file

@ -142,11 +142,11 @@ it.
- `[ ]` Backup output avoids copying private SSH admin keys.
- `[ ]` Docs explain what is and is not included.
- `[ ]` Document database durability settings.
- `[x]` Document database durability settings.
Acceptance criteria:
- `[ ]` WAL and synchronous settings are chosen deliberately.
- `[ ]` Crash-recovery expectations are documented.
- `[ ]` `geth doctor` or status output reports obvious store issues.
- `[x]` WAL and synchronous settings are chosen deliberately.
- `[x]` Crash-recovery expectations are documented.
- `[x]` `geth doctor` or status output reports obvious store issues.
## Phase 4: Security Boundary Closure