Files

Wissensbasis Personalverrechnung (Lexis360-Exporte, WIKU Personal,

WKO-Kollektivverträge, RIS-Gesetze, Rechtsprechung)

Kuratierte Wissensbasis aus vier Quellcorpora — den LexisNexis-Briefings des Werks Lexis Briefings Personalrecht (Export aus Lexis 360), den WIKU-Personal-Publikationen (Fachbroschüren, Arbeitsunterlagen, Casebooks, Fachzeitschrift „WIKU Personal aktuell“), den Kollektivvertrags- Dokumenten von WKO.at (Lohn-/Gehaltsordnungen inkl. Lohntabellen, KV-Abschlüsse, Erläuterungen, Zusatz-KVs) und den RIS-Gesetzes-Texten (Rechtsinformationssystem des Bundes; nur die im Lexis360-Bestand zitierten Paragraphen je Gesetz) sowie Rechtsprechung (OGH-, VwGH- und VfGH- Entscheidungen und Rechtssätze aus RIS-OGD sowie fünf als nicht amtlich markierte EuGH-Textwiedergaben). Ein gemeinsamer Korpus: das work-Feld unterscheidet die Quellen, ID-Räume lb-* (Lexis), wk-* (WIKU), kv-* (WKO-KV), ris-* (RIS) und rj-* (Rechtsprechung/Normentexte) liegen auf derselben Cluster-Map. Zweck:

  1. Entwicklungsreferenz neben den Rechtsquellen-Übersichten (RECHTSQUELLEN-*.md im Schwesterprojekt) für die Personalverrechnungs- module (l10n_at_hr_payroll*), und
  2. Copilot-Korpus: Aufbau und Frontmatter sind retrieval-gerecht (stabile IDs, maschinenlesbares kb.json), damit künftig ein Frage-Antwort-Copilot darauf aufbauen kann.

Schichten (Lizenz-Entscheidung D1, 2026-09-10)

Schicht Pfad Versioniert? Inhalt
PDF-Exporte .lexis360/Lexis360_*.pdf · .wiku/*.pdf nein (gitignored) lizensierte Original-PDFs
Layer 1 — Volltexte .lexis360/md/<slug>.md · .wiku/md/<slug>.md nein (gitignored) vollständiger Extraktionstext + Metadaten-Frontmatter
Katalog .lexis360/md/_catalog.json · .wiku/md/_catalog.json nein (gitignored) geparste Metadaten aller Quellen (Slug ↔ ID ↔ Stand ↔ Cluster)
Rohquellen kv/ris/rj .firecrawl/kv-portal/wko-kv/docs/*.html · .ris/*.md · .rechtsprechung/{originale,gesetze}/*.md nein (gitignored) WKO-KV-Seiten, RIS-Gesetzes-Auschnitte sowie Rechtsprechung/Normentexte
Layer 2 — Einträge dokumente/<slug>.md (Lexis) · dokumente/wiku_<slug>.md (WIKU) · dokumente/kv_<slug>.md (WKO-KV, generiert) · dokumente/ris_<slug>.md (RIS, generiert) · dokumente/rj_<slug>.md (Rechtsprechung, generiert) ja Kuratierung in eigenen Worten (lb/wk) bzw. quellentreue Konvertierung (kv/ris/rj, Tool-Output)
Registry wissensbasis/kb.json ja generiert aus dem Layer-2-Frontmatter aller Quellen (tools/build_registry.py)
Kataloge kv/ris/rj tools/catalogs/kv_catalog.json · ris_catalog.json · rj_catalog.json ja eingefrorene ID-Zuweisungen (nur Metadaten, keine Quelltexte)

Volltexte der lizenzierten Quellen (Lexis/WIKU) sind Lizenzinhalt und bleiben wie .firecrawl/ und .firecrawl/ris/gesetze/ lokal + unversioniert. Nur die Layer-2-Einträge werden committed. Lizenz-Sonderfall der neuen Quellen (Entscheidung 2026-09-15): Gesetze sind amtliche Werke (§ 7 UrhG) und WKO-KV-Texte müssen zahlenexakt bleiben (Lohntabellen) — daher sind kv_*.md/ris_*.md quellentreu generiert (Konverter tools/ingest_sources.py), NICHT in eigenen Worten kuratiert, und sie sind Tool-Output: keine manuelle Bearbeitung, bei Änderungen neu generieren. Die WKO-Seiten selbst und die .firecrawl/ris/gesetze/-Dateien bleiben unversioniert; die Einträge tragen ihre Quelle (source.html/source.text) und die WKO-/RIS-URL im Body.

Rechtsprechung (Batch rj 1, 2026-09-15): Die Lieferung unter .rechtsprechung/ dokumentiert für OGH/VwGH/VfGH überwiegend RIS-OGD- Provenance. Ihre Layer-2-Dateien rj_*.md werden deshalb quellentreu aus den lokalen Markdown-Dateien generiert und behalten Gericht, Datum, Geschäftszahl, Normen und Quellenpfad. Rechtssätze, Volltexte, zitierte Normauszüge und EuGH- Fälle sind jeweils im chapter/work unterscheidbar. Die fünf EuGH-Dateien sind ausdrücklich als „Textwiedergabe lexetius, nicht amtlich“ markiert und nennen zusätzlich die amtliche EUR-Lex-URL, soweit geliefert. Die Publikations- und Lizenzfreigabe der quellentreuen Rechtsprechungs-Volltexte ist vor einem Commit bewusst zu bestätigen; sie wird nicht aus der allgemeinen Ausnahme für amtliche Gesetzestexte abgeleitet. Die overviews/ (1 820 Bundesland-Übersichts- seiten von WKO.at) werden derzeit nicht aufgenommen (Redundanz zu docs/).

Frontmatter-Schema (Layer 2 — verbindlich)

id: lb-atz-07                 # stabil; lb-<cluster>-<nn> (Lexis) bzw. wk-<cluster>-<nn> (WIKU), eingefroren
batch: 1                      # Beschaffungs-Batch je Quelle (manuell je Import)
title: "Altersteilzeit - Überblick"
work: "Lexis Briefings Personalrecht"   # WIKU: exakter Publikationstyp („WIKU Fachbroschüre“, „WIKU Arbeitsunterlage“, „WIKU Casebook“, „WIKU Personal aktuell“)
chapter: "Beschäftigungsverhältnisse"   # Quell-Kapitel (WIKU: aus WIKU_PINS, idR der Publikationstitel)
topic: altersteilzeit          # ASCII-Cluster-Slug (s. Tabelle)
author: "Marek"               # WIKU: „Wilhelm Kurzböck“
stand: 2026-01                 # ISO-Monat des Quell-Stands (WIKU: Impressum/Dateiname, „Personal aktuell“: Heft-Monat)
source:
  pdf: ".lexis360/Lexis360_altersteilzeit_uberblick.pdf"   # WIKU: ".wiku/<dateiname>.pdf"
  text: ".lexis360/md/altersteilzeit_uberblick.md"         # WIKU: ".wiku/md/<slug>.md"
legal_bases: ["AlVG", "AZG § 19e"]      # nur im Quelltext genannte Normen
tags: [altersteilzeit, ams-foerderung]  # ASCII-Slugs, retrieval-freundlich
cross_refs: ["lb-atz-09"]     # verwandte KB-Einträge (lb↔wk erlaubt; dangling = Fehler)

Schlüsselkonvention (Entscheidung D2): strukturelle Schlüssel englisch (konsistent mit kv-catalog.json/chambers.json), Werte deutsch (UTF-8, Umlaute erlaubt). Zwei Ausnahmen: stand (österreichischer Fachbegriff, ISO-Wert YYYY-MM) und topic/tags als ASCII-Slugs. Die Frontmatter ist Single Source of Truth; kb.json wird daraus generiert und schema-validiert (tools/build_registry.py, in diesem Repo).

Cluster (Lexis Batch 19 + WIKU Batch 1)

topic-Slug Name ID-Präfix IDs n
altersteilzeit Altersteilzeit atz lb-atz-01 … 15 15
lehrlinge Lehrverhältnis / Lehrlinge leh lb-leh-01 … 16 16
jugendliche Jugendarbeit / Jugendschutz jug lb-jug-01 … 08 8
ferialpraktikanten Ferialpraktikanten, Volontäre, Au-pair pra lb-pra-01 … 04 4
beschaftigungsformen Beschäftigungsformen & Abgrenzung bes lb-bes-01 … 08 8
teilzeit Teilzeit & Bildungsteilzeit tzb lb-tzb-01 … 06 6
behinderte Behinderte Arbeitnehmer beh lb-beh-01 … 04 4
entgelt Entgelt: Anspruch & Abrechnung ent lb-ent-01 … 11 11
geschaftsfuhrer Geschäftsführer gsf lb-gsf-01 … 05 5
leitende-angestellte Leitende Angestellte lei lb-lei-01 1
pramien Prämien & Provisionen prm lb-prm-01 … 07 7
sachbezuge Sachbezüge & freiwillige Sozialleistungen sac lb-sac-01 … 21 21
vorstand Vorstandsmitglieder (Vorstand) vst lb-vst-01 … 04 4
sonderzahlungen Sonderzahlungen son lb-son-01 … 05 5
zuschlage Zulagen und Zuschläge zus lb-zus-01 … 08 8
pendlerforderung Pendlerförderung pen lb-pen-01 … 09 9
reisekosten Dienstreise & Reisekosten rei lb-rei-01 … 09 9
vorsorgeleistungen Vorsorgeleistungen (BMSVG, Betriebspension, Beteiligung) vor lb-vor-01 … 11 11
geschenke Sachzuwendungen & Geschenke ges lb-ges-01 … 02 2
lohndumping Bekämpfung von Lohn- und Sozialdumping (LSD-BG) lsd lb-lsd-01 … 13 13
gplb GPLB gpl lb-gpl-01 … 07 7
lohnnebenkosten Lohnnebenkosten (Dienstgeberbeiträge) lnk lb-lnk-01 … 07 7
lohnpfandung Lohnpfändung pfa lb-pfa-01 … 14 14
lohnverrechnung Lohnverrechnung (Meldewesen, Abrechnungsfragen) lvr lb-lvr-01 … 09 9
nachzahlungen Nachzahlungen naz lb-naz-01 … 04 4
arbeitszeitgrenzen Arbeitszeitgrenzen azg lb-azg-01 … 04 4
arbeitszeitmodelle Arbeitszeitmodelle (Gleitzeit, Schicht, Kurzarbeit) azm lb-azm-01 … 07 7
meldepflichten Melde- und Informationspflichten mip lb-mip-01 … 04 4
nachtschwerarbeit Nachtschwerarbeit nsc lb-nsc-01 … 03 3
ruhezeiten Ruhezeiten rhz lb-rhz-01 … 04 4
schwangerschaft Schwangerschaft (Mutterschutz) sch lb-sch-01 … 08 7
uberstunden Überstunden ues lb-ues-01 … 04 4
zeiterfassung Zeiterfassung zer lb-zer-01 … 03 3
schwerarbeit Schwerarbeit swa lb-swa-01 … 05 5
arbeitnehmerschutz Arbeitnehmerschutz (ASchG) asc lb-asc-01 … 16 16
dienstnehmerhaftung Dienstnehmerhaftung (Schadenersatz) dnh lb-dnh-01 … 07 7
gleichbehandlung Gleichbehandlung & Diskriminierung glb lb-glb-01 … 07 7
mobbing Mobbing mob lb-mob-01 1
firmeneigentum Firmeneigentum & Sachnutzung fir lb-fir-01 … 06 6
weisungen Weisungen an die Arbeitnehmer wei lb-wei-01 … 03 3
urlaub Urlaub (Anspruch, Entgelt, Verbrauch) url lb-url-01 … 16 16
krankenstand Krankenstand & Entgeltfortzahlung krs lb-krs-01 … 09 9
entsendung Grenzüberschreitender Einsatz & Entsendung grz lb-grz-01 … 08 8
karenzsonderformen Karenz-Sonderformen (Bildungs-, Hospiz-, Pflegekarenz) kzs lb-kzs-01 … 07 7
elternteilzeit Elternteilzeit elt lb-elt-01 … 06 6
karenz Karenz (Elternkarenz) kar lb-kar-01 … 06 6
kinderbetreuungsgeld Kinderbetreuungsgeld & Beihilfen kbg lb-kbg-01 … 06 6
prasenzdienst Präsenzdienst & Zivildienst prd lb-prd-01 … 06 6
telearbeit Teleworking & Heimarbeit tel lb-tel-01 … 06 6
schutzfrist Geburt, Schutzfrist & Wochengeld msf lb-msf-01 … 05 5
dienstverhinderung Dienstverhinderungsgründe & Streik dvh lb-dvh-01 … 04 4
arbeitskrafteuberlassung Arbeitskräfteüberlassung (AÜG) aug lb-aug-01 … 02 2
entgeltfortzahlung Entgeltfortzahlung an Feiertagen efz lb-efz-01 … 02 2
familienzeit Papamonat & Familienzeitbonus pap lb-pap-01 … 02 2
pflegefreistellung Pflegefreistellung pfl lb-pfl-01 … 02 2
wiedereingliederung Wiedereingliederung (Geld, Teilzeit) wie lb-wie-01 … 02 2
beendigungsarten Beendigungsarten (Austritt, Entlassung, Kündigung) bnd lb-bnd-01 … 44 44
betriebsrat Betriebsrat & Betriebsvereinbarungen brt lb-brt-01 … 36 35
endabrechnung Beendigungsansprüche & Endabrechnung (Abfertigung, Vergleich, Stundenguthaben) end lb-end-01 … 26 25
insolvenz-betriebsubergang Unternehmensauflösung & Betriebsübergang (Insolvenz) ins lb-ins-01 … 08 8
meldungen-verpflichtungen Meldungen & Verpflichtungen (Beendigung, Datenschutz) mel lb-mel-01 … 08 8
beendigungsphase-sonstiges Beendigungsphase Sonstiges (Zeugnis, Konkurrenzklausel, Sozialplan, Postensuche) bso lb-bso-01 … 11 10
beitragsrecht-asvg Sozialversicherungsrecht: Beitragsrecht ASVG (Beitragsgrundlagen, Beitragssätze) sva lb-sva-01 … 16 16
bauerliche-sozialversicherung Bäuerliche Sozialversicherung (BSVG) bsv lb-bsv-01 … 18 18
gsvg-fsvg GSVG/FSVG: Selbständige, neue Selbstständige, Abfertigung gsv lb-gsv-01 … 12 12
krankenversicherung Krankenversicherung ASVG (Leistungen) kvs lb-kvs-01 … 04 4
pension Pensionsversicherung (Pensionsarten, Pensionskonto) pvs lb-pvs-01 … 13 13
aktuell WIKU Personal aktuell (Neuerungen, Urteile, Praxis) akt wk-akt-01 … 12 12
gewerbe Gewerbebezogene Personalverrechnung (Güterbeförderung, Gastgewerbe) gwe wk-gwe-01 … 02 2
kollektivvertraege Kollektivverträge (WKO.at — Lohn-/Gehaltsordnungen, KV-Texte je Branche) kvt kv-kvt-001 … 614 614
zivilrecht-normen Zivilrechtliche Normen (ABGB, IPRG, KSchG, ZPO) zvr ris-zvr-01 … 04 4
arbeitsvertragsrecht Arbeitsvertragsrecht (AVRAG) avr ris-avr-01 1
arbeitsgerichtsbarkeit Arbeits- und Sozialgerichtsbarkeit (ASGG) agg ris-agg-01 1
lohnsteuer Lohnsteuer & Einkommensteuer (EStG) lst ris-lst-01 1
abgabenverfahren Abgabenverfahren (BAO) abo ris-abo-01 1
normen-sonstige Weitere Gesetze und Verordnungen (ArbIG, RStDG, StGB, StPO, UGB) nso ris-nso-01 … 05 5
rechtsprechung Rechtsprechung (OGH, VwGH, VfGH, EuGH) und zitierte Normen rjs rj-rjs-001 … 348 348

Weitere RIS-Gesetze liegen auf der bestehenden Cluster-Map (ris-url-01 neben lb-url-*, ris-asc-01 neben lb-asc-*, …; je Gesetz ein ris-<cluster-prefix>-<nn>-Eintrag, mehrere Gesetze teilen sich ein Cluster fortlaufend — Zuordnungstabelle LAW_MAP in tools/kb_common.py).

1 622 Einträge in 77 Clustern — Lexis: 571 Einträge in 67 Clustern (Batch 1: 55, Batch 2: 52, Batch 3: 44, Batch 4: 54, Batch 5: 31, Batch 6: 41, Batch 7: 97, Batch 8: 134, Batch 9: 63); WIKU: 30 Einträge in 18 Clustern (Batch 1: 13 Fachbroschüren, 3 Arbeitsunterlagen, 2 Casebooks, 12 Hefte „WIKU Personal aktuell“ 2026); WKO-KV: 614 Einträge im Cluster kollektivvertraege (Batch 1); RIS: 59 Gesetze, verteilt auf bestehende Cluster plus den neuen Rechtsgebiet-Clustern (Batch 1); Rechtsprechung: 320 RIS-OGD-Entscheidungen/ Rechtssätze + 5 nichtamtliche EuGH-Textwiedergaben + 23 zitierte RIS-Normauszüge (Batch 1, gemeinsamer Cluster rechtsprechung).

Frontmatter-topic = beschreibender ASCII-Slug, das ID-Präfix (atz, leh, kvt, …) nur im id selbst; die Registry (tools/build_registry.py) prüft die Konsistenz beider über die Cluster-Map (bestehende Präfixe aus kb.json abgeleitet, neue Cluster in tools/kb_common.py). IDs werden beim Intake vergeben und danach eingefroren (tools/catalogs/kv_catalog.json, ris_catalog.json); neue Dokumente hängen hinten an, Nummern ausscheidender Dokumente werden nie wiederverwendet. Dateinamen: Layer-2 = Layer-1-Slug (Umlaute fallen auf Basisbuchstaben — uberblick, beschaftigung; ß → ss), WIKU mit wiku_-Präfix, WKO-KV mit kv_-Präfix und RIS mit ris_-Präfix und Rechtsprechung mit rj_-Präfix (Kollisionsschutz im gemeinsamen dokumente/).

Kurationskonventionen (verbindlich)

  1. Sprache: deutsch, Fachsprache wie im Original; Metadaten-Werte UTF-8. topic/tags ASCII.
  2. Eigene Worte (lb/wk): Kuratierung ist keine Volltextkopie (Lizenz!). Wörtliche Zitate nur kurz und mit Stand gekennzeichnet. Ausnahme kv/ris (2026-09-15): quellentreu generierte Einträge (tools/ingest_sources.py) — Gesetze sind amtliche Werke, KV- Lohntabellen müssen zahlenexakt bleiben; diese Dateien sind Tool-Output, keine manuelle Kuratierung.
  3. Werte immer mit Stand. Stammt der Wert aus einem Briefing mit älterem Stand (z. B. Lehrlinge 2024-03, 2025-08), so ist „(Stand YYYY-MM)" am Wert zu führen. Niemals Werte aus Trainingswissen ergänzen — nur aus dem Quelltext oder aus neueren KB-Einträgen (dann mit ID belegt).
  4. Statusmarken wie in RECHTSQUELLEN: verifiziert · ⚠ plausibel, Detailverifikation offen · bewusst offen. §-Zitate nur, wenn die Quelle sie nennt; sonst ⚠ mit Verifikationshinweis (RIS).
  5. Dokumentstruktur: # <Titel>Quellzeile (Werk, Autor, Stand, ID)## Zusammenfassung## Kernwerte & Fristen (Stand YYYY-MM) (Tabelle) → ## Rechtsgrundlagen## Payroll-Relevanz (Odoo)## Verweise.
  6. Payroll-Relevanz benennt Odoo-19-Anknüpfungspunkte (hr_payroll-Engine, Work Entries, hr.rule.parameter, SV-BG-Handling, Meldewesen) als Hinweise für die Umsetzung, nicht als Spec.
  7. Verweise: KB-IDs verwandter Briefings (Breadcrumb-Verweise der Quelle beachten) + Projektdateien (RECHTSQUELLEN-*.md).
  8. Export-Artefakte ignorieren: Footer „Page n", „Erstellt von …", abgeschnittene Querverweise nicht rekonstruieren; vermerken, wenn eine Verweisstelle im Export unvollständig ist.
  9. Vorbild/Qualitätsmaßstab: dokumente/altersteilzeit_uberblick.md.

Update-Zyklus (neue Batches — je Quelle)

Lexis360:

  1. Neue PDFs nach .lexis360/ kopieren (Export-Namenskonvention Lexis360_<slug>.pdf beibehalten).
  2. Intake über das Schwesterprojekt-Tool (build_lexis_kb.py --extract --source lexis, im Repo personalverrechnung) oder kuratieren wie bisher von Hand; Layer-1 + Katalog neu, bestehende IDs bleiben fix.

WIKU:

  1. Neue PDFs nach .wiku/ kopieren (Dateinamen der Lieferung beibehalten; Stand aus „Stand YYYY-MM“/Heft-Monat, sonst Impressum).
  2. Kuratieren wie bisher (Layer-2-Einträge wiku_<slug>.md).

WKO-Kollektivverträge (kv):

  1. Neue Seiten nach .firecrawl/kv-portal/wko-kv/docs/ (Crawl via Firecrawl; eine Seite = ein KV-Dokument).
  2. python3 tools/ingest_sources.py --source kv — konvertiert HTML → Layer-2 (kv_<slug>.md), IDs aus tools/catalogs/kv_catalog.json (eingefroren, neue hängen an). --dry-run zum Vorschauen.

RIS-Gesetze (ris):

  1. Neue Gesetze nach .firecrawl/ris/gesetze/ (Markdown; nur die im Lexis360-Bestand zitierten Paragraphen).
  2. Zuerst LAW_MAP in tools/kb_common.py um das Gesetz ergänzen (topic, chapter, laufende Nummer im Cluster) — die ID encodiert das Cluster, danach nie ändern.
  3. python3 tools/ingest_sources.py --source ris.

Rechtsprechung (rj):

  1. Neue Markdown-Dateien nach .rechtsprechung/originale/ (Entscheidungen, Rechtssätze, EuGH-Textwiedergaben) oder .rechtsprechung/gesetze/ (zitierte Normauszüge) legen; XML-Originale nicht separat intaken.
  2. Provenance und Publikations-/Lizenzfreigabe der gelieferten Volltexte vor einer Versionierung prüfen; EuGH-Wiedergaben bleiben als nicht amtlich gekennzeichnet.
  3. python3 tools/ingest_sources.py --source rj — IDs aus tools/catalogs/rj_catalog.json bleiben eingefroren; lange Volltexte werden an Absatzgrenzen in H2-Chunks geteilt.

Alle Quellen gemeinsam:

  1. python3 tools/build_registry.py — validiert das gesamte Layer-2 (Schema, topic↔Präfix, Batches, cross_refs) und schreibt kb.json + INDEX.md neu (beide generiert, nie manuell editieren).
  2. Reindex + Eval gegen die Gates (Skill pv-rag-agent: Recall@8 > 0,9, Zitier-Präzision): python3 -m agent.cli ingest, dann python3 -m agent.cli eval [--answers].
  3. agent/README.md und .agents/MEMORY.md pflegen.

Copilot-Konsum

kb.json listet jeden Eintrag mit ID, Titel, Stand, Cluster, Rechtsgrundlagen, Tags und Pfaden auf Layer 1/Layer 2. Für Retrieval/Skills: Eintrag = Chunk-Einheit; id als Zitatchlüssel; stand für Aktualitätsfilter; cross_refs für Graph-Nachbarschaft. Die Volltexte (Layer 1) sind lokal vorhanden, aber nicht Teil des Versionskontroll-Korpus — ein Copilot-Deployment braucht daher einen separaten, lizenzkonformen Bereitstellungspfad für Layer 1 ( offen).