06 — Refonte de la web application¶
Traduction de l'analyse (docs 01-05) en produit : objectifs redéfinis, carte des pages, parcours, et maquettes de l'interface — en particulier l'éditeur de mémoire section par section et la vue d'analyse read-only.
⚠️ Révisé par le doc 08. L'éditeur n'est plus piloté par une trame Serpe mais par le cadre client parsé (rubriques + barème en points qui alloue le budget de mots). La « bibliothèque de blocs » (module C) devient concrète =
blocs.jsonl(1 776 blocs, 3,1 Mo, tient en KV — pas de base vectorielle pour le POC), à distinguer d'une bibliothèque canonique curée. Maquette révisée et plan de mise en œuvre : doc 08 §5, §7.
1. Objectifs redéfinis¶
L'app actuelle (kanban + fiche AO à onglets vides) est une bonne coquille mais ne répond pas encore au besoin. Le besoin réel, clarifié, se structure en deux modules + un socle transverse :
| Module | Finalité | Utilisateur | Priorité |
|---|---|---|---|
| A. AO terminés (read-only) | Démontrer la valeur vite : analyser/qualifier le passé, statistiques, synthèses IA | Direction, chargés d'études | P1 — quick win |
| B. AO en cours (workflow) | Pré-générer la réponse section par section, assembler le mémoire | Chargés d'études | P2 — cœur métier |
| C. Bibliothèque & référentiels | Source unique de vérité (blocs réutilisables, références, parc, certifs) | Admin, chargés d'études | P1 — prérequis de B |
Principe directeur : le module A (lecture) et le module C (référentiels) se construisent d'abord — ils démontrent la valeur sans risque et alimentent le module B (génération). C'est aussi l'ordre de priorité du doc 04 §5.
2. Carte des pages¶
/ Tableau de bord (KPIs + stats transverses, doc 05 §2.3)
/appels-offres Liste (datatable) filtrable — en cours ET terminés
/kanban Pipeline des AO en cours (statuts normalisés)
── Module A : AO terminés (read-only) ──────────────────────────
/ao/[id] Fiche AO — onglets adaptés au statut :
• Terminé → Analyse / Documents / Réponse déposée / Projets liés
• En cours → Analyse / Documents / RÉDACTION / Chiffrage / Dépôt
/analyse Vue statistique agrégée (répartition, taux, montants)
── Module B : AO en cours (workflow de réponse) ────────────────
/ao/[id]/rediger ÉDITEUR DE MÉMOIRE section par section (écran clé)
/ao/[id]/rediger/[section] Édition d'une section (formulaire + génération IA)
── Module C : Bibliothèque & référentiels ──────────────────────
/bibliotheque/blocs Blocs réutilisables (figés + trames), versionnés
/bibliotheque/references Références clients (taggées par type de prestation)
/bibliotheque/materiel Parc matériel & fiches engins
/bibliotheque/moyens Moyens humains / certifications / organigrammes
── Admin ───────────────────────────────────────────────────────
/parametres Agences, mapping de statuts, entreprise, utilisateurs
3. Parcours utilisateur (les 2 essentiels)¶
Parcours A — « comprendre un AO passé » (démo de valeur)
Liste AO (filtre : terminés) → clic sur un AO → onglet Analyse :
carte d'identité + résumé IA du besoin + contraintes clés + postes/quantités +
ce qu'on a répondu + issue. En 1 écran, un décideur "voit" l'AO sans ouvrir 40 PDF.
Parcours B — « répondre à un AO en cours »
Kanban (colonne « À analyser ») → fiche AO → onglet Analyse (DCE extrait) →
bouton « Rédiger le mémoire » → ÉDITEUR sections :
1. l'app propose une trame (mapping critères RC → sections)
2. suggère un mémoire de référence similaire (RAG par type de prestation)
3. pré-remplit les blocs FIGÉS (suivi, réception, RSE, sécurité…)
4. génère les blocs PARAMÉTRÉS (contexte, contraintes/solutions, méthodo)
5. l'utilisateur valide/édite section par section (statut par section)
6. assemblage → document mis en forme (avec visuels) → dépôt
4. Maquette — Vue d'analyse d'un AO terminé (Module A)¶
┌──────────────────────────────────────────────────────────────────────────┐
│ ← Appels d'offres B220301 · Prestations sylvicoles — Lac Vassivière │
│ [ Perdu ] AFFAIRES-16 · CELRL (87) · MAPA · Forfait │
├──────────────────────────────────────────────────────────────────────────┤
│ Analyse │ Documents │ Réponse déposée │ Projets liés │
├──────────────────────────────────────────────────────────────────────────┤
│ CARTE D'IDENTITÉ SYNTHÈSE IA │
│ ┌───────────────────────────┐ ┌──────────────────────────────────────┐ │
│ │ Montant estimé ~48 000 € │ │ Amélioration sylvicole sur accrus │ │
│ │ Lots 1 │ │ forestiers : broyage, abattage/ │ │
│ │ Date limite 22/07/24 │ │ façonnage, potées. Site classé, │ │
│ │ Durée 2 mois │ │ accès contraint, période sèche. │ │
│ │ Type prestation Sylvicole │ └──────────────────────────────────────┘ │
│ │ Critères Prix 40/Tech 60 ⚠│ CONTRAINTES CLÉS (→ réutilisables) │
│ └───────────────────────────┘ • accès engins limité • site classé │
│ • gestion produits de coupe • délais │
│ POSTES & QUANTITÉS CE QU'ON A RÉPONDU │
│ ┌───────────────────────────┐ Mémoire 117 p. · 3 réf. citées · │
│ │ Recépage/abattage 12 347 €│ moyens : 2 équipes, broyeur+PL grue │
│ │ Gestion coupes 19 911 €│ Prix remis : 40 737 € TTC │
│ │ Installation/repli 1 690 €│ │
│ └───────────────────────────┘ [ Ouvrir le mémoire déposé ] │
└──────────────────────────────────────────────────────────────────────────┘
⚠ = donnée issue du RC, à fiabiliser quand un vrai RC sera fourni
5. Maquette — Éditeur de mémoire section par section (Module B, écran clé)¶
┌──────────────────────────────────────────────────────────────────────────┐
│ Rédiger le mémoire — L240572 · Déboisement des emprises · DREAL (16) │
│ Mode : LIBRE · Trame : Serpe standard · Réf. similaire : IIBSN (79) ▸│
├───────────────┬──────────────────────────────────────────────────────────┤
│ SECTIONS │ 3.1 Méthodologie / organisation du chantier │
│ (glisser p/ │ ┌────────────────────────────────────────────────────┐ │
│ réordonner) │ │ Type : PARAMÉTRÉE (génération assistée) │ │
│ │ │ │ │
│ ✓ 1 Contexte │ │ Postes détectés (CCTP) : │ │
│ ✓ 2 Avantages │ │ ☑ Bûcheronnage manuel ☑ Débroussaillage │ │
│ ● 3 Réponses… │ │ ☑ Étrépage manuel ☐ Broyage │ │
│ ✓ 3.1 Méthodo│ │ │ │
│ ○ 3.2 Moyens │ │ Contraintes de site (→ contraintes/solutions) : │ │
│ ○ 4 Contraintes│ │ ☑ Zone Natura 2000 ☑ Route/circulation │ │
│ ⚙ 5 Suivi chant│ │ ☑ Cours d'eau ☐ Urbain dense │ │
│ ⚙ 6 Réception │ │ │ │
│ ⚙ 7 Ctrl qualité│ │ [ ✨ Générer cette section ] [ Réinitialiser ] │ │
│ ⚙ 8 H&S + RSE │ │ ──────────────────────────────────────────────── │ │
│ ⊞ 9 Références │ │ « Préparation du chantier — Une reconnaissance │ │
│ ⊞ 10 Annexes │ │ préalable est réalisée par le référent d'agence… │ │
│ │ │ Maintien de la circulation → signalisation NF… │ │
│ ───────────── │ │ Longueur max 220 m en campagne, 100 m urbain… » │ │
│ Légende : │ │ [ éditable ] │ │
│ ✓ validé │ └────────────────────────────────────────────────────┘ │
│ ● en cours │ Statut section : ● généré, à valider │
│ ○ à faire │ Source : réf. IIBSN §3.1 + contraintes CCTP L240572 │
│ ⚙ bloc figé │ │
│ ⊞ sélection │ [ ‹ Section précédente ] [ Valider · suivante › ]│
├───────────────┴──────────────────────────────────────────────────────────┤
│ Progression : 4/10 sections validées [ Aperçu assemblé ] [ Exporter ] │
└──────────────────────────────────────────────────────────────────────────┘
Trois types de sections, trois interactions (rappel doc 03 §6-7) : - ⚙ Figée → bouton « Insérer la version [date] » (choix d'une version datée du bloc de la bibliothèque). Édition découragée (source de vérité). - ● Paramétrée → cases (postes + contraintes issus du CCTP) + « ✨ Générer » (Gemini, avec la réf. similaire en contexte) → texte éditable. - ⊞ Sélection → piocher dans une base filtrée (références par type de prestation, engins du parc, packs d'annexes).
6. Maquette — Assemblage & export¶
┌──────────────────────────────────────────────────────────────────────────┐
│ Aperçu assemblé — L240572 Cadre : LIBRE Pages estimées : 34 │
│ ⚠ Limite imposée : aucune détectée (RC non fourni) │
├──────────────────────────────────────────────────────────────────────────┤
│ [Sommaire auto] 1 Contexte · 2 Avantages · 3 Réponses aux critères … │
│ │
│ Contrôles « passoire » (Cathy) : │
│ ✓ Toutes sections validées ✓ Pagination ⚠ 1 pack annexe non coché │
│ ✓ Pièces candidature (DC1/DC2/dossier admin) ✓ SOPRE │
│ │
│ Visuels intégrés : ☑ organigramme agence ☑ fiches engins ☐ Gantt │
│ │
│ [ Exporter .docx ] [ Exporter .pdf ] [ Envoyer vers Google Docs ] │
└──────────────────────────────────────────────────────────────────────────┘
L'export reprend le point différenciant identifié : mise en forme aux standards Serpe + intégration correcte des visuels (doc 03 §5).
7. Bibliothèque de blocs (Module C — le prérequis)¶
/bibliotheque/blocs
┌──────────────────────────────────────────────────────────────────────────┐
│ Blocs réutilisables [ + Nouveau bloc ] Filtrer : [ tous ▾ ] │
├──────────────────────────────────────────────────────────────────────────┤
│ Bloc Type Version MAJ Verticale │
│ Suivi de chantier Figé v3 12/2025 Toutes │
│ Réception du chantier Figé v2 12/2025 Toutes │
│ Démarche RSE Figé v4 01/2026 Toutes │
│ Politique H&S Figé v3 01/2026 Toutes │
│ Trame SOPRE Trame v2 11/2025 Toutes │
│ NOS — Plan gestion végét. Trame v1 — SNCF │
│ Présentation groupe Figé v5 01/2026 Toutes │
│ Fiche engin : broyeur SAELEN Asset — — Élagage │
└──────────────────────────────────────────────────────────────────────────┘
Chaque bloc versionné et daté = fin des désynchronisations entre agences (doc 04 §1). C'est la source unique de vérité — le quick win.
8. Ce qui change vs l'app actuelle (feat/scaffold-poc)¶
| Actuel | Devient |
|---|---|
| Fiche AO à onglets vides (Documents/Analyse/Rédaction/Visuels/Projets) | Onglets adaptés au statut + onglet Analyse peuplé de data qualifiée |
| Rien pour rédiger | Éditeur section par section (le cœur) |
| Rien pour les référentiels | Bibliothèque de blocs versionnée (source de vérité) |
| Kanban statique | Kanban alimenté par les AO réels (statuts normalisés via statut_mapping) |
| Données mockées | Alimenté par ingestion Drive + extraction Gemini (docs 02, 07) |
9. Découpage de mise en œuvre (proposé)¶
- Socle données : schéma révisé (doc 07) + ingestion Drive read-only
(métadonnées) + normalisation statut via
statut_mapping. - Module C (bibliothèque de blocs) : source de vérité — quick win visible.
- Module A (analyse read-only) : extraction Gemini du DCE → carte d'identité
- synthèses → démonstration de valeur.
- Module B (éditeur section par section) : trame + blocs figés d'abord, puis génération des blocs paramétrés (RAG sur mémoires similaires).
- Chiffrage assisté (interrogation d'affaires similaires) — itération ultérieure.