The problem

You take over NOVA, a project whose information is scattered across emails, meeting notes, tickets, contracts, plans and screenshots. Some of it is outdated and some of it contradicts itself.

What we deliver

All deliverables are standalone Markdown files in livrables/; the jury needs no tool to read them.

  • reponses_10_questions.md: the ten answers, each with the source file and the exact place (transcript timestamp, Excel cell, PDF page, dated ticket comment, screenshot).
  • brief_reprise.md: the one-page handover brief (owner, approved date and conditions, scope, budget, invoices, priorities).
  • memoire_projet.md: timeline, decisions (proposal, decision, validation), six resolved contradictions, and remaining actions with owner, evidence and deadline.
  • mode_demploi.md: how to open and use the submission, tools, manual steps, limits.

The search application

A local application was our investigation tool: hybrid search (BM25 plus embeddings), answers where every fact is cited down to the file and exact place, an authority note per source, and a flag when the same content appears twice (an attachment that is also a separate file is not an independent confirmation).

A new event is stored in a separate layer: the baseline of 30 September is never modified, and a switch lets you answer from the current state or from the baseline only. An impact analysis says what changed, what earlier information is affected, and what actions follow.

How we checked

Every citation in the deliverables was verified by hand in the source file before publication.

Limits

  • A small local model can make mistakes, in particular when analysing a new event: always open the cited sources (one click).
  • Screenshot OCR can miss table rows; the two decisive screenshots were read by eye.
  • When information is missing, the deliverables say "à confirmer" instead of guessing.

Tools

Python (FastAPI), Ollama (bge-m3 embeddings and a local Qwen3 4B model), tesseract for screenshot OCR. A larger open model (Qwen3.8-27B on a GPU server controlled by the team) was used to draft answers, which were then verified by hand. Development and writing assisted by Claude (Anthropic). No paid subscription is needed to read or run the submission.

Built With

Share this project:

Updates

Submission history