Session 5 — bloquée sur ce qu'aucun agent ne peut produire : les noms kréyòl. Le nom kréyòl est le nom principal de chaque entrée (ADR 0005) ; inventer seize noms aurait été exactement ce que le projet s'interdit. Livré à la place : verify:candidats vérifie 16 espèces candidates contre Wikidata et GBIF et produit un tableau complet — nom accepté, famille, Q-id, clé GBIF, français — avec une colonne vide. Il ne manque que ce qu'une machine ne peut pas produire. 15 candidats sur 16 sans écart. Le seizième a attrapé mon erreur : j'avais proposé Citrus sinensis pour l'orange, GBIF le renvoie en SYNONYM. C'est le rôle du contrôle. Session 6 — npm run audit vérifie la DoD sur le build réel, pas sur les intentions. Sortie non nulle = livraison refusée. 14 points au vert : zéro chargement tiers, zéro emoji, zéro lien interne mort sur 74 pages, shell JS à 86 Ko gzip, aucun chunk lourd sur le chemin critique, SEO complet, fichiers de service présents, polices self-hébergées. Restent ouverts et annoncés comme tels : Lighthouse, 30 fps sur Mali-G52, hors ligne en mode avion, prefers-reduced-motion à la main, et le test en classe. Ce sont des mesures qu'un agent ne peut pas prendre ; les annoncer comme faites aurait été le seul vrai échec. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
46 lines
1.6 KiB
JSON
46 lines
1.6 KiB
JSON
{
|
|
"name": "ki-fwi",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"description": "KI FWI SA YÉ ? — jeu éducatif libre : reconnaître les fruits, les arbres et les plantes des Antilles.",
|
|
"license": "AGPL-3.0-or-later",
|
|
"type": "module",
|
|
"engines": {
|
|
"node": ">=22"
|
|
},
|
|
"scripts": {
|
|
"verify:taxa": "node tools/data/verify-taxa.mjs",
|
|
"ingest:commons": "node tools/data/ingest-commons.mjs",
|
|
"build:dataset": "node tools/data/build-dataset.mjs",
|
|
"check:audio": "node tools/data/check-audio.mjs",
|
|
"validate:data": "node tools/data/validate.mjs",
|
|
"build:credits": "node tools/data/build-credits.mjs",
|
|
"test:porte": "node tools/data/test-porte.mjs",
|
|
"rapport:manques": "node tools/data/rapport-manques.mjs",
|
|
"dev": "vite dev",
|
|
"build": "vite build && node tools/build/sitemap.mjs",
|
|
"preview": "vite preview",
|
|
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
|
"check:i18n": "node tools/data/check-i18n.mjs",
|
|
"fetch:medias": "node tools/data/fetch-medias.mjs",
|
|
"verify:seeds": "python3 tools/assets/comfyui_client.py --verifier",
|
|
"verify:candidats": "node tools/data/verify-candidats.mjs",
|
|
"audit": "node tools/build/audit.mjs"
|
|
},
|
|
"devDependencies": {
|
|
"@fontsource/archivo": "^5.3.0",
|
|
"@fontsource/inter": "^5.3.0",
|
|
"@sveltejs/adapter-static": "^3.0.10",
|
|
"@sveltejs/kit": "^2.70.1",
|
|
"@sveltejs/vite-plugin-svelte": "^7.2.0",
|
|
"ajv": "^8.17.1",
|
|
"ajv-formats": "^3.0.1",
|
|
"phaser": "^4.2.1",
|
|
"svelte": "^5.56.8",
|
|
"svelte-check": "^4.7.4",
|
|
"typescript": "^5.9.3",
|
|
"vite": "^8.1.5",
|
|
"vite-plugin-pwa": "^1.3.0"
|
|
}
|
|
}
|