Pensionierung: Entscheid ans Element, AHV-Vorbezug/Aufschub, PK-Kapitalquote

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-26 13:18:38 +02:00
parent 7979fed7bd
commit 9907fda6f4
9 changed files with 660 additions and 103 deletions
@@ -0,0 +1,18 @@
-- Pensionierung wird eine Eigenschaft der PERSON statt der Zeitachse (SPEZIFIKATION 3.13).
--
-- (1) `FinancialElement.retirementDecision` haelt den Bezugs-Entscheid von AHV, Pensionskasse
-- und Saeule 3a. Bisher lag er in `ElementTransitionValue` -- also am Schluessel
-- Element x Phasen-ID. Verschob sich das Pensionsalter, wanderte die Phasengrenze, und der
-- Entscheid musste verlustbehaftet von Grenze zu Grenze gerettet werden. Ohne Phasen-ID im
-- Schluessel ueberlebt er jede Zeitachsen-Aenderung.
--
-- (2) `Person.planningHorizonAge` macht das Planende explizit. Bisher ergab es sich
-- stillschweigend als Summe der Phasendauern -- zwei Szenarien konnten dadurch unbemerkt
-- verschieden weit rechnen und waren nicht vergleichbar. NULL bedeutet weiterhin
-- "aus den Phasendauern ableiten", der Wert ist also rueckwaertskompatibel.
--
-- Bewusst OHNE Datenmigration: Alte Entscheide in `ElementTransitionValue` bleiben liegen und
-- werden vom Rechenkern ignoriert. Die betroffenen Elemente erscheinen dadurch als
-- "Vorgabe ungeprueft" -- genau der Zustand, den das neue Drei-Zustands-Modell dafuer kennt.
ALTER TABLE "FinancialElement" ADD COLUMN "retirementDecision" JSONB;
ALTER TABLE "Person" ADD COLUMN "planningHorizonAge" INTEGER;