* fix(bokslut): honest periodisering for enskild firma (K1)
Stop mis-selling automatic periodisering to sole traders and give the
auto-detect a materiality floor:
- Remove the inert PeriodiseringAutoDetectToggle (write-only localStorage,
no reader anywhere); the settings row is now a plain link to the
periodisering wizard, with new i18n keys in sv+en.
- Auto-detect tags suggestions under 5 000 kr as low confidence with the
reason 'Under 5 000 kr: behöver normalt inte periodiseras', citing K1
(BFNAR 2006:1) for enskild firma and K2 for aktiebolag; the wizard only
pre-ticks high-confidence rows, so under-floor posts land unticked.
Personnel-cost lines (7xxx) are exempt: they must always be accrued.
- The accruals GET route resolves companies.entity_type and threads it to
the detector.
- Per-line accrual hint in the invoice editors is entity-aware: new
accruals.k1_hint (K1, förenklat årsbokslut) for EF, k2_hint stays for AB.
- Periodisering wizard and year-end AccrualsStep relabel Revisionsarvode
to Bokslutsarvode for EF, default the liability account to 2991 instead
of 2992, and show a muted K1-floor intro line.
All copy stays advisory (behöver normalt inte, never får inte):
entity_type is a proxy since no förenklat-vs-full-årsbokslut flag exists.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
* fix(bokslut): SEK-correct materiality floor, entity-type via settings, narrower personnel exemption
Review fixes on the K1 periodisering branch:
- The 5 000 kr floor now compares a SEK amount: queries select currency
and subtotal_sek, the floor uses the periodisation share of
subtotal_sek for foreign-currency invoices, and is skipped entirely
when no SEK amount is resolvable (accrual-k2-hint precedent,
DECISIONS.md 2026-07-26).
- The accruals route resolves entity type via getCompanyEntityType
(company_settings-primary, companies fallback) instead of reading
companies.entity_type directly.
- The personnel-cost exemption from the floor is narrowed from
startsWith('7') to /^7[0-6]/: 78xx/79xx are not personnel costs.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
---------
Co-authored-by: Jakob Wennberg <311770904+jakobwennberg-oss@users.noreply.github.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>