build(typecheck): bump scrum4me-shared en hef de laatste carve-out op (180/180) #102

Merged
janpeter merged 1 commit from fix/typecheck-shared-submodule-bump into main 2026-07-26 16:58:14 +02:00
Owner

⚠️ Merge-volgorde: janpeter/scrum4me-shared#43 eerst, daarna deze PR. De submodule-pointer wijst naar 1b440b6, dat op dit moment alleen op de branch van #43 bestaat. scrum4me-shared merget met merge-commits (geen squash), dus ná die merge blijft 1b440b6 bereikbaar vanaf main. Deze PR eerder mergen laat main verwijzen naar een commit die niet op shared/main staat.

Wat

Vervolg op #101. Die PR verbreedde de typecheck naar __tests__/**/* met precies één gedocumenteerde uitzondering: realtime-payload-contract.test.ts. Deze PR heft die uitzondering op.

  • tsconfig.type-tests.json: exclude terug naar ["node_modules", "dist", "vendor"], de carve-out-regel en toelichting weg.
  • Submodule vendor/scrum4me-shared: 69cb33f1b440b6.

Waarom het kan

De carve-out bestond omdat vendor/scrum4me-shared/lib/realtime-payload.ts extensieloze relatieve imports gebruikte — onder moduleResolution: NodeNext 4× TS2835 in de submodule zelf. janpeter/scrum4me-shared#43 trekt dat bestand gelijk met de 13 andere relatieve imports in die repo, die al './x.js' gebruiken.

De bump brengt alleen die fix mee: 69cb33f en de toenmalige main-tip 83c4a8b hadden een lege content-diff, dus de inhoudelijke diff van 69cb33f → 1b440b6 is precies die vier regels.

Effect

tsconfig.type-tests.json dekt nu 180 van de 180 .ts-bestanden onder __tests__/, zonder uitzonderingen. realtime-payload-contract.test.ts wordt daarmee voor het eerst echt getypecheckt — tot nu toe importeerde die test een module die TypeScript niet kon resolven, dus de contractgarantie bestond alleen op papier.

Verificatie

  • npm run typecheck — schoon
  • npm run typecheck:tests — schoon over 180/180 bestanden (geverifieerd met tsc --listFiles: geen enkel bestand onder __tests__/ valt buiten de config)
  • npm test176 passed | 2 skipped (178 bestanden); 1317 tests passed, 20 skipped
  • In de submodule zelf: npm run verify groen (typecheck + 22 bestanden / 237 tests)

🤖 Generated with Claude Code

> ⚠️ **Merge-volgorde: janpeter/scrum4me-shared#43 eerst, daarna deze PR.** De submodule-pointer wijst naar `1b440b6`, dat op dit moment alleen op de branch van #43 bestaat. scrum4me-shared merget met merge-commits (geen squash), dus ná die merge blijft `1b440b6` bereikbaar vanaf main. Deze PR eerder mergen laat main verwijzen naar een commit die niet op shared/main staat. ## Wat Vervolg op #101. Die PR verbreedde de typecheck naar `__tests__/**/*` met precies één gedocumenteerde uitzondering: `realtime-payload-contract.test.ts`. Deze PR heft die uitzondering op. - `tsconfig.type-tests.json`: `exclude` terug naar `["node_modules", "dist", "vendor"]`, de carve-out-regel en toelichting weg. - Submodule `vendor/scrum4me-shared`: `69cb33f` → `1b440b6`. ## Waarom het kan De carve-out bestond omdat `vendor/scrum4me-shared/lib/realtime-payload.ts` extensieloze relatieve imports gebruikte — onder `moduleResolution: NodeNext` 4× TS2835 in de submodule zelf. janpeter/scrum4me-shared#43 trekt dat bestand gelijk met de 13 andere relatieve imports in die repo, die al `'./x.js'` gebruiken. De bump brengt **alleen** die fix mee: `69cb33f` en de toenmalige main-tip `83c4a8b` hadden een lege content-diff, dus de inhoudelijke diff van `69cb33f → 1b440b6` is precies die vier regels. ## Effect `tsconfig.type-tests.json` dekt nu **180 van de 180** `.ts`-bestanden onder `__tests__/`, zonder uitzonderingen. `realtime-payload-contract.test.ts` wordt daarmee voor het eerst echt getypecheckt — tot nu toe importeerde die test een module die TypeScript niet kon resolven, dus de contractgarantie bestond alleen op papier. ## Verificatie - `npm run typecheck` — schoon - `npm run typecheck:tests` — schoon over **180/180** bestanden (geverifieerd met `tsc --listFiles`: geen enkel bestand onder `__tests__/` valt buiten de config) - `npm test` — **176 passed | 2 skipped (178 bestanden); 1317 tests passed, 20 skipped** - In de submodule zelf: `npm run verify` groen (typecheck + 22 bestanden / 237 tests) 🤖 Generated with [Claude Code](https://claude.com/claude-code)
build(typecheck): bump scrum4me-shared en hef de laatste carve-out op (180/180)
All checks were successful
CI / Verify (pull_request) Successful in 1m57s
e258c4ee97
De uitzondering voor realtime-payload-contract.test.ts kan weg: de
extensieloze relatieve imports in vendor/scrum4me-shared/lib/realtime-payload.ts
zijn opgelost in janpeter/scrum4me-shared#43, wat het bestand gelijktrekt met
de 13 andere relatieve imports in die repo die al './x.js' gebruiken.

Submodule 69cb33f -> 1b440b6. De inhoudelijke diff van die bump is precies
die ene fix: 69cb33f en de toenmalige main-tip (83c4a8b) hadden een lege
content-diff.

Daarmee dekt tsconfig.type-tests.json alle 180 .ts-bestanden onder __tests__/
zonder enige uitzondering, en typecheckt de realtime-payload-contracttest voor
het eerst echt — hij importeerde tot nu toe een module die TS niet kon resolven.

Volgorde: scrum4me-shared#43 moet vóór deze PR mergen. Die repo merget met
merge-commits, dus 1b440b6 blijft daarna bereikbaar vanaf main.

Verificatie: npm run typecheck schoon; npm run typecheck:tests schoon over
180/180 bestanden; npm test 176 passed | 2 skipped (1317 tests).
In de submodule zelf: npm run verify groen (22 bestanden / 237 tests).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
janpeter/scrum4me-mcp!102
No description provided.