PR-3 of the Unified Fristenrechner. Three concerns bundled in migration
042 since they touch only DE_INF / DE_NULL trees and ship together
without coverage interactions:
1. PatG §111(1) bug fix. Current paliad seed had de_null.beruf_begr at
1 month. Current text of §111(1) BGBl. 2022: "Die Frist zur
Begründung der Berufung beträgt drei Monate. Sie beginnt mit der
Zustellung des in vollständiger Form abgefassten Urteils, spätestens
mit Ablauf von fünf Monaten nach der Verkündung." Bumped to 3 months
+ deadline_notes documenting the 5-month outer cap.
2. DE_NULL Hinweisbeschluss cycle (PatG §83). 4 new rules added between
Klageerwiderung and Mündliche Verhandlung:
- de_null.replik_klaeger (Replik, 2mo typical court-set, R.83.2)
- de_null.hinweisbeschluss (court order, R.83.1) — IsCourtSet
- de_null.stellungnahme (response, parent=hinweisbeschluss, R.83.2)
— IsCourtSet via parent propagation
- de_null.duplik (Rejoinder, 1mo typical court-set, R.83.2)
The court-set typical durations match the existing DE_INF replik/
duplik pattern — a placeholder date the user can override via the
Phase A click-to-edit affordance once the court actually sets it.
3. DE_INF Anzeige der Verteidigungsbereitschaft (ZPO §276(1) Satz 1).
New rule de_inf.anzeige, 2 weeks from Klage, defendant. Was the
biggest gap in the LG-civil cycle.
Three new concepts: preliminary-opinion (court order, sort 65),
response-to-preliminary-opinion (submission, sort 39),
notice-of-defence-intention (submission, sort 19). All seeded with
DE+EN aliases for search.
DE_INF + DE_NULL sequence_orders renumbered to leave gaps so future
inserts (B6 cross-cutting Wiedereinsetzung, B4-style instance-split)
can interleave without re-renumbering.
Live-verified on paliad.de (tester@hlc.de):
- DE_INF trigger 2026-05-04 → Anzeige 2026-05-18 (2w), Erwiderung
2026-06-15 (6w), backbone unchanged.
- DE_NULL trigger 2026-05-04 → Klageerwiderung 2026-07-06 (2mo),
Replik 2026-09-07 (2mo from Erwiderung, weekend-shift), Duplik
2026-10-07 (1mo from Replik), Hinweisbeschluss + Stellungnahme
IsCourtSet, Berufungsbegründung 2026-09-04 (3mo, was 1mo).
Out of scope (deferred to B6): cross-cutting Wiedereinsetzung,
Versäumnisurteil-Einspruch (only fires on default), Schriftsatz-
nachreichung. Out of scope (deferred to PR-4): new instance-split
proceeding types DE_INF_OLG / DE_INF_BGH / DE_NULL_BGH.
53 lines
1.8 KiB
SQL
53 lines
1.8 KiB
SQL
-- Reverses 042_de_expansion_b3.
|
|
|
|
DELETE FROM paliad.deadline_rules
|
|
WHERE proceeding_type_id IN (
|
|
SELECT id FROM paliad.proceeding_types WHERE code IN ('DE_INF','DE_NULL')
|
|
)
|
|
AND code IN (
|
|
'de_inf.anzeige',
|
|
'de_null.replik_klaeger', 'de_null.hinweisbeschluss',
|
|
'de_null.stellungnahme', 'de_null.duplik'
|
|
);
|
|
|
|
DELETE FROM paliad.deadline_concepts
|
|
WHERE slug IN ('preliminary-opinion','response-to-preliminary-opinion','notice-of-defence-intention')
|
|
AND id NOT IN (SELECT concept_id FROM paliad.deadline_rules WHERE concept_id IS NOT NULL);
|
|
|
|
UPDATE paliad.deadline_rules
|
|
SET duration_value = 1,
|
|
deadline_notes = NULL,
|
|
deadline_notes_en = NULL
|
|
WHERE proceeding_type_id = (SELECT id FROM paliad.proceeding_types WHERE code = 'DE_NULL')
|
|
AND code = 'de_null.beruf_begr';
|
|
|
|
WITH proc AS (SELECT id FROM paliad.proceeding_types WHERE code = 'DE_INF')
|
|
UPDATE paliad.deadline_rules dr
|
|
SET sequence_order = CASE dr.code
|
|
WHEN 'de_inf.klage' THEN 0
|
|
WHEN 'de_inf.erwidg' THEN 1
|
|
WHEN 'de_inf.replik' THEN 2
|
|
WHEN 'de_inf.duplik' THEN 3
|
|
WHEN 'de_inf.termin' THEN 4
|
|
WHEN 'de_inf.urteil' THEN 5
|
|
WHEN 'de_inf.berufung' THEN 6
|
|
WHEN 'de_inf.beruf_begr' THEN 7
|
|
ELSE dr.sequence_order
|
|
END
|
|
FROM proc p
|
|
WHERE dr.proceeding_type_id = p.id;
|
|
|
|
WITH proc AS (SELECT id FROM paliad.proceeding_types WHERE code = 'DE_NULL')
|
|
UPDATE paliad.deadline_rules dr
|
|
SET sequence_order = CASE dr.code
|
|
WHEN 'de_null.klage' THEN 0
|
|
WHEN 'de_null.erwidg' THEN 1
|
|
WHEN 'de_null.termin' THEN 2
|
|
WHEN 'de_null.urteil' THEN 3
|
|
WHEN 'de_null.berufung' THEN 4
|
|
WHEN 'de_null.beruf_begr' THEN 5
|
|
ELSE dr.sequence_order
|
|
END
|
|
FROM proc p
|
|
WHERE dr.proceeding_type_id = p.id;
|