aboutsummaryrefslogtreecommitdiff
path: root/docs/STATE.md
AgeCommit message (Collapse)Author
10 hoursdocs: resume snapshot after the Kunder draft pilotAnders Betts
11 hourstui: kundutkast, <UTKAST>, explicit Spara och F2-åtgärderAnders Betts
11 hoursdocs: state after the v0.1.64 deployAnders Betts
11 hoursdocs: TUI interaction model (draft lifecycle, explicit Spara, F2 actions)v0.1.64Anders Betts
15 hoursdocs: state after the v0.1.63 deployAnders Betts
15 hoursdocuments: org name in the invoice and payslip headers, document_header_colorv0.1.63Anders Betts
15 hoursdocs: resume snapshot after the invoice wave and the Hetzner voucherAnders Betts
24 hoursdocs: state after the v0.1.62 deployAnders Betts
25 hoursdocs: state after the v0.1.61 deployAnders Betts
26 hoursdocs: state after the v0.1.60 deployAnders Betts
26 hourssettings: per-feature voucher series and console invoice number; tui: F9 hintsv0.1.60Anders Betts
32 hoursdocs: state after the v0.1.59 deployAnders Betts
33 hoursdocs: state after the v0.1.58 deployAnders Betts
34 hoursdocs: state after the v0.1.57 deployAnders Betts
34 hourstui: flat menu, System hub, remembered attachment directoryv0.1.57Anders Betts
34 hoursdocs: state after the v0.1.56 deployAnders Betts
34 hourstui: Bolaget hub, drop the Företag sectionv0.1.56Anders Betts
36 hoursdocs: state after the v0.1.55 deployAnders Betts
36 hourstui: payroll screens, Företag/System menu and settings splitv0.1.55Anders Betts
37 hoursdocs: resume snapshot after the payroll server wavesAnders Betts
39 hoursdocs: prune STATE into a decision archive; record the branch ruleAnders Betts
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2 daysdeploy: cross-compile static aarch64 for the Alpine imagev0.1.54Anders Betts
2 daystui: bank prefill vouchers and auto-match after postingAnders Betts
2 daystui: split bokftui into screen filesAnders Betts
2 dayscommands: split the command table by domainAnders Betts
2 daysdocs: invoicing waves 1-3 completev0.1.51Anders Betts
2 daysdeploy: pass BOKFD_SECRET_KEY through compose; document waves 1-2Anders Betts
2 daysinvoice: skip the Swish QRv0.1.50Anders Betts
2 daysinvoice: allow setting the bankgiro, document wave 1Anders Betts
2 daysdb: schema v9 for invoicing, vouchers source rebuildAnders Betts
2 daysinvoicing: design chapter with layout, numbering and SMTPAnders Betts
2 daysdocs: bank reconciliation phase 1v0.1.49Anders Betts
3 daysdb: make attachments append-only (schema v7)Anders Betts
3 daystui: pinned report headers, voucher detail headers, clamped pagingv0.1.48Anders Betts
3 daysdocs: mark the moms rule editor and pre-migration snapshot donev0.1.46Anders Betts
3 daystests: wire check, pty and sanitizer targets and document themAnders Betts
3 daysaudit: verify voucher chains and attachment hashesAnders Betts
3 daystui: remember the focused row in forms and the bokslut hubv0.1.44Anders Betts
3 daystui: bokslut hub with year fields, reports and the posting actionv0.1.43Anders Betts
3 daystui: themes, pager markup, menu sections; merge Bokslut and year infov0.1.40Anders Betts
3 daystui: shared widget layer (fields, prompts, lists, forms, pager) + testsv0.1.36Anders Betts
3 daysårsredovisning: Information om året per räkenskapsår (schema v6)v0.1.34Anders Betts
3 daysbokslut: TUI screen, K2 årsredovisning draft, storable dividend (schema v4)v0.1.33Anders Betts
4 daysbokslut, INK2/SRU export and attachment markersv0.1.30Anders Betts
- bokslut.post: year-end bookings (manual entries, periodiseringsfond, skatt at a given rate, resultatdisposition) with a dry-run plan through the normal ledger path; the resultatrapport separates bokslutsdispositioner and skatt per K2. - sru.export: INFO.SRU + BLANKETTER.SRU (INK2/INK2R/INK2S) from the official 2025P4 field tables and the BAS mapping, with manual INK2S adjustments, submitter defaults and unmapped-account detection; the TUI writes both files from Rapporter -> Inkomstdeklaration. - voucher.list carries attachment_count and the voucher list marks vouchers with underlag with an x column. - date_prompt restores the cursor state so it stops blinking at the bottom after the report date prompts.
4 daysattachments: link/unlink from the TUI, multi-voucher linksv0.1.29Anders Betts
The voucher detail can attach a file to an existing voucher (^F) and the underlag picker (f) can remove a link (d, confirmed). The Underlag inbox links a highlighted item to a voucher picked from a list (k). attachment.link and attachment.unlink are new write commands (dry-run, audited); unlinked files return to the inbox. The same content may now link to several vouchers — only the same voucher/attachment pair is a CONFLICT, matching the table's primary key.
4 dayseskd: generate the momsdeklaration file (eSKDUpload 6.0)v0.1.28Anders Betts
report.vat_eskd builds the ISO-8859-1 XML from report.vat: whole kronor with öre truncated like the blankett, box 48 positive as filed, MomsBetala computed from the whole-krona boxes, and an optional upplysning converted from UTF-8, XML-escaped and capped at 300 characters. The TUI momsrapport gains "s = spara eSKD", prompting for a path and writing the bytes verbatim. Verified against the FY2027 Kapitas report: 05=703200, 10=175800, 20=1453, 30=851, 48=1030, 49=175621.
4 daysreports: huvudbok and verifikationslista; fiscal_year.reopenAnders Betts
report.general_ledger lists every account with activity or IB, its postings in date order with a running saldo, and Omslutning/Utgående saldo; accounts?/from?/to? narrow it. report.voucher_list lists the year's vouchers with rows and totals, with an optional series filter. fiscal_year.reopen undoes a close (owner-only, confirm:true, audited) so the Räkenskapsår screen can toggle the status.
4 daysreports: Kapitas-style TUI tables, corrected moms rules (schema v3)v0.1.26Anders Betts
The report views dumped JSON; they now render Saldobalans, Resultatrapport (previous-year column, 89xx bokfört/ej bokfört), Balansrapport (Ing balans/Ing saldo/Period/Utg balans, Beräknat resultat) and Momsrapport ruta för ruta, with Swedish amount formatting (1 234,56). The moms starter rules missed 33xx sales, sent reverse-charge VAT 2614 to box 10 instead of 30 and had box 48 positive. Rules may now share a box and report.vat sums them; box 49 is the sum of the moms boxes only. Schema v3 replaces the rules for existing orgs. Verified on a copy of the live DB: 05=703 200, 10=175 800, 20=1 453, 30=851, 48=-1 030, 49=175 621, matching the Kapitas 2027 export. Ctrl+R reload passes --socket and auto-login no longer rewrites tui.conf; pty tests now run through scripts/tui-sandbox.sh so they cannot touch the real config, cache or bw session.
5 daysdeploy: --dev hot-reloads the daemon via docker cp + SIGHUPv0.1.14Anders Betts
- bokfd re-execs its own binary on SIGHUP, closing listeners/db first - scripts/deploy.sh --dev cross-builds and copies binaries into the running container, then verifies the reported version
5 daysbokftui: IB view shows effective opening balances, edits post deltas to themv0.1.11Anders Betts
Was listing the IB voucher's rows (the reconciliation deltas) and computing edits against those, which mismatched reports on years with carry-forward and could not set a target balance. Also guard the editor against more than 63 rows.