Expose annual employee CPP/QPP/EI/QPIP contribution variables
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
Direzione di ricerca
Start by reading the existing implementations referenced in issues #152, #403, and #527, then compare their parameters and outputs with the linked CRA payroll formulas. Done means stable person-level annual CPP, QPP, EI, and QPIP outputs, covered by the listed edge-case and Quebec/non-Quebec tests, with parameter metadata citing the source.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
PolicyEngine Canada does not expose standalone annual employee-liability
variables for:
- Canada Pension Plan contributions
- Quebec Pension Plan contributions
- Employment Insurance premiums
- Quebec Parental Insurance Plan premiums
These outputs are needed both by downstream disposable-income calculations and
by source-level comparison against CRA payroll formulas. Related work exists in
#152 (CPP), #403 (EI), and #527 (QPP), but QPIP and the common output contract
are not covered.
Scope
- Add person-level annual employee contribution/premium variables for CPP, QPP,
EI, and QPIP. - Apply province-residence routing between CPP/QPP and EI/QPIP.
- Parameterize the basic exemption, YMPE, YAMPE, rates, and annual maxima by
effective year. - Represent base and additional CPP/QPP contributions explicitly where needed,
while also exposing total employee liability.
Acceptance criteria
- Each program has a stable person-level annual output variable.
- Tests cover zero earnings, the basic exemption, YMPE, YAMPE, and annual caps.
- Quebec and non-Quebec cases exercise the correct mutually exclusive pension
plan and applicable insurance premiums. - Parameter metadata cites the current CRA payroll formulas.
- Lingua principale
- Python
- Stelle
- 17
- Fork
- 35
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di PolicyEngine/policyengine-canada
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 45/100
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 42/100
-
enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
-
enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 68/100
Tutte le issue di PolicyEngine/policyengine-canada
Issue simili
-
md/asciidoc/csv: an explicit `encoding="utf-8"` keeps a leading BOM, the auto-detect path drops itAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
docling-project/docling#4846 ·
I maintainer di solito rispondono entro 1 giorno
-
area/sessions comp/dashboard comp/desktop comp/gateway comp/tui duplicate P2 sweeper:risk-session-state type/bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
NousResearch/hermes-agent#138914 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bot-triaged module: activation checkpointing module: inductor oncall: pt2 triaged
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
[oblt-aw][autodoc] Update PR Actions Detective E2E prerequisites and fix dashboard-format table typoApertadocumentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
elastic/oblt-aw#2382 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno