Inspiration
Reprendre un projet en cours, c'est reconstituer son histoire à partir de 64 fichiers : courriels, transcriptions, tickets, captures, contrats, plans. Certains se contredisent. Un rapport de statut présentait sécurité et accessibilité comme vertes, alors que les tickets n'étaient pas acceptés.
Ce que ça fait
Un site navigable en un seul fichier qui répond aux dix questions, chacune avec le fichier source et le repère précis (horodatage, cellule, page ou capture). Il contient une chronologie de 41 faits sourcés, séparés en proposition, décision, validation, livraison et statut ; 12 contradictions résolues par autorité ou par date ; 10 actions avec responsable, preuve et échéance, marquées confirmées ou proposées ; un brief d'une page ; le budget ; et un mode d'emploi. La date du 22 octobre a été approuvée le 10 septembre, sous trois conditions de go-live. Montant autorisé : 204 000 $ CAD. Facturé : 186 000 $. Payé : 132 000 $. À retenir : 18 000 $, pour une demande de changement non approuvée.
Comment on l'a construit
Lecture de chaque fichier : courriels décodés, transcriptions, tickets, journaux, captures (lues visuellement), PDF (pdftotext) et classeurs (openpyxl, y compris commentaires). Chaque fait est stocké avec ses sources. 118 contrôles automatiques vérifient que chaque citation existe dans son fichier, que chaque action est complète, et que chaque identifiant cité existe.
Défis rencontrés
Distinguer une proposition d'une décision, et une livraison d'une validation. Plusieurs documents présentaient un travail comme terminé alors qu'il était seulement livré. Il a fallu remonter chaque affirmation à la source la plus autoritaire.
Réalisations dont on est fiers
Chaque réponse se vérifie en moins d'une minute : la suite de tests contrôle la citation, et le site affiche le repère exact. Les contradictions sont expliquées par l'autorité ou par la date, pas écartées.
Ce qu'on a appris
Un statut vert dans un rapport n'est pas une validation. Le ticket et ses commentaires sont la source primaire.
Et après
Intégrer la nouvelle information du défi sans toucher au baseline. Le mécanisme de mise à jour est en place, mais il n'a pas encore été testé avec de vraies données. Compléter les échéances marquées « à confirmer ».
Limites et hypothèses
Le compte rendu signé du comité du 10 septembre n'est pas dans le corpus : la décision repose sur la transcription. Le montant autorisé suppose qu'une demande de changement approuvée est autorisée. Les échéances marquées « à confirmer » ne figurent pas dans le corpus.
Outils, sources et modèles
Python 3.11, pdftotext (poppler), openpyxl, la bibliothèque email standard, pytest, Playwright (vérification visuelle). Lecture des fichiers et des captures assistée par Claude (Anthropic) ; vérification des citations et choix des réponses relus par l'équipe.
Built With
- html
- javascript
- openpyxl
- playwright
- poppler
- pytest
- python
Log in or sign up for Devpost to join the conversation.