Model the 2025 Canada Workers Benefit secondary-earner exemption
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 52/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- python
- Área
- backend, fintech-quant
Línea de trabajo
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.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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
- Lenguaje dominante
- Python
- Estrellas
- 17
- Forks
- 35
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de PolicyEngine/policyengine-canada
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 45/100
-
enhancement
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 42/100
-
enhancement
Dificultad 4/5 3-5 días Aptitud para principiantes 68/100
Todos los issues de PolicyEngine/policyengine-canada
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
EchoTools/nevr-runtime#651 ·
Los mantenedores suelen responder en 1 día
-
bug frontend rt sev-3
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
noontide-co/mainbranch#1211 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
[1.x Bug] run-operation --sql reports success but rolls back writes on transaction-capable adaptersAbiertotriage
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
dbt-labs/dbt#16784 · 1 comentario ·
Los mantenedores suelen responder en 1 día