refactor(wait-for-job): expliciete sprint-scope types op de claim-mapping #50
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "refactor/wait-for-job-sprint-scope-types"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Route (b) uit de Docker-build-diagnose (follow-up van #49, dat route (a) — de ontbrekende bash in de deps-stage — fixte).
Wat
De sprint-scope mapping in
getFullJobContext(SPRINT_IMPLEMENTATION-claim) leunde volledig op type-inferentie uit de gegenereerde Prisma-client. Zonder client (stille generate-failure) werden de query-resultatenanyen regende het TS7006 implicit-any op de map-callbacks (~1240–1332) — de fout waarmee de build op 154 faalde. Deze PR legt het response-contract expliciet vast:SprintScopePbi/SprintScopeTask/SprintScopeStory/SprintExecutionRowdie de include/select van de sprintRun-query spiegelen (verify_requiredalsVerifyRequired-enum omdat die de createMany-input instroomt; nullability conform schema).scopeStories, eenexecutions-annotatie enMap<string, SprintScopePbi>i.p.v. detypeof-keten die bij afwezige client stil naaranycollapsete. Alle downstream callbacks krijgen daarmee contextual typing — geen per-callback annotaties nodig.Bewust níet het doel
Volledige "typecheck zonder client" is structureel onhaalbaar én onwenselijk: gemeten resteren er dan 25
TS2305 no exported member '@prisma/client'-fouten door het hele project (o.a.PrismaClientzelf) — terecht, want een image zonder client is stuk. De winst hier: déze datavorm-kritische mapping blijft gecheckt bij een verouderde client, en het afwezige-client-scenario faalt voortaan met leesbare import-errors i.p.v. implicit-any-ruis.Verificatie
npx tsc --noEmit(gegenereerde client): exit 0npx vitest run: 750/750 groen (96 files)node_modules/.prisma, geen parent-resolution): 84 → 79 fouten; alle 8 TS7006's in deze keten weg (1240/1241/1251×2/1274/1312/1321×2); +3 zelfverklarende TS2305 op de nieuwe type-only import (zelfde klasse als de bestaande regel-6-import)[build 8/8] RUN npm run typechecksuccesvol over deze wijziging,apk add bash(#49) in de deps-stage bevestigdFollow-up-suggestie (buiten scope)
De postinstall eindigt op
|| true— elke toekomstige generate-failure blijft daardoor stil tot de typecheck-gate. Overweeg in de Docker-deps-stage een explicieteRUN npm run prisma:generate(zonder|| true) nánpm ci, zodat zo'n failure de build direct en op de juiste plek breekt.🤖 Generated with Claude Code