Files
odoo-at-payroll/.agents/MEMORY.md
T

91 lines
4.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Agent Memory — odoo-at-payroll
## Current focus
**KV-Library aufgebaut** (2026-09-09): alle aktuellen Kollektivverträge
maschinenlesbar in `personalverrechnung/quellen/kv/` — ÖGB-Portal-Baseline
(593 Varianten mit Volltexten), WKO als Main Source für WKO-Gewerbe
(614 aktuelle Dokumente), Kammer-Registry + Crosscheck-Katalog (768
Einträge). Fortführung über `personalverrechnung/RUNBOOK.md`. Danach
weiter wie zuvor: **AP3 (Lohnsteuer) im Kern-Modul** gemäß
`personalverrechnung/IMPLEMENTIERUNGSPLAN-Bgld.md` (Abschnitt 4.2, Regel
`LSTL`) — Implementierungsplan wartet weiterhin auf die Freigaben des
Bgld.-Auftrags (AP0 zuerst).
## Completed
- **KV-Library** (2026-09-09): `tools/fetch_kv_portal.py` (ÖGB-Portal:
Sitemap/Dashboard/Structure/Slices/Topics-JSON-APIs, 593 Varianten,
Catalog+Texte JSON/MD), `tools/fetch_wko_kv.py` (WKO-DB: 1.820
Übersichtsseiten, 614 aktuelle Dokumente, Match gegen Baseline),
`tools/build_kv_catalog.py` (Merge, Kammer-Klassifikation, Crosscheck,
manual-review-Listen), `quellen/kv/chambers/chambers.json` (Kammer-Quellen
kuratiert, inkl. Lücken: GÖD member-only, RA/Notariat nicht öffentlich),
`personalverrechnung/RUNBOOK.md` (Update-Zyklus). 407 WKO↔ÖGB-Paare,
30 Datumsdifferenzen geflaggt, 195 unklassifizierte (Einzenträger-KVs)
zur manuellen Sichtung.
- **Migration gem360 → odoo-at-payroll** (2026-09-09): dev-payroll nach
origin gepusht (Backup), History-Import per `git filter-repo`
(Branch hier: `main`), Modul-Split (TASY/SV-Layer in den Kern),
Model-Rename `l10n.at.payroll.tasy.*`, Skills/AGENTS/MEMORY neu
aufgesetzt, Manifest-Beschreibung auf AP1+AP2-Stand korrigiert.
- Vorher (aus gem360-Historie): AP1 Katalogmodell (35 Gruppen/433 Werte
2026), AP2 Entgelt-Engine (13 Regeln, Structure GEMBG.BGLD), SV-Werte
aus ÖGK TASY-LSWH; 3 Testsuiten (Katalog, Entgelt, TASY-Import).
## Open issues / blockers
- **KV-Library, manuell offen** (2026-09-09): manual_review-Listen im
`kv-catalog.json` (Match-Heuristik-Flüchtigungen, 30 Datumsdifferenzen,
195 unklassifizierte Einzelträger-KVs); Kammer-Scan-PDFs (RA Vbg,
LÄK NÖ/OÖ/Bgld) ohne OCR nicht maschinenlesbar; Angestelltenärzte-KV
nirgends öffentlich. Bibliothek inkl. Texte committed als `5b629a5`
(lokaler main, noch nicht gepusht).
- gem360-seitig gilt: Branch `dev-payroll` dort vorerst erhalten, aber
**keine Payroll-Implementierung mehr in gem360** und kein Merge nach
dev/va_module (Guardrails im gem360-Handoff). Die Brücke
`l10n_at_gemeinde_payroll_vrv` (AP7) wird in gem360 gegen getaggte
Releases dieses Repos gebaut.
- **Runtime-Validierung offen** (2026-09-09): Modul-Install und die 3
Testsuiten (Katalog, Entgelt, TASY-Import) sind auf der Workstation
nicht lauffähig (kein lokaler PostgreSQL; Enterprise-Addons liegen im
Geschwister-Checkout `../gem360`). Auf dem Dev-Host nachholen:
`-i l10n_at_hr_payroll,l10n_at_gemeinde_payroll --test-tags
/l10n_at_hr_payroll,/l10n_at_gemeinde_payroll`. Statisch grün:
py_compile + XML-Well-formedness über alle Addon-Dateien.
- Bgld.-Auftrag: AP0 offen (Bestandsaufnahme Pilotmandant, ELDA/FinOnl-
Specs, VRV-Buchungsmatrix, offene RIS-Verifikationen) —
`IMPLEMENTIERUNGSPLAN-Bgld.md` Abschnitt 8.
- Odoo-Upgrades künftig in beiden Repos (gem360 + dieses) gegen denselben
Odoo-Pin validieren.
## Decisions & conventions
- **KV-Quellen-Architektur** (2026-09-09): Main source je KV = die
verantwortliche Arbeitgeberkammer; kollektivvertrag.at (ÖGB) immer als
Crosscheck-Baseline (einziger vollständiger Korpus). WKO-DB deckt nur
WKO-KVs ab (keine Arzt/Apotheke/RA/Notar/Land-Zweige). Lohntafel-PDFs
nur verlinken, nicht downladen; im Text enthaltene Tabellen konvertieren.
Historische Slices nur bei Bedarf (Default: aktuelle Version).
- SKILL.md braucht YAML-Frontmatter (name = Verzeichnisname, description,
disable-model-invocation).
- Abhängigkeitsrichtung: gem360 → dieses Repo (nur die Brücke hängt an
beiden), nie umgekehrt.
- Tests nur auf Wegwerf-DB (nie `gem360_dev`); je Änderung py_compile +
XML-Well-formedness-Check.
- `.firecrawl/` bleibt lokal unversioniert (Rechts-Rohquellen); bei Fehlen
neu beschaffen — niemals aus Trainingswerten arbeiten.
## Files that matter right now
- `personalverrechnung/RUNBOOK.md` — KV-Library pflegen (Update-Zyklus)
- `personalverrechnung/quellen/kv/kv-catalog.json|.csv` — der Crosscheck-Katalog
- `personalverrechnung/quellen/kv/chambers/chambers.json` — Kammer-Quellen-Registry
- `personalverrechnung/tools/fetch_kv_portal.py` / `fetch_wko_kv.py` /
`build_kv_catalog.py` — Fetcher + Merge
- `personalverrechnung/IMPLEMENTIERUNGSPLAN-Bgld.md` — AP3+ (Freigabe-Gate)
- `personalverrechnung/RECHTSQUELLEN-Bgld.md` — verbindliche Rechtslage
- `personalverrechnung/ANGEBOTS-KALKULATION-Bgld-Personalverrechnung.md`
AP-Rahmen, Prämissen P1P10
- `addons/l10n_at_hr_payroll/` — Kern (SV/TASY; AP3 landet hier)
- `addons/l10n_at_gemeinde_payroll/` — GemBG (AP1+AP2)