Check whether the outcome improved
Run cardinality cases
Test one-to-one, one-to-many, and zero-child relationships with known values. Include two groups whose children differ in count so an inflated total cannot hide behind a coincidentally matching grand total. Record expected parent and detail results before viewing output.
Check every aggregation surface
Compare headline cards, grouped tables, charts, drilldowns, and exports against the grain contract. Verify filters do not move aggregation before or after a join unexpectedly, and confirm labels identify detail counts when those are intentionally repeated.
Reconcile edge behavior
Inspect null relationships, duplicate child keys, and a group with no matching detail. Confirm the report handles each case according to its definition, and attach row-level evidence for any discrepancy rather than accepting a visually plausible total.
What to carry forward
Accept verification when each surface matches its declared grain across varied cardinalities and the export preserves the same meaning. Fail on any unexplained parent multiplication, then retain the smallest fixture and expected totals as the regression evidence.
Technical background: PostgreSQL documentation.
Keep the decision with the work.
Use a Work Item in Aglet to record the problem, the evidence you have, and the next decision. Add an owner and priority, then keep updates in the discussion so the next person can follow the reasoning.
Create an account See the product workflow