Problem
UUID is included in NullableAggregateOutput, so these calls compile:
dbkit::func::min(Event::id);
dbkit::func::max(Event::id);
PostgreSQL has no built-in MIN(UUID) or MAX(UUID) aggregate and rejects the query at execution time.
Expected behavior
- Remove UUID from the accepted
MIN / MAX input set.
- Keep UUID support in models, comparisons, filters, and mutations unchanged.
- Add compile-fail coverage for required and nullable UUID columns.
- Avoid using one shared trait as both a nullability mapping and an inaccurate aggregate capability marker.
PostgreSQL extrema input types
Problem
UUID is included in
NullableAggregateOutput, so these calls compile:PostgreSQL has no built-in
MIN(UUID)orMAX(UUID)aggregate and rejects the query at execution time.Expected behavior
MIN/MAXinput set.PostgreSQL extrema input types