From 8ccb6d58d8e2f1c65dfd7ab5f0eb7d93f1f19def Mon Sep 17 00:00:00 2001 From: Anders Betts Date: Wed, 23 Sep 2026 10:13:24 +0200 Subject: docs: state after the v0.1.68 deploy Co-Authored-By: Claude Opus 5.5 --- docs/STATE.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'docs/STATE.md') diff --git a/docs/STATE.md b/docs/STATE.md index 128e824..4dcbb35 100644 --- a/docs/STATE.md +++ b/docs/STATE.md @@ -12,34 +12,32 @@ filing/year-end work remains. TUI is usable and exercised by `make test-pty` lönebesked); `make test` covers the server/protocol/ledger, the TUI widget unit tests and the docs consistency check. -## Resume here (2026-09-22) +## Resume here (2026-09-23) -- **Byt lösenord (2026-09-23, branch `eff/set-password`, needs a server - deploy)**: new command `user.set_password` (own password, password +- **Byt lösenord (2026-09-23, deployed in `v0.1.68`)**: new command `user.set_password` (own password, password session only, current password required and rate limited like logins, ≥ 10 characters, other sessions closed, audited without secrets) and a - main-menu item in the TUI. Until the server is deployed the TUI item - answers `UNKNOWN_COMMAND`. Follow-up to consider: an admin reset of + main-menu item in the TUI. Follow-up to consider: an admin reset of another user's password (today only `user.create` sets one). -- **Byt bolag (2026-09-23, branch `eff/switch-org`)**: a main-menu item +- **Byt bolag (2026-09-23, `v0.1.68`)**: a main-menu item reopens the org picker and switches org in the running session (context reloaded, list selections cleared). `app_refresh_context` now clears the previous org's name/role/fiscal year first, so an org without a readable year no longer shows the old one. -- **Goto search (2026-09-23, branch `eff/goto-search`)**: `g` followed by a +- **Goto search (2026-09-23, `v0.1.68`)**: `g` followed by a letter searches the row texts of any list or menu (case-insensitive, åäö too; up/down = next/previous match); a digit still jumps to a row number. Keys typed into the prompt no longer reach the screen's key hook, and Enter in the F2 action menu closes an open prompt instead of running the action. -- **Verifikat list/detail (2026-09-23, branch `eff/voucher-nav`)**: the +- **Verifikat list/detail (2026-09-23, `v0.1.68`)**: the detail's columns are padded by display width (the header's `Benämning` used to shift a column), zero amounts are blank, row texts and a `Summa` line are shown; up/down step to the previous/next voucher in the list order; `s` cycles the list sort (nummer/datum, stigande/fallande, saved in `tui.conf`). The list now fetches every page of `voucher.list` — it stopped at 200 vouchers before. Sort/step logic in `clients/vlist.[ch]`. -- **TUI field editing (2026-09-23, branch `eff/tui-fields`, not merged)**: +- **TUI field editing (2026-09-23, `v0.1.68`)**: one shared field editor in `clients/tui.c` for forms, row-table header fields and prompts. Forms edit in place in the value column (no bottom prompt), only the value is highlighted, long text scrolls horizontally @@ -49,7 +47,7 @@ unit tests and the docs consistency check. leaking into the next view); a partial UTF-8 character is never inserted into a full buffer; an invalid amount stays in the field. Typing on a focused row-table header field now edits that field instead of jumping - to the first cell. Awaits the human's Ctrl+R test. + to the first cell. - **Deklaration 2025/2026 (org 2, 2026-09-22)**: the imported year is closed by the source's `Stäng intäktskonton/kostnadskonton`, so the resultatrapport (and the INK2/SRU derived from it) showed 0. `report.income_statement` now @@ -63,7 +61,7 @@ unit tests and the docs consistency check. result. Locked years stay locked — a correction belongs in the open year (2026/2027). The owner can now run Bokslutshubben → Inkomstdeklaration. -- **Deployed**: `v0.1.67`, healthy on `nas` (Alpine runtime, static aarch64 +- **Deployed**: `v0.1.68`, healthy on `nas` (Alpine runtime, static aarch64 binaries cross-compiled on this machine — ~20 s, the host only assembles the image; image 33.7 MB, no `libssl3`). `v0.1.55` brought the payroll server waves (schema v11: employees, tax tables, lönebesked) and the @@ -88,7 +86,9 @@ unit tests and the docs consistency check. restarts P&L at each year, skips imported `Stäng` closings in the income statement and the momsomföring in the VAT report; `v0.1.66` ignores IB rows on P&L accounts; `v0.1.67` rounds every account to whole - kronor in the SRU export and the årsredovisning. The live database migrated v9 → v11 on the v0.1.55 + kronor in the SRU export and the årsredovisning; `v0.1.68` adds + `user.set_password` and the 2026-09-23 TUI work (shared field editor, + voucher navigation/sorting, goto search, Byt bolag, Byt lösenord). The live database migrated v9 → v11 on the v0.1.55 startup and v11 → v12 on the v0.1.62 startup, each with the automatic pre-migration snapshot in `var/db/backup/`. `main` and the tags are pushed to `nas`. -- cgit v1.3