feat: la chaine de l-echec lu comme une absence devient une tache a part entiere

This commit is contained in:
Sylvain Duchesne
2026-09-21 14:27:10 +02:00
parent 7599004fc3
commit ddb3d0552d
5 changed files with 89 additions and 50 deletions
@@ -0,0 +1,30 @@
---
id: T01.i
title: Clear two mechanical leftovers from the removal
parent: T01
depends_on: [T01.h]
created: 2026-09-21
claimed_by: null
claimed_at: null
blocked: false
---
## Description
Two small, independent leftovers reported by T01.f. Neither carries a design question; if one turns out to, stop and report rather than deciding it here.
### 1. Remove `ensureReposOpen`, now dead
T01.f removed its last caller. VERIFY that with a grep across `packages/`, `examples/` and `e2e/` before deleting - if a caller survives, leave it and say so. `ensureRepoOpen` (SINGULAR) is NOT dead, it is on the live path, and must stay.
### 2. Make the example typecheck
`examples/notebook/tsconfig.json` fails typecheck. T01.f reports this as pre-existing and verified as such. The owner has asked for the example to be repaired.
Make it typecheck WITHOUT weakening the configuration. If the only way through is to loosen a compiler option, disable a check, or annotate a real type error away, STOP and report - that is a finding, not a repair. The example exists to be the honest demonstration of what an application writes, so an example that only compiles because the rules were relaxed for it is worse than one that does not compile.
**Hard gate:** `bun test` -> 0 fail; `bunx tsc --noEmit -p packages/polyfill/tsconfig.json` -> exit 0; `bunx tsc --noEmit -p packages/polyfill/e2e/tsconfig.json` -> exit 0; the example's own typecheck -> exit 0; `python3 ~/.claude/skills/concept/lint.py` -> 0 ERROR. Anti-cheat: no `any`, no `@ts-ignore`, no `as unknown as`, no deleted or skipped test, no weakened assertion, no loosened compiler option.
## Progress
## Result