intent: a roll-up status: without statusWhenPartial (or statusWhenFull) generates uncompilable Java - the whole app 404s
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 55/100
Research direction
Read IntentParser and trace how it validates the roll-up status configuration; compare that with GlueIntentGenerator and RollupAggregates.appendStatus. Start by running the existing RollupAggregatesTest and identify coverage for only one of statusWhenFull and statusWhenPartial being set. Done means this configuration is rejected with the missing key named, or status emission handles the missing value, with a regression test confirming the behavior.
Written by the indexing model from the issue text.
Description
Problem
A sum roll-up that declares status: + statusWhenFull: but no statusWhenPartial: (or the reverse) passes the parser and generates Java that does not compile. Because one javac task compiles the whole client-Java batch, every controller of the app 404s, not just the roll-up.
Where (release commit 862f6d1a, 14.93.0)
GlueIntentGeneratorwrites the missing key as"":base.put("statusWhenPartial", withStatus && rollup.getStatusWhenPartial() != null ? ... : "")(GlueIntentGenerator.java ~L705-710).RollupAggregates.appendStatussplices it in verbatim:java.util.Objects.equals(parent.Status, )andparent.Status = sum.compareTo(capacity) >= 0 ? 7 : ;(RollupAggregates.java L186-L215). The same file already guardscapacityField/balanceFieldwithstrOrEmptyfor exactly this reason. The status pair has no such guard.IntentParserchecks only thatstatus:is a to-one relation of the parent. It never requires bothstatusWhenFullandstatusWhenPartial.RollupAggregatesTestcovers both-set and both-empty, but not one set with the other missing.
Expected
Either the parser refuses status: without both statusWhenFull and statusWhenPartial (naming the missing key), or the emission treats a missing one as "leave the status alone in that band". The refusal is the smaller fix.
Found on 14.88.0 by BusinessIntents (wave 2026-10-17, base-fixed-assets / base-cash-desk) and re-checked against the 14.93.0 source; still present.
🤖 Generated with Claude Code
- Dominant language
- Java
- Stars
- 278
- Forks
- 97
- Avg merge
- 18h 53m
- Merged PRs (30d)
- 228
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from eclipse-dirigible/dirigible
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
eclipse-dirigible/dirigible#7958 ·
Maintainers usually reply within 1 day
-
intent: a create-from without fromStatus answers 200 on a missing or unknown source id (no 400/404)Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
eclipse-dirigible/dirigible#7945 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
eclipse-dirigible/dirigible#7891 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
eclipse-dirigible/dirigible#6538 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
eclipse-dirigible/dirigible#4812 ·
Maintainers usually reply within 1 day
All issues in eclipse-dirigible/dirigible
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
QuiltMC/update-quilt-meta#28 ·
-
area/kotlin
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
Large page[number] overflows the computed offset and returns the wrong pagePossibly taken @auraseb claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day