Model the 2025 Canada Workers Benefit secondary-earner exemption
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 52/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- python
- Ambito
- backend, fintech-quant
Direzione di ricerca
Start by locating the existing general Canada Workers Benefit implementation referenced by issue #9 and read the CRA Schedule 6 Step 2 source linked in this issue. Trace the AFNI and reduction calculations, then add coverage for the standard, Alberta, Quebec, and Nunavut schedules; done means the exemption selects the lower earner and respects all stated caps without producing zero for an eligible spouse.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
PolicyEngine Canada does not model the secondary-earner exemption used in the
2025 Canada Workers Benefit calculation. A repository search for
secondary_earner and equivalent terms returns no implementation.
CRA Schedule 6 Step 2 allows an eligible-spouse family to deduct up to $16,386
of the lower earner's qualifying amount from adjusted family net income. Without
this step, the final CWB amount is not comparable to the 2025 CRA calculation.
The older general CWB implementation issue was #9.
Scope
- Add the 2025 secondary-earner exemption parameter.
- Identify the secondary earner from claimant and eligible-spouse working
income. - Cap the exemption by the secondary earner's working income, adjusted net
income, and the published maximum. - Subtract the exemption from adjusted family net income before applying the
basic CWB and disability-supplement reductions. - Preserve an explicit pre-exemption AFNI variable or otherwise expose both
legal calculation boundaries.
Acceptance criteria
- No eligible spouse produces a zero exemption.
- The lower earner is selected correctly when claimant and spouse incomes
differ. - The exemption respects the working-income, adjusted-net-income, and $16,386
caps. - End-to-end tests cover the standard schedule and the Alberta, Quebec, and
Nunavut variants.
Official source:
https://www.canada.ca/content/dam/cra-arc/formspubs/pbg/5000-s6/5000-s6-25e.pdf
- 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à 4/5 3-5 giorni Idoneità per principianti 48/100
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 42/100
-
enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 68/100
Tutte le issue di PolicyEngine/policyengine-canada
Issue simili
-
mermaid_extract.py silently discards single-line state-diagram notes; sequence notes are keptAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
cathrynlavery/diagram-design#441 ·
I maintainer di solito rispondono entro 2 giorni
-
[Cleanup] Include the public header in work_split.cppForse già presa @blozano-tt l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
tenstorrent/tt-metal#60850 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
backend::sglang bug language::python observability
Difficoltà 2/5 Mezza giornata Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 75/100
OpenShot/openshot-qt#6202 ·
I maintainer di solito rispondono entro 1 giorno