fe8243931a
Consolidate the binding knowledge-base rules (layer architecture, licence decision D1, id freeze, D2 frontmatter schema, curation conventions, batch workflow, validation gates, intake pitfalls) from README/RUNBOOK/MEMORY into a dedicated agent skill so every new thread reads them before planning Wissensbasis work. - new licensed source corpus .wiku/ (WIKU Personal publications: Fachbroschueren, Arbeitsunterlagen, Casebooks, 'WIKU Personal aktuell'; gitignored like .lexis360/, never committed) - integration model: one shared corpus with a single kb.json, ids wk-<prefix>-<nn> on the existing cluster map, the work field distinguishing the sources, Layer-2 filenames prefixed wiku_<slug>.md; pipeline to be a multi-source extension of build_lexis_kb.py (no fork) -- follow-up after batch 7 - AGENTS.md skill selection gains the wissensbasis entry
350 lines
21 KiB
Markdown
350 lines
21 KiB
Markdown
# Agent Memory — odoo-at-payroll
|
||
|
||
## Current focus
|
||
|
||
**Lexis360-Wissensbasis Batch 6 fertig, Batch 7 in Intake**
|
||
(2026-09-10): 277 Briefings kuratiert in 40 Clustern über fünf
|
||
Kapitel (Beschäftigungsverhältnisse, Entgelt, Arbeitszeit,
|
||
Arbeitnehmerschutz — Batch 6 eröffnete es —, Verhaltenspflichten).
|
||
Batch 6: asc 12/dnh 7/glb 7/mob 1/fir 6/wei 3/swa 5; zwei Agenten
|
||
wurden zwischendurch abgebrochen (Restarbeit nachgeholt);
|
||
Querverweis-Nachträge lb-beh-04→lb-glb-02/03/07, lb-sch-01→lb-asc-01
|
||
(teilweise). Batch 7 (97 PDFs, u. a. Urlaub, Karenz/Familie,
|
||
Krankenstand, Mutterschutz, Präsenzdienst, Ausland/Entsendung,
|
||
Telearbeit) in Intake — schließt mehrere dokumentierte Lücken
|
||
(Bildungskarenz, Abfertigung Alt, Entgeltfortzahlung an Feiertagen,
|
||
Gefahrenevaluierung/Arbeitsverbote, Telearbeit). Achtung im
|
||
Batch-7-Export: drei verschiedene Briefings mit identischem
|
||
truncated Dateinamen (auslandstatigkeit_sv_tatigkeit_in ×3,
|
||
ausdrücklich umbenennen) plus ß-kodierter Dateiname. GP1-Abnahme auf
|
||
dem Dev-Host bleibt das nächste Gate vor GP2 (Entgelt-Engine).
|
||
|
||
## Completed
|
||
|
||
- **Wissensbasis-Skill + WIKU-Quelle** (2026-09-10):
|
||
`.agents/skills/wissensbasis/SKILL.md` neu — verbindliche Regeln für
|
||
den Wissensbasis-Bau (Schichten/Lizenz D1, ID-Freeze, D2-Frontmatter,
|
||
Kurationskonventionen, Batch-Workflow, Validierungsgates, Intake-
|
||
Pitfalls) konsolidiert aus README/RUNBOOK/MEMORY; neu: WIKU-Quelle
|
||
`.wiku/` (31 lizenzierte PDFs: Fachbroschüren, Arbeitsunterlagen,
|
||
Casebooks, „WIKU Personal aktuell“) mit Integrationsmodell siehe
|
||
Entscheidung unten. `.wiku/` in `.gitignore` (D1); `AGENTS.md`
|
||
Skill-Auswahl ergänzt.
|
||
|
||
- **Lexis360-Wissensbasis Batch 6** (2026-09-10): 41 Briefings (Stände
|
||
2025-06 bis 2026-08) über zwei neue Kapitel (Arbeitnehmerschutz,
|
||
Verhaltenspflichten) + Schwerarbeit (Arbeitszeit-Kapitel) → 41
|
||
kuratierte Einträge in 7 Clustern (asc 12, dnh 7, glb 7, fir 6,
|
||
wei 3, swa 5, mob 1); ein ß-Dateiname normalisiert; ein Fossil-ID
|
||
(lb-mip-05 → lb-swa-05) bereinigt; Parser-Härtung: Breadcrumb-Wrap
|
||
auch nach erstem „·“ (neue Wrap-Variante). Zwei Agenten zwischen-
|
||
durch abgebrochen — Restarbeit (asc-04…12, glb/mob) nachgeholt.
|
||
Querverweis-Nachträge lb-beh-04→lb-glb-*, lb-sch-01→lb-asc-01.
|
||
Katalog/Registry/Check 277/277 grün.
|
||
|
||
- **Lexis360-Wissensbasis Batch 5** (2026-09-10): 31 Briefings (Stände
|
||
2025-12 bis 2026-07, Kapitel „Arbeitszeit“ — drittes Kapitel) → 31
|
||
kuratierte Einträge in 8 neuen Clustern (azg 4, azm 7, mip 4, nsc 3,
|
||
rhz 4, sch 1, ues 4, zer 3) + lb-jug-08; ein ß-URL-kodierter Dateiname
|
||
normalisiert. Keine Fossil-IDs (spezifisch-vor-generisch-KEYWORDS
|
||
wirkten). RECHTSQUELLEN-Abgleiche: §-68-ÜStd-Freigrenzen 2026
|
||
(15/170 €) ✅ via lb-zus-07; Kurzarbeit-Lehrlinge trianguliert
|
||
(lb-azm-05 → lb-leh-07). Drei Beschaffungslücken geschlossen
|
||
(lb-jug-04/05 → lb-jug-08, lb-zer-01/02). Katalog/Registry/Check
|
||
236/236 grün.
|
||
|
||
- **Lexis360-Wissensbasis Batch 4** (2026-09-10): 54 Briefings (Stände
|
||
2026-06 bis 2026-08) → 54 kuratierte Einträge in 6 neuen Clustern
|
||
(lsd 13, pfa 14, gpl 7, lnk 7, lvr 9, naz 4); Dubletten-Export entfernt
|
||
(identischer Text). RECHTSQUELLEN-Abgleiche: FLAF-DB 3,7 %/KommSt 3 %/
|
||
IESG 0,10 %/WBF (übrige BL 1 %) ✅; Freibetragsstaffel ✅ via lb-lnk-03
|
||
(Quellformulierung in lb-lnk-02 invertiert — dokumentiert); WBF-Wien
|
||
1,5 % vs 1,0 % ⚓ dokumentiert. Querverweis-Nachträge lb-sac-13→lb-lvr-02,
|
||
lb-sac-21→lb-lvr-05. Tool-Fixes: assign_ids-Rückgabe-Warnungen
|
||
(NameError beseitigt), KEYWORDS-Reihenfolge spezifisch-vor-generisch,
|
||
7 Fossil-IDs (Pass-1-Keyword-Fehlgriffe) bereinigt. Katalog/Registry/
|
||
Check 205/205 grün.
|
||
|
||
- **Lexis360-Wissensbasis Batch 3** (2026-09-10): 44 Briefings (Stände
|
||
2025-06 bis 2026-08, Kapitel „Entgelt: Anspruch & Abrechnung“) → 44
|
||
kuratierte Einträge in 6 neuen Clustern (rei 9, vor 11, son 4,
|
||
zus 8, pen 9, ges 2) + lb-ent-11; zwei URL-kodierte Export-Dateinamen
|
||
(%c3%9f = ß) normalisiert. RECHTSQUELLEN-Abgleiche durchgeführt
|
||
(§-67-Staffel, §-68-Freigrenzen, BMSVG-Kernwerte, ALV-Staffel —
|
||
deckungsgleich bis auf dokumentierte ⚠-Punkte); lb-prm-04-Querverweis
|
||
auf lb-son-03/04 nachgetragen. Katalog/Registry/Check 151/151 grün.
|
||
|
||
- **Lexis360-Wissensbasis Batch 2** (2026-09-10): 52 neue Briefings
|
||
(Stände 2025-06 bis 2026-08, Kapitel „Entgelt: Anspruch & Abrechnung“
|
||
+ „Beschäftigungsverhältnisse“) → 52 kuratierte Einträge in 7 neuen
|
||
Clustern (beh, ent, gsf, lei, prm, sac, vst) + lb-leh-16; Katalog
|
||
107/107, Registry/Check grün. Tool-Härtung: Multi-Batch-batch-Validierung
|
||
(1..N), dynamische Batch-Anzeige (kb.json `batches`, INDEX-Header),
|
||
--extract-Warnung bei eingefrorener ID mit abweichendem Cluster-Präfix
|
||
(fing lb-jug-08-Fossil aus Pass 1, korrigiert zu lb-sac-21 vor Kuratierung);
|
||
Duplikat-Export (`geschaftsfuhrer_arbeitsrecht (1).pdf`, identischer Text)
|
||
entfernt. Batch-1-Dokumentation in README/RUNBOOK auf Batches 1–2
|
||
umgestellt.
|
||
- **Lexis360-Wissensbasis Batch 1** (2026-09-10): 55 PDF-Exporte aus
|
||
Lexis 360 („Lexis Briefings Personalrecht“; Stände 2024-03 bis 2026-09)
|
||
→ 55 kuratierte Einträge in `personalverrechnung/wissensbasis/dokumente/`
|
||
(Zusammenfassung/Kernwerte/Rechtsgrundlagen/Payroll-Relevanz/Verweise,
|
||
Stand-Marks, ✅/⚠/❓), `README.md` (Schema/Konventionen), generiert
|
||
`kb.json` + `INDEX.md`, Tool `personalverrechnung/tools/build_lexis_kb.py`
|
||
(--extract pdftotext-Pipeline; --registry Frontmatter-Validierung ohne
|
||
PyYAML inkl. cross_refs/topic↔ID-Präfix; --check Layer-1↔Layer-2-
|
||
Vollständigkeit; ID-Freeze über `_catalog.json`). RUNBOOK um
|
||
Wissensbasis-Workflow (Batches, Validierung, Limitierungen) erweitert.
|
||
- **GP1 KV-Framework General-AT** (2026-09-09): `l10n_at_hr_payroll_private`
|
||
19.0.1.0.0 implementiert — Modelle `kollektivvertrag.py` (kv/kv.wert/
|
||
kv.gruppe/kv.gruppe.stufe) + `hr_version_private.py` (Vertragsfelder,
|
||
Muster `hr_version_bgld.py`), Wizard `kv_katalog_import.py` (Vorschau,
|
||
Sprungwarnung, Versionierung), Views/Menus/Security, Seed D2 mit
|
||
SI-2203/SI-2748-Tabellen 2026 (inkl. Sonder-Vorrückungsverläufe
|
||
IV-M/V-OM im SI-2748, aufgelassene VG I im SI-2203, Nacht-€-Satz
|
||
als Jahresversionen 2,71/2,76 €). Test-Suite `test_kv_katalog`:
|
||
Seed-Lookups, Stichtags-Lookup, Versionierung, Eckwerte, Wizard
|
||
(Sprungwarnung/Aktualisierung/Neuaufnahme), Vertragsfelder.
|
||
- **GP0-Rechtsverifikationen General-AT** (2026-09-09):
|
||
`RECHTSQUELLEN-Privat.md` erstellt: FLAF § 41 FLAG (RIS GesNr
|
||
10008220 — 3,7 % ab 2025, 2,7 % ab 2028; Basis Arbeitslöhne;
|
||
1.095-€-Freibetrag bei ≤ 1.460 €), KommStG 1993 (GesNr 10004841 —
|
||
3 %; § 3 Abs 3 Gemeindefreiheit; § 11 Verfahren), BMSVG (1,53 % auf
|
||
Entgelt + SZ, kein HBG-Cap; § 14 Abs 2 Verfügungsausschluss; § 15
|
||
Anwartschaft statt Staffel; § 17 Verfügungsoptionen), UrlG (§ 2
|
||
30/36 Werktage; § 6 Urlaubsentgelt; § 10 Ersatzleistung), EStG 1988
|
||
(§ 33/66 Tarif 2026; § 67 sonstige Bezüge 0/6/27/35,75 % im
|
||
Jahressechstel, Freigrenze 2.615 €, Kontrollsechstel § 77 Abs 4a,
|
||
§ 67 Abs 3/6/8 Abfertigungen; § 68 SZFN 400 €, ÜStd 10/120 €,
|
||
2026: 15/170 €, Nachtarbeit 600 €). Plan (Abschnitte 1, 4.2–4.4,
|
||
6, 8) auf Verifizierungsstand gebracht; payroll-Skill §-Zitat
|
||
korrigiert.
|
||
- **D4-Neuverifikation komplett** (2026-09-09): verifiziert gegen beide
|
||
in-repo Checkouts — `odoo/` (Community) und `odoo_enterprise/odoo`
|
||
(Odoo 19.0.0; gemergter Baum: odoo-Paket + 1.452 Addons, Community +
|
||
Enterprise in einem Addons-Verzeichnis, u. a. Referenz-Lokalisierungen
|
||
`l10n_be_hr_payroll`/`l10n_ch_hr_payroll`; `l10n_at_payroll` existiert
|
||
erwartungsgemäß nicht); beide in `.gitignore`. Community-Teil:
|
||
`hr.version` (`hr/models/hr_version.py` L35; `wage`/
|
||
`structure_type_id`/`resource_calendar_id` versioniert),
|
||
kalenderbasierte Work-Entry-Erzeugung
|
||
(`hr_work_entry/models/hr_version.py` L420 `_generate_work_entries`
|
||
+ Postprocess-Hooks L500/L506), `hr.work.entry.type` + Entry-States
|
||
(`hr_work_entry.py` L39). Enterprise-Teil:
|
||
`work_time_rate`/`hours_per_week` auf Version
|
||
(`hr_payroll/models/hr_version.py` L48/L39), `work_entry_source`
|
||
(L30; Attendance-Integration `hr_payroll_attendance/models/
|
||
hr_payslip.py` L29), `hr.payslip.run` (`hr_payslip_run.py` L23;
|
||
state L31, `date_start` L41, `date_end` L45), EOSB-Muster
|
||
`l10n_ae_hr_payroll` (`_inherit = "hr.payslip"` L10,
|
||
`_l10n_ae_get_eos_daily_salary` L95, je-Version-Feld
|
||
`l10n_ae_eos_daily_salary` L102, Structure-Type-Inherit),
|
||
Engine-Mechanismen an den Bgld-Plan-Zeilenreferenzen bestätigt
|
||
(`payslip._rule_parameter` `hr_payslip.py` L951, localdict,
|
||
`hr.salary.rule.account_debit`/`account_credit` L11/L15,
|
||
Posting-Hooks `_action_create_account_move` L54 /
|
||
`_prepare_line_values` L125 / `_prepare_slip_lines` L166,
|
||
`journal_id` auf Structure via
|
||
`hr_payroll_account/models/hr_payroll_structure.py` L15,
|
||
`hr.payslip.input.type` `hr_payslip_input_type.py` L9,
|
||
`hr.payroll.structure.type.country_id` L46);
|
||
`hr_payroll_account_iso20022` vorhanden. `l10n_at`-Konten
|
||
(`l10n_at/data/template/account.account-at.csv`, XML-ID-Muster
|
||
`l10n_at.chart_at_template_<code>`): Sonderzahlungen 6240, Verrechnung
|
||
Lohnsteuer 3540 / Finanzamt 3530 / SV 3600, Abfertigungsrückstellungen
|
||
3000, KommSt 6660, FLAF-DB 6661, DZ 6662, Wien-Abgabe 6663 —
|
||
**Matrix-Lücken (GP0):** Löhne-/Arbeiter-Konto und SV-DG-Aufwandskonto
|
||
fehlen im Standard-Template. Hinweis: Build mit eigenem
|
||
Versionsschema (Manifests teils ohne `version`-Key, z. B. `l10n_at`
|
||
„3.2.1"); maßgeblich ist `release.py` `version_info` (19, 0, 0).
|
||
- **General-AT-Plan M0** (2026-09-09): `IMPLEMENTIERUNGSPLAN-Privat.md`
|
||
erstellt und freigegeben — Entscheidungen D1 (Pfad), D2 (Referenz-KVs
|
||
SI-2203 Handwerk/Gewerbe + SI-2748 Metallgewerbe), D3 (Kern-
|
||
Vorfinanzierung durch General-AT), D4 (Odoo-19-Source kurzfristig;
|
||
API-Neuverifikation in M1). Umfang: General-AT-Anteil ≈ 120–172 PT,
|
||
inkl. D3-Vorfinanzung ≈ 180–258 PT (M1–M9, ~7–9 Monate).
|
||
README-Modultabelle, Gerüst-README `l10n_at_hr_payroll_private` und
|
||
CHANGELOG auf Planstand gebracht.
|
||
- **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
|
||
|
||
- **Lexis360-KB offene Punkte** (2026-09-10): Korpus-Widersprüche ⚠ vor
|
||
Implementierung klären — AMS-Ersatzquote geblockte ATZ 2026 (lb-atz-07
|
||
28,5 % vs. lb-atz-09/12 27,5 %), DAG-Grenze 2023 (lb-bes-02 751,36 € vs.
|
||
lb-bes-06 751,37 €), Lehrlinge-Kurzarbeit (lb-leh-11 vs. lb-leh-07),
|
||
Kleinwohnungsgrenzen (lb-sac-09 vs. lb-sac-10), Pensionisten-Begünstigung
|
||
(lb-sac-02), **§ 124b-ÜStd-Maßnahme 2026: Briefing-Zitat lb-zus-07
|
||
weicht von verifizierter Rechtslage ab (Z 476 lit c idgF BGBl I
|
||
43/2026, Aufrollung bis 30. 9. 2026)**, lb-pen-09 Tabellenfehler
|
||
(3.672 vs. rechnerisch 2.448 €), 183-Tage-Regel Finanz vs. UFS
|
||
(lb-rei-01/02/08), Teleworker-Fahrten Finanz vs. BFG/VwGH (lb-rei-07);
|
||
Alte Stände (leh 2024-03/2025-08, gsf/vst/lei 2025-06, son-01–03
|
||
2025-06) nur mit Kennzeichnung; Copilot-Deployment braucht
|
||
lizenkonformen Layer-1-Bereitstellungspfad (Volltexte nicht im Repo);
|
||
**Batch-4-Konflikte**: lb-lnk-02 DB-Freibetragsbedingung invertiert
|
||
(RECHTSQUELLEN verbindlich), lb-lnk-05 WBF-Wien 1,5 % vs 1,0 %
|
||
(RIS-Klärung), lb-pfa-03/05 Grundbetrag-Bezeichnungen,
|
||
lb-pfa-12/14 Existenzminimum 2022 (500/515 €), lb-lsd-13
|
||
Gesetzeszitat verstümmelt (❓ RIS), §-124b-Zitier-Varianten
|
||
(Z 440/Z 449 vs verbindlich Z 476 lit c idgF BGBl I 43/2026);
|
||
**Batch-5**: NSchG-Beitrag 2026 (3,8 %) ohne BGBl-Beleg (lb-nsc-01),
|
||
§ 7-AZG-Fundstelle Abs 1 vs Abs 6 (lb-ues-01/04), MAV-START-EU-Konflikt
|
||
(lb-rhz-03), KAB-Richtlinie mit alten SV-Beitragswerten (lb-azm-06);
|
||
**Batch-6-Kandidaten**: Bildungskarenz, Personalrabatte bis 2015,
|
||
Telearbeitspauschale, Begünstigt behinderte, Belästigung, Prämien
|
||
bei Beendigung, Abfertigung Alt/Verfügungsmöglichkeiten AbfN,
|
||
Corona-Kurzarbeit, Leitende Angestellte in der Rechtsprechung,
|
||
pfändungsrechtliche Behandlung von Sonderzahlungen, Rückzahlung von
|
||
Darlehen/Mustervereinbarung, Entgeltfortzahlung an Feiertagen,
|
||
Motivkündigung, Gefahrenevaluierung und Arbeitsverbote
|
||
(vollständige Liste im RUNBOOK).
|
||
- **General-AT GP0-Rest offen** (2026-09-09): Pilotmandant/Golden-Master
|
||
fehlt; ELDA-/FinOnl-Specs mit der Bgld-AP0-Beschaffungsliste
|
||
abstimmen; D3-Anrechnungsmechanik vertraglich regeln (Bgld.-
|
||
Auftragserteilung); Referenz-KV-Kuratierung (SI-2203/SI-2748);
|
||
UGB-Buchungsmatrix; Volltexte AZG/AngG/ArbVG § 12/LStR 2002
|
||
beschaffen. Odoo-Quellen liegen in-repo (D4 erledigt); Runtime-Tests
|
||
brauchen noch PostgreSQL (Dev-Host).
|
||
- **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
|
||
Testsuiten (Katalog, Entgelt, TASY-Import, neu: `test_kv_katalog`
|
||
privat) sind lokal nicht lauffähig (kein PostgreSQL). Odoo-Quellen
|
||
jetzt in-repo verfügbar — `odoo/`
|
||
(Community, `odoo-bin`) + `odoo_enterprise/odoo` (gemergter
|
||
Enterprise-Baum; Addons-Path `odoo_enterprise/odoo/addons,addons`).
|
||
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
|
||
|
||
- **Lexis360-Wissensbasis-Architektur** (2026-09-10): D1 — Volltexte/
|
||
PDFs lokal unversioniert (`.lexis360/` gitignored, Muster `.firecrawl/`),
|
||
nur Kuratierung versioniert (Lizenz LexisNexis). D2 — strukturelle
|
||
Frontmatter-Keys englisch (wie kv-catalog/chambers), Werte deutsch
|
||
(UTF-8); `stand` als Fachbegriff ISO `YYYY-MM`; `topic`/`tags` ASCII-
|
||
Slugs; `topic` = beschreibender Cluster-Slug (`altersteilzeit`,
|
||
`lehrlinge`, …), ID-Präfix (`atz`, …) nur im `id`. IDs `lb-<prefix>-<nn>`
|
||
eingefroren (nie renummerieren/wiederverwenden); Frontmatter = Source
|
||
of Truth, `kb.json`/`INDEX.md` generiert via `--registry`; Werte niemals
|
||
aus Trainingswerten, nur aus Quelltext mit Stand-Kennzeichnung.
|
||
Ablageort `.lexis360/` (dot-dir, lokal, unversioniert): vom Nutzer
|
||
manuell exportierte lizenzierte Belege — bei Fehlen **NICHT** neu
|
||
beschaffen (anders als `.firecrawl/` = agenten-rekonstruierbare
|
||
Web-Fetches), sondern beim Nutzer nachfragen.
|
||
|
||
- **WIKU-Quelle `.wiku/`** (2026-09-10): D1 analog (lokal, unversioniert,
|
||
bei Fehlen NICHT beschaffen — Nutzer fragen). Integrationsmodell:
|
||
**gemeinsamer Korpus** `personalverrechnung/wissensbasis/` (eine
|
||
`kb.json`), `work`-Feld unterscheidet die Quellen; eigener ID-Raum
|
||
`wk-<prefix>-<nn>` auf der bestehenden Cluster-Map (`wk-pfa-01`
|
||
neben `lb-pfa-*`); Layer 1 `.wiku/md/` + eigener Katalog;
|
||
Layer-2-Dateinamen mit Präfix `wiku_<slug>.md`; Stand aus
|
||
„Stand YYYY-MM“/Heft-Monat, sonst Impressum; keine Lexis-Breadcrumbs —
|
||
Metadaten aus Dateiname + Titelei. Granularität: 1 Publikation =
|
||
1 Eintrag (Casebook-/Artikel-Ebene optional später); cross_refs lb↔wk
|
||
erwünscht. Pipeline = Multi-Source-**Erweiterung** von
|
||
`build_lexis_kb.py`, kein Fork — Folgeaufgabe **nach Batch 7**
|
||
(Lexis hat Priorität).
|
||
|
||
- **General-AT D1–D4** (2026-09-09): Plan geführt als
|
||
`personalverrechnung/IMPLEMENTIERUNGSPLAN-Privat.md`; Referenz-KVs R1
|
||
= SI-2203 + SI-2748 (Feinjustierung je Pilotmandant in GP0);
|
||
**D3-Vorfinanzierung** — General-AT baut die sektor-neutralen
|
||
Kern-Blöcke AP3/AP4 (und nötigenfalls AP5/AP6) in `l10n_at_hr_payroll`
|
||
vor (Symmetrie zur Bgld-Planungsentscheidung „AP3 im Kern, damit das
|
||
General-Produkt ihn erbt"); Anrechnung/Umlegung bei Bgld.-
|
||
Auftragserteilung per Change-Request; D4 — Odoo-19-Source in-repo:
|
||
`odoo/` (Community) + `odoo_enterprise/odoo` (gemergter
|
||
Enterprise-Baum), beide in `.gitignore`; D4-Verifikation komplett
|
||
erledigt.
|
||
- **GP0-Rechtskorrekturen General-AT (verbindlich)** (2026-09-09):
|
||
13./14. Bezüge = sonstige Bezüge iSd **§ 67 EStG** (§ 68 nur
|
||
Zulagen/Zuschläge — „§ 68 Abs 5/6" war falsch); Urlaubsentgelt =
|
||
**§ 6 UrlG** (§ 9 seit 2001 aufgehoben); EOSB = BMSVG-**Anwartschaft
|
||
ohne Monatsentgelt-Staffel** (§ 14 Abs 2 Ausschlussmatrix, § 15
|
||
Auszahlung Beiträge + Erträge); Bgld-P9-Rechtsbasis damit § 67
|
||
(Detailauslegung LStR 2002 bleibt offen).
|
||
- **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/wissensbasis/` — Lexis360-Wissensbasis (README,
|
||
dokumente/ 55 Einträge, kb.json, INDEX.md; Batch-Workflow im RUNBOOK)
|
||
- `.lexis360/` — lizenzierte PDF-Exporte + Layer-1-Volltexte `md/` +
|
||
`_catalog.json` (lokal, unversioniert)
|
||
- `personalverrechnung/tools/build_lexis_kb.py` — KB-Pipeline
|
||
- `.agents/skills/wissensbasis/SKILL.md` — verbindliche Regeln für
|
||
Wissensbasis-Arbeit (inkl. `.wiku/`-Integrationsmodell)
|
||
- `.wiku/` — lizenzierte WIKU-Publikationen (lokal, unversioniert,
|
||
gitignored; Pipeline-Folgeaufgabe nach Batch 7)
|
||
|
||
- `personalverrechnung/IMPLEMENTIERUNGSPLAN-Privat.md` — General-AT
|
||
(freigegeben; GP0-Rechtsverifikationen erledigt, GP0-Rest offen;
|
||
D4-Protokoll in Abschnitt 2)
|
||
- `personalverrechnung/RECHTSQUELLEN-Privat.md` — verbindliche
|
||
Rechtslage General-AT (GP0-Inventar; Statusmarks ✅/⚠/❓)
|
||
- `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 P1–P10
|
||
- `odoo/` + `odoo_enterprise/` — Odoo-19-Checkouts (unversioniert,
|
||
in `.gitignore`; Enterprise-Baum gemergt: Community+Enterprise in
|
||
einem Addons-Verzeichnis; Test-Addons-Path
|
||
`odoo_enterprise/odoo/addons`)
|
||
- `addons/l10n_at_hr_payroll_private/` — General-AT (GP1 KV-Framework
|
||
+ Seed D2 umgesetzt; Runtime-Abnahme ausständig; GP2 danach)
|
||
- `addons/l10n_at_hr_payroll/` — Kern (SV/TASY; AP3 landet hier)
|
||
- `addons/l10n_at_gemeinde_payroll/` — GemBG (AP1+AP2) |