- 신규 4테이블 + 1 집계 VIEW(docs/jam-eval-ddl.sql 권위 + db/schema.sql 동기, 멱등) - 평가단위 = (jam_id,game_id) 활성 자연키. FK game_id→games·jam_id→jams 직접(jam_entries.id surrogate 아님). W2-1 jam_entries 활성 UNIQUE 가 1:1 보장 - 무결성: 1심사위원1기준1점·1인1표(UNIQUE), score 1~5·weight≥0·track 4값·rank≥1(CHECK) - jam_score_stats VIEW: WITH per_criterion CTE 선집계 후 LEFT JOIN(fan-out 가드, game_review_stats 선례 동형) + NULLIF 0-division 가드. 미채점 criterion 자동 제외. 컬럼 소문자 snake(하류 매퍼가 AS "camelCase" 인용 매핑 — W2-4 소관) - 하류 W2-4/5/6 소비 계약 동결. 매퍼/컨트롤러는 비목표(하류 산출) 검증: ./mvnw test 119/119 GREEN 유지(Java 무변경·회귀 0). L2 contract PASS — DDL 적용·제약 거부 4종·VIEW 집계 정합(가중합/단순합 손계산 일치, 심사위원 2→4 증가에도 fan-out 왜곡 0, NULLIF 가드). 집합전수 AC-T1~6 PASS(DROP 0·리뷰 인프라 무변경). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| apply-local-ddl.sh | ||
| bootstrap-admin.sql | ||
| schema.sql | ||
| seed-dev-teardown.sql | ||
| seed-dev.sql | ||