PS pension: add case K (G1 55+ min(F1,F2) lowest-reduction rule, PSPC-verified) + report wording fixes
This commit is contained in:
1 parent
583b5ee2f8
commit
becdf53f1a
2 files changed
+24
-7
No files matched your search
@@ -58,8 +58,9 @@ Eligibility & early reduction (annual allowance), ages/service to 1/10 year,
|
||||
reduction applies to the **whole** pension, permanent:
|
||||
|
||||
- **G1 (joined ≤ 2012-12-31):** unreduced at 60+ w/ ≥2 yrs, or 55–59 w/ ≥30.
|
||||
S<25: F1 = 5%×(60−age). S≥25: F2 = max(5%×(55−age), 5%×(30−S)); at 60+ w/ S≥25,
|
||||
min(F1,F2) applies; leaving <50 → F1 pinned at 50 → 50% cap (`note: f1Under50`).
|
||||
S<25: F1 = 5%×(60−age). S≥25: F2 = max(5%×(55−age), 5%×(30−S)); at 55+ w/ S≥25,
|
||||
min(F1,F2) applies (PSPC: "compare Formula 1 and 2 and apply the lowest reduction");
|
||||
leaving <50 → F1 pinned at 50 → 50% cap (`note: f1Under50`).
|
||||
- **G2 (joined ≥ 2013-01-01):** unreduced at 65+ w/ ≥2, or 60–64 w/ ≥30.
|
||||
S<25: F1 = 5%×(65−age). S≥25: F2 = max(5%×(60−age), 5%×(30−S)); at 60+ w/ S≥25,
|
||||
min(F1,F2). Leaving <55: modelled on the **PSPC-default path — deferred annuity,
|
||||
@@ -67,7 +68,7 @@ reduction applies to the **whole** pension, permanent:
|
||||
the 50%-at-55 annual-allowance alternative is surfaced as a note).
|
||||
- <2 yrs service → return of contributions only (pension 0, note `lt2`).
|
||||
|
||||
IT salary picker (occupational group **IT**): 5 levels × 8 steps, real 2024-12-22
|
||||
IT salary picker (occupational group **IT**): 5 levels × 8 steps (IT-05 has 9), real 2024-12-22
|
||||
rates (IT-01 $69,361–89,382 … IT-05 $133,582–174,076), fully overridable — the
|
||||
step selection pre-fills the salary field, which stays editable.
|
||||
|
||||
@@ -117,12 +118,13 @@ insight, disclaimer. FR uses official terms (RRFP/PSCC, **prestation de raccorde
|
||||
|
||||
| Suite | Result |
|
||||
|---|---|
|
||||
| `node tests/ps-pension.test.js` | **63 pass, 0 fail** |
|
||||
| `node tests/ps-pension.test.js` | **70 pass, 0 fail** (63 + case K added post-deploy by Hermes: G1 55+ min(F1,F2)) |
|
||||
| `node tests/engine.test.js` (regression) | **36 pass, 0 fail** |
|
||||
| `node tests/i18n.test.js` | **I18N-OK (48)** |
|
||||
| `node tests/ui.smoke.js` (EN+FR quiz→results, + PS module flows) | **SMOKE-OK (74)** |
|
||||
|
||||
Plan cases **A–J verified to the cent** (A/B/C/D/E/F/G/H/I/J per plan §tests), plus
|
||||
Plan cases **A–K verified to the cent** (A–J per plan §tests; K added post-deploy by Hermes —
|
||||
the G1 55+ "lowest of F1/F2" branch was untested), plus
|
||||
engine integration: bridge present at 64 / absent at 65; deferred pension gated
|
||||
(startAge 65 ⇒ no income/tax/clawback before 65); module-off legacy behaviour;
|
||||
OAS clawback gating at 65+; pre-65 couple splitting lowers joint tax
|
||||
@@ -176,7 +178,7 @@ OAS clawback gating at 65+; pre-65 couple splitting lowers joint tax
|
||||
- [x] Results card with full breakdown + dated sources; insight; chart series
|
||||
- [x] Pension flows through income/tax/PIA/GIS/splitting incl. pre-65 life-annuity splitting
|
||||
- [x] Full EN + FR (parity 48/48, FR smoke green)
|
||||
- [x] Tests: ps-pension 63/63 · engine 36/36 · i18n OK · smoke 74/74
|
||||
- [x] Tests: ps-pension 70/70 · engine 36/36 · i18n OK · smoke 74/74
|
||||
- [x] Audits EN+FR @320/360/390 + desktop + off-LAN (evidence in `audit/`)
|
||||
- [x] Deployed (DEPLOY-OK) and reachable off-LAN (OFFLAN-OK)
|
||||
- [x] This report + evidence committed & pushed
|
||||
|
||||
Reference in new issue
Block a user