Relational contract assessment gates
Score 0 missing/incorrect, 1 partial or prompted, 2 independently correct with evidence, 3 justified fresh-case transfer with limitations. Every gate must reach 2; scores cannot compensate for a failed gate.
- SQL1 — Result grain: predict outer-join counts, sums and ties, preserving customers with no matches and distinct orders with equal amounts.
- SQL2 — Nulls and schema: explain guest relationships, NOT IN uncertainty, requiredness and actual constraint enforcement with rejected and accepted rows.
- SQL3 — Implementation: own starter passes supplied checks plus three independently designed cases; explain the query and schema decisions without the reference.
- SQL4 — Fault discrimination: expose and repair wrong outer-join filtering, COUNT(*), null-sensitive anti-join or tie-breaking with minimal counterexamples.
- SQL5 — Transaction boundary: demonstrate both failure cuts, committed-row preservation and caller-transaction ownership; separate statement failures from crashes and concurrent isolation.
- SQL6 — Retained transfer: after at least 48 hours, solve a changed invoice/join or request-retry case without solutions and connect it to Semester 05 uncertainty.
Budget 6–8 hours for assessment and repairs; passive waiting is excluded. Keep evidence paths, initial scores, assistance declaration, corrections and fresh retest. A checker pass is not proof of independent understanding. Original PostgreSQL query-plan and module requirements remain required. Use calibration after attempting.