aboutsummaryrefslogtreecommitdiff
path: root/docs/STATE.md
AgeCommit message (Collapse)Author
3 hoursreports: income statement skips imported Stäng closingsAnders Betts
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
10 hoursdocs: resume snapshot after the Kunder draft pilotAnders Betts
10 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
14 hoursdocs: state after the v0.1.63 deployAnders Betts
14 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
25 hoursdocs: state after the v0.1.60 deployAnders Betts
25 hourssettings: per-feature voucher series and console invoice number; tui: F9 hintsv0.1.60Anders Betts
31 hoursdocs: state after the v0.1.59 deployAnders Betts
32 hoursdocs: state after the v0.1.58 deployAnders Betts
33 hoursdocs: state after the v0.1.57 deployAnders Betts
33 hourstui: flat menu, System hub, remembered attachment directoryv0.1.57Anders Betts
33 hoursdocs: state after the v0.1.56 deployAnders Betts
33 hourstui: Bolaget hub, drop the Företag sectionv0.1.56Anders Betts
35 hoursdocs: state after the v0.1.55 deployAnders Betts
35 hourstui: payroll screens, Företag/System menu and settings splitv0.1.55Anders Betts
36 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