Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Incorrect benefit-unit equivalence scale understates equivalised income for multi-adult units

Abierto Apto para principiantes
#541 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
1/5
Tiempo estimado
Menos de una hora
Aptitud para principiantes
89/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
java

Línea de trabajo

Lee BenefitUnit.getEquivalisedWeight() en src/main/java/simpaths/model/BenefitUnit.java y compara la ponderación de adultos con la escala documentada y el cálculo del hogar en src/main/java/simpaths/model/Household.java. Comprueba el caso de dos adultos descrito en el issue: la escala de equivalencia de la unidad de prestaciones debería ser 1.5, y los ingresos anualizados equivalizados deberían ser de £24,000 con unos ingresos disponibles mensuales de £3,000.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Problem

In BenefitUnit.getEquivalisedWeight(), firstAdult is initialised to true but never set to false. Consequently, every member aged at least AGE_TO_BECOME_RESPONSIBLE receives a weight of 1.0, rather than 1.0 for the first adult and 0.5 for subsequent adults.

This differs from the scale documented above the method and from the household calculation, which does update the flag.

Effect

For a household containing one benefit unit with two adults aged 40 and 38, and total disposable income of £3,000 per month:

  • Expected equivalence scale: 1.5; annual equivalised income: £24,000.
  • Current benefit-unit calculation: 2.0; annual equivalised income: £18,000.
  • The household calculation correctly returns £24,000 for those same people and income.

The error therefore understates BU equivalised income by 25% in this example. Cash income itself is unchanged. It can affect quantities and regressors derived from benefit-unit equivalised income.

Proposed correction and verification

Setting the flag after the first adult's contribution resolves the tested cases:

if (firstAdult) {
    weight += 1.0;
    firstAdult = false;
} else {
    weight += 0.5;
}

The error remains in the latest shared code. Although the existing automated tests pass, a direct check shows that two adults receive an equivalence scale of 2 rather than 1.5.

Lenguaje dominante
Java
Estrellas
26
Forks
38
Merge medio
15 h 18 min
PR fusionados (30 d)
10

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de simpaths/SimPaths

Todos los issues de simpaths/SimPaths

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.