CodeBench: korjaa aikaleima-sääntö — ei lisää ylimääräisiä kenttiä, func import

func.now() aiheutti NameError koska mallit eivät importanneet func:ia.
Uusi lähestymistapa: kielletään ylimääräiset kentät, ja JOS speksissä
on aikaleimat niin käytetään server_default + func import.
This commit is contained in:
2026-04-14 12:18:36 +03:00
parent 6e83fad31d
commit 75870c1100

View File

@@ -31,9 +31,9 @@ RULES:
- Python type unions: str | None (not Optional[str]) - Python type unions: str | None (not Optional[str])
- Tests: unique descriptive data per test, NOT generic "test_title" strings - Tests: unique descriptive data per test, NOT generic "test_title" strings
- Tests: PUT/update test data MUST include ALL required (non-nullable) fields, not just the field being updated - Tests: PUT/update test data MUST include ALL required (non-nullable) fields, not just the field being updated
- Timestamp fields (created_at, updated_at): ALWAYS use server_default=func.now() so they are NOT required in Create schema
- Do NOT add filter/search endpoints — only standard CRUD (create, list, get, update, delete) - Do NOT add filter/search endpoints — only standard CRUD (create, list, get, update, delete)
- Do NOT add fields beyond what the spec defines — no extra created_at/updated_at unless in spec - Do NOT add fields beyond what the JSON spec defines — no extra created_at, updated_at, or other fields not in spec
- If the spec includes timestamp fields: use server_default=func.now() (import func from sqlalchemy) and make them Optional in Create schema
- Absolute imports only (from models import ..., from schemas import ...) - Absolute imports only (from models import ..., from schemas import ...)
- NO markdown fences inside file content — just raw code - NO markdown fences inside file content — just raw code
- Only test endpoints that exist in main.py — no extra tests - Only test endpoints that exist in main.py — no extra tests