aboutsummaryrefslogtreecommitdiff
path: root/docs/STATE.md
diff options
context:
space:
mode:
authorAnders Betts <anders.betts@gmail.com>2026-09-19 20:13:02 +0200
committerAnders Betts <anders.betts@gmail.com>2026-09-19 20:13:02 +0200
commit77c298b3b64f2493e509734df0084068ad24441f (patch)
tree8a8182fbecdb0dc63cdc71842511cc6d00e21716 /docs/STATE.md
parent30c309e15d3211e7d0e8a8a2752c3e9afa0a0638 (diff)
downloadbokf-0.1.33.tar.gz
bokf-0.1.33.zip
bokslut: TUI screen, K2 årsredovisning draft, storable dividend (schema v4)v0.1.33
Diffstat (limited to 'docs/STATE.md')
-rw-r--r--docs/STATE.md31
1 files changed, 21 insertions, 10 deletions
diff --git a/docs/STATE.md b/docs/STATE.md
index 5be11e7..b0f5b4a 100644
--- a/docs/STATE.md
+++ b/docs/STATE.md
@@ -1,7 +1,7 @@
# bokf — project state
Snapshot for resuming work in a new session. Read with `AGENTS.md` (rules)
-and `docs/TUI-GUIDELINES.md` (UI conventions). Dated 2026-09-18.
+and `docs/TUI-GUIDELINES.md` (UI conventions). Dated 2026-09-19.
## Status
@@ -86,8 +86,12 @@ server/protocol/ledger only.
SHA-256 verified, text inline), attach to an existing voucher (`^F`),
remove a link (`d` in the `f` picker) and link an inbox item to a voucher
(`k`).
-- Next backend milestone: **K2/SRU** (INK2/INK2R/INK2S + årsredovisning);
- bokslut.post is done server-side, its TUI screen pending.
+- K2/SRU is complete: `sru.export` with the INK2 view, `bokslut.post` with
+ the Bokslut screen, and a K2 årsredovisning text draft with a save action
+ in Rapporter. The draft asks for the board's proposed dividend and keeps it
+ per fiscal year (`fiscal_year.update`, schema v4); the stämma decision is
+ posted with a `Utdelning` template (D 2099/K 2898). Still missing before
+ filing: a command/TUI to edit the moms `report_rules` per org (below).
- Moms `report_rules` seed is a corrected starter mapping (schema v3), but
there is still no command/TUI to edit rules per org; add one before filing
if the mapping needs adjustments (SCHEMA.md §10 promises owner editing).
@@ -96,12 +100,17 @@ server/protocol/ledger only.
1. ~~eSKD file generation for momsdeklaration.~~ `report.vat_eskd` (eSKDUpload
6.0, ISO-8859-1, whole kronor) with a save action in the TUI momsrapport.
-2. Bokslut automation: `bokslut.post` is in (entries/avskrivningar,
+2. ~~Bokslut automation~~ done: `bokslut.post` (entries/avskrivningar,
periodiseringsfond, skatt at a given rate, resultatdisposition, dry-run
- plan, audited) and the resultatrapport separates bokslutsdispositioner
- and skatt per K2. TUI screen still to do.
-3. K2 årsredovisning document; ~~SRU files (INK2/INK2R/INK2S)~~ done as
- `sru.export` (official 2025P4 field tables, BAS mapping, TUI save in
+ plan, audited), the TUI Bokslut screen (fond/rate, F5 plan, ^Enter posts
+ after confirmation) and the K2 resultatrapport order.
+3. ~~K2 årsredovisning document~~ done as a text draft built in the TUI from
+ `report.income_statement`/`report.balance_sheet` (Förvaltningsberättelse,
+ K2 RR/BR with previous-year column and the result inside equity, noter,
+ underskrifter); `s` saves `Årsredovisning <år>.txt`. Placeholders mark
+ qualitative facts, and incomplete jämförelsetal for imported history
+ years are flagged in the document. ~~SRU files (INK2/INK2R/INK2S)~~ done
+ as `sru.export` (official 2025P4 field tables, BAS mapping, TUI save in
Rapporter -> Inkomstdeklaration).
4. `audit.verify` must also verify the **voucher** hash chain (today only the
audit chain is verified).
@@ -119,8 +128,10 @@ server/protocol/ledger only.
AGI/payroll if employees.
11a. Imported history years whose SIE contains the source's P&L closings
("Stäng intäktskonton/kostnadskonton") net to zero in the income
- statement (Kapitas 2022-2026). The importer should skip those closing
- verifications (keeping the resultatdisposition) or mark them; decide.
+ statement (Kapitas 2022-2026). **Decided 2026-09-19: no importer change.**
+ Locked years stay locked and the source's closings stay in the books; the
+ årsredovisning export flags incomplete jämförelsetal for those years and
+ points to the previous year's annual report.
11. ~~SIE import only into an empty fiscal year; consider broader import.~~
Chronological multi-year import works (CRLF, `#RAR 0`, zero rows, `#IB`
rule handled); each year must still target an empty fiscal year. Note: