Fifth Lexis 360 intake (31 briefings, source Stands 2025-12 to
2026-07), extending the corpus to 236 curated entries in 33 clusters.
This batch opens the third briefings chapter 'Arbeitszeit' (AZG
working-time law, the structural backbone for Work-Entry-based
payroll).
- 8 new clusters: arbeitszeitgrenzen (4), arbeitszeitmodelle (7,
incl. Kurzarbeit and Gleitzeit/Schicht), meldepflichten (4),
nachtschwerarbeit (3), ruhezeiten (4), schwangerschaft (1),
uberstunden (4), zeiterfassung (3); plus lb-jug-08 appended to
the jugendliche cluster
- one URL-encoded export filename (sharp-s) normalized; no
duplicates; no fossil ids this time - the specific-first keyword
ordering held
- cross-batch reconciliation: three procurement gaps closed and
back-referenced - 'Jugendliche - Arbeitszeit' (lb-jug-04 and
lb-jug-05 -> lb-jug-08) and 'Aufzeichnungspflicht, Formen der
Zeiterfassung' (lb-jug-05 -> lb-zer-01/02)
- RECHTSQUELLEN cross-checks: 68-EStG overtime free limits 2026
(15 UStd/170 EUR) confirmed via lb-zus-07; the Kurzarbeit/
Lehrlinge corpus conflict is now triangulated - lb-azm-05
(2026-07) sides with lb-leh-07 (apprentices excluded since
2023) against lb-leh-11's '100%'
- flagged batch-5 points: NSchG contribution 2026 (3.8%) cited
without BGBl evidence (lb-nsc-01), 'para 7 Abs 1' vs 'Abs 6 AZG'
citation divergence for the overtime refusal right
(lb-ues-01/04), MAV-START EU conflict (lb-rhz-03), KAB-Richtlinie
computing the 39.05% partial amount with outdated SV rates
(lb-azm-06), 12-Abs-2a-vs-12a designation conflict (lb-zer-01)
- batch-6 candidates updated in the RUNBOOK (Entgeltfortzahlung an
Feiertagen, Motivkuendigung, Gefahrenevaluierung u. a.);
README cluster table extended to batches 1-5 incl. the third
chapter
Validated: --registry 236 entries/33 clusters, --check 0 problems,
structural scan over all 236 curated docs, py_compile.
Fourth Lexis 360 intake (54 briefings after removing one identical
re-download, source Stands 2026-06 to 2026-08), extending the corpus
to 205 curated entries in 25 clusters. Focus of this batch: the
enforcement and employer-contribution side of payroll (all in the
'Entgelt: Anspruch & Abrechnung' chapter).
- 6 new clusters: lohndumping (13, LSD-BG incl. Sicherungsmittel and
cross-border posting), lohnpfandung (14, EO garnishment mechanics),
gplb (7), lohnnebenkosten (7, FLAF-DB/DZ/IESG/AK-Umlage/WBF/KommSt),
lohnverrechnung (9, L16/Lohnzettel, mBGM, 109a, Aufrollung,
Aufrechnung, Darlehen), nachzahlungen (4)
- cross-batch reconciliation: 'Darlehen und Vorschuesse'
(lb-sac-13 -> lb-lvr-02) and 'Lohnzettel und Beitragsgrundlagen-
nachweis' (lb-sac-21 -> lb-lvr-05) dangling references closed,
cross_refs updated
- tool hardening: assign_ids returns mismatch warnings instead of
appending to an out-of-scope variable (latent NameError that only
fired when a mismatch actually occurred), keyword fallback
reordered specific-before-generic (batch-4 lesson: generic
'zuschlag' stole iesg_zuschlag before the topic map was pinned),
7 fossil ids from the unpinned pass purged and reassigned
- RECHTSQUELLEN cross-checks (lnk cluster): FLAF-DB 3.7%, KommSt 3%,
IESG 0.10%, WBF (other provinces 1%), Freibetrag staffel confirmed;
flagged: lb-lnk-02 states the DB Freibetrag condition INVERTED vs
the verified text (correct staffel evidenced via lb-lnk-03),
lb-lnk-05 WBF Wien 1.5% vs 1.0% (RIS clarification needed), plus
pfa Grundbetrag naming conflict (lb-pfa-03/05), Existenzminimum 2022
(500/515 EUR, lb-pfa-12/14), mutilated statute citation in
lb-lsd-13 (RIS check), 124b citation variants in the corpus
(Z 440/Z 449 vs verified Z 476 lit c idgF BGBl I 43/2026)
- batch-5 candidates updated in the RUNBOOK (pfändungsrechtliche
Behandlung von Sonderzahlungen, Rueckzahlung von Darlehen u. a.);
README cluster table extended to batches 1-4
Validated: --registry 205 entries/25 clusters, --check 0 problems,
structural scan over all 205 curated docs, py_compile.
Third Lexis 360 intake (44 briefings, source Stands 2025-06 to
2026-08), extending the corpus to 151 curated entries in 19 clusters.
All batch-3 topics sit in the 'Entgelt: Anspruch & Abrechnung'
chapter - this is the most payroll-core batch so far (SZ tariff
mechanics, surcharges, commuter allowances, travel expenses, BMSVG).
- 6 new clusters: reisekosten (9), pendlerforderung (9),
vorsorgeleistungen (11), zuschlage (8), sonderzahlungen (4),
geschenke (2); plus lb-ent-11 (Ausbildungskosten-Rueckerstattung)
appended to the entgelt cluster
- two URL-encoded export filenames (%c3%9f = sharp-s) normalized
before intake
- cross-batch reconciliation: lb-prm-04's dangling reference to
'Sonderzahlungen - Steuer' resolved against the new lb-son-04
(and lb-son-03 for the SV side); cross_refs updated
- curated entries cross-checked against the verified legal inventory
(RECHTSQUELLEN-Privat.md): 67-EStG staffel, 68-EStG free limits,
BMSVG core values confirmed; deviations flagged, notably the
124b-Ueberstundenmassnahme 2026 citation in lb-zus-07 - the
briefing cites 'Z 440 lit c'/'BGBl I 4/2026' while the verified text
is Z 476 lit c idgF BGBl I 43/2026 (Aufrollung bis 30. 9. 2026),
and lb-ent-01's blanket 120 EUR for 68 Abs 2 (verified: 170 EUR
2026)
- further flagged points: lb-pen-09 table value 3,672 EUR (likely
print error, arithmetic 2,448), PendlerVO-vs-BMF-FAQ divergence
(lb-pen-01), 183-day rule Finanz vs UFS (rei), teleworker trips
Finanz vs BFG/VwGH (lb-rei-07), SV status of staff participation
foundations (lb-vor-01), customer gifts without SV value limit
(lb-ges-02)
- batch-4 candidates updated in the RUNBOOK (Abfertigung Alt,
Corona-Kurzarbeit u. a.); README cluster table extended to
batches 1-3
Validated: --registry 151 entries/19 clusters, --check 0 problems,
structural scan over all 151 curated docs, py_compile.
Second Lexis 360 intake (52 briefings, source Stands 2025-06 to
2026-08), extending the corpus to 107 curated entries in 13 clusters.
Covers the second briefings chapter 'Entgelt: Anspruch & Abrechnung'
and further Beschaeftigungsverhaeltnisse topics.
- 7 new clusters: behinderte (4), entgelt (10), geschaftsfuehrer (5),
leitende-angestellte (1), pramien (6), sachbezuege (21), vorstand
(4); plus lb-leh-16 (Weiterbeschaftigung nach Ende der Lehrzeit)
appended to the frozen lehrlinge sequence
- tool hardening: batch values validated as integers 1..N (multi-batch
operation), dynamic batch labels in kb.json (batches summary) and
INDEX header, and a new --extract warning when a frozen id's prefix
no longer matches its cluster - this caught the lb-jug-08 fossil from
the unpinned first pass, corrected to lb-sac-21 before any curation
referenced it
- removed one duplicate browser export (geschaftsfuhrer_arbeitsrecht
(1).pdf, identical extracted text)
- corpus conflicts and open points flagged in the entries: Klein-
wohnungsgrenzen lb-sac-09 vs lb-sac-10, Pensionisten-Beguenstigung
lb-sac-02 (LStR Rz 104 divergence), EUR 14.53 Parkplatz without
SV/LSt categorization in the source (lb-sac-18), incentive trips
only at LStR-Rz level (lb-sac-16), simplified 6% tariff in lb-prm-04
(the verified 67-EStG staffel in RECHTSQUELLEN-Privat.md governs)
- dangling briefing references recorded as batch-3 candidates in the
RUNBOOK (Bildungskarenz, Telearbeitspauschale, Personalrabatte bis
2015, Lohnzettel/BGN u. a.)
- README cluster table extended to batches 1-2; RUNBOOK/MEMORY updated
Validated: --registry 107 entries/13 clusters, --check 0 problems,
structural scan over all 107 curated docs, py_compile.
Move the licensed PDF exports and the Layer-1 full texts from the
project root into the dot directory .lexis360/, keeping the root
listing to versioned content plus the tool checkouts.
The location also encodes provenance, distinct from .firecrawl/:
.lexis360/ holds user-supplied licensed exports that cannot be
re-fetched by an agent - if missing, stop and ask the user
(documented in MEMORY), whereas .firecrawl/ remains the home of
reconstructible web fetches.
- plain move of the unversioned directory (batch2/ subfolder spotted
and left untouched for its own intake run)
- .gitignore, tool constants/messages, source.pdf/source.text
frontmatter paths of all 55 curated entries, README/RUNBOOK/MEMORY
mentions; kb.json/INDEX.md regenerated
- batch 2 (53 PDFs) recorded in MEMORY as staged in .lexis360/batch2/
Validated end to end: --extract 55/55 with stable ids, --registry
55 entries/6 clusters, --check 0 problems (every frontmatter path
resolves at the new location), no stale path references remain.
Curated knowledge base from the first batch of Lexis 360 PDF exports
(LexisNexis "Lexis Briefings Personalrecht", 55 documents, source
Stands 2024-03 to 2026-09). Purpose: development reference alongside
RECHTSQUELLEN-*.md and a retrieval-ready corpus for a future
question-answering copilot.
Licensing split (decision D1): the PDF exports and the extracted full
texts stay local and unversioned (Lexis360/ gitignored, like
.firecrawl/); only the curation in own words with short quotes and
source citations is versioned.
- wissensbasis/dokumente/: one curated entry per briefing (55) with
approved frontmatter (frozen lb-<cluster>-<nn> ids, English
structural keys, German values, stand YYYY-MM, ASCII topic/tags
slugs) and sections Zusammenfassung, Kernwerte & Fristen (Stand
marked), Rechtsgrundlagen (only citations actually in the source,
verified/plausible/open marks), Payroll-Relevanz (Odoo), Verweise
- clusters: altersteilzeit 15, lehrlinge 15, jugendliche 7,
ferialpraktikanten 4, beschaftigungsformen 8, teilzeit 6
- kb.json + INDEX.md: generated from the frontmatter by --registry
(single source of truth, schema-validated)
- tools/build_lexis_kb.py: stdlib-only pipeline - --extract
(pdftotext, breadcrumb/stand parsing incl. dossier-style exports
with wrapped breadcrumbs), --registry (frontmatter validation:
required keys, id pattern, id prefix vs topic, stand format,
dangling cross_refs), --check (layer 1 <-> layer 2 completeness);
ids are frozen across batches, numbers never reused
- RUNBOOK.md: batch intake workflow, validation steps, known
limitations
Corpus contradictions flagged in the entries (not silently resolved):
AMS replacement rate for blocked Altersteilzeit 2026 (lb-atz-07 28.5%
vs lb-atz-09/12 27.5%), DAG limit 2023 (751.36 vs 751.37 EUR),
Kurzarbeit for Lehrlinge (lb-leh-11 vs lb-leh-07); lehrlinge cluster
partly older Stands (2024-03/2025-08).
Validated: extract 55/55, registry 55 entries/6 clusters, check 0
problems, structural scan of all 55 curated entries, py_compile.