[IMP] odoo-at-payroll: GP4-Bau, A7-Auflösung (§ 810 Abs 3 ASVG) und §-2a-Korrekturen dokumentiert

Doku-Registry zum GP4-Bau nachziehen, damit der nächste Agent-Thread
aus dem Repository booten kann (agent-memory-Skill) und die verbindliche
Rechtslage den verifizierten Stand trägt.

Rechtsauflösung A7-Rest: Die Aufwertung der Geringfügigkeitsgrenze ist
für 2026 gem. § 810 Abs 3 ASVG ausgesetzt — deshalb fehlte der 2026-
Eintrag in der RIS-Anmerkungsreihe; GFG 2026 = 551,10 €, DAG-Grenze
826,65 € (TASY MINGRDAGP1, § 1 DAG als Normzitat per ÖGK-Tarifsystem —
lb-sva-12-'ohne Normzitat' erledigt), §-19a-Selbstversicherung 2026 =
83,49 €/Monat (TASY KVPVBTG19A) mit Direct-Zahlung an den Träger.
KB-KONFLIKTE A7 + konsolidierte 'Nächste Schritte' entsprechend
fortgeschrieben (A3 blockiert nur mehr die Formel-7-Optimierung,
nicht den GP4-Kern).

RECHTSQUELLEN-Privat Abschnitt 4: GFG-Zeile auf 2026-Wert korrigiert,
§-53a-Zeile (UV 6,50 € abgeleitet/Selbstversicherung 83,49 €),
§-2a-DN-Klarstellung, SZ-DG-Sätze, Altersausschaltungen, DAG- und
§-49-Zeilen ergänzt (inkl. Korrektur eines GP0-'geringfähig'-
Tippfehlers bei § 53b).

Plan Abschnitt 10: GP4-Freigabestatus-Update (Umsetzung, Rechtsfunde,
Offenliste GP7/GP8); CHANGELOG-Eintrag M5; MEMORY: neuer Fokus
(GP5 Abfertigung Neu als Nächstes), GP4-Konventionen (11 Punkte,
darunter Geringfuegig-Identifiers nach der Nutzer-Korrektur des
Sprachfehlers 'geringfähig' → geringfügig).
This commit is contained in:
2026-09-11 23:22:27 +02:00
parent 04099fef39
commit c8d080f371
5 changed files with 184 additions and 34 deletions
+63 -24
View File
@@ -2,22 +2,36 @@
## Current focus
**GP3 Lohnsteuer im Kern umgesetzt und grün (52/52 Tests) — GP4
SV/DB (AP4) als Nächstes** (2026-09-11): Kern 19.0.2.0.0
(`lohnsteuer.py` § 33/§ 66 kumulativ-Rollung/§ 67 Sechstel-Aufrollung/
§ 68, Lohnsteuertage 30/Monat, user-Bemessungsformeln) +
`rule_parameters_lst_2026.xml` + Flags; privat 19.0.3.0.0 (dünne
SVDN_*/LST-Regeln, B13/B14/UE-§-68-Flags). P0: AN-AB entfallen
(Reform), Verkehrs-AB 496 €, SV monatlich stets voll (60 % = nur
Veranlagung — RQ-5 korrigiert), § 124b Z 440: 15 ÜStd/170 € 2026.
D4: result_rules-Threading (Zeilen erst nach Regelschleife),
result_qty für Stundendarstellung; TASY-Wizard-Latenzfehler
behoben (b64-Dekode + Werte-Records-API), TASY-Suite erstmals
grün. Parallel lief die 3. RIS-Runde des Konflikt-Agents:
**3. RIS-Runde integriert (11.09.2026, `.additional_docs/ris_normtexte/`)**
— A-Punkte gegen die Tagesfassung textverifiziert; Integration in RQ/
PLAN/RUNBOOK/KB-KONFLIKTE + 5 Layer-2-Abgleichnotizen. **A1-Korrektur:**
**GP4 SV/DB umgesetzt und grün (74/74 Tests) — GP5 Abfertigung Neu
(BMSVG) ist der nächste Bauabschnitt** (2026-09-11): Kern 19.0.3.0.0
(`models/sozialversicherung.py`: DG-Beiträge 20,98 %/Wien 21,23,
§-54-SZ 20,48 %, Geringfügigkeit § 5/§ 810-3 mit Hochrechnung +
§-53a-UV 6,50 €, §-49-Abs-3-Jahreskumulative, Altersstichtage als
Datumsfelder am Vertrag, ALV-DN-Staffel § 2a DN-seitig, WF-Vektor,
Beitragsmonats-Allokation mit 2025-HBG 6.450, DAG § 1 DAG) +
`rule_parameters_sv_2026.xml`; privat 19.0.4.0.0 (SVDN_SZ-Nachtrag
§ 67 Abs 12, DG-Block ATP_DG, FLAFDB/KOMMST/DZ flag-gated, LNK-Basis
§ 41/§ 5 mit Freibetragsstaffel 1.095/1.460). **P0-Rechtsfund GP4:**
GFG 2026 = 551,10 € — Aufwertung per **§ 810 Abs 3 ASVG ausgesetzt**
(A7-Rest gelöst; RIS-Anmerkungsreihe hat deshalb keinen 2026-
Eintrag); DAG-Grenze 826,65 = 1,5×GFG (TASY MINGRDAGP1, § 1 DAG als
Normzitat per ÖGK-Tarifsystem — lb-sva-12-⚠ erledigt); §-19a-
Selbstversicherung 2026 = 83,49 € (TASY KVPVBTG19A; Zahlung DIREKT
an den Träger — kein Lohnabzug, SV-Werte Fn. 9); aBG 591,29
abgeleitet → UV 6,50 €/Monat ⚠. **Rechtskorrektur § 2a AMPFG:**
Staffel ist DN-seitig (ÖGK „Mind. AV auf 0/1/2 %" = 2,95/1,95/
0,95) und gilt auch für SZ — DN-SV bei 2.059,41 € BG = 15,12 %
statt 18,07 % → GP3-Rechenfälle RF-L1/L3/L5 + betroffene Tests
nachgezogen („862,25“ des Nutzers war Zifferndreher; 1,5×551,10 =
826,65). Offen aus GP4: UI der Vertrags-/Company-Felder (GP8),
DAG-Ausweis/Veranlagung + UV-Pauschalen-Direktbeleg (GP8), DZ-
WKO-Satzverifikation (8.11) vor Wien-Mandanten, IESG-auf-SZ-§-5-
AMPFG-Volltext, mBGM-Nachtragslogik (GP7). Vor GP5: DZ-8.11-
Entscheidung gilt als erledigt (flag-gated umgesetzt); Formel-7 (A3)
bleibt Change-Request-Optimierung. **3. RIS-Runde integriert**
(11.09.2026, `.additional_docs/ris_normtexte/`) — A-Punkte gegen die
Tagesfassung textverifiziert; Integration in RQ/PLAN/RUNBOOK/KB-
KONFLIKTE + 5 Layer-2-Abgleichnotizen. **A1-Korrektur:**
§-124b-ÜStd-Maßnahme 2026 = **Z 440 lit c idF BGBl I 4/2026** (15 ÜStd/
170 € durchgehend 2026, Aufrollung 31.05.2026); „Z 476 lit c idgF
BGBl I 43/2026“ = Fehlzitat (Z 476 = Pendlerpauschale); Z 492/494 =
@@ -792,7 +806,29 @@ B17-Inhalt/B18; Kleinverifikationen s. KB-KONFLIKTE „Nächste Schritte“).
## Decisions & conventions
- **D4-Runtime-Mechanik Odoo 19 (GP2-Verifikationen 2026-09-11)**:
- **GP4-Konventionen (2026-09-11, Nutzer-freigegebener Bauplan +**
**Quellenverifikation):** (1) **§ 2a AMPFG wirkt nur DN-seitig**
(tiers+dn_voll im Parameter; Grenzen nicht aliquotieren; gilt auch
für SZ-Beiträge; ab 2027 tiers=[] = voller Satz); (2) Gering-
führigkeitsprüfung auf §-49-bereinigter laufender BG mit Hoch-
rechnung ×30/Kalendertage bei untermonatiger Beschäftigung, ohne
SZ, Lehrlinge nie geringfügig; (3) §-19a-Selbstversicherung ist
KEIN Lohnabzug (Direct-Zahlung an den Träger) — Engine zeigt nur
§-53a-Abs-1-UV (6,50 €) als DG-Zeile; (4) SVDN_SZ = eigene
Abzugszeile (§ 67 Abs 12, Netto-Korrektur); (5) DG-/LNK-Zeilen in
Kategorie ATP_DG ohne Nettoeffekt; (6) DZ nur bei Company-Flag
`l10n_at_wk_mitglied`, Satzvektor je `l10n_at_bundesland` (WKO-
Verifikation 8.11 offen); (7) Altersstichtage als DATUMS-Felder
`l10n_at_*_ab` am Vertrag, Wirken je Beitragsmonat (Anspruchs-
prinzip), UI GP8; (8) Beitragsmonat je Regel (`l10n_at_beitrags-
monat`) + Lohnkontolinie (stored compute), historische Sätze/HBG
je Gruppe; (9) §-49-Mengen = Arbeitstage über quantity; (10) DAG
als Company-Bewertung `_l10n_at_dag(monat)` ohne Lohnzettelzeile
(Ausweis GP8); (11) LNK-Freibetragsstaffel zentral `_at_lnk_basis`
(Zufluss; §-67-Abs-3/6 über Kern-Flag `l10n_at_s67_abs`; lit f nur
FLAF/DZ — KommSt ohne Befreiung).
- **D4-Runtime-Mechanik Odoo 19 (GP2-Verifikationen 2026-09-11):**
`hr.work.entry` ist **tageweise** (`date` + `duration` ≤ 24 h,
kein datetime-Bereich; create braucht explizites `employee_id`);
worked-days zählen **draft und validated** Entries; `hr.version`:
@@ -969,11 +1005,14 @@ B17-Inhalt/B18; Kleinverifikationen s. KB-KONFLIKTE „Nächste Schritte“).
- `.venv/` — Python-3.14-venv mit editable install (lokal,
unversioniert); Dev-DB `odoo_dev` (PostgreSQL lokal)
- `addons/l10n_at_hr_payroll_private/` — General-AT (GP1 KV-Framework
+ Seed D2; **GP2 Entgelt-Engine umgesetzt 2026-09-11**
`test_kv_katalog` 8/8 + `test_entgelt_private` 21/21 auf
`odoo_dev`; Rechenfall-Fixtures unter `docs/rechenfaelle/`;
GP3 Kern-Bau als Nächstes)
- `addons/l10n_at_hr_payroll/` — Bundes-Kern (SV/TASY + **GP3
Lohnsteuer**: `models/lohnsteuer.py`, `rule_parameters_lst_2026.xml`;
52/52 grün; GP4 SV/DB als Nächstes)
+ Seed D2; GP2 Entgelt-Engine; GP3 LSt-Anbindung; **GP4 SV/DB
umgesetzt 2026-09-11** — `test_kv_katalog` 8 + `test_entgelt_private`
21 + `test_lst_private` 6 + `test_sv_private` 8 grün auf `odoo_dev`;
Rechenfall-Fixtures unter `docs/rechenfaelle/` inkl.
sozialversicherung.md; GP5 Abfertigung Neu als Nächstes)
- `addons/l10n_at_hr_payroll/` — Bundes-Kern (SV/TASY + GP3 Lohnsteuer
`models/lohnsteuer.py` + **GP4 SV/DB `models/sozialversicherung.py`**
(DG/Geringfügigkeit/§ 49/Altersstichtage/§ 2a-Staffel/WF-Vektor/
Beitragsmonat/DAG), `rule_parameters_lst_2026.xml` +
`rule_parameters_sv_2026.xml`; **74/74 grün**)
- `addons/l10n_at_gemeinde_payroll/` — GemBG (AP1+AP2)