aboutsummaryrefslogtreecommitdiff
path: root/docs/STATE.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/STATE.md')
-rw-r--r--docs/STATE.md14
1 files changed, 11 insertions, 3 deletions
diff --git a/docs/STATE.md b/docs/STATE.md
index 9f2f29f..aae9906 100644
--- a/docs/STATE.md
+++ b/docs/STATE.md
@@ -6,9 +6,10 @@ and `docs/TUI-GUIDELINES.md` (UI conventions). Dated 2026-09-19.
## Status
Working self-hosted bookkeeping system, not production-proven. Backend ledger
-core is complete; filing/year-end/payroll are not. TUI is usable and
-exercised via pty smoke tests; the test suite (`make test`) covers the
-server/protocol/ledger only.
+core is complete; filing/year-end/payroll are not. TUI is usable and exercised
+by `make test-pty` (golden screen-text scenarios); `make test` covers the
+server/protocol/ledger, the TUI widget unit tests and the docs consistency
+check.
## Locked decisions
@@ -229,6 +230,13 @@ server/protocol/ledger only.
## Known caveats
+- Developer tooling (2026-09-20): `g_commands[]` carries declarative argument
+ schemas (`CMD_ARGS`); `describe` emits them and the dispatcher validates
+ before the handler runs. `make check` (part of `make test`) fails when a
+ command or error code is missing from `PROTOCOL.md`
+ (`scripts/check-consistency.sh`). `make test-asan`/`test-ubsan` build
+ `test_core` with sanitizers; `make test-pty` runs `scripts/tui-golden.py`
+ (dashboard, audit, vouchers) against a throwaway `/tmp` daemon.
- Never commit unless the human asks.
- SQLite files must not be backed up live with restic; use
`backup.snapshot` (`VACUUM INTO`) and point restic at the snapshots.