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

intent: an integer capacity:/balance:/of: on a sum roll-up passes the parser but generates uncompilable Java (BigDecimal assumed)

Abierto
#7,944 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
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
55/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
java
Área
backend

Línea de trabajo

Read IntentParser.java and RollupAggregates.renderSum, then inspect Repository.java.template for the capacity guard. Trace how Calc narrows numeric values and compare that with the generated Java for integer and long fields. Reproduce with a capacity-bearing sum roll-up using an integer field; done when generated Java compiles and its capacity, balance, and guard calculations handle integer types, with relevant tests passing.

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

Descripción

Problem

IntentParser accepts integer / int / long for a sum roll-up's capacity: / balance: / of: (NUMERIC_TYPES = integer, int, long, decimal, double). The emitted Java assumes BigDecimal throughout, though, so an integer capacity (e.g. seats, hours, units) generates code that does not compile. The whole client-Java batch fails with it, and every controller 404s.

Where (release commit 862f6d1a, 14.93.0)

  • IntentParser.java L145-L146 and requireNumericParentField (~L2439) admit the integer types.
  • RollupAggregates.renderSum emits java.math.BigDecimal capacity = parent.<capacity> == null ? BigDecimal.ZERO : parent.<capacity>;, sum = sum.add(row.<of>) and parent.<balance> = capacity.subtract(sum). None of these compile for an Integer/Long property.
  • The capacity guard in Repository.java.template (~L135-L146) has the same issue: guardConsumed.add(guardRow.<of>) and compareTo(guardParent.<capacity>).

Expected

Either convert at the boundary (new BigDecimal(String.valueOf(x)) / BigDecimal.valueOf(long) in, intValue()/longValue() out, the way Calc already narrows), or have the parser refuse non-decimal types for a capacity-bearing sum with a message that says so. Conversion is what users expect for a seat or hour count.

Found on 14.88.0 by BusinessIntents (wave 2026-10-17) and re-checked against the 14.93.0 source; still present.

🤖 Generated with Claude Code

Lenguaje dominante
Java
Estrellas
278
Forks
97
Merge medio
17 h 19 min
PR fusionados (30 d)
261

Preparar el entorno

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 eclipse-dirigible/dirigible

Todos los issues de eclipse-dirigible/dirigible

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.