designwithai-mcp 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "designwithai-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
|
-
"description": "Le serveur designwithai pour ton éditeur : audite ton produit, trace les corrections, et fait remonter les résultats dans ton tableau de bord.",
|
|
7
|
-
"keywords": [
|
|
6
|
+
"description": "Le serveur designwithai pour ton éditeur : audite ton produit — interface, navigation, performance, sécurité des données, hygiène Figma — trace les corrections, et fait remonter les résultats dans ton tableau de bord.",
|
|
7
|
+
"keywords": [
|
|
8
|
+
"mcp",
|
|
9
|
+
"design-system",
|
|
10
|
+
"audit",
|
|
11
|
+
"claude",
|
|
12
|
+
"cursor"
|
|
13
|
+
],
|
|
8
14
|
"homepage": "https://designwithai.fr",
|
|
9
15
|
"bin": {
|
|
10
16
|
"designwithai-mcp": "dist/server.js"
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"skill": "analyze-figma",
|
|
5
5
|
"kind": "conformant",
|
|
6
6
|
"delivery_mode": "classique",
|
|
7
|
-
"artifact": "Fichier : Cabinet Lauzun — produit\nDernière modification : 2026-08-11T09:24:31Z\nATTENTION : fichier volumineux — ma lecture s'est arrêtée après 6000 éléments. Ce qui suit est un ÉCHANTILLON, pas l'intégralité du fichier. Ne conclus donc jamais qu'un élément « manque » ou « n'existe pas ».\nPages : 4 — Fondations, Composants, Écrans, Archives\nCadres : 1212 (dont 1212 en auto-layout)\nCalques de texte : 26\nStyles publiés dans la bibliothèque : 68\n\nÉCRANS DE PREMIER NIVEAU (1212)\n - Fondations › Palette\n - Fondations › Échelle typographique\n - Composants › Composant 0\n - Composants › Composant 1\n - Composants › Composant 2\n - Composants › Composant 3\n - Composants › Composant 4\n - Composants › Composant 5\n - Composants › Composant 6\n - Composants › Composant 7\n - Composants › Composant 8\n - Composants › Composant 9\n - Composants › Composant 10\n - Composants › Composant 11\n - Composants › Composant 12\n - Composants › Composant 13\n - Composants › Composant 14\n - Composants › Composant 15\n - Composants › Composant 16\n - Composants › Composant 17\n - Composants › Composant 18\n - Composants › Composant 19\n - Composants › Composant 20\n - Composants › Composant 21\n - Composants › Composant 22\n - Composants › Composant 23\n - Composants › Composant 24\n - Composants › Composant 25\n - Composants › Composant 26\n - Composants › Composant 27\n - Composants › Composant 28\n - Composants › Composant 29\n - Composants › Composant 30\n - Composants › Composant 31\n - Composants › Composant 32\n - Composants › Composant 33\n - Composants › Composant 34\n - Composants › Composant 35\n - Composants › Composant 36\n - Composants › Composant 37\n - Composants › Composant 38\n - Composants › Composant 39\n - Écrans › Écran 001 · Tableau de bord\n - Écrans › Écran 002 · Liste des dossiers\n - Écrans › Écran 003 · Détail dossier\n\nPOLICES ET GRAISSES EMPLOYÉES (3)\n - Inter 400\n - Inter 500\n - Inter 600\n\nTAILLES DE TEXTE EMPLOYÉES (4) : 16, 20, 24, 32\nRAYONS D'ANGLE EMPLOYÉS (3) : 4, 8, 16\nESPACEMENTS EMPLOYÉS (4) : 8, 16, 24, 32\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (3 distinctes)\n - #ffffff — 432 usages\n - #f7f8fa — 390 usages\n - #111827 — 390 usages\n\nCOMPOSANTS RÉUTILISÉS (4)\n - Bouton — 1210 instances\n - Champ — 1210 instances\n - Carte — 1170 instances\n - Entête — 1170 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (26)\n - Fondations › « Couleurs de la marque »\n - Fondations › « Inter 12 / 14 / 16 / 20 / 24 / 32 / 40 »\n - Écrans › « Dossier 1 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 2 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 3 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 4 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 5 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 6 — ouvert le 06/03/2026 »\n - Écrans › « Dossier 7 — ouvert le 07/03/2026 »\n - Écrans › « Dossier 8 — ouvert le 08/03/2026 »\n - Écrans › « Dossier 9 — ouvert le 09/03/2026 »\n - Écrans › « Dossier 10 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 11 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 12 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 13 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 14 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 15 — ouvert le 06/03/2026 »\n - Écrans › « Dossier 16 — ouvert le 07/03/2026 »\n - Écrans › « Dossier 17 — ouvert le 08/03/2026 »\n - Écrans › « Dossier 18 — ouvert le 09/03/2026 »\n - Écrans › « Dossier 19 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 20 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 21 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 22 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 23 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 24 — ouvert le 06/03/2026 »",
|
|
7
|
+
"artifact": "Fichier : Cabinet Lauzun — produit\nDernière modification : 2026-08-11T09:24:31Z\nATTENTION : fichier volumineux — ma lecture s'est arrêtée après 6000 éléments. Ce qui suit est un ÉCHANTILLON, pas l'intégralité du fichier. Ne conclus donc jamais qu'un élément « manque » ou « n'existe pas ».\nPages : 4 — Fondations, Composants, Écrans, Archives\nCadres : 1212 (dont 1212 en auto-layout)\nCalques de texte : 26\nStyles publiés dans la bibliothèque : 68\nEmploi des styles : non transmis par cette lecture. N'en conclus rien, ni en bien ni en mal.\nSTYLES LOCAUX : non transmis.\nSTYLES PUBLIÉS INEMPLOYÉS : non transmis.\n\nÉCRANS DE PREMIER NIVEAU (1212)\n - Fondations › Palette\n - Fondations › Échelle typographique\n - Composants › Composant 0\n - Composants › Composant 1\n - Composants › Composant 2\n - Composants › Composant 3\n - Composants › Composant 4\n - Composants › Composant 5\n - Composants › Composant 6\n - Composants › Composant 7\n - Composants › Composant 8\n - Composants › Composant 9\n - Composants › Composant 10\n - Composants › Composant 11\n - Composants › Composant 12\n - Composants › Composant 13\n - Composants › Composant 14\n - Composants › Composant 15\n - Composants › Composant 16\n - Composants › Composant 17\n - Composants › Composant 18\n - Composants › Composant 19\n - Composants › Composant 20\n - Composants › Composant 21\n - Composants › Composant 22\n - Composants › Composant 23\n - Composants › Composant 24\n - Composants › Composant 25\n - Composants › Composant 26\n - Composants › Composant 27\n - Composants › Composant 28\n - Composants › Composant 29\n - Composants › Composant 30\n - Composants › Composant 31\n - Composants › Composant 32\n - Composants › Composant 33\n - Composants › Composant 34\n - Composants › Composant 35\n - Composants › Composant 36\n - Composants › Composant 37\n - Composants › Composant 38\n - Composants › Composant 39\n - Écrans › Écran 001 · Tableau de bord\n - Écrans › Écran 002 · Liste des dossiers\n - Écrans › Écran 003 · Détail dossier\n\nPOLICES ET GRAISSES EMPLOYÉES (3)\n - Inter 400\n - Inter 500\n - Inter 600\n\nTAILLES DE TEXTE EMPLOYÉES (4) : 16, 20, 24, 32\nRAYONS D'ANGLE EMPLOYÉS (3) : 4, 8, 16\nESPACEMENTS EMPLOYÉS (4) : 8, 16, 24, 32\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (3 distinctes)\n - #ffffff — 432 usages\n - #f7f8fa — 390 usages\n - #111827 — 390 usages\n\nCOMPOSANTS RÉUTILISÉS (4)\n - Bouton — 1210 instances\n - Champ — 1210 instances\n - Carte — 1170 instances\n - Entête — 1170 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (26)\n - Fondations › « Couleurs de la marque »\n - Fondations › « Inter 12 / 14 / 16 / 20 / 24 / 32 / 40 »\n - Écrans › « Dossier 1 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 2 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 3 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 4 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 5 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 6 — ouvert le 06/03/2026 »\n - Écrans › « Dossier 7 — ouvert le 07/03/2026 »\n - Écrans › « Dossier 8 — ouvert le 08/03/2026 »\n - Écrans › « Dossier 9 — ouvert le 09/03/2026 »\n - Écrans › « Dossier 10 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 11 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 12 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 13 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 14 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 15 — ouvert le 06/03/2026 »\n - Écrans › « Dossier 16 — ouvert le 07/03/2026 »\n - Écrans › « Dossier 17 — ouvert le 08/03/2026 »\n - Écrans › « Dossier 18 — ouvert le 09/03/2026 »\n - Écrans › « Dossier 19 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 20 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 21 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 22 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 23 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 24 — ouvert le 06/03/2026 »",
|
|
8
8
|
"golden": {
|
|
9
9
|
"expected_findings": [],
|
|
10
10
|
"forbidden_findings": [
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"skill": "analyze-figma",
|
|
26
26
|
"kind": "conformant",
|
|
27
27
|
"delivery_mode": "classique",
|
|
28
|
-
"artifact": "Fichier : Cabinet Lauzun — textes\nDernière modification : 2026-08-12T15:02:00Z\nLecture complète du fichier.\nPages : 1 — Écrans\nCadres : 5 (dont 5 en auto-layout)\nCalques de texte : 10\nStyles publiés dans la bibliothèque : 22\n\nÉCRANS DE PREMIER NIVEAU (5)\n - Écrans › 01 · Accueil\n - Écrans › 02 · Conservation\n - Écrans › 03 · Extraction\n - Écrans › 04 · Rappel\n - Écrans › 05 · Paramètres\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (1) : 8\nESPACEMENTS EMPLOYÉS (2) : 16, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (1 distinctes)\n - #ffffff — 5 usages\n\nCOMPOSANTS RÉUTILISÉS (2)\n - Bouton — 4 instances\n - Champ — 2 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (10)\n - Écrans › « Vos dossiers sont conservés cinq ans après leur clôture, puis archivés automatiquement. Vous recevez un rappel un mois avant l'archivage, et vous pouvez à tout […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Vos dossiers »\n - Écrans › « Vos dossiers sont conservés cinq ans après leur clôture, puis archivés automatiquement. Vous recevez un rappel un mois avant l'archivage, et vous pouvez à tout […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Conservation des pièces »\n - Écrans › « Demandez l'extraction de toutes les pièces d'un dossier au format PDF. Le fichier vous est envoyé par courriel dans l'heure, et reste téléchargeable pendant sep […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Extraction des pièces »\n - Écrans › « Un mois avant l'archivage, un rappel est envoyé au responsable du dossier ainsi qu'aux membres qui l'ont consulté au cours des six derniers mois. »\n - Écrans › « Rappel avant archivage »\n - Écrans › « Paramètres du cabinet »\n - Écrans › « Enregistrer les modifications »",
|
|
28
|
+
"artifact": "Fichier : Cabinet Lauzun — textes\nDernière modification : 2026-08-12T15:02:00Z\nLecture complète du fichier.\nPages : 1 — Écrans\nCadres : 5 (dont 5 en auto-layout)\nCalques de texte : 10\nStyles publiés dans la bibliothèque : 22\nEmploi des styles : non transmis par cette lecture. N'en conclus rien, ni en bien ni en mal.\nSTYLES LOCAUX : non transmis.\nSTYLES PUBLIÉS INEMPLOYÉS : non transmis.\n\nÉCRANS DE PREMIER NIVEAU (5)\n - Écrans › 01 · Accueil\n - Écrans › 02 · Conservation\n - Écrans › 03 · Extraction\n - Écrans › 04 · Rappel\n - Écrans › 05 · Paramètres\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (1) : 8\nESPACEMENTS EMPLOYÉS (2) : 16, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (1 distinctes)\n - #ffffff — 5 usages\n\nCOMPOSANTS RÉUTILISÉS (2)\n - Bouton — 4 instances\n - Champ — 2 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (10)\n - Écrans › « Vos dossiers sont conservés cinq ans après leur clôture, puis archivés automatiquement. Vous recevez un rappel un mois avant l'archivage, et vous pouvez à tout […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Vos dossiers »\n - Écrans › « Vos dossiers sont conservés cinq ans après leur clôture, puis archivés automatiquement. Vous recevez un rappel un mois avant l'archivage, et vous pouvez à tout […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Conservation des pièces »\n - Écrans › « Demandez l'extraction de toutes les pièces d'un dossier au format PDF. Le fichier vous est envoyé par courriel dans l'heure, et reste téléchargeable pendant sep […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Extraction des pièces »\n - Écrans › « Un mois avant l'archivage, un rappel est envoyé au responsable du dossier ainsi qu'aux membres qui l'ont consulté au cours des six derniers mois. »\n - Écrans › « Rappel avant archivage »\n - Écrans › « Paramètres du cabinet »\n - Écrans › « Enregistrer les modifications »",
|
|
29
29
|
"golden": {
|
|
30
30
|
"expected_findings": [],
|
|
31
31
|
"forbidden_findings": [
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"skill": "analyze-figma",
|
|
46
46
|
"kind": "obvious-defect",
|
|
47
47
|
"delivery_mode": "ai-builder",
|
|
48
|
-
"artifact": "Fichier : TaskFlow app\nDernière modification : 2026-08-05T18:40:12Z\nLecture complète du fichier.\nPages : 1 — Page 1\nCadres : 46 (dont 0 en auto-layout)\nCalques de texte : 92\nStyles publiés dans la bibliothèque : 0\n\nÉCRANS DE PREMIER NIVEAU (46)\n - Page 1 › Frame 1\n - Page 1 › Group 2\n - Page 1 › Rectangle 3\n - Page 1 › Frame 4\n - Page 1 › Group 5\n - Page 1 › Rectangle 6\n - Page 1 › Frame 7\n - Page 1 › Group 8\n - Page 1 › Rectangle 9\n - Page 1 › Frame 10\n - Page 1 › Group 11\n - Page 1 › Rectangle 12\n - Page 1 › Frame 13\n - Page 1 › Group 14\n - Page 1 › Rectangle 15\n - Page 1 › Frame 16\n - Page 1 › Group 17\n - Page 1 › Rectangle 18\n - Page 1 › Frame 19\n - Page 1 › Group 20\n - Page 1 › Rectangle 21\n - Page 1 › Frame 22\n - Page 1 › Group 23\n - Page 1 › Rectangle 24\n - Page 1 › Frame 25\n - Page 1 › Group 26\n - Page 1 › Rectangle 27\n - Page 1 › Frame 28\n - Page 1 › Group 29\n - Page 1 › Rectangle 30\n - Page 1 › Frame 31\n - Page 1 › Group 32\n - Page 1 › Rectangle 33\n - Page 1 › Frame 34\n - Page 1 › Group 35\n - Page 1 › Rectangle 36\n - Page 1 › Frame 37\n - Page 1 › Group 38\n - Page 1 › Rectangle 39\n - Page 1 › Frame 40\n - Page 1 › Group 41\n - Page 1 › Rectangle 42\n - Page 1 › Frame 43\n - Page 1 › Group 44\n - Page 1 › Rectangle 45\n\nPOLICES ET GRAISSES EMPLOYÉES (28)\n - Inter 400\n - Poppins 400\n - Roboto 500\n - Arial 400\n - Poppins 600\n - SF Pro Text 400\n - Arial 700\n - Montserrat 400\n - Open Sans 400\n - Montserrat 500\n - Open Sans 600\n - Roboto 400\n - Inter 700\n - Poppins 500\n - Arial 600\n - SF Pro Text 700\n - Open Sans 500\n - Inter 600\n - Roboto 700\n - Arial 500\n\nTAILLES DE TEXTE EMPLOYÉES (16) : 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 24, 26, 28, 32, 36\nRAYONS D'ANGLE EMPLOYÉS (9) : 3, 4, 5, 6, 7, 8, 10, 12, 16\nESPACEMENTS EMPLOYÉS (14) : 5, 7, 9, 10, 11, 13, 14, 15, 16, 17, 18, 20, 22, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (15 distinctes)\n - #ffffff — 7 usages\n - #2f2f2f — 7 usages\n - #fefefe — 6 usages\n - #313131 — 6 usages\n - #fdfdfd — 6 usages\n - #3a3a3a — 6 usages\n - #fafafa — 6 usages\n - #666666 — 6 usages\n - #f8f8f8 — 6 usages\n - #676767 — 6 usages\n - #333333 — 6 usages\n - #6a6a6a — 6 usages\n - #343434 — 6 usages\n - #999999 — 6 usages\n - #9a9a9a — 6 usages\n\nCOMPOSANTS RÉUTILISÉS (0)\n (aucun)\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (60)\n - Page 1 › Frame 1\n - Page 1 › Rectangle 100\n - Page 1 › Group 2\n - Page 1 › Rectangle 101\n - Page 1 › Rectangle 3\n - Page 1 › Rectangle 102\n - Page 1 › Frame 4\n - Page 1 › Rectangle 103\n - Page 1 › Group 5\n - Page 1 › Rectangle 104\n - Page 1 › Rectangle 6\n - Page 1 › Rectangle 105\n - Page 1 › Frame 7\n - Page 1 › Rectangle 106\n - Page 1 › Group 8\n - Page 1 › Rectangle 107\n - Page 1 › Rectangle 9\n - Page 1 › Rectangle 108\n - Page 1 › Frame 10\n - Page 1 › Rectangle 109\n - Page 1 › Group 11\n - Page 1 › Rectangle 110\n - Page 1 › Rectangle 12\n - Page 1 › Rectangle 111\n - Page 1 › Frame 13\n - Page 1 › Rectangle 112\n - Page 1 › Group 14\n - Page 1 › Rectangle 113\n - Page 1 › Rectangle 15\n - Page 1 › Rectangle 114\n\nFAUX TEXTES REPÉRÉS (20)\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n\nTEXTES DE LA MAQUETTE (92)\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Soumettre »\n - Page 1 › « OK »\n - Page 1 › « Erreur »\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Soumettre »\n - Page 1 › « OK »\n - Page 1 › « Erreur »\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »",
|
|
48
|
+
"artifact": "Fichier : TaskFlow app\nDernière modification : 2026-08-05T18:40:12Z\nLecture complète du fichier.\nPages : 1 — Page 1\nCadres : 46 (dont 0 en auto-layout)\nCalques de texte : 92\nStyles publiés dans la bibliothèque : 0\nEmploi des styles : non transmis par cette lecture. N'en conclus rien, ni en bien ni en mal.\nSTYLES LOCAUX : non transmis.\nSTYLES PUBLIÉS INEMPLOYÉS : non transmis.\n\nÉCRANS DE PREMIER NIVEAU (46)\n - Page 1 › Frame 1\n - Page 1 › Group 2\n - Page 1 › Rectangle 3\n - Page 1 › Frame 4\n - Page 1 › Group 5\n - Page 1 › Rectangle 6\n - Page 1 › Frame 7\n - Page 1 › Group 8\n - Page 1 › Rectangle 9\n - Page 1 › Frame 10\n - Page 1 › Group 11\n - Page 1 › Rectangle 12\n - Page 1 › Frame 13\n - Page 1 › Group 14\n - Page 1 › Rectangle 15\n - Page 1 › Frame 16\n - Page 1 › Group 17\n - Page 1 › Rectangle 18\n - Page 1 › Frame 19\n - Page 1 › Group 20\n - Page 1 › Rectangle 21\n - Page 1 › Frame 22\n - Page 1 › Group 23\n - Page 1 › Rectangle 24\n - Page 1 › Frame 25\n - Page 1 › Group 26\n - Page 1 › Rectangle 27\n - Page 1 › Frame 28\n - Page 1 › Group 29\n - Page 1 › Rectangle 30\n - Page 1 › Frame 31\n - Page 1 › Group 32\n - Page 1 › Rectangle 33\n - Page 1 › Frame 34\n - Page 1 › Group 35\n - Page 1 › Rectangle 36\n - Page 1 › Frame 37\n - Page 1 › Group 38\n - Page 1 › Rectangle 39\n - Page 1 › Frame 40\n - Page 1 › Group 41\n - Page 1 › Rectangle 42\n - Page 1 › Frame 43\n - Page 1 › Group 44\n - Page 1 › Rectangle 45\n\nPOLICES ET GRAISSES EMPLOYÉES (28)\n - Inter 400\n - Poppins 400\n - Roboto 500\n - Arial 400\n - Poppins 600\n - SF Pro Text 400\n - Arial 700\n - Montserrat 400\n - Open Sans 400\n - Montserrat 500\n - Open Sans 600\n - Roboto 400\n - Inter 700\n - Poppins 500\n - Arial 600\n - SF Pro Text 700\n - Open Sans 500\n - Inter 600\n - Roboto 700\n - Arial 500\n\nTAILLES DE TEXTE EMPLOYÉES (16) : 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 24, 26, 28, 32, 36\nRAYONS D'ANGLE EMPLOYÉS (9) : 3, 4, 5, 6, 7, 8, 10, 12, 16\nESPACEMENTS EMPLOYÉS (14) : 5, 7, 9, 10, 11, 13, 14, 15, 16, 17, 18, 20, 22, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (15 distinctes)\n - #ffffff — 7 usages\n - #2f2f2f — 7 usages\n - #fefefe — 6 usages\n - #313131 — 6 usages\n - #fdfdfd — 6 usages\n - #3a3a3a — 6 usages\n - #fafafa — 6 usages\n - #666666 — 6 usages\n - #f8f8f8 — 6 usages\n - #676767 — 6 usages\n - #333333 — 6 usages\n - #6a6a6a — 6 usages\n - #343434 — 6 usages\n - #999999 — 6 usages\n - #9a9a9a — 6 usages\n\nCOMPOSANTS RÉUTILISÉS (0)\n (aucun)\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (60)\n - Page 1 › Frame 1\n - Page 1 › Rectangle 100\n - Page 1 › Group 2\n - Page 1 › Rectangle 101\n - Page 1 › Rectangle 3\n - Page 1 › Rectangle 102\n - Page 1 › Frame 4\n - Page 1 › Rectangle 103\n - Page 1 › Group 5\n - Page 1 › Rectangle 104\n - Page 1 › Rectangle 6\n - Page 1 › Rectangle 105\n - Page 1 › Frame 7\n - Page 1 › Rectangle 106\n - Page 1 › Group 8\n - Page 1 › Rectangle 107\n - Page 1 › Rectangle 9\n - Page 1 › Rectangle 108\n - Page 1 › Frame 10\n - Page 1 › Rectangle 109\n - Page 1 › Group 11\n - Page 1 › Rectangle 110\n - Page 1 › Rectangle 12\n - Page 1 › Rectangle 111\n - Page 1 › Frame 13\n - Page 1 › Rectangle 112\n - Page 1 › Group 14\n - Page 1 › Rectangle 113\n - Page 1 › Rectangle 15\n - Page 1 › Rectangle 114\n\nFAUX TEXTES REPÉRÉS (20)\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n\nTEXTES DE LA MAQUETTE (92)\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Soumettre »\n - Page 1 › « OK »\n - Page 1 › « Erreur »\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Soumettre »\n - Page 1 › « OK »\n - Page 1 › « Erreur »\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »",
|
|
49
49
|
"golden": {
|
|
50
50
|
"expected_findings": [
|
|
51
51
|
"les quarante-six cadres portent tous un nom par défaut, Frame, Group ou Rectangle",
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
"skill": "analyze-figma",
|
|
76
76
|
"kind": "subtle-defect",
|
|
77
77
|
"delivery_mode": "classique",
|
|
78
|
-
"artifact": "Fichier : Relevés — maquette produit\nDernière modification : 2026-08-14T11:11:00Z\nLecture complète du fichier.\nPages : 2 — Écrans, Composants\nCadres : 9 (dont 7 en auto-layout)\nCalques de texte : 18\nStyles publiés dans la bibliothèque :
|
|
78
|
+
"artifact": "Fichier : Relevés — maquette produit\nDernière modification : 2026-08-14T11:11:00Z\nLecture complète du fichier.\nPages : 2 — Écrans, Composants\nCadres : 9 (dont 7 en auto-layout)\nCalques de texte : 18\nStyles publiés dans la bibliothèque : 4\nStyles réellement appliqués sur les nœuds : 5 — ce qui n'en emploie pas pose ses valeurs à la main.\nSTYLES LOCAUX, définis ici et non publiés (2)\n - Couleur/Gris-froid\n - Couleur/Gris-chaud\nSTYLES PUBLIÉS QUE RIEN N'EMPLOIE (1)\n - Couleur/Alerte-ancienne\n\nÉCRANS DE PREMIER NIVEAU (9)\n - Écrans › 01 · Liste des relevés\n - Écrans › 02 · Ajouter un relevé\n - Écrans › 03 · Détail du relevé\n - Écrans › 04 · Compteurs\n - Écrans › 05 · Réglages\n - Écrans › 06 · Aide\n - Composants › Bouton\n - Composants › Frame 12\n - Composants › Group 3\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (3) : 6, 7, 8\nESPACEMENTS EMPLOYÉS (4) : 14, 15, 16, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (5 distinctes)\n - #ffffff — 5 usages\n - #1f2933 — 1 usages\n - #1f2937 — 1 usages\n - #212934 — 1 usages\n - #fefefe — 1 usages\n\nCOMPOSANTS RÉUTILISÉS (4)\n - Bouton — 4 instances\n - Champ — 3 instances\n - Carte — 2 instances\n - Button — 2 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (2)\n - Composants › Frame 12\n - Composants › Group 3\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (18)\n - Écrans › « Mes relevés »\n - Écrans › « Dernier relevé le 12/03/2026 »\n - Écrans › « Enregistrer »\n - Écrans › « Ajouter un relevé »\n - Écrans › « Sauvegarder »\n - Écrans › « Relevé du 2026-03-12 »\n - Écrans › « Relevé du 12/03/2026 »\n - Écrans › « Enregistrer »\n - Écrans › « Index affiché sur le compteur »\n - Écrans › « Mes compteurs »\n - Écrans › « Sauvegarder les modifications »\n - Écrans › « Réglages »\n - Écrans › « Enregistrer »\n - Écrans › « Questions fréquentes »\n - Écrans › « Nous écrire »\n - Composants › « Bouton »\n - Composants › « Essai »\n - Composants › « Essai 2 »",
|
|
79
79
|
"golden": {
|
|
80
80
|
"expected_findings": [
|
|
81
81
|
"rayons d'angle 6, 7 et 8 pour un même usage",
|
|
@@ -83,7 +83,9 @@
|
|
|
83
83
|
"trois gris foncés presque identiques, 1f2933, 1f2937 et 212934",
|
|
84
84
|
"deux noms pour le même composant, Bouton et Button",
|
|
85
85
|
"la même action nommée Enregistrer et Sauvegarder",
|
|
86
|
-
"deux formats de date dans les textes de la maquette"
|
|
86
|
+
"deux formats de date dans les textes de la maquette",
|
|
87
|
+
"deux styles locaux ne sortiront jamais de ce fichier",
|
|
88
|
+
"un style publié que rien n'emploie encombre la bibliothèque"
|
|
87
89
|
],
|
|
88
90
|
"forbidden_findings": [
|
|
89
91
|
"la maquette ne montre aucun état vide",
|
|
@@ -93,7 +95,7 @@
|
|
|
93
95
|
],
|
|
94
96
|
"expected_verdict": "PASS WITH FIXES",
|
|
95
97
|
"should_refuse": false,
|
|
96
|
-
"note": "Le fichier est tenu — 24 styles publiés, sept cadres sur neuf en auto-layout, une seule police — et c'est ce qui rend les écarts fins. Aucun n'est grave isolément ; ensemble ils trahissent un système qui commence à se déliter, et chacun se paiera à l'intégration. Sévérité majeure, donc PASS WITH FIXES. Les deux calques « Frame 12 » et « Group 3 » sont recevables en plus, sans être exigés."
|
|
98
|
+
"note": "Le fichier est tenu — 24 styles publiés, sept cadres sur neuf en auto-layout, une seule police — et c'est ce qui rend les écarts fins. Aucun n'est grave isolément ; ensemble ils trahissent un système qui commence à se déliter, et chacun se paiera à l'intégration. Sévérité majeure, donc PASS WITH FIXES. Les deux calques « Frame 12 » et « Group 3 » sont recevables en plus, sans être exigés. Depuis l'extension de la lecture, le matériau transporte aussi le partage des styles : deux locaux, qui ne sortiront jamais de ce fichier, et un publié que rien n'emploie."
|
|
97
99
|
}
|
|
98
100
|
},
|
|
99
101
|
{
|
|
@@ -101,7 +103,7 @@
|
|
|
101
103
|
"skill": "analyze-figma",
|
|
102
104
|
"kind": "out-of-scope",
|
|
103
105
|
"delivery_mode": "classique",
|
|
104
|
-
"artifact": "Fichier : Atelier Vermeil — facturation\nDernière modification : 2026-08-16T08:30:00Z\nLecture complète du fichier.\nPages : 3 — Écrans, Fondations, Notes pour le développement\nCadres : 9 (dont 9 en auto-layout)\nCalques de texte : 16\nStyles publiés dans la bibliothèque : 31\n\nÉCRANS DE PREMIER NIVEAU (9)\n - Écrans › 01 · Accueil\n - Écrans › 02 · Détail facture\n - Écrans › 03 · Règlement\n - Écrans › 04 · Liste vide\n - Écrans › 05 · Erreur de paiement\n - Écrans › 06 · Chargement\n - Fondations › Palette\n - Fondations › Typo\n - Notes pour le développement › Intégration\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (1) : 8\nESPACEMENTS EMPLOYÉS (2) : 16, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (3 distinctes)\n - #ffffff — 7 usages\n - #f7f8fa — 1 usages\n - #fff5f5 — 1 usages\n\nCOMPOSANTS RÉUTILISÉS (2)\n - Bouton — 5 instances\n - Carte — 2 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (16)\n - Écrans › « Mes factures »\n - Écrans › « Quatre factures sur les douze derniers mois »\n - Écrans › « Facture F-2026-0312 »\n - Écrans › « 149,00 € »\n - Écrans › « Régler une échéance »\n - Écrans › « Montant à régler »\n - Écrans › « Aucune facture pour l'instant »\n - Écrans › « Vos factures apparaîtront ici dès la première échéance. »\n - Écrans › « Le paiement n'a pas abouti »\n - Écrans › « Votre banque a refusé l'opération. Vérifiez le plafond de votre carte, puis réessayez. »\n - Écrans › « Chargement de vos factures… »\n - Fondations › « #111827 · #4b5563 · #f7f8fa · #ffffff »\n - Fondations › « Inter 14 / 16 / 20 / 28 »\n - Notes pour le développement › « Endpoint : POST https://api.atelier-vermeil.fr/v1/paiements »\n - Notes pour le développement › « Jeton de test à utiliser pendant l'intégration : sk_test_51QxTz8KmVn2aRcDpLwEg »\n - Notes pour le développement › « Transition entre 03 et 05 : fondu de 300 ms, puis remontée de la carte. »",
|
|
106
|
+
"artifact": "Fichier : Atelier Vermeil — facturation\nDernière modification : 2026-08-16T08:30:00Z\nLecture complète du fichier.\nPages : 3 — Écrans, Fondations, Notes pour le développement\nCadres : 9 (dont 9 en auto-layout)\nCalques de texte : 16\nStyles publiés dans la bibliothèque : 31\nEmploi des styles : non transmis par cette lecture. N'en conclus rien, ni en bien ni en mal.\nSTYLES LOCAUX : non transmis.\nSTYLES PUBLIÉS INEMPLOYÉS : non transmis.\n\nÉCRANS DE PREMIER NIVEAU (9)\n - Écrans › 01 · Accueil\n - Écrans › 02 · Détail facture\n - Écrans › 03 · Règlement\n - Écrans › 04 · Liste vide\n - Écrans › 05 · Erreur de paiement\n - Écrans › 06 · Chargement\n - Fondations › Palette\n - Fondations › Typo\n - Notes pour le développement › Intégration\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (1) : 8\nESPACEMENTS EMPLOYÉS (2) : 16, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (3 distinctes)\n - #ffffff — 7 usages\n - #f7f8fa — 1 usages\n - #fff5f5 — 1 usages\n\nCOMPOSANTS RÉUTILISÉS (2)\n - Bouton — 5 instances\n - Carte — 2 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (16)\n - Écrans › « Mes factures »\n - Écrans › « Quatre factures sur les douze derniers mois »\n - Écrans › « Facture F-2026-0312 »\n - Écrans › « 149,00 € »\n - Écrans › « Régler une échéance »\n - Écrans › « Montant à régler »\n - Écrans › « Aucune facture pour l'instant »\n - Écrans › « Vos factures apparaîtront ici dès la première échéance. »\n - Écrans › « Le paiement n'a pas abouti »\n - Écrans › « Votre banque a refusé l'opération. Vérifiez le plafond de votre carte, puis réessayez. »\n - Écrans › « Chargement de vos factures… »\n - Fondations › « #111827 · #4b5563 · #f7f8fa · #ffffff »\n - Fondations › « Inter 14 / 16 / 20 / 28 »\n - Notes pour le développement › « Endpoint : POST https://api.atelier-vermeil.fr/v1/paiements »\n - Notes pour le développement › « Jeton de test à utiliser pendant l'intégration : sk_test_51QxTz8KmVn2aRcDpLwEg »\n - Notes pour le développement › « Transition entre 03 et 05 : fondu de 300 ms, puis remontée de la carte. »",
|
|
105
107
|
"golden": {
|
|
106
108
|
"expected_findings": [],
|
|
107
109
|
"forbidden_findings": [
|
|
@@ -122,7 +124,7 @@
|
|
|
122
124
|
"skill": "analyze-figma",
|
|
123
125
|
"kind": "insufficient",
|
|
124
126
|
"delivery_mode": "classique",
|
|
125
|
-
"artifact": "Fichier : Sans titre\nDernière modification : 2026-08-17T20:00:00Z\nLecture complète du fichier.\nPages : 1 — Page 1\nCadres : 2 (dont 0 en auto-layout)\nCalques de texte : 3\nStyles publiés dans la bibliothèque : 0\n\nÉCRANS DE PREMIER NIVEAU (2)\n - Page 1 › Frame 1\n - Page 1 › Frame 2\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (0) : (aucun)\nESPACEMENTS EMPLOYÉS (0) : (aucun)\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (1 distinctes)\n - #ffffff — 2 usages\n\nCOMPOSANTS RÉUTILISÉS (0)\n (aucun)\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (2)\n - Page 1 › Frame 1\n - Page 1 › Frame 2\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (3)\n - Page 1 › « Accueil »\n - Page 1 › « Bouton »\n - Page 1 › « Titre »",
|
|
127
|
+
"artifact": "Fichier : Sans titre\nDernière modification : 2026-08-17T20:00:00Z\nLecture complète du fichier.\nPages : 1 — Page 1\nCadres : 2 (dont 0 en auto-layout)\nCalques de texte : 3\nStyles publiés dans la bibliothèque : 0\nEmploi des styles : non transmis par cette lecture. N'en conclus rien, ni en bien ni en mal.\nSTYLES LOCAUX : non transmis.\nSTYLES PUBLIÉS INEMPLOYÉS : non transmis.\n\nÉCRANS DE PREMIER NIVEAU (2)\n - Page 1 › Frame 1\n - Page 1 › Frame 2\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (0) : (aucun)\nESPACEMENTS EMPLOYÉS (0) : (aucun)\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (1 distinctes)\n - #ffffff — 2 usages\n\nCOMPOSANTS RÉUTILISÉS (0)\n (aucun)\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (2)\n - Page 1 › Frame 1\n - Page 1 › Frame 2\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (3)\n - Page 1 › « Accueil »\n - Page 1 › « Bouton »\n - Page 1 › « Titre »",
|
|
126
128
|
"golden": {
|
|
127
129
|
"expected_findings": [],
|
|
128
130
|
"forbidden_findings": [
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"skill": "analyze-url",
|
|
5
5
|
"kind": "conformant",
|
|
6
6
|
"delivery_mode": "classique",
|
|
7
|
-
"artifact": "URL analysée : https://releves-compteurs.fr/releves/\nLangue déclarée : fr\nTitre : Relevés — suivre les relevés de vos compteurs\nMeta description : Enregistrez vos relevés de compteur, suivez la consommation mois par mois.\nMeta viewport : width=device-width, initial-scale=1\n\nTITRES (4)\n - h1 : Mes relevés\n - h2 : Ajouter un relevé\n - h2 : Relevés enregistrés\n - h2 : Questions fréquentes\n\nLIENS DE NAVIGATION ET D'ACTION (6)\n - Relevés → /\n - Mes relevés → /releves/\n - Mes compteurs → /compteurs/\n - Aide → /aide/\n - Aide → /aide/\n - Confidentialité → /confidentialite/\n\nBOUTONS (1)\n - Ajouter le relevé\n\nFORMULAIRES (1)\n - formulaire → /releves/ (POST)\n\nCHAMPS DE SAISIE (4)\n - champ date (date) requis · label visible « Date du relevé » · aide liée (aide-date)\n - champ index (number) requis · label visible « Index affiché sur le compteur » · aide liée (aide-index)\n - champ note (textarea) · label visible « Note (facultatif) »\n - champ compteur (select ) requis · label visible « Compteur »\n\nIMAGES ET TEXTES DE REMPLACEMENT (1)\n - courbe-consommation.png : alt « Courbe de consommation : hausse régulière de janvier à mars 2026. »\n\nZONES D'ANNONCE DYNAMIQUE (1)\n - aria-live=polite role=status\n\nBLOCS REPLIABLES NATIFS <details> (2) — l'état ouvert/fermé est porté par le navigateur\n - Que se passe-t-il si je saisis un index plus bas que le précédent ? [replié]\n - Puis-je supprimer un relevé ? [replié]\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (1)\n - Le formulaire de relevé fonctionne sans JavaScript : remplissez les champs et validez.\n\nTEXTE VISIBLE (139 mots, extrait)\nLe formulaire de relevé fonctionne sans JavaScript : remplissez les champs et validez. Relevés Mes relevés Mes compteurs Aide Mes relevés Trois relevés enregistrés. Dernier relevé le 12/03/2026. Ajouter un relevé Compteur Électricité — cuisine Eau — salle de bain Date du relevé Format jour/mois/année, par exemple 12/03/2026. Index affiché sur le compteur Nombre entier, sans unité. Exemple : 45210. Note (facultatif) Ajouter le relevé Relevés enregistrés Date Compteur Index 12/03/2026 Électricité — cuisine 45 210 08/02/2026 Électricité — cuisine 44 980 05/01/2026 Eau — salle de bain 1 204 Questions fréquentes Que se passe-t-il si je saisis un index plus bas que le précédent ? Le relevé est enregistré et signalé comme à vérifier. Vous pouvez le corriger ensuite. Puis-je supprimer un relevé ? Oui, depuis la ligne du relevé, jusqu'à trente jours après son ajout. Aide Confidentialité",
|
|
7
|
+
"artifact": "URL analysée : https://releves-compteurs.fr/releves/\nLecture complète de ce que le serveur a envoyé. Les listes ci-dessous sont exhaustives — étant entendu qu'elles ne couvrent que le HTML servi, avant exécution du JavaScript.\nLangue déclarée : fr\nTitre : Relevés — suivre les relevés de vos compteurs\nMeta description : Enregistrez vos relevés de compteur, suivez la consommation mois par mois.\nMeta viewport : width=device-width, initial-scale=1\n\nTITRES (4)\n - h1 : Mes relevés\n - h2 : Ajouter un relevé\n - h2 : Relevés enregistrés\n - h2 : Questions fréquentes\n\nLIENS DE NAVIGATION ET D'ACTION (6)\n - Relevés → /\n - Mes relevés → /releves/\n - Mes compteurs → /compteurs/\n - Aide → /aide/\n - Aide → /aide/\n - Confidentialité → /confidentialite/\n\nBOUTONS (1)\n - Ajouter le relevé\n\nFORMULAIRES (1)\n - formulaire → /releves/ (POST)\n\nCHAMPS DE SAISIE (4)\n - champ date (date) requis · label visible « Date du relevé » · aide liée (aide-date)\n - champ index (number) requis · label visible « Index affiché sur le compteur » · aide liée (aide-index)\n - champ note (textarea) · label visible « Note (facultatif) »\n - champ compteur (select ) requis · label visible « Compteur »\n\nIMAGES ET TEXTES DE REMPLACEMENT (1)\n - courbe-consommation.png : alt « Courbe de consommation : hausse régulière de janvier à mars 2026. »\n\nZONES D'ANNONCE DYNAMIQUE (1)\n - aria-live=polite role=status\n\nBLOCS REPLIABLES NATIFS <details> (2) — l'état ouvert/fermé est porté par le navigateur\n - Que se passe-t-il si je saisis un index plus bas que le précédent ? [replié]\n - Puis-je supprimer un relevé ? [replié]\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (1)\n - Le formulaire de relevé fonctionne sans JavaScript : remplissez les champs et validez.\n\nTEXTE VISIBLE (139 mots, extrait)\nLe formulaire de relevé fonctionne sans JavaScript : remplissez les champs et validez. Relevés Mes relevés Mes compteurs Aide Mes relevés Trois relevés enregistrés. Dernier relevé le 12/03/2026. Ajouter un relevé Compteur Électricité — cuisine Eau — salle de bain Date du relevé Format jour/mois/année, par exemple 12/03/2026. Index affiché sur le compteur Nombre entier, sans unité. Exemple : 45210. Note (facultatif) Ajouter le relevé Relevés enregistrés Date Compteur Index 12/03/2026 Électricité — cuisine 45 210 08/02/2026 Électricité — cuisine 44 980 05/01/2026 Eau — salle de bain 1 204 Questions fréquentes Que se passe-t-il si je saisis un index plus bas que le précédent ? Le relevé est enregistré et signalé comme à vérifier. Vous pouvez le corriger ensuite. Puis-je supprimer un relevé ? Oui, depuis la ligne du relevé, jusqu'à trente jours après son ajout. Aide Confidentialité",
|
|
8
8
|
"golden": {
|
|
9
9
|
"expected_findings": [],
|
|
10
10
|
"forbidden_findings": [
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"skill": "analyze-url",
|
|
24
24
|
"kind": "conformant",
|
|
25
25
|
"delivery_mode": "classique",
|
|
26
|
-
"artifact": "URL analysée : https://mediatheque-vaugrenier.fr/horaires/\nLangue déclarée : fr\nTitre : Horaires et accès — Médiathèque de Vaugrenier\nMeta description : Horaires d'ouverture, adresse et conditions d'accès de la médiathèque de Vaugrenier.\nMeta viewport : width=device-width, initial-scale=1\n\nTITRES (4)\n - h1 : Horaires et accès\n - h2 : Horaires d'ouverture\n - h2 : Adresse et transports\n - h2 : Emprunter des documents\n\nLIENS DE NAVIGATION ET D'ACTION (6)\n - Médiathèque de Vaugrenier → /\n - Horaires et accès → /horaires/\n - Catalogue → /catalogue/\n - Inscription → /inscription/\n - Mentions légales → /mentions-legales/\n - Accessibilité → /accessibilite/\n\nBOUTONS (0)\n (aucun)\n\nFORMULAIRES (0)\n (aucun)\n\nCHAMPS DE SAISIE (0)\n (aucun)\n\nIMAGES ET TEXTES DE REMPLACEMENT (1)\n - plan-acces-mediatheque.png : alt « Plan d'accès : la médiathèque se situe entre la mairie et le parc, côt »\n\nZONES D'ANNONCE DYNAMIQUE (0)\n (aucun)\n\nBLOCS REPLIABLES NATIFS <details> (0) — l'état ouvert/fermé est porté par le navigateur\n (aucun)\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (0)\n (aucun)\n\nTEXTE VISIBLE (209 mots, extrait)\nMédiathèque de Vaugrenier Horaires et accès Catalogue Inscription Horaires et accès La médiathèque accueille le public six jours sur sept. L'entrée est libre et gratuite, l'inscription n'est demandée que pour emprunter des documents. Horaires d'ouverture Jour Matin Après-midi Mardi 10 h – 12 h 14 h – 18 h Mercredi 10 h – 12 h 14 h – 19 h Jeudi Fermé 14 h – 18 h Vendredi 10 h – 12 h 14 h – 18 h Samedi 10 h – 13 h 14 h – 17 h La médiathèque est fermée les jours fériés ainsi que du 01/08/2026 au 16/08/2026. Adresse et transports 12 rue des Tilleuls, 06270 Vaugrenier. Bus 21 et 44, arrêt « Tilleuls ». Un parking gratuit de trente places se trouve derrière le bâtiment. L'entrée principale est de plain-pied et les trois niveaux sont desservis par un ascenseur. Emprunter des documents L'inscription est annuelle et gratuite pour les habitants de la commune. Elle se fait sur place, avec une pièce d'identité et un justificatif de domicile de moins de trois mois. Chaque carte permet d'emprunter dix documents pour trois semaines, renouvelables une fois. Pour toute question, écrivez à contact@mediatheque-vaugrenier.fr ou appelez le 04 93 00 00 00 aux heures d'ouverture. Mentions légales Accessibilité",
|
|
26
|
+
"artifact": "URL analysée : https://mediatheque-vaugrenier.fr/horaires/\nLecture complète de ce que le serveur a envoyé. Les listes ci-dessous sont exhaustives — étant entendu qu'elles ne couvrent que le HTML servi, avant exécution du JavaScript.\nLangue déclarée : fr\nTitre : Horaires et accès — Médiathèque de Vaugrenier\nMeta description : Horaires d'ouverture, adresse et conditions d'accès de la médiathèque de Vaugrenier.\nMeta viewport : width=device-width, initial-scale=1\n\nTITRES (4)\n - h1 : Horaires et accès\n - h2 : Horaires d'ouverture\n - h2 : Adresse et transports\n - h2 : Emprunter des documents\n\nLIENS DE NAVIGATION ET D'ACTION (6)\n - Médiathèque de Vaugrenier → /\n - Horaires et accès → /horaires/\n - Catalogue → /catalogue/\n - Inscription → /inscription/\n - Mentions légales → /mentions-legales/\n - Accessibilité → /accessibilite/\n\nBOUTONS (0)\n (aucun)\n\nFORMULAIRES (0)\n (aucun)\n\nCHAMPS DE SAISIE (0)\n (aucun)\n\nIMAGES ET TEXTES DE REMPLACEMENT (1)\n - plan-acces-mediatheque.png : alt « Plan d'accès : la médiathèque se situe entre la mairie et le parc, côt »\n\nZONES D'ANNONCE DYNAMIQUE (0)\n (aucun)\n\nBLOCS REPLIABLES NATIFS <details> (0) — l'état ouvert/fermé est porté par le navigateur\n (aucun)\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (0)\n (aucun)\n\nTEXTE VISIBLE (209 mots, extrait)\nMédiathèque de Vaugrenier Horaires et accès Catalogue Inscription Horaires et accès La médiathèque accueille le public six jours sur sept. L'entrée est libre et gratuite, l'inscription n'est demandée que pour emprunter des documents. Horaires d'ouverture Jour Matin Après-midi Mardi 10 h – 12 h 14 h – 18 h Mercredi 10 h – 12 h 14 h – 19 h Jeudi Fermé 14 h – 18 h Vendredi 10 h – 12 h 14 h – 18 h Samedi 10 h – 13 h 14 h – 17 h La médiathèque est fermée les jours fériés ainsi que du 01/08/2026 au 16/08/2026. Adresse et transports 12 rue des Tilleuls, 06270 Vaugrenier. Bus 21 et 44, arrêt « Tilleuls ». Un parking gratuit de trente places se trouve derrière le bâtiment. L'entrée principale est de plain-pied et les trois niveaux sont desservis par un ascenseur. Emprunter des documents L'inscription est annuelle et gratuite pour les habitants de la commune. Elle se fait sur place, avec une pièce d'identité et un justificatif de domicile de moins de trois mois. Chaque carte permet d'emprunter dix documents pour trois semaines, renouvelables une fois. Pour toute question, écrivez à contact@mediatheque-vaugrenier.fr ou appelez le 04 93 00 00 00 aux heures d'ouverture. Mentions légales Accessibilité",
|
|
27
27
|
"golden": {
|
|
28
28
|
"expected_findings": [],
|
|
29
29
|
"forbidden_findings": [
|
|
@@ -38,12 +38,31 @@
|
|
|
38
38
|
"note": "LE PIÈGE DU RAISONNEMENT PAR ABSENCE, à l'état pur. Cette page est servie entière par le serveur : elle n'exécute aucun script, ne charge rien, n'affiche aucune erreur. Elle n'a donc besoin ni de contenu de secours, ni de zone d'annonce, ni de message d'attente — et la grille « soigne » invite pourtant à reprocher leur absence. Reprocher ici ce qui n'a pas lieu d'être est la faute que ce cas mesure."
|
|
39
39
|
}
|
|
40
40
|
},
|
|
41
|
+
{
|
|
42
|
+
"id": "url-conformant-lecture-partielle",
|
|
43
|
+
"skill": "analyze-url",
|
|
44
|
+
"kind": "conformant",
|
|
45
|
+
"delivery_mode": "classique",
|
|
46
|
+
"artifact": "URL analysée : https://eaux-du-gard.fr/communes/\nATTENTION : lecture partielle — certaines listes ont été plafonnées ou le texte visible coupé. Ce qui suit est un ÉCHANTILLON de ce que le serveur a envoyé. Ne conclus donc jamais qu'un élément « manque » ou « n'existe pas ».\nLangue déclarée : fr\nTitre : Communes desservies — Syndicat des eaux du Gard\nMeta description : Liste des communes desservies par le syndicat, et coordonnées de chaque antenne.\nMeta viewport : width=device-width, initial-scale=1\n\nTITRES (3)\n - h1 : Communes desservies\n - h2 : Toutes les communes\n - h2 : En cas de fuite\n\nLIENS DE NAVIGATION ET D'ACTION (67)\n - Syndicat des eaux du Gard → /\n - Communes desservies → /communes/\n - Tarifs → /tarifs/\n - Nous contacter → /contact/\n - Aigues-Mortes → /communes/aigues-mortes/\n - Alès → /communes/alès/\n - Anduze → /communes/anduze/\n - Bagnols-sur-Cèze → /communes/bagnols-sur-cèze/\n - Beaucaire → /communes/beaucaire/\n - Bessèges → /communes/bessèges/\n - Calvisson → /communes/calvisson/\n - Clarensac → /communes/clarensac/\n - Fourques → /communes/fourques/\n - Gallargues → /communes/gallargues/\n - Générac → /communes/générac/\n - Langlade → /communes/langlade/\n - Le Grau-du-Roi → /communes/le-grau-du-roi/\n - Lédenon → /communes/lédenon/\n - Manduel → /communes/manduel/\n - Marguerittes → /communes/marguerittes/\n - Milhaud → /communes/milhaud/\n - Nîmes → /communes/nîmes/\n - Poulx → /communes/poulx/\n - Quissac → /communes/quissac/\n - Redessan → /communes/redessan/\n - Remoulins → /communes/remoulins/\n - Rochefort-du-Gard → /communes/rochefort-du-gard/\n - Saint-Gilles → /communes/saint-gilles/\n - Sommières → /communes/sommières/\n - Sumène → /communes/sumène/\n - Uchaud → /communes/uchaud/\n - Uzès → /communes/uzès/\n - Vauvert → /communes/vauvert/\n - Vergèze → /communes/vergèze/\n - Villeneuve → /communes/villeneuve/\n - Aramon → /communes/aramon/\n - Bellegarde → /communes/bellegarde/\n - Bouillargues → /communes/bouillargues/\n - Caissargues → /communes/caissargues/\n - Caveirac → /communes/caveirac/\n - Codognan → /communes/codognan/\n - Congénies → /communes/congénies/\n - Dions → /communes/dions/\n - Domessargues → /communes/domessargues/\n - Estézargues → /communes/estézargues/\n - Fons → /communes/fons/\n - Garons → /communes/garons/\n - Jonquières → /communes/jonquières/\n - Lirac → /communes/lirac/\n - Meynes → /communes/meynes/\n - Montfrin → /communes/montfrin/\n - Nages → /communes/nages/\n - Orsan → /communes/orsan/\n - Parignargues → /communes/parignargues/\n - Pujaut → /communes/pujaut/\n … et 12 autres\n\nBOUTONS (0)\n (aucun)\n\nFORMULAIRES (0)\n (aucun)\n\nCHAMPS DE SAISIE (0)\n (aucun)\n\nIMAGES ET TEXTES DE REMPLACEMENT (0)\n (aucun)\n\nZONES D'ANNONCE DYNAMIQUE (0)\n (aucun)\n\nBLOCS REPLIABLES NATIFS <details> (0) — l'état ouvert/fermé est porté par le navigateur\n (aucun)\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (0)\n (aucun)\n\nTEXTE VISIBLE (149 mots, extrait)\nSyndicat des eaux du Gard Communes desservies Tarifs Nous contacter Communes desservies Le syndicat dessert 61 communes. Chaque fiche indique l'antenne de rattachement, ses horaires et le numéro d'astreinte. Les relevés sont effectués deux fois par an, au printemps et à l'automne. Toutes les communes Aigues-Mortes Alès Anduze Bagnols-sur-Cèze Beaucaire Bessèges Calvisson Clarensac Fourques Gallargues Générac Langlade Le Grau-du-Roi Lédenon Manduel Marguerittes Milhaud Nîmes Poulx Quissac Redessan Remoulins Rochefort-du-Gard Saint-Gilles Sommières Sumène Uchaud Uzès Vauvert Vergèze Villeneuve Aramon Bellegarde Bouillargues Caissargues Caveirac Codognan Congénies Dions Domessargues Estézargues Fons Garons Jonquières Lirac Meynes Montfrin Nages Orsan Parignargues Pujaut Rodilhan Sernhac Théziers Tresques Vestric Aigaliers Argilliers Blauzac Cabrières Collias En cas de fuite Appelez l'astreinte au 04 66 00 00 00, disponible jour et nuit. Fermez le robinet d'arrêt général situé avant votre compteur, puis attendez l'intervention. Les dégâts constatés avant fermeture restent à la charge du syndicat. Mentions légales Accessibilité",
|
|
47
|
+
"golden": {
|
|
48
|
+
"expected_findings": [],
|
|
49
|
+
"forbidden_findings": [
|
|
50
|
+
"reprocher que seules quelques communes soient accessibles",
|
|
51
|
+
"reprocher l'absence d'un champ de recherche",
|
|
52
|
+
"signaler une liste incomplète des communes desservies",
|
|
53
|
+
"reprocher l'absence de regroupement par secteur"
|
|
54
|
+
],
|
|
55
|
+
"expected_verdict": "PASS",
|
|
56
|
+
"should_refuse": false,
|
|
57
|
+
"note": "LA RÈGLE D'ABSENCE, CÔTÉ LECTURE PARTIELLE. Le matériau annonce en tête que des listes ont été plafonnées : cinquante-cinq liens sur soixante-et-un sont montrés, et la marque « … et 6 autres » le dit. Rien de ce qui n'y figure pas ne peut être reproché — ni une commune, ni un regroupement, ni un outil de recherche qui se trouve peut-être hors de l'échantillon. La page est par ailleurs saine : titres hiérarchisés, langue et viewport déclarés, libellés explicites, aucune donnée à format divergent. C'est le pendant URL du cas Figma à lecture partielle — une seule règle, deux matériaux, et le drapeau du matériau qui fait foi dans les deux cas."
|
|
58
|
+
}
|
|
59
|
+
},
|
|
41
60
|
{
|
|
42
61
|
"id": "url-obvious-taskflow",
|
|
43
62
|
"skill": "analyze-url",
|
|
44
63
|
"kind": "obvious-defect",
|
|
45
64
|
"delivery_mode": "ai-builder",
|
|
46
|
-
"artifact": "URL analysée : https://taskflow-demo.app/projects\nLangue déclarée : (non déclarée)\nTitre : React App\nMeta description : (aucune)\nMeta viewport : (aucune)\n\nTITRES (3)\n - h1 : Mes projets\n - h3 : Créer un projet\n - h3 : Vos espaces\n\nLIENS DE NAVIGATION ET D'ACTION (6)\n - TaskFlow → /\n - Mes projets → /projects\n - Mes espaces → /workspaces\n - Nouveau workspace → /w/new\n - (lien sans texte) → /help\n - Cliquez ici → /upgrade\n\nBOUTONS (6)\n - Soumettre\n - Ajouter\n - Créer\n - Nouveau\n - OK\n - Enregistrer [désactivé]\n\nFORMULAIRES (1)\n - formulaire → /api/create (POST)\n\nCHAMPS DE SAISIE (4)\n - champ title (text) requis · SANS LABEL · placeholder « Nom du projet »\n - champ email (text) · SANS LABEL · placeholder « Email du responsable »\n - champ deadline (text) · SANS LABEL · placeholder « Deadline »\n - champ team (select ) · SANS LABEL\n\nIMAGES ET TEXTES DE REMPLACEMENT (2)\n - illustration-tableau-de-bord.png : PAS D'ATTRIBUT ALT\n - avatar-responsable.png : PAS D'ATTRIBUT ALT\n\nZONES D'ANNONCE DYNAMIQUE (0)\n (aucun)\n\nBLOCS REPLIABLES NATIFS <details> (0) — l'état ouvert/fermé est porté par le navigateur\n (aucun)\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (0)\n (aucun)\n\nTEXTE VISIBLE (244 mots, extrait)\nTaskFlow Mes projets Mes espaces Nouveau workspace Mes projets Bienvenue sur TaskFlow. Vous retrouvez ici tous les projets de votre organisation, ainsi que les espaces partagés avec les autres équipes. Chaque projet regroupe des tâches, des documents et un fil de discussion. Vous pouvez créer un nouveau projet à tout moment depuis le formulaire ci-dessous, l'assigner à une équipe, puis inviter les personnes concernées. Les projets archivés restent consultables pendant douze mois avant d'être définitivement supprimés de votre workspace. Créer un projet Équipe A Équipe B Soumettre Erreur Vos espaces Un espace rassemble plusieurs projets et leurs membres. Vous appartenez à trois espaces. Le workspace « Produit » contient les projets de conception et de développement. L'espace « Marketing » regroupe les campagnes en cours et les demandes entrantes. Le troisième espace est personnel : vous seul y avez accès, et il ne compte pas dans le quota de votre organisation. Créé le 12/03/2026 · Modifié le 2026-02-08 · Ouvert le 5 janvier 2026 Projet Tâches Action Refonte site 3 tâches en cours, 12 terminées Ajouter Application mobile 7 tâches en cours, 4 terminées Créer Migration données 2 tâches en cours, 0 terminée Nouveau Pour ajouter une tâche à un projet, ouvrez le projet puis utilisez le bouton correspondant dans la colonne de droite. Les tâches peuvent être assignées, commentées et déplacées entre les colonnes du tableau. Une tâche terminée reste visible sept jours avant de rejoindre l'historique du projet. Cliquez ici OK Enregistrer",
|
|
65
|
+
"artifact": "URL analysée : https://taskflow-demo.app/projects\nLecture complète de ce que le serveur a envoyé. Les listes ci-dessous sont exhaustives — étant entendu qu'elles ne couvrent que le HTML servi, avant exécution du JavaScript.\nLangue déclarée : (non déclarée)\nTitre : React App\nMeta description : (aucune)\nMeta viewport : (aucune)\n\nTITRES (3)\n - h1 : Mes projets\n - h3 : Créer un projet\n - h3 : Vos espaces\n\nLIENS DE NAVIGATION ET D'ACTION (6)\n - TaskFlow → /\n - Mes projets → /projects\n - Mes espaces → /workspaces\n - Nouveau workspace → /w/new\n - (lien sans texte) → /help\n - Cliquez ici → /upgrade\n\nBOUTONS (6)\n - Soumettre\n - Ajouter\n - Créer\n - Nouveau\n - OK\n - Enregistrer [désactivé]\n\nFORMULAIRES (1)\n - formulaire → /api/create (POST)\n\nCHAMPS DE SAISIE (4)\n - champ title (text) requis · SANS LABEL · placeholder « Nom du projet »\n - champ email (text) · SANS LABEL · placeholder « Email du responsable »\n - champ deadline (text) · SANS LABEL · placeholder « Deadline »\n - champ team (select ) · SANS LABEL\n\nIMAGES ET TEXTES DE REMPLACEMENT (2)\n - illustration-tableau-de-bord.png : PAS D'ATTRIBUT ALT\n - avatar-responsable.png : PAS D'ATTRIBUT ALT\n\nZONES D'ANNONCE DYNAMIQUE (0)\n (aucun)\n\nBLOCS REPLIABLES NATIFS <details> (0) — l'état ouvert/fermé est porté par le navigateur\n (aucun)\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (0)\n (aucun)\n\nTEXTE VISIBLE (244 mots, extrait)\nTaskFlow Mes projets Mes espaces Nouveau workspace Mes projets Bienvenue sur TaskFlow. Vous retrouvez ici tous les projets de votre organisation, ainsi que les espaces partagés avec les autres équipes. Chaque projet regroupe des tâches, des documents et un fil de discussion. Vous pouvez créer un nouveau projet à tout moment depuis le formulaire ci-dessous, l'assigner à une équipe, puis inviter les personnes concernées. Les projets archivés restent consultables pendant douze mois avant d'être définitivement supprimés de votre workspace. Créer un projet Équipe A Équipe B Soumettre Erreur Vos espaces Un espace rassemble plusieurs projets et leurs membres. Vous appartenez à trois espaces. Le workspace « Produit » contient les projets de conception et de développement. L'espace « Marketing » regroupe les campagnes en cours et les demandes entrantes. Le troisième espace est personnel : vous seul y avez accès, et il ne compte pas dans le quota de votre organisation. Créé le 12/03/2026 · Modifié le 2026-02-08 · Ouvert le 5 janvier 2026 Projet Tâches Action Refonte site 3 tâches en cours, 12 terminées Ajouter Application mobile 7 tâches en cours, 4 terminées Créer Migration données 2 tâches en cours, 0 terminée Nouveau Pour ajouter une tâche à un projet, ouvrez le projet puis utilisez le bouton correspondant dans la colonne de droite. Les tâches peuvent être assignées, commentées et déplacées entre les colonnes du tableau. Une tâche terminée reste visible sept jours avant de rejoindre l'historique du projet. Cliquez ici OK Enregistrer",
|
|
47
66
|
"golden": {
|
|
48
67
|
"expected_findings": [
|
|
49
68
|
"le même objet nommé projet, espace et workspace",
|
|
@@ -73,7 +92,7 @@
|
|
|
73
92
|
"skill": "analyze-url",
|
|
74
93
|
"kind": "subtle-defect",
|
|
75
94
|
"delivery_mode": "classique",
|
|
76
|
-
"artifact": "URL analysée : https://designwithai.fr/\nLangue déclarée : fr\nTitre : designwithai — Manuel d'atelier\nMeta description : Le AI Product Design Handbook, en atelier. Quatre volumes, trois projets, un gate par module.\nMeta viewport : width=device-width, initial-scale=1\n\nTITRES (23)\n - h1 : Passe ton produit au niveau au-dessus.\n - h2 : « Ça marche » ne veut pas dire « c'est prêt ».\n - h2 : Décris, connecte, regarde, corrige, re-vérifie.\n - h2 : Une seule voix.\n - h2 : Les détails qui font pro.\n - h2 : Ça tient en vrai.\n - h2 : De la première idée à la mise en ligne.\n - h2 : Un rapport clair. Pas un tableau de bord de plus.\n - h2 : Un objectif, pas un cours.\n - h2 : Directement dans ton éditeur de code.\n - h2 : Les questions qu'on nous pose.\n - h2 : Passe ton produit au niveau au-dessus.\n - h3 : Décris\n - h3 : Connecte\n - h3 : État des lieux\n - h3 : Agis\n - h3 : Re-vérifie\n - h3 : Cadrer\n - h3 : Concevoir\n - h3 : Construire\n - h3 : Harmoniser\n - h3 : Fiabiliser\n - h3 : Lancer\n\nLIENS DE NAVIGATION ET D'ACTION (18)\n - designwithai → /\n - La méthode → #methode\n - Packs → #packs\n - Intégrations → #integrations\n - Ressources → /bibliotheque/\n - Démarrer → /bienvenue/\n - Voir où en est mon produit → /bienvenue/\n - Voir un exemple de rapport → → /exemple-de-rapport/\n - Voir un exemple complet → → /exemple-de-rapport/\n - Choisir mon objectif → /bienvenue/\n - Voir ce que ça donne → → /exemple-de-rapport/\n - Voir où en est mon produit → /bienvenue/\n - Voir un exemple de rapport → → /exemple-de-rapport/\n - designwithai → /\n - La méthode → #methode\n - Packs → #packs\n - Intégrations → #integrations\n - Ressources → /bibliotheque/\n\nBOUTONS (1)\n - Fermer ⎋\n\nFORMULAIRES (0)\n (aucun)\n\nCHAMPS DE SAISIE (0)\n (aucun)\n\nIMAGES ET TEXTES DE REMPLACEMENT (0)\n (aucun)\n\nZONES D'ANNONCE DYNAMIQUE (0)\n (aucun)\n\nBLOCS REPLIABLES NATIFS <details> (8) — l'état ouvert/fermé est porté par le navigateur\n - 01 Un produit cohérent, d'un bout à l'autre On remet ton design system et tes [ouvert par défaut]\n - 02 De ta maquette Figma à du code solide Traduire ton design en vrai code, propre et co [ouvert par défaut]\n - 03 La revue avant mise en ligne Un dernier passage qui montre, noir sur blanc, ce qui s [ouvert par défaut]\n - 04 Ton app IA, prête pour de vrais utilisateurs Ton app générée avec Lovable, Bolt ou v [ouvert par défaut]\n - C'est seulement pour les produits faits avec l'IA ? + [replié]\n - Je dois être technique ? + [replié]\n - C'est un cours ? + [replié]\n - Ça remplace mon designer ou mon dev ? + [replié]\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (1)\n - (balise présente, contenu non textuel — probablement du style)\n\nTEXTE VISIBLE (1249 mots, extrait)\ndesignwithai La méthode Packs Intégrations Ressources Démarrer L'exigence produit, à tes côtés Passe ton produit au niveau au-dessus. Plus cohérent, plus soigné, plus solide — à chaque itération. Voir où en est mon produit Voir un exemple de rapport → designwithai.fr/etat-des-lieux Ton produit État des lieux Ton plan Sa fiche Agir Les packs Brancher ton éditeur Apprendre Le manuel Bibliothèque ProspectFlow app mobile · bêta · branché sur ton éditeur Re-analyser Verdict Presque prêt 2 constats réglés depuis la fois d'avant. Ton produit monte. Cohérent trois styles de boutons 2 constats Soigné pas d'état vide sur la liste 2 constats Solide données lisibles sans permission 2 constats → Audit sécurité → Check design system → Revue avant lancement Ton prochain pas Fermer les deux failles de données Continuer Fonctionne avec ton stack — Lovable Bolt v0 Cursor Figma ton éditeur Lovable Bolt v0 Cursor Figma ton éditeur Lovable Bolt v0 Cursor Figma ton éditeur Lovable Bolt v0 Cursor Figma ton éditeur le vrai sujet « Ça marche » ne veut pas dire « c'est prêt ». Une idée, une maquette, une app déjà en ligne : à chaque étape, un écart se creuse entre ce que tu vois et ce que vivront tes utilisateurs. Une intention encore floue, un style qui se fissure d'un écran à l'autre, une donnée trop exposée. Rien de tout ça ne se signale tout seul — jusqu'au jour où ça coûte cher. Je te dis où tu en es, à l'étape où tu en es. 01 Une idée l'intention n'est pas encore nette 02 Une maquette deux styles cohabitent déjà 03 En ligne une donnée trop exposée une seule boucle Décris, connecte, regarde, corrige, re-vérifie. Un seul objet au centre : ton produit. Et un cycle que tu comprends en une phrase. 01 / 05 Décris 5 questions simples. On situe ton produit. 01 Décris 5 questions simples. On situe ton produit. 02 Connecte Un lien, une maquette, ou ton code. Ce que tu as. 03 État des lieux Ton diagnostic : cohérent, soigné, solide. 04 Agis Ton plan, et l'outil exact en face de chaque pas. 05 Re-vérifie Ton produit monte, audit après audit. La cinquième ramène à la quatrième — on avance, on re-mesure, on recommence. 01 Cohérent Une seule voix. Ton produit et ton design system parlent d'une seule voix. Fini les écrans qui semblent venir de trois apps différentes. Enregistrer Enregistrer Enregistrer 02 Soigné Les détails qui font pro. États vides, erreurs, chargements, cas limites : chaque écran fini pour de bon. — Aucun projet pour l'instant Créer le premier → 03 Solide Ça tient en vrai. Avec de vrais utilisateurs et de vraies données, pas seulement en démo. Donnée d'un autre utilisateur lisible sans permission la méthode De la première idée à la mise en ligne. Tu entres là où tu en es. Pas besoin de tout suivre : tu prends ce qui t'aide, au moment où ça t'aide. 01 Cadrer clarifier le problème savoir quoi produire 02 Concevoir dessiner l'interface de la maquette au code 03 Construire améliorer l'existant fiabiliser l'app 04 Harmoniser un style cohérent repérer les doublons 05 Fiabiliser prêt pour de vrais utilisateurs ? vérifier les corrections 06 Lancer revue avant mise en ligne mesurer les progrès Que tu partes de zéro, d'une maquette Figma ou d'une app générée par IA — la méthode ne change pas. ce que tu obtiens Un rapport clair. Pas un tableau de bord de plus. Tu vois d'un coup où en est ton produit, ce qui doit être réparé, et dans quel ordre. Chaque point adossé à une preuve. Voir un exemple complet → rapport Verdict Presque prêt 2 choses à corriger avant d'ouvrir à de vrais utilisateurs. Cohérent trois styles de boutons espacements incohérents Soigné pas d'état vide sur la liste erreur de paiement silencieuse Solide urgent — données d'un autre utilisateur lisibles urgent — clé d'accès visible dans le code Le plan 01 fermer les failles de données 02 unifier boutons + espacements 03 sauvegardes auto par où commencer Un objectif, pas un cours. Tu choisis un résultat concret, on t'emmène du début à la fin. Un point de départ, un livrable. Choisir mon objectif Voir ce que ça donne → 01 Un produit cohérent, d'un bout à l'autre On remet ton design system et tes écrans d'accord : incohérences, doublons, styles bricolés, avant qu'ils ne se répandent partout. Ce que ça contient + 01 Tokens Les tokens audités : nommage, sémantique, valeurs hardcodées. 02 Composants L'inventaire, les doublons et l'architecture cible. 03 Variantes Les explosions de variants ramenées à des slots et properties. 02 De ta maquette Figma à du code solide Traduire ton design en vrai code, propre et cohérent, sans bricolage qui te retombera dessus plus tard. Ce que ça contient + 01 Audit des fondations Les tokens (couleur, type, spacing) alignés entre Figma et code. 02 Inventaire des composants La liste dérivée du flow, pas d'un catalogue, avec l'API textuelle de chacun. 03 Mapping Figma → code La correspondance nom-à-nom entre composants Figma et composants code. 03 La revue avant mise en ligne Un dernier passage qui montre, noir sur blanc, ce qui s'est amélioré depuis la fois d'avant. Ce que ça contient + 01 Problème et objectif Le problème testable et les critères de succès. 02 Parcours Le task flow du déclencheur à la post-condition, avec ses erreurs. 03 États La matrice des états et des récupérations. 04 Ton app IA, prête pour de vrais utilisateurs Ton app générée avec Lovable, Bolt ou v0 passe de « ça marche en démo » à « ça tient en vrai ». Ce que ça contient + 01 Audit des données et permissions Inventaire du modèle d'autorisation serveur (RLS, security rules, contrôle d'identité), des secrets et des accès, avec les risques bloquants nommés. 02 Audit de l'architecture générée Carte des routes, services et duplications ; dette structurelle classée. 03 Inventaire des composants Liste des composants avec leur niveau (primitive, pattern, one-off) et les doublons. là où tu travailles déjà Directement dans ton éditeur de code. Pas un site de plus à ouvrir. Ton coéquipier vient à toi, dans Claude ou ton éditeur — et il te fait produire et prouver, au lieu de te souffler des réponses toutes faites. ton éditeur branché $ relis l'écran de facturation → 3 constats, du plus grave au moins grave erreur de paiement silencieuse deux styles de boutons sur le même écran chargement et confirmation : rien à redire → correction proposée, puis vérifiée sur ton écran 01 on analyse ton écran ou ton code 02 on liste ce qui cloche 03 on vérifie que c'est corrigé Les questions qu'on nous pose. C'est seulement pour les produits faits avec l'IA ? + Non. La méthode vaut pour tout produit — l'IA est juste le cas où le besoin est le plus criant. Je dois être technique ? + Non. Les rapports sont en langage clair. Si tu codes, ça s'intègre à ton éditeur ; sinon, tu suis le plan. C'est un cours ? + Non. Tu choisis un objectif, tu repars avec un livrable. Ça remplace mon designer ou mon dev ? + Non. C'est le coéquipier qui hausse le niveau de ce que ton équipe produit — et qui le prouve. Passe ton produit au niveau au-dessus. Commence par voir où il en est — 2 minutes. Voir où en est mon produit Voir un exemple de rapport → designwithai La méthode Packs Intégrations Ressources Renvoi Fermer ⎋",
|
|
95
|
+
"artifact": "URL analysée : https://designwithai.fr/\nLecture complète de ce que le serveur a envoyé. Les listes ci-dessous sont exhaustives — étant entendu qu'elles ne couvrent que le HTML servi, avant exécution du JavaScript.\nLangue déclarée : fr\nTitre : designwithai — Manuel d'atelier\nMeta description : Le AI Product Design Handbook, en atelier. Quatre volumes, trois projets, un gate par module.\nMeta viewport : width=device-width, initial-scale=1\n\nTITRES (23)\n - h1 : Passe ton produit au niveau au-dessus.\n - h2 : « Ça marche » ne veut pas dire « c'est prêt ».\n - h2 : Décris, connecte, regarde, corrige, re-vérifie.\n - h2 : Une seule voix.\n - h2 : Les détails qui font pro.\n - h2 : Ça tient en vrai.\n - h2 : De la première idée à la mise en ligne.\n - h2 : Un rapport clair. Pas un tableau de bord de plus.\n - h2 : Un objectif, pas un cours.\n - h2 : Directement dans ton éditeur de code.\n - h2 : Les questions qu'on nous pose.\n - h2 : Passe ton produit au niveau au-dessus.\n - h3 : Décris\n - h3 : Connecte\n - h3 : État des lieux\n - h3 : Agis\n - h3 : Re-vérifie\n - h3 : Cadrer\n - h3 : Concevoir\n - h3 : Construire\n - h3 : Harmoniser\n - h3 : Fiabiliser\n - h3 : Lancer\n\nLIENS DE NAVIGATION ET D'ACTION (18)\n - designwithai → /\n - La méthode → #methode\n - Packs → #packs\n - Intégrations → #integrations\n - Ressources → /bibliotheque/\n - Démarrer → /bienvenue/\n - Voir où en est mon produit → /bienvenue/\n - Voir un exemple de rapport → → /exemple-de-rapport/\n - Voir un exemple complet → → /exemple-de-rapport/\n - Choisir mon objectif → /bienvenue/\n - Voir ce que ça donne → → /exemple-de-rapport/\n - Voir où en est mon produit → /bienvenue/\n - Voir un exemple de rapport → → /exemple-de-rapport/\n - designwithai → /\n - La méthode → #methode\n - Packs → #packs\n - Intégrations → #integrations\n - Ressources → /bibliotheque/\n\nBOUTONS (1)\n - Fermer ⎋\n\nFORMULAIRES (0)\n (aucun)\n\nCHAMPS DE SAISIE (0)\n (aucun)\n\nIMAGES ET TEXTES DE REMPLACEMENT (0)\n (aucun)\n\nZONES D'ANNONCE DYNAMIQUE (0)\n (aucun)\n\nBLOCS REPLIABLES NATIFS <details> (8) — l'état ouvert/fermé est porté par le navigateur\n - 01 Un produit cohérent, d'un bout à l'autre On remet ton design system et tes écrans d' [ouvert par défaut]\n - 02 De ta maquette Figma à du code solide Traduire ton design en vrai code, propre et co [ouvert par défaut]\n - 03 La revue avant mise en ligne Un dernier passage qui montre, noir sur blanc, ce qui s [ouvert par défaut]\n - 04 Ton app IA, prête pour de vrais utilisateurs Ton app générée avec Lovable, Bolt ou v [ouvert par défaut]\n - C'est seulement pour les produits faits avec l'IA ? + [replié]\n - Je dois être technique ? + [replié]\n - C'est un cours ? + [replié]\n - Ça remplace mon designer ou mon dev ? + [replié]\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (1)\n - (balise présente, contenu non textuel — probablement du style)\n\nTEXTE VISIBLE (1249 mots, extrait)\ndesignwithai La méthode Packs Intégrations Ressources Démarrer L'exigence produit, à tes côtés Passe ton produit au niveau au-dessus. Plus cohérent, plus soigné, plus solide — à chaque itération. Voir où en est mon produit Voir un exemple de rapport → designwithai.fr/etat-des-lieux Ton produit État des lieux Ton plan Sa fiche Agir Les packs Brancher ton éditeur Apprendre Le manuel Bibliothèque ProspectFlow app mobile · bêta · branché sur ton éditeur Re-analyser Verdict Presque prêt 2 constats réglés depuis la fois d'avant. Ton produit monte. Cohérent trois styles de boutons 2 constats Soigné pas d'état vide sur la liste 2 constats Solide données lisibles sans permission 2 constats → Audit sécurité → Check design system → Revue avant lancement Ton prochain pas Fermer les deux failles de données Continuer Fonctionne avec ton stack — Lovable Bolt v0 Cursor Figma ton éditeur Lovable Bolt v0 Cursor Figma ton éditeur Lovable Bolt v0 Cursor Figma ton éditeur Lovable Bolt v0 Cursor Figma ton éditeur le vrai sujet « Ça marche » ne veut pas dire « c'est prêt ». Une idée, une maquette, une app déjà en ligne : à chaque étape, un écart se creuse entre ce que tu vois et ce que vivront tes utilisateurs. Une intention encore floue, un style qui se fissure d'un écran à l'autre, une donnée trop exposée. Rien de tout ça ne se signale tout seul — jusqu'au jour où ça coûte cher. Je te dis où tu en es, à l'étape où tu en es. 01 Une idée l'intention n'est pas encore nette 02 Une maquette deux styles cohabitent déjà 03 En ligne une donnée trop exposée une seule boucle Décris, connecte, regarde, corrige, re-vérifie. Un seul objet au centre : ton produit. Et un cycle que tu comprends en une phrase. 01 / 05 Décris 5 questions simples. On situe ton produit. 01 Décris 5 questions simples. On situe ton produit. 02 Connecte Un lien, une maquette, ou ton code. Ce que tu as. 03 État des lieux Ton diagnostic : cohérent, soigné, solide. 04 Agis Ton plan, et l'outil exact en face de chaque pas. 05 Re-vérifie Ton produit monte, audit après audit. La cinquième ramène à la quatrième — on avance, on re-mesure, on recommence. 01 Cohérent Une seule voix. Ton produit et ton design system parlent d'une seule voix. Fini les écrans qui semblent venir de trois apps différentes. Enregistrer Enregistrer Enregistrer 02 Soigné Les détails qui font pro. États vides, erreurs, chargements, cas limites : chaque écran fini pour de bon. — Aucun projet pour l'instant Créer le premier → 03 Solide Ça tient en vrai. Avec de vrais utilisateurs et de vraies données, pas seulement en démo. Donnée d'un autre utilisateur lisible sans permission la méthode De la première idée à la mise en ligne. Tu entres là où tu en es. Pas besoin de tout suivre : tu prends ce qui t'aide, au moment où ça t'aide. 01 Cadrer clarifier le problème savoir quoi produire 02 Concevoir dessiner l'interface de la maquette au code 03 Construire améliorer l'existant fiabiliser l'app 04 Harmoniser un style cohérent repérer les doublons 05 Fiabiliser prêt pour de vrais utilisateurs ? vérifier les corrections 06 Lancer revue avant mise en ligne mesurer les progrès Que tu partes de zéro, d'une maquette Figma ou d'une app générée par IA — la méthode ne change pas. ce que tu obtiens Un rapport clair. Pas un tableau de bord de plus. Tu vois d'un coup où en est ton produit, ce qui doit être réparé, et dans quel ordre. Chaque point adossé à une preuve. Voir un exemple complet → rapport Verdict Presque prêt 2 choses à corriger avant d'ouvrir à de vrais utilisateurs. Cohérent trois styles de boutons espacements incohérents Soigné pas d'état vide sur la liste erreur de paiement silencieuse Solide urgent — données d'un autre utilisateur lisibles urgent — clé d'accès visible dans le code Le plan 01 fermer les failles de données 02 unifier boutons + espacements 03 sauvegardes auto par où commencer Un objectif, pas un cours. Tu choisis un résultat concret, on t'emmène du début à la fin. Un point de départ, un livrable. Choisir mon objectif Voir ce que ça donne → 01 Un produit cohérent, d'un bout à l'autre On remet ton design system et tes écrans d'accord : incohérences, doublons, styles bricolés, avant qu'ils ne se répandent partout. Ce que ça contient + 01 Tokens Les tokens audités : nommage, sémantique, valeurs hardcodées. 02 Composants L'inventaire, les doublons et l'architecture cible. 03 Variantes Les explosions de variants ramenées à des slots et properties. 02 De ta maquette Figma à du code solide Traduire ton design en vrai code, propre et cohérent, sans bricolage qui te retombera dessus plus tard. Ce que ça contient + 01 Audit des fondations Les tokens (couleur, type, spacing) alignés entre Figma et code. 02 Inventaire des composants La liste dérivée du flow, pas d'un catalogue, avec l'API textuelle de chacun. 03 Mapping Figma → code La correspondance nom-à-nom entre composants Figma et composants code. 03 La revue avant mise en ligne Un dernier passage qui montre, noir sur blanc, ce qui s'est amélioré depuis la fois d'avant. Ce que ça contient + 01 Problème et objectif Le problème testable et les critères de succès. 02 Parcours Le task flow du déclencheur à la post-condition, avec ses erreurs. 03 États La matrice des états et des récupérations. 04 Ton app IA, prête pour de vrais utilisateurs Ton app générée avec Lovable, Bolt ou v0 passe de « ça marche en démo » à « ça tient en vrai ». Ce que ça contient + 01 Audit des données et permissions Inventaire du modèle d'autorisation serveur (RLS, security rules, contrôle d'identité), des secrets et des accès, avec les risques bloquants nommés. 02 Audit de l'architecture générée Carte des routes, services et duplications ; dette structurelle classée. 03 Inventaire des composants Liste des composants avec leur niveau (primitive, pattern, one-off) et les doublons. là où tu travailles déjà Directement dans ton éditeur de code. Pas un site de plus à ouvrir. Ton coéquipier vient à toi, dans Claude ou ton éditeur — et il te fait produire et prouver, au lieu de te souffler des réponses toutes faites. ton éditeur branché $ relis l'écran de facturation → 3 constats, du plus grave au moins grave erreur de paiement silencieuse deux styles de boutons sur le même écran chargement et confirmation : rien à redire → correction proposée, puis vérifiée sur ton écran 01 on analyse ton écran ou ton code 02 on liste ce qui cloche 03 on vérifie que c'est corrigé Les questions qu'on nous pose. C'est seulement pour les produits faits avec l'IA ? + Non. La méthode vaut pour tout produit — l'IA est juste le cas où le besoin est le plus criant. Je dois être technique ? + Non. Les rapports sont en langage clair. Si tu codes, ça s'intègre à ton éditeur ; sinon, tu suis le plan. C'est un cours ? + Non. Tu choisis un objectif, tu repars avec un livrable. Ça remplace mon designer ou mon dev ? + Non. C'est le coéquipier qui hausse le niveau de ce que ton équipe produit — et qui le prouve. Passe ton produit au niveau au-dessus. Commence par voir où il en est — 2 minutes. Voir où en est mon produit Voir un exemple de rapport → designwithai La méthode Packs Intégrations Ressources Renvoi Fermer ⎋",
|
|
77
96
|
"golden": {
|
|
78
97
|
"expected_findings": [
|
|
79
98
|
"la même livraison nommée état des lieux, diagnostic et rapport",
|
|
@@ -85,13 +104,13 @@
|
|
|
85
104
|
"reprocher qu'aucun repli ne soit servi sans JavaScript",
|
|
86
105
|
"reprocher l'absence de zone d'annonce pour les erreurs",
|
|
87
106
|
"accordéons sans état ouvert ou fermé annoncé",
|
|
88
|
-
"
|
|
107
|
+
"reprocher un encodage fautif dans les titres de la page",
|
|
89
108
|
"aucun formulaire ni champ de saisie",
|
|
90
109
|
"reprocher qu'aucune illustration n'accompagne les sections"
|
|
91
110
|
],
|
|
92
111
|
"expected_verdict": "PASS WITH FIXES",
|
|
93
112
|
"should_refuse": false,
|
|
94
|
-
"note": "Matériau RÉEL : la page d'accueil de designwithai.fr, telle que l'extracteur la donne au modèle. C'est ce cas qui a produit les trois faux constats de la première analyse en production — la balise <noscript> est présente (elle était mal extraite), les huit blocs <details> annoncent leur état (ils n'étaient pas transmis), et l'absence de zone d'annonce sur une page sans formulaire n'est pas un défaut. Les quatre constats attendus sont, eux, réels et fins : ils tiennent tous à la cohérence du vocabulaire et de la structure.
|
|
113
|
+
"note": "Matériau RÉEL : la page d'accueil de designwithai.fr, telle que l'extracteur la donne au modèle. C'est ce cas qui a produit les trois faux constats de la première analyse en production — la balise <noscript> est présente (elle était mal extraite), les huit blocs <details> annoncent leur état (ils n'étaient pas transmis), et l'absence de zone d'annonce sur une page sans formulaire n'est pas un défaut. Les quatre constats attendus sont, eux, réels et fins : ils tiennent tous à la cohérence du vocabulaire et de la structure. L'extracteur ne décodait pas les entités hexadécimales : « d'atelier » arrivait tel quel au modèle, et un encodage fautif était un reproche recevable — sur un défaut que NOTRE lecture venait de créer. Corrigé ; l'artefact ci-dessus est régénéré avec l'extracteur réparé, et scripts/test-extract.ts garde le correctif."
|
|
95
114
|
}
|
|
96
115
|
},
|
|
97
116
|
{
|
|
@@ -99,7 +118,7 @@
|
|
|
99
118
|
"skill": "analyze-url",
|
|
100
119
|
"kind": "out-of-scope",
|
|
101
120
|
"delivery_mode": "ai-builder",
|
|
102
|
-
"artifact": "URL analysée : https://atelier-vermeil.fr/factures/\nLangue déclarée : fr\nTitre : Facturation — Atelier Vermeil\nMeta description : Consultez vos factures et réglez vos échéances en ligne.\nMeta viewport : width=device-width, initial-scale=1\n\nTITRES (5)\n - h1 : Mes factures\n - h2 : Factures\n - h2 : Régler une échéance\n - h2 : Questions fréquentes\n - h2 : Pour les développeurs\n\nLIENS DE NAVIGATION ET D'ACTION (6)\n - Atelier Vermeil → /\n - Mes factures → /factures/\n - Mes moyens de paiement → /moyens-de-paiement/\n - Aide → /aide/\n - Aide → /aide/\n - Conditions générales → /conditions/\n\nBOUTONS (1)\n - Régler la facture\n\nFORMULAIRES (1)\n - formulaire → /paiement/ (POST)\n\nCHAMPS DE SAISIE (2)\n - champ montant (number) requis · label visible « Montant à régler » · aide liée (aide-montant)\n - champ moyen (select ) requis · label visible « Moyen de paiement »\n\nIMAGES ET TEXTES DE REMPLACEMENT (0)\n (aucun)\n\nZONES D'ANNONCE DYNAMIQUE (1)\n - aria-live=assertive role=alert\n\nBLOCS REPLIABLES NATIFS <details> (2) — l'état ouvert/fermé est porté par le navigateur\n - Quand ma carte est-elle débitée ? [replié]\n - Comment obtenir une facture rectificative ? [replié]\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (1)\n - La liste de vos factures est affichée ci-dessous, sans JavaScript.\n\nTEXTE VISIBLE (287 mots, extrait)\nLa liste de vos factures est affichée ci-dessous, sans JavaScript. Atelier Vermeil Mes factures Mes moyens de paiement Aide Mes factures Quatre factures sur les douze derniers mois. La prochaine échéance est le 05/04/2026. Factures Date Référence Montant État 05/03/2026 F-2026-0312 149,00 € Réglée 05/02/2026 F-2026-0208 149,00 € Réglée 05/01/2026 F-2026-0104 149,00 € Réglée 05/12/2025 F-2025-1201 129,00 € Remboursée Chaque facture est téléchargeable au format PDF depuis sa ligne. Les factures réglées restent disponibles pendant dix ans, conformément à nos obligations comptables. Si une facture vous semble erronée, contactez le service client depuis la page d'aide : nous répondons sous un jour ouvré et une facture rectificative est émise le cas échéant. Régler une échéance Montant à régler En euros, deux décimales maximum. Exemple : 149,00. Moyen de paiement Carte enregistrée — se terminant par 4242 Virement bancaire Régler la facture Questions fréquentes Quand ma carte est-elle débitée ? Le jour de l'échéance affichée sur la facture, avant 9 h. Comment obtenir une facture rectificative ? Depuis la page d'aide, en indiquant la référence de la facture concernée. Pour les développeurs Notre API renvoie vos factures au format JSON. La clé de service de votre organisation est sk_live_51QxTz8KmVn2aRcDpLwEg7Hf4bJ9 : conservez-la, elle ne s'affiche qu'ici. Exemple d'appel : curl -H \"Authorization: Bearer sk_live_51QxTz8KmVn2aRcDpLwEg7Hf4bJ9\" https://api.atelier-vermeil.fr/v1/factures. Le chargement initial de cette page mobilise dix bibliothèques externes et pèse 4,2 Mo ; nous travaillons à le réduire. Les montants affichés sont toutes taxes comprises. La TVA applicable est de 20 %. Pour toute question de facturation, l'équipe est joignable du lundi au vendredi, de 9 h à 18 h. Les remboursements sont crédités sur le moyen de paiement d'origine sous cinq jours ouvrés après validation de la demande. Aide Conditions générales",
|
|
121
|
+
"artifact": "URL analysée : https://atelier-vermeil.fr/factures/\nLecture complète de ce que le serveur a envoyé. Les listes ci-dessous sont exhaustives — étant entendu qu'elles ne couvrent que le HTML servi, avant exécution du JavaScript.\nLangue déclarée : fr\nTitre : Facturation — Atelier Vermeil\nMeta description : Consultez vos factures et réglez vos échéances en ligne.\nMeta viewport : width=device-width, initial-scale=1\n\nTITRES (5)\n - h1 : Mes factures\n - h2 : Factures\n - h2 : Régler une échéance\n - h2 : Questions fréquentes\n - h2 : Pour les développeurs\n\nLIENS DE NAVIGATION ET D'ACTION (6)\n - Atelier Vermeil → /\n - Mes factures → /factures/\n - Mes moyens de paiement → /moyens-de-paiement/\n - Aide → /aide/\n - Aide → /aide/\n - Conditions générales → /conditions/\n\nBOUTONS (1)\n - Régler la facture\n\nFORMULAIRES (1)\n - formulaire → /paiement/ (POST)\n\nCHAMPS DE SAISIE (2)\n - champ montant (number) requis · label visible « Montant à régler » · aide liée (aide-montant)\n - champ moyen (select ) requis · label visible « Moyen de paiement »\n\nIMAGES ET TEXTES DE REMPLACEMENT (0)\n (aucun)\n\nZONES D'ANNONCE DYNAMIQUE (1)\n - aria-live=assertive role=alert\n\nBLOCS REPLIABLES NATIFS <details> (2) — l'état ouvert/fermé est porté par le navigateur\n - Quand ma carte est-elle débitée ? [replié]\n - Comment obtenir une facture rectificative ? [replié]\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (0)\n (aucun)\n\nCONTENU DE SECOURS SANS JAVASCRIPT (1)\n - La liste de vos factures est affichée ci-dessous, sans JavaScript.\n\nTEXTE VISIBLE (287 mots, extrait)\nLa liste de vos factures est affichée ci-dessous, sans JavaScript. Atelier Vermeil Mes factures Mes moyens de paiement Aide Mes factures Quatre factures sur les douze derniers mois. La prochaine échéance est le 05/04/2026. Factures Date Référence Montant État 05/03/2026 F-2026-0312 149,00 € Réglée 05/02/2026 F-2026-0208 149,00 € Réglée 05/01/2026 F-2026-0104 149,00 € Réglée 05/12/2025 F-2025-1201 129,00 € Remboursée Chaque facture est téléchargeable au format PDF depuis sa ligne. Les factures réglées restent disponibles pendant dix ans, conformément à nos obligations comptables. Si une facture vous semble erronée, contactez le service client depuis la page d'aide : nous répondons sous un jour ouvré et une facture rectificative est émise le cas échéant. Régler une échéance Montant à régler En euros, deux décimales maximum. Exemple : 149,00. Moyen de paiement Carte enregistrée — se terminant par 4242 Virement bancaire Régler la facture Questions fréquentes Quand ma carte est-elle débitée ? Le jour de l'échéance affichée sur la facture, avant 9 h. Comment obtenir une facture rectificative ? Depuis la page d'aide, en indiquant la référence de la facture concernée. Pour les développeurs Notre API renvoie vos factures au format JSON. La clé de service de votre organisation est sk_live_51QxTz8KmVn2aRcDpLwEg7Hf4bJ9 : conservez-la, elle ne s'affiche qu'ici. Exemple d'appel : curl -H \"Authorization: Bearer sk_live_51QxTz8KmVn2aRcDpLwEg7Hf4bJ9\" https://api.atelier-vermeil.fr/v1/factures. Le chargement initial de cette page mobilise dix bibliothèques externes et pèse 4,2 Mo ; nous travaillons à le réduire. Les montants affichés sont toutes taxes comprises. La TVA applicable est de 20 %. Pour toute question de facturation, l'équipe est joignable du lundi au vendredi, de 9 h à 18 h. Les remboursements sont crédités sur le moyen de paiement d'origine sous cinq jours ouvrés après validation de la demande. Aide Conditions générales",
|
|
103
122
|
"golden": {
|
|
104
123
|
"expected_findings": [],
|
|
105
124
|
"forbidden_findings": [
|
|
@@ -119,7 +138,7 @@
|
|
|
119
138
|
"skill": "analyze-url",
|
|
120
139
|
"kind": "insufficient",
|
|
121
140
|
"delivery_mode": "classique",
|
|
122
|
-
"artifact": "URL analysée : https://designwithai.fr/etat-des-lieux/\nLangue déclarée : fr\nTitre : designwithai — Manuel d
|
|
141
|
+
"artifact": "URL analysée : https://designwithai.fr/etat-des-lieux/\nLecture complète de ce que le serveur a envoyé. Les listes ci-dessous sont exhaustives — étant entendu qu'elles ne couvrent que le HTML servi, avant exécution du JavaScript.\nLangue déclarée : fr\nTitre : designwithai — Manuel d'atelier\nMeta description : Le AI Product Design Handbook, en atelier. Quatre volumes, trois projets, un gate par module.\nMeta viewport : width=device-width, initial-scale=1\n\nTITRES (0)\n (aucun)\n\nLIENS DE NAVIGATION ET D'ACTION (25)\n - designwithai → /\n - designwithai Ton produit, au niveau au-dessus → /\n - État des lieux → /etat-des-lieux/\n - Ton plan → /mon-plan/\n - Sa fiche → /mon-projet/\n - Les packs → /packs/\n - Brancher ton éditeur → /brancher/\n - 1 Foundations → /foundations/\n - 2 Product Design → /product-design/\n - 3 Agentic & Leadership → /agentic/\n - 4 Emerging Interfaces → /emerging/\n - 1 Foundations → /ds-foundations/\n - 2 Design Tokens → /ds-tokens/\n - 3 Component Architecture → /ds-components/\n - 4 Storybook → /ds-storybook/\n - 5 Figma → /ds-figma/\n - 6 Cross-Platform → /ds-crossplatform/\n - 7 Governance → /ds-governance/\n - 8 Adoption → /ds-adoption/\n - 9 Enterprise → /ds-enterprise/\n - 10 AI Design Systems → /ds-ai/\n - Bibliothèque → /bibliotheque/\n - Me situer → /guide/\n - Compte → /compte/\n - Connecter → /connecter/\n\nBOUTONS (7)\n - Ouvrir la navigation\n - Rechercher\n - Changer de thème\n - Fermer la navigation\n - Rechercher ⌘K\n - Changer de thème\n - Fermer ⎋\n\nFORMULAIRES (0)\n (aucun)\n\nCHAMPS DE SAISIE (0)\n (aucun)\n\nIMAGES ET TEXTES DE REMPLACEMENT (0)\n (aucun)\n\nZONES D'ANNONCE DYNAMIQUE (0)\n (aucun)\n\nBLOCS REPLIABLES NATIFS <details> (0) — l'état ouvert/fermé est porté par le navigateur\n (aucun)\n\nÉLÉMENTS ANNONÇANT LEUR ÉTAT via aria-expanded (1)\n - aria-expanded=false\n\nCONTENU DE SECOURS SANS JAVASCRIPT (0)\n (aucun)\n\nTEXTE VISIBLE (72 mots, extrait)\ndesignwithai designwithai Ton produit, au niveau au-dessus Rechercher ⌘K Ton produit État des lieux Ton plan Sa fiche Agir Les packs Brancher ton éditeur Apprendre 1 Foundations 2 Product Design 3 Agentic & Leadership 4 Emerging Interfaces 1 Foundations 2 Design Tokens 3 Component Architecture 4 Storybook 5 Figma 6 Cross-Platform 7 Governance 8 Adoption 9 Enterprise 10 AI Design Systems Bibliothèque Me situer Compte Fiche à compléter Connecter Renvoi Fermer ⎋",
|
|
123
142
|
"golden": {
|
|
124
143
|
"expected_findings": [],
|
|
125
144
|
"forbidden_findings": [
|
|
@@ -46,7 +46,7 @@ La grille est la même ; ce qu'on peut en prouver dépend de l'accès. **Annonce
|
|
|
46
46
|
| Entrée | Ce qui devient jugeable | Ce qui reste hors de portée |
|
|
47
47
|
|---|---|---|
|
|
48
48
|
| **Accès direct au fichier** (Figma ouvert, ou API avec les nœuds) | Tous les axes : détachements, styles orphelins, styles locaux contre publiés, profondeur des groupes. | — |
|
|
49
|
-
| **Résumé serveur** (`analyze-figma`) | Nommage, structure des pages, part d'auto-layout, réutilisation des composants,
|
|
49
|
+
| **Résumé serveur** (`analyze-figma`) | Nommage, structure des pages, part d'auto-layout, réutilisation des composants, styles publiés, styles locaux et orphelins nommés, valeurs employées. | **Les détachements** — l'API ne les expose pas : une instance détachée cesse d'être une instance, et la deviner par ressemblance produirait des faux constats. Cet axe se déclare non vérifié, jamais conforme. |
|
|
50
50
|
|
|
51
51
|
Un axe que l'entrée ne montre pas ne produit ni constat ni satisfecit. C'est la même discipline que partout : le silence se dit.
|
|
52
52
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"skill": "review-figma-hygiene",
|
|
5
5
|
"kind": "conformant",
|
|
6
6
|
"delivery_mode": "classique",
|
|
7
|
-
"artifact": "Fichier : Cabinet Lauzun — produit\nDernière modification : 2026-08-11T09:24:31Z\nATTENTION : fichier volumineux — ma lecture s'est arrêtée après 6000 éléments. Ce qui suit est un ÉCHANTILLON, pas l'intégralité du fichier. Ne conclus donc jamais qu'un élément « manque » ou « n'existe pas ».\nPages : 4 — Fondations, Composants, Écrans, Archives\nCadres : 1212 (dont 1212 en auto-layout)\nCalques de texte : 26\nStyles publiés dans la bibliothèque : 68\n\nÉCRANS DE PREMIER NIVEAU (1212)\n - Fondations › Palette\n - Fondations › Échelle typographique\n - Composants › Composant 0\n - Composants › Composant 1\n - Composants › Composant 2\n - Composants › Composant 3\n - Composants › Composant 4\n - Composants › Composant 5\n - Composants › Composant 6\n - Composants › Composant 7\n - Composants › Composant 8\n - Composants › Composant 9\n - Composants › Composant 10\n - Composants › Composant 11\n - Composants › Composant 12\n - Composants › Composant 13\n - Composants › Composant 14\n - Composants › Composant 15\n - Composants › Composant 16\n - Composants › Composant 17\n - Composants › Composant 18\n - Composants › Composant 19\n - Composants › Composant 20\n - Composants › Composant 21\n - Composants › Composant 22\n - Composants › Composant 23\n - Composants › Composant 24\n - Composants › Composant 25\n - Composants › Composant 26\n - Composants › Composant 27\n - Composants › Composant 28\n - Composants › Composant 29\n - Composants › Composant 30\n - Composants › Composant 31\n - Composants › Composant 32\n - Composants › Composant 33\n - Composants › Composant 34\n - Composants › Composant 35\n - Composants › Composant 36\n - Composants › Composant 37\n - Composants › Composant 38\n - Composants › Composant 39\n - Écrans › Écran 001 · Tableau de bord\n - Écrans › Écran 002 · Liste des dossiers\n - Écrans › Écran 003 · Détail dossier\n\nPOLICES ET GRAISSES EMPLOYÉES (3)\n - Inter 400\n - Inter 500\n - Inter 600\n\nTAILLES DE TEXTE EMPLOYÉES (4) : 16, 20, 24, 32\nRAYONS D'ANGLE EMPLOYÉS (3) : 4, 8, 16\nESPACEMENTS EMPLOYÉS (4) : 8, 16, 24, 32\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (3 distinctes)\n - #ffffff — 432 usages\n - #f7f8fa — 390 usages\n - #111827 — 390 usages\n\nCOMPOSANTS RÉUTILISÉS (4)\n - Bouton — 1210 instances\n - Champ — 1210 instances\n - Carte — 1170 instances\n - Entête — 1170 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (26)\n - Fondations › « Couleurs de la marque »\n - Fondations › « Inter 12 / 14 / 16 / 20 / 24 / 32 / 40 »\n - Écrans › « Dossier 1 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 2 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 3 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 4 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 5 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 6 — ouvert le 06/03/2026 »\n - Écrans › « Dossier 7 — ouvert le 07/03/2026 »\n - Écrans › « Dossier 8 — ouvert le 08/03/2026 »\n - Écrans › « Dossier 9 — ouvert le 09/03/2026 »\n - Écrans › « Dossier 10 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 11 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 12 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 13 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 14 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 15 — ouvert le 06/03/2026 »\n - Écrans › « Dossier 16 — ouvert le 07/03/2026 »\n - Écrans › « Dossier 17 — ouvert le 08/03/2026 »\n - Écrans › « Dossier 18 — ouvert le 09/03/2026 »\n - Écrans › « Dossier 19 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 20 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 21 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 22 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 23 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 24 — ouvert le 06/03/2026 »",
|
|
7
|
+
"artifact": "Fichier : Cabinet Lauzun — produit\nDernière modification : 2026-08-11T09:24:31Z\nATTENTION : fichier volumineux — ma lecture s'est arrêtée après 6000 éléments. Ce qui suit est un ÉCHANTILLON, pas l'intégralité du fichier. Ne conclus donc jamais qu'un élément « manque » ou « n'existe pas ».\nPages : 4 — Fondations, Composants, Écrans, Archives\nCadres : 1212 (dont 1212 en auto-layout)\nCalques de texte : 26\nStyles publiés dans la bibliothèque : 68\nEmploi des styles : non transmis par cette lecture. N'en conclus rien, ni en bien ni en mal.\nSTYLES LOCAUX : non transmis.\nSTYLES PUBLIÉS INEMPLOYÉS : non transmis.\n\nÉCRANS DE PREMIER NIVEAU (1212)\n - Fondations › Palette\n - Fondations › Échelle typographique\n - Composants › Composant 0\n - Composants › Composant 1\n - Composants › Composant 2\n - Composants › Composant 3\n - Composants › Composant 4\n - Composants › Composant 5\n - Composants › Composant 6\n - Composants › Composant 7\n - Composants › Composant 8\n - Composants › Composant 9\n - Composants › Composant 10\n - Composants › Composant 11\n - Composants › Composant 12\n - Composants › Composant 13\n - Composants › Composant 14\n - Composants › Composant 15\n - Composants › Composant 16\n - Composants › Composant 17\n - Composants › Composant 18\n - Composants › Composant 19\n - Composants › Composant 20\n - Composants › Composant 21\n - Composants › Composant 22\n - Composants › Composant 23\n - Composants › Composant 24\n - Composants › Composant 25\n - Composants › Composant 26\n - Composants › Composant 27\n - Composants › Composant 28\n - Composants › Composant 29\n - Composants › Composant 30\n - Composants › Composant 31\n - Composants › Composant 32\n - Composants › Composant 33\n - Composants › Composant 34\n - Composants › Composant 35\n - Composants › Composant 36\n - Composants › Composant 37\n - Composants › Composant 38\n - Composants › Composant 39\n - Écrans › Écran 001 · Tableau de bord\n - Écrans › Écran 002 · Liste des dossiers\n - Écrans › Écran 003 · Détail dossier\n\nPOLICES ET GRAISSES EMPLOYÉES (3)\n - Inter 400\n - Inter 500\n - Inter 600\n\nTAILLES DE TEXTE EMPLOYÉES (4) : 16, 20, 24, 32\nRAYONS D'ANGLE EMPLOYÉS (3) : 4, 8, 16\nESPACEMENTS EMPLOYÉS (4) : 8, 16, 24, 32\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (3 distinctes)\n - #ffffff — 432 usages\n - #f7f8fa — 390 usages\n - #111827 — 390 usages\n\nCOMPOSANTS RÉUTILISÉS (4)\n - Bouton — 1210 instances\n - Champ — 1210 instances\n - Carte — 1170 instances\n - Entête — 1170 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (26)\n - Fondations › « Couleurs de la marque »\n - Fondations › « Inter 12 / 14 / 16 / 20 / 24 / 32 / 40 »\n - Écrans › « Dossier 1 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 2 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 3 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 4 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 5 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 6 — ouvert le 06/03/2026 »\n - Écrans › « Dossier 7 — ouvert le 07/03/2026 »\n - Écrans › « Dossier 8 — ouvert le 08/03/2026 »\n - Écrans › « Dossier 9 — ouvert le 09/03/2026 »\n - Écrans › « Dossier 10 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 11 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 12 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 13 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 14 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 15 — ouvert le 06/03/2026 »\n - Écrans › « Dossier 16 — ouvert le 07/03/2026 »\n - Écrans › « Dossier 17 — ouvert le 08/03/2026 »\n - Écrans › « Dossier 18 — ouvert le 09/03/2026 »\n - Écrans › « Dossier 19 — ouvert le 01/03/2026 »\n - Écrans › « Dossier 20 — ouvert le 02/03/2026 »\n - Écrans › « Dossier 21 — ouvert le 03/03/2026 »\n - Écrans › « Dossier 22 — ouvert le 04/03/2026 »\n - Écrans › « Dossier 23 — ouvert le 05/03/2026 »\n - Écrans › « Dossier 24 — ouvert le 06/03/2026 »",
|
|
8
8
|
"golden": {
|
|
9
9
|
"expected_findings": [],
|
|
10
10
|
"forbidden_findings": [
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"skill": "review-figma-hygiene",
|
|
26
26
|
"kind": "conformant",
|
|
27
27
|
"delivery_mode": "classique",
|
|
28
|
-
"artifact": "Fichier : Cabinet Lauzun — textes\nDernière modification : 2026-08-12T15:02:00Z\nLecture complète du fichier.\nPages : 1 — Écrans\nCadres : 5 (dont 5 en auto-layout)\nCalques de texte : 10\nStyles publiés dans la bibliothèque : 22\n\nÉCRANS DE PREMIER NIVEAU (5)\n - Écrans › 01 · Accueil\n - Écrans › 02 · Conservation\n - Écrans › 03 · Extraction\n - Écrans › 04 · Rappel\n - Écrans › 05 · Paramètres\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (1) : 8\nESPACEMENTS EMPLOYÉS (2) : 16, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (1 distinctes)\n - #ffffff — 5 usages\n\nCOMPOSANTS RÉUTILISÉS (2)\n - Bouton — 4 instances\n - Champ — 2 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (10)\n - Écrans › « Vos dossiers sont conservés cinq ans après leur clôture, puis archivés automatiquement. Vous recevez un rappel un mois avant l'archivage, et vous pouvez à tout […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Vos dossiers »\n - Écrans › « Vos dossiers sont conservés cinq ans après leur clôture, puis archivés automatiquement. Vous recevez un rappel un mois avant l'archivage, et vous pouvez à tout […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Conservation des pièces »\n - Écrans › « Demandez l'extraction de toutes les pièces d'un dossier au format PDF. Le fichier vous est envoyé par courriel dans l'heure, et reste téléchargeable pendant sep […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Extraction des pièces »\n - Écrans › « Un mois avant l'archivage, un rappel est envoyé au responsable du dossier ainsi qu'aux membres qui l'ont consulté au cours des six derniers mois. »\n - Écrans › « Rappel avant archivage »\n - Écrans › « Paramètres du cabinet »\n - Écrans › « Enregistrer les modifications »",
|
|
28
|
+
"artifact": "Fichier : Cabinet Lauzun — textes\nDernière modification : 2026-08-12T15:02:00Z\nLecture complète du fichier.\nPages : 1 — Écrans\nCadres : 5 (dont 5 en auto-layout)\nCalques de texte : 10\nStyles publiés dans la bibliothèque : 22\nEmploi des styles : non transmis par cette lecture. N'en conclus rien, ni en bien ni en mal.\nSTYLES LOCAUX : non transmis.\nSTYLES PUBLIÉS INEMPLOYÉS : non transmis.\n\nÉCRANS DE PREMIER NIVEAU (5)\n - Écrans › 01 · Accueil\n - Écrans › 02 · Conservation\n - Écrans › 03 · Extraction\n - Écrans › 04 · Rappel\n - Écrans › 05 · Paramètres\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (1) : 8\nESPACEMENTS EMPLOYÉS (2) : 16, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (1 distinctes)\n - #ffffff — 5 usages\n\nCOMPOSANTS RÉUTILISÉS (2)\n - Bouton — 4 instances\n - Champ — 2 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (10)\n - Écrans › « Vos dossiers sont conservés cinq ans après leur clôture, puis archivés automatiquement. Vous recevez un rappel un mois avant l'archivage, et vous pouvez à tout […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Vos dossiers »\n - Écrans › « Vos dossiers sont conservés cinq ans après leur clôture, puis archivés automatiquement. Vous recevez un rappel un mois avant l'archivage, et vous pouvez à tout […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Conservation des pièces »\n - Écrans › « Demandez l'extraction de toutes les pièces d'un dossier au format PDF. Le fichier vous est envoyé par courriel dans l'heure, et reste téléchargeable pendant sep […coupé par ma lecture, pas par la maquette] »\n - Écrans › « Extraction des pièces »\n - Écrans › « Un mois avant l'archivage, un rappel est envoyé au responsable du dossier ainsi qu'aux membres qui l'ont consulté au cours des six derniers mois. »\n - Écrans › « Rappel avant archivage »\n - Écrans › « Paramètres du cabinet »\n - Écrans › « Enregistrer les modifications »",
|
|
29
29
|
"golden": {
|
|
30
30
|
"expected_findings": [],
|
|
31
31
|
"forbidden_findings": [
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"skill": "review-figma-hygiene",
|
|
46
46
|
"kind": "obvious-defect",
|
|
47
47
|
"delivery_mode": "ai-builder",
|
|
48
|
-
"artifact": "Fichier : TaskFlow app\nDernière modification : 2026-08-05T18:40:12Z\nLecture complète du fichier.\nPages : 1 — Page 1\nCadres : 46 (dont 0 en auto-layout)\nCalques de texte : 92\nStyles publiés dans la bibliothèque : 0\n\nÉCRANS DE PREMIER NIVEAU (46)\n - Page 1 › Frame 1\n - Page 1 › Group 2\n - Page 1 › Rectangle 3\n - Page 1 › Frame 4\n - Page 1 › Group 5\n - Page 1 › Rectangle 6\n - Page 1 › Frame 7\n - Page 1 › Group 8\n - Page 1 › Rectangle 9\n - Page 1 › Frame 10\n - Page 1 › Group 11\n - Page 1 › Rectangle 12\n - Page 1 › Frame 13\n - Page 1 › Group 14\n - Page 1 › Rectangle 15\n - Page 1 › Frame 16\n - Page 1 › Group 17\n - Page 1 › Rectangle 18\n - Page 1 › Frame 19\n - Page 1 › Group 20\n - Page 1 › Rectangle 21\n - Page 1 › Frame 22\n - Page 1 › Group 23\n - Page 1 › Rectangle 24\n - Page 1 › Frame 25\n - Page 1 › Group 26\n - Page 1 › Rectangle 27\n - Page 1 › Frame 28\n - Page 1 › Group 29\n - Page 1 › Rectangle 30\n - Page 1 › Frame 31\n - Page 1 › Group 32\n - Page 1 › Rectangle 33\n - Page 1 › Frame 34\n - Page 1 › Group 35\n - Page 1 › Rectangle 36\n - Page 1 › Frame 37\n - Page 1 › Group 38\n - Page 1 › Rectangle 39\n - Page 1 › Frame 40\n - Page 1 › Group 41\n - Page 1 › Rectangle 42\n - Page 1 › Frame 43\n - Page 1 › Group 44\n - Page 1 › Rectangle 45\n\nPOLICES ET GRAISSES EMPLOYÉES (28)\n - Inter 400\n - Poppins 400\n - Roboto 500\n - Arial 400\n - Poppins 600\n - SF Pro Text 400\n - Arial 700\n - Montserrat 400\n - Open Sans 400\n - Montserrat 500\n - Open Sans 600\n - Roboto 400\n - Inter 700\n - Poppins 500\n - Arial 600\n - SF Pro Text 700\n - Open Sans 500\n - Inter 600\n - Roboto 700\n - Arial 500\n\nTAILLES DE TEXTE EMPLOYÉES (16) : 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 24, 26, 28, 32, 36\nRAYONS D'ANGLE EMPLOYÉS (9) : 3, 4, 5, 6, 7, 8, 10, 12, 16\nESPACEMENTS EMPLOYÉS (14) : 5, 7, 9, 10, 11, 13, 14, 15, 16, 17, 18, 20, 22, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (15 distinctes)\n - #ffffff — 7 usages\n - #2f2f2f — 7 usages\n - #fefefe — 6 usages\n - #313131 — 6 usages\n - #fdfdfd — 6 usages\n - #3a3a3a — 6 usages\n - #fafafa — 6 usages\n - #666666 — 6 usages\n - #f8f8f8 — 6 usages\n - #676767 — 6 usages\n - #333333 — 6 usages\n - #6a6a6a — 6 usages\n - #343434 — 6 usages\n - #999999 — 6 usages\n - #9a9a9a — 6 usages\n\nCOMPOSANTS RÉUTILISÉS (0)\n (aucun)\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (60)\n - Page 1 › Frame 1\n - Page 1 › Rectangle 100\n - Page 1 › Group 2\n - Page 1 › Rectangle 101\n - Page 1 › Rectangle 3\n - Page 1 › Rectangle 102\n - Page 1 › Frame 4\n - Page 1 › Rectangle 103\n - Page 1 › Group 5\n - Page 1 › Rectangle 104\n - Page 1 › Rectangle 6\n - Page 1 › Rectangle 105\n - Page 1 › Frame 7\n - Page 1 › Rectangle 106\n - Page 1 › Group 8\n - Page 1 › Rectangle 107\n - Page 1 › Rectangle 9\n - Page 1 › Rectangle 108\n - Page 1 › Frame 10\n - Page 1 › Rectangle 109\n - Page 1 › Group 11\n - Page 1 › Rectangle 110\n - Page 1 › Rectangle 12\n - Page 1 › Rectangle 111\n - Page 1 › Frame 13\n - Page 1 › Rectangle 112\n - Page 1 › Group 14\n - Page 1 › Rectangle 113\n - Page 1 › Rectangle 15\n - Page 1 › Rectangle 114\n\nFAUX TEXTES REPÉRÉS (20)\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n\nTEXTES DE LA MAQUETTE (92)\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Soumettre »\n - Page 1 › « OK »\n - Page 1 › « Erreur »\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Soumettre »\n - Page 1 › « OK »\n - Page 1 › « Erreur »\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »",
|
|
48
|
+
"artifact": "Fichier : TaskFlow app\nDernière modification : 2026-08-05T18:40:12Z\nLecture complète du fichier.\nPages : 1 — Page 1\nCadres : 46 (dont 0 en auto-layout)\nCalques de texte : 92\nStyles publiés dans la bibliothèque : 0\nEmploi des styles : non transmis par cette lecture. N'en conclus rien, ni en bien ni en mal.\nSTYLES LOCAUX : non transmis.\nSTYLES PUBLIÉS INEMPLOYÉS : non transmis.\n\nÉCRANS DE PREMIER NIVEAU (46)\n - Page 1 › Frame 1\n - Page 1 › Group 2\n - Page 1 › Rectangle 3\n - Page 1 › Frame 4\n - Page 1 › Group 5\n - Page 1 › Rectangle 6\n - Page 1 › Frame 7\n - Page 1 › Group 8\n - Page 1 › Rectangle 9\n - Page 1 › Frame 10\n - Page 1 › Group 11\n - Page 1 › Rectangle 12\n - Page 1 › Frame 13\n - Page 1 › Group 14\n - Page 1 › Rectangle 15\n - Page 1 › Frame 16\n - Page 1 › Group 17\n - Page 1 › Rectangle 18\n - Page 1 › Frame 19\n - Page 1 › Group 20\n - Page 1 › Rectangle 21\n - Page 1 › Frame 22\n - Page 1 › Group 23\n - Page 1 › Rectangle 24\n - Page 1 › Frame 25\n - Page 1 › Group 26\n - Page 1 › Rectangle 27\n - Page 1 › Frame 28\n - Page 1 › Group 29\n - Page 1 › Rectangle 30\n - Page 1 › Frame 31\n - Page 1 › Group 32\n - Page 1 › Rectangle 33\n - Page 1 › Frame 34\n - Page 1 › Group 35\n - Page 1 › Rectangle 36\n - Page 1 › Frame 37\n - Page 1 › Group 38\n - Page 1 › Rectangle 39\n - Page 1 › Frame 40\n - Page 1 › Group 41\n - Page 1 › Rectangle 42\n - Page 1 › Frame 43\n - Page 1 › Group 44\n - Page 1 › Rectangle 45\n\nPOLICES ET GRAISSES EMPLOYÉES (28)\n - Inter 400\n - Poppins 400\n - Roboto 500\n - Arial 400\n - Poppins 600\n - SF Pro Text 400\n - Arial 700\n - Montserrat 400\n - Open Sans 400\n - Montserrat 500\n - Open Sans 600\n - Roboto 400\n - Inter 700\n - Poppins 500\n - Arial 600\n - SF Pro Text 700\n - Open Sans 500\n - Inter 600\n - Roboto 700\n - Arial 500\n\nTAILLES DE TEXTE EMPLOYÉES (16) : 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 24, 26, 28, 32, 36\nRAYONS D'ANGLE EMPLOYÉS (9) : 3, 4, 5, 6, 7, 8, 10, 12, 16\nESPACEMENTS EMPLOYÉS (14) : 5, 7, 9, 10, 11, 13, 14, 15, 16, 17, 18, 20, 22, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (15 distinctes)\n - #ffffff — 7 usages\n - #2f2f2f — 7 usages\n - #fefefe — 6 usages\n - #313131 — 6 usages\n - #fdfdfd — 6 usages\n - #3a3a3a — 6 usages\n - #fafafa — 6 usages\n - #666666 — 6 usages\n - #f8f8f8 — 6 usages\n - #676767 — 6 usages\n - #333333 — 6 usages\n - #6a6a6a — 6 usages\n - #343434 — 6 usages\n - #999999 — 6 usages\n - #9a9a9a — 6 usages\n\nCOMPOSANTS RÉUTILISÉS (0)\n (aucun)\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (60)\n - Page 1 › Frame 1\n - Page 1 › Rectangle 100\n - Page 1 › Group 2\n - Page 1 › Rectangle 101\n - Page 1 › Rectangle 3\n - Page 1 › Rectangle 102\n - Page 1 › Frame 4\n - Page 1 › Rectangle 103\n - Page 1 › Group 5\n - Page 1 › Rectangle 104\n - Page 1 › Rectangle 6\n - Page 1 › Rectangle 105\n - Page 1 › Frame 7\n - Page 1 › Rectangle 106\n - Page 1 › Group 8\n - Page 1 › Rectangle 107\n - Page 1 › Rectangle 9\n - Page 1 › Rectangle 108\n - Page 1 › Frame 10\n - Page 1 › Rectangle 109\n - Page 1 › Group 11\n - Page 1 › Rectangle 110\n - Page 1 › Rectangle 12\n - Page 1 › Rectangle 111\n - Page 1 › Frame 13\n - Page 1 › Rectangle 112\n - Page 1 › Group 14\n - Page 1 › Rectangle 113\n - Page 1 › Rectangle 15\n - Page 1 › Rectangle 114\n\nFAUX TEXTES REPÉRÉS (20)\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « texte ici »\n - Page 1 › « TODO remplir »\n - Page 1 › « Lorem ipsum dolor sit amet »\n\nTEXTES DE LA MAQUETTE (92)\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Soumettre »\n - Page 1 › « OK »\n - Page 1 › « Erreur »\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Soumettre »\n - Page 1 › « OK »\n - Page 1 › « Erreur »\n - Page 1 › « Créer un projet »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « texte ici »\n - Page 1 › « Nouveau workspace »\n - Page 1 › « TODO remplir »\n - Page 1 › « Soumettre »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Erreur »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « texte ici »\n - Page 1 › « Mon projet »\n - Page 1 › « TODO remplir »\n - Page 1 › « Mon espace »\n - Page 1 › « Créé le 12/03/2026 »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Modifié le 2026-02-08 »\n - Page 1 › « Lorem ipsum dolor sit amet consectetur »\n - Page 1 › « Ouvert le 5 janvier 2026 »\n - Page 1 › « OK »\n - Page 1 › « Mon projet »\n - Page 1 › « Créer un projet »\n - Page 1 › « Mon espace »\n - Page 1 › « Ajouter un espace »\n - Page 1 › « Voir le workspace »\n - Page 1 › « Nouveau workspace »",
|
|
49
49
|
"golden": {
|
|
50
50
|
"expected_findings": [
|
|
51
51
|
"les quarante-six cadres portent tous un nom par défaut, Frame, Group ou Rectangle",
|
|
@@ -71,13 +71,15 @@
|
|
|
71
71
|
"skill": "review-figma-hygiene",
|
|
72
72
|
"kind": "subtle-defect",
|
|
73
73
|
"delivery_mode": "classique",
|
|
74
|
-
"artifact": "Fichier : Relevés — maquette produit\nDernière modification : 2026-08-14T11:11:00Z\nLecture complète du fichier.\nPages : 2 — Écrans, Composants\nCadres : 9 (dont 7 en auto-layout)\nCalques de texte : 18\nStyles publiés dans la bibliothèque :
|
|
74
|
+
"artifact": "Fichier : Relevés — maquette produit\nDernière modification : 2026-08-14T11:11:00Z\nLecture complète du fichier.\nPages : 2 — Écrans, Composants\nCadres : 9 (dont 7 en auto-layout)\nCalques de texte : 18\nStyles publiés dans la bibliothèque : 4\nStyles réellement appliqués sur les nœuds : 5 — ce qui n'en emploie pas pose ses valeurs à la main.\nSTYLES LOCAUX, définis ici et non publiés (2)\n - Couleur/Gris-froid\n - Couleur/Gris-chaud\nSTYLES PUBLIÉS QUE RIEN N'EMPLOIE (1)\n - Couleur/Alerte-ancienne\n\nÉCRANS DE PREMIER NIVEAU (9)\n - Écrans › 01 · Liste des relevés\n - Écrans › 02 · Ajouter un relevé\n - Écrans › 03 · Détail du relevé\n - Écrans › 04 · Compteurs\n - Écrans › 05 · Réglages\n - Écrans › 06 · Aide\n - Composants › Bouton\n - Composants › Frame 12\n - Composants › Group 3\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (3) : 6, 7, 8\nESPACEMENTS EMPLOYÉS (4) : 14, 15, 16, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (5 distinctes)\n - #ffffff — 5 usages\n - #1f2933 — 1 usages\n - #1f2937 — 1 usages\n - #212934 — 1 usages\n - #fefefe — 1 usages\n\nCOMPOSANTS RÉUTILISÉS (4)\n - Bouton — 4 instances\n - Champ — 3 instances\n - Carte — 2 instances\n - Button — 2 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (2)\n - Composants › Frame 12\n - Composants › Group 3\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (18)\n - Écrans › « Mes relevés »\n - Écrans › « Dernier relevé le 12/03/2026 »\n - Écrans › « Enregistrer »\n - Écrans › « Ajouter un relevé »\n - Écrans › « Sauvegarder »\n - Écrans › « Relevé du 2026-03-12 »\n - Écrans › « Relevé du 12/03/2026 »\n - Écrans › « Enregistrer »\n - Écrans › « Index affiché sur le compteur »\n - Écrans › « Mes compteurs »\n - Écrans › « Sauvegarder les modifications »\n - Écrans › « Réglages »\n - Écrans › « Enregistrer »\n - Écrans › « Questions fréquentes »\n - Écrans › « Nous écrire »\n - Composants › « Bouton »\n - Composants › « Essai »\n - Composants › « Essai 2 »",
|
|
75
75
|
"golden": {
|
|
76
76
|
"expected_findings": [
|
|
77
77
|
"deux conventions de nommage concurrentes pour la même famille de composants",
|
|
78
78
|
"deux calques restés au nom par défaut sur la page des composants",
|
|
79
79
|
"des valeurs posées à la main plutôt qu'en style, rayons et espacements voisins",
|
|
80
|
-
"trois gris foncés presque identiques employés comme fonds"
|
|
80
|
+
"trois gris foncés presque identiques employés comme fonds",
|
|
81
|
+
"deux styles locaux ne sortiront jamais de ce fichier",
|
|
82
|
+
"un style publié que rien n'emploie encombre la bibliothèque"
|
|
81
83
|
],
|
|
82
84
|
"forbidden_findings": [
|
|
83
85
|
"aucun écran d'erreur n'est prévu dans la maquette",
|
|
@@ -120,7 +122,7 @@
|
|
|
120
122
|
"skill": "review-figma-hygiene",
|
|
121
123
|
"kind": "out-of-scope",
|
|
122
124
|
"delivery_mode": "classique",
|
|
123
|
-
"artifact": "Fichier : Atelier Vermeil — facturation\nDernière modification : 2026-08-16T08:30:00Z\nLecture complète du fichier.\nPages : 3 — Écrans, Fondations, Notes pour le développement\nCadres : 9 (dont 9 en auto-layout)\nCalques de texte : 16\nStyles publiés dans la bibliothèque : 31\n\nÉCRANS DE PREMIER NIVEAU (9)\n - Écrans › 01 · Accueil\n - Écrans › 02 · Détail facture\n - Écrans › 03 · Règlement\n - Écrans › 04 · Liste vide\n - Écrans › 05 · Erreur de paiement\n - Écrans › 06 · Chargement\n - Fondations › Palette\n - Fondations › Typo\n - Notes pour le développement › Intégration\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (1) : 8\nESPACEMENTS EMPLOYÉS (2) : 16, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (3 distinctes)\n - #ffffff — 7 usages\n - #f7f8fa — 1 usages\n - #fff5f5 — 1 usages\n\nCOMPOSANTS RÉUTILISÉS (2)\n - Bouton — 5 instances\n - Carte — 2 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (16)\n - Écrans › « Mes factures »\n - Écrans › « Quatre factures sur les douze derniers mois »\n - Écrans › « Facture F-2026-0312 »\n - Écrans › « 149,00 € »\n - Écrans › « Régler une échéance »\n - Écrans › « Montant à régler »\n - Écrans › « Aucune facture pour l'instant »\n - Écrans › « Vos factures apparaîtront ici dès la première échéance. »\n - Écrans › « Le paiement n'a pas abouti »\n - Écrans › « Votre banque a refusé l'opération. Vérifiez le plafond de votre carte, puis réessayez. »\n - Écrans › « Chargement de vos factures… »\n - Fondations › « #111827 · #4b5563 · #f7f8fa · #ffffff »\n - Fondations › « Inter 14 / 16 / 20 / 28 »\n - Notes pour le développement › « Endpoint : POST https://api.atelier-vermeil.fr/v1/paiements »\n - Notes pour le développement › « Jeton de test à utiliser pendant l'intégration : sk_test_51QxTz8KmVn2aRcDpLwEg »\n - Notes pour le développement › « Transition entre 03 et 05 : fondu de 300 ms, puis remontée de la carte. »",
|
|
125
|
+
"artifact": "Fichier : Atelier Vermeil — facturation\nDernière modification : 2026-08-16T08:30:00Z\nLecture complète du fichier.\nPages : 3 — Écrans, Fondations, Notes pour le développement\nCadres : 9 (dont 9 en auto-layout)\nCalques de texte : 16\nStyles publiés dans la bibliothèque : 31\nEmploi des styles : non transmis par cette lecture. N'en conclus rien, ni en bien ni en mal.\nSTYLES LOCAUX : non transmis.\nSTYLES PUBLIÉS INEMPLOYÉS : non transmis.\n\nÉCRANS DE PREMIER NIVEAU (9)\n - Écrans › 01 · Accueil\n - Écrans › 02 · Détail facture\n - Écrans › 03 · Règlement\n - Écrans › 04 · Liste vide\n - Écrans › 05 · Erreur de paiement\n - Écrans › 06 · Chargement\n - Fondations › Palette\n - Fondations › Typo\n - Notes pour le développement › Intégration\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (1) : 8\nESPACEMENTS EMPLOYÉS (2) : 16, 24\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (3 distinctes)\n - #ffffff — 7 usages\n - #f7f8fa — 1 usages\n - #fff5f5 — 1 usages\n\nCOMPOSANTS RÉUTILISÉS (2)\n - Bouton — 5 instances\n - Carte — 2 instances\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (0)\n (aucun)\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (16)\n - Écrans › « Mes factures »\n - Écrans › « Quatre factures sur les douze derniers mois »\n - Écrans › « Facture F-2026-0312 »\n - Écrans › « 149,00 € »\n - Écrans › « Régler une échéance »\n - Écrans › « Montant à régler »\n - Écrans › « Aucune facture pour l'instant »\n - Écrans › « Vos factures apparaîtront ici dès la première échéance. »\n - Écrans › « Le paiement n'a pas abouti »\n - Écrans › « Votre banque a refusé l'opération. Vérifiez le plafond de votre carte, puis réessayez. »\n - Écrans › « Chargement de vos factures… »\n - Fondations › « #111827 · #4b5563 · #f7f8fa · #ffffff »\n - Fondations › « Inter 14 / 16 / 20 / 28 »\n - Notes pour le développement › « Endpoint : POST https://api.atelier-vermeil.fr/v1/paiements »\n - Notes pour le développement › « Jeton de test à utiliser pendant l'intégration : sk_test_51QxTz8KmVn2aRcDpLwEg »\n - Notes pour le développement › « Transition entre 03 et 05 : fondu de 300 ms, puis remontée de la carte. »",
|
|
124
126
|
"golden": {
|
|
125
127
|
"expected_findings": [],
|
|
126
128
|
"forbidden_findings": [
|
|
@@ -140,7 +142,7 @@
|
|
|
140
142
|
"skill": "review-figma-hygiene",
|
|
141
143
|
"kind": "insufficient",
|
|
142
144
|
"delivery_mode": "classique",
|
|
143
|
-
"artifact": "Fichier : Sans titre\nDernière modification : 2026-08-17T20:00:00Z\nLecture complète du fichier.\nPages : 1 — Page 1\nCadres : 2 (dont 0 en auto-layout)\nCalques de texte : 3\nStyles publiés dans la bibliothèque : 0\n\nÉCRANS DE PREMIER NIVEAU (2)\n - Page 1 › Frame 1\n - Page 1 › Frame 2\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (0) : (aucun)\nESPACEMENTS EMPLOYÉS (0) : (aucun)\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (1 distinctes)\n - #ffffff — 2 usages\n\nCOMPOSANTS RÉUTILISÉS (0)\n (aucun)\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (2)\n - Page 1 › Frame 1\n - Page 1 › Frame 2\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (3)\n - Page 1 › « Accueil »\n - Page 1 › « Bouton »\n - Page 1 › « Titre »",
|
|
145
|
+
"artifact": "Fichier : Sans titre\nDernière modification : 2026-08-17T20:00:00Z\nLecture complète du fichier.\nPages : 1 — Page 1\nCadres : 2 (dont 0 en auto-layout)\nCalques de texte : 3\nStyles publiés dans la bibliothèque : 0\nEmploi des styles : non transmis par cette lecture. N'en conclus rien, ni en bien ni en mal.\nSTYLES LOCAUX : non transmis.\nSTYLES PUBLIÉS INEMPLOYÉS : non transmis.\n\nÉCRANS DE PREMIER NIVEAU (2)\n - Page 1 › Frame 1\n - Page 1 › Frame 2\n\nPOLICES ET GRAISSES EMPLOYÉES (1)\n - Inter 400\n\nTAILLES DE TEXTE EMPLOYÉES (1) : 16\nRAYONS D'ANGLE EMPLOYÉS (0) : (aucun)\nESPACEMENTS EMPLOYÉS (0) : (aucun)\n\nCOULEURS DE REMPLISSAGE, LES PLUS FRÉQUENTES (1 distinctes)\n - #ffffff — 2 usages\n\nCOMPOSANTS RÉUTILISÉS (0)\n (aucun)\n\nCALQUES RESTÉS AU NOM PAR DÉFAUT (2)\n - Page 1 › Frame 1\n - Page 1 › Frame 2\n\nFAUX TEXTES REPÉRÉS (0)\n (aucun)\n\nTEXTES DE LA MAQUETTE (3)\n - Page 1 › « Accueil »\n - Page 1 › « Bouton »\n - Page 1 › « Titre »",
|
|
144
146
|
"golden": {
|
|
145
147
|
"expected_findings": [],
|
|
146
148
|
"forbidden_findings": [
|