POC 8 — DGFiP — 5,225 lignes COBOL → TypeScript (Cloudflare Workers + D1) | Licence CeCILL v2.1
Taux synthetiques pour demonstration. Le POC n'a pas acces au fichier TAUDIS reel.
| Source | DGFiP — Calculette Taxe Fonciere 2023 (code COBOL souverain francais) |
|---|---|
| Licence | CeCILL v2.1 (licence libre francaise compatible GPL) |
| Programmes | CTXTA3B, CTXTA3N, EFITA3B3, EFITA3N3, EFITAUX2, FMSTAU2 |
| Copybooks | 17 fichiers (XCOMBAT, XCOMNBA, XBASEB, XBASNB, XCOTB, XCOTNB, XRETB, XRETNB, etc.) |
| Cible | TypeScript — Cloudflare Workers + Hono + D1 |
| Methodologie | X to Claude v0.5 — 9 etapes, 8 principes |
| Arrondi | Math.floor(value + 0.5) — fidelite COBOL half-up |
| Taux | Synthetiques (le fichier TAUDIS reel est souverain, non accessible) |
| COBOL | TypeScript |
|---|---|
| CTXTA3B / CTXTA3N (routeurs) | Endpoints POST /api/bati et /api/non-bati |
| EFITA3B3 (calculette bati) | calculateBati() — 10 cotisations + 3 paliers frais |
| EFITA3N3 (calculette non-bati) | calculateNonBati() — 10 cotis + 4 paliers + JA + CAAA |
| EFITAUX2 (fichier TAUDIS indexe) | readTaux() → D1 table taux_communes |
| FMSTAU2 (primitive DLI/IMS) | readTaux() → meme D1 table (2 entry points unifies) |
| 17 copybooks (COPY REPLACING) | Interfaces TypeScript + schema SQL |
| COMPUTE ROUNDED | Math.floor(value + 0.5) |
| EVALUATE TRUE (cache taux) | D1 query (pas de cache, chaque requete lit la BDD) |
| Validations non-exclusives | if sans return, dernier RC gagne |