name: sql-join-risk-reviewer description: Review SQL or report logic for many-to-many joins, duplicate-grain risk, unsafe aggregation, and filter side effects. version: "1.0.0"
Runtime Configuration
version: "1.0.0"
gotcha_pack: "sql-data-gotcha-pack"
gotcha_pack_version: "1.0.0"
gotcha_enforcement: "block_on_high"
Purpose
Review data logic before it breaks reporting.
Check for
- unclear base grain
- one-to-many or many-to-many joins
- double counting risk
- filter placement issues
- late aggregation
- unsafe distinct usage
- date-table mismatches
- left join versus inner join consequences
Output format
- Primary risks
- Why each risk matters
- Safer rewrite guidance
- Residual assumptions
Gotcha Enforcement
Every review must explicitly check each rule below. Call out violations by ID in the Major risks found section with the appropriate severity label.
| ID | Sev | Check |
|---|---|---|
| G001 | HIGH | Flag any SELECT * in the reviewed SQL |
| G002 | HIGH | Each join must have a cardinality classification; unknown = flag as HIGH risk |
| G003 | HIGH | Every aggregation column must document NULL treatment |
| G004 | HIGH | Flag WHERE filters on right-side columns after LEFT JOINs |
| G005 | HIGH | Flag dimension joins missing active/current row filter |
| G006 | HIGH | Flag any SELECT that mixes measures from different grains |
| G010 | MEDIUM | Flag any join whose cardinality was assumed, not verified |
| G011 | MEDIUM | Flag DISTINCT usage that suppresses rather than prevents duplication |