Files
nav-carte/PILOTE.md
Jules Neny c40f2701db snapshot(windows): PILOTE.md non commite au 07/08/2026
Doc de pilotage nav-carte (cree 23/06, maj 28/06) present uniquement sur
le PC Windows. Sauvegarde avant bascule sur le portable Linux. Branche
snapshot : main est inchangee, aucun historique reecrit.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BERCnDiqhT6SJUe9wGZmXQ
2026-08-07 23:07:40 +02:00

189 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
type: pilote
projet: AEP — nav-carte (aep.trans-former.fr)
casquette: Stack technique
pilote: ATIS Dev
created: 2026-06-23
updated: 2026-06-28
---
# PILOTE — AEP / nav-carte
> Doc de pilotage vivant du site **aep.trans-former.fr**. Source de vérité opérationnelle : état déployé, chantiers, décisions, dette. Le journal de dev détaillé reste dans `JOURNAL-V2.md`. Ce doc est l'index de pilotage, pas le journal.
---
## 1. Ce que c'est
- **Site** : `https://aep.trans-former.fr` — cartographie politique AEP (Architecture En Plus / écosystème militant).
- **Stack** : Nuxt 3 (Nitro SSR) + Vue + Leaflet + D3. Backend RAG = LightRAG (Docker).
- **Repo** : `1 PROJETS/TECH .../nav-carte/` — remote Gitea `git.trans-former.fr/jules/nav-carte.git`.
- **Pilote** : ATIS Dev (ne code pas, dispatche des agents Sonnet).
---
## 2. Architecture déployée (VÉRIFIÉE 2026-06-23) ⚠ lire avant toute session
Source fréquente de confusion — état réel constaté sur le VPS :
```
aep.trans-former.fr
│ Caddy : reverse_proxy localhost:3333
aep.service ← LE service réel (systemd, active/running, Nitro Node)
├── App dir : /opt/aep
├── ExecStart : node /opt/aep/.output/server/index.mjs
├── EnvironmentFile: /opt/aep/.env (contient RAG_PE_URL, MISTRAL_API_KEY, etc.)
└── Port : 3333
LightRAG PE : localhost:9621 (Docker, health 200 ✓) ← backend du chatbot RAG
PIÈGES / fausses pistes :
✗ nav-carte.service → inactive/dead (ANCIEN nom, abandonné — ne pas chercher de ce côté)
✗ nav-worker.service → FAILED (worker enrichissement IA, mort — à statuer)
✗ /opt/nav-carte → n'existe pas (le code n'est PAS sur le VPS en git)
```
**Mécanisme de déploiement = MANUEL, scp/tar (PAS de git pull sur le VPS) :**
```
1. npm run build (local → génère .output/)
2. scp/rsync .output/ → vps-hetzner:/opt/aep/.output/
3. ssh vps-hetzner "systemctl restart aep.service"
4. vérifier : curl -I https://aep.trans-former.fr/<route>
```
**Disque VPS : 91 % (3,5 G libres) — à surveiller, pas bloquant.**
---
## 3. État git du repo (2026-06-23)
- `main` == `gitea/main` == `cd8fe9e2` (0 ahead / 0 behind, parfaitement sync).
- **Le commit déployé sur le VPS est PÉRIMÉ** (antérieur à `cd8fe9e2`) → `/outils`, `/media`, routes chatbot = 404 live alors que le code existe sur `main`.
- **Piège repos imbriqués** : `nav-carte/` est un sous-repo dans le vault. Le vault parent n'est PLUS un repo git (chirurgie 2026-05-07). Travailler git uniquement au niveau `nav-carte/`.
### Travail local non committé au 2026-06-23
| Fichier | État | Destination |
|---------|------|-------------|
| `components/ChatbotPensees.vue` | untracked | **P0/P1 — à committer + déployer** (chatbot RAG) |
| `server/api/chatbot-pensees.post.ts` | untracked | **P0/P1 — à committer + déployer** (route chatbot, appelle LightRAG :9621) |
| `nuxt.config.ts` | modifié (+1) | **P0/P1** — ajoute `runtimeConfig.ragPeUrl` (requis par la route chatbot) |
| `components/MediaTabVisuel.vue` | modifié (CSS) | **P0/P1** — layout toolbar/carte/chatbot |
| `pages/a-propos.vue` | modifié (+64) | **P0/P1** — contenu À propos |
| `pages/contribuer-job.vue` | untracked (stub) | **P2** — laisser untracked (feature Proposer) |
| `pages/contribuer-reseau.vue` | untracked (stub) | **P2** — laisser untracked |
| `.firecrawl/` | untracked | junk — gitignore |
| `pages/index-v1-backup.vue.tmp.*` | untracked | junk — supprimer |
### Branches dispersées (dette — voir §6)
```
main ← prod
feat/outils-v1 / -build / -media ← travail Outils (en partie déjà sur main)
feat/aep-v1.1-nav-carte ← contient a6fff9a9 "PA3 bouton Proposer contextuel"
feat/aep-pratiques-regeneratives ← contient d10586c4 "page /proposer-pratique" + form
feat/aep-rag-pensees-ecologiques ← travail RAG/chatbot
feat/aep-taff-v1 / feat/aep-v2-restore / feat/codev-mvp / wip-stash-v2-onglet2-20260506
```
---
## 4. Chantiers (état au 2026-06-23)
| Prio | Chantier | Diagnostic | Statut | Nature |
|------|----------|-----------|--------|--------|
| **P0** | Onglet Outils + page /media + redirect /rag manquants live | Build VPS périmé (code committé, pas déployé) | ✅ **Fait 2026-06-23** (commit `f3ab28bd` déployé, routes 200, /rag→301) | Mécanique : build + deploy |
| **P1** | Chatbot RAG cassé | Route + composant non committés ; LightRAG PE :9621 = UP | ✅ **Fait 2026-06-23** (route déployée, testé public OK, réponses sourcées) | Mixte : commit + deploy + test |
| **P2** | Interface Proposer 5 onglets (Écosystème/Réseau/Jobs/Outils/Références RAG) | Feature dispersée sur branches feature jamais mergées ; `main` n'a qu'1 form (`contribuer.vue`) + 2 stubs untracked | ✅ **Fait 2026-06-23** (commit `c860dabd`, déployé, testé 5/5 types 201) | 4 types → NocoDB `orgas` + `submission_type` ; Réfs → `ressources_references` ; `/contribuer` → 301 → `/proposer` |
| **P3** | Google Search Console / indexation | Non diagnostiqué | Reporté (Jules) | Voir `pilotage-indexation-seo.md` (dossier TECH) |
| **dette** | Organisation docs/branches/services | Multi-build folders, 10+ Caddyfile.bak, services morts | À cadrer | Voir §6 |
### Mapping bugs Jules → vraie cause
```
"mauvais commit, RAG/Outils pas up" → FAUX : commit OK. Build VPS périmé. → P0
"bouton Proposer 1 carte / 4" → feature sur branches non mergées. → P2
"chatbot slug rag/media KO" → redirect /rag→/media en code (pas déployé) → P0/P1
+ composant chatbot non committé
+ backend LightRAG PE :9621 = UP ✓
```
---
## 5. Décisions techniques runtime
| # | Décision | Pourquoi |
|---|----------|----------|
| τ.1 | P0+P1 (deploy + chatbot) cette session ; P2 (Proposer) session dédiée | P2 = archéologie multi-branches, dilue le fix de deploy |
| τ.2 | Stubs `contribuer-*` laissés untracked au deploy P0 | Ne pas exposer de formulaires inachevés en prod |
| τ.3 | Commit P0 = chatbot route + composant + nuxt.config + MediaTabVisuel + a-propos uniquement | Périmètre minimal du « remettre up » ; pas de WIP Proposer |
---
## 6. Dette d'organisation (constatée 2026-06-23)
Le système tech est éclaté. Symptômes :
- Dossier projet `TECH - infra VPS, website pro, RAG/` mélange **6+ projets** (nav-carte/AEP, Website Pro/trans-former.fr, RAG Militant, Simulateur autonomie V2, codev, vps-kit…).
- Multiples dossiers `*-build` (cascades méga-dispatch passées : `aep-communaute-build`, `codev-build`, `astro-site-cerveau`).
- 10+ `Caddyfile.bak.*` sur le VPS, services systemd morts (`nav-carte.service`, `nav-worker.service`).
- Branches feature jamais mergées ni nettoyées.
- Plusieurs `.md` de pilotage épars à la racine TECH (`next-steps`, `stack-opencode-v2`, `pilotage-indexation-seo`…).
**Proposition de rangement : voir le plan dans le message de session du 2026-06-23 / à formaliser en note dédiée.**
---
## 7. Journal & refs
- Journal dev détaillé : `JOURNAL-V2.md` (même dossier).
- Mémoire pilote : `2 CASQUETTES/Stack technique/ATIS-Dev.md`.
- Prompt P2 : `0 INBOX/PROMPTS/aep-P2-proposer-4-onglets.md`.
- SEO/indexation : `1 PROJETS/TECH .../pilotage-indexation-seo.md`.
---
## Log de pilotage
### 2026-06-23 — Session diagnostic (ATIS Dev / Opus)
**Accompli :**
- Diagnostic complet : renversé l'hypothèse « mauvais commit » → build VPS périmé + travail local non committé.
- Cartographié l'archi de service réelle (`aep.service`, pas `nav-carte.service`).
- Confirmé LightRAG PE :9621 UP, deploy = scp manuel vers `/opt/aep/.output`.
- Créé ce doc pilote + prompt P2.
**Accompli (suite) :**
- ✅ P0+P1 déployés : commit `f3ab28bd` build+push (agent Sonnet), deploy prod (tar+scp → `/opt/aep/.output`, restart `aep.service`). Vérifié : `/outils`, `/media`, `/contribuer`, `/trouver-du-taf` = 200 ; `/rag` → 301 ; chatbot RAG public OK (réponses sourcées via LightRAG :9621).
- Prompts P2 + hygiène TECH écrits avec préflight git anti-superposition + clause supervision pilote.
**Prochaines étapes :**
- [x] P2 : Proposer 5 onglets — fait 2026-06-23 (commit c860dabd, deploye, teste 5/5 types 201).
- [x] Hygiene TECH : execute 2026-06-23 (agent Sonnet). Voir recap dans `_infra/TECH.md`.
- [ ] **Batch 3 (prochain chantier)** : bouton selecteur 3 cartes + popup 5 axes Jobs + GraphView Carte 1. Prompt : `REPRISE-aep-carto-fix-batch3.md`. Session dediee.
- [ ] AEP nav-carte — verifier chatbots EN PROD : `/` = chatbot Entraide / `/agences` = chatbot Reseaux AEP distincts.
- [ ] P3 : Google Search Console (reporte).
### 2026-06-23 — Session hygiène TECH (AXE 1+2+3) + fix chatbot (Agent Sonnet)
**Accompli :**
- **AXE 1 VPS** : docker prune (156M), décommission listmonk (conteneur + image + 2 volumes + 2 routes Caddy), décommission heyform (volume 528M + compose), décommission uptime (volume 88M + route status), `/opt/migration` supprimé (252M, aucune réf active), nav-worker + nav-carte services nettoyés, Caddyfile.bak réduit de 17→4 fichiers. Disque 91%→87% (+~1.3 GB).
- **AXE 2 Docs** : `_archive-build/` créé (3 dossiers `*-build` déplacés), `_infra/TECH.md` créé (inventaire VPS complet), `INDEX.md` créé, 3 squelettes `PILOTE.md` (Website Pro, RAG Militant, Simulateur autonomie V2). 4 `.md` épars routés.
- **AXE 3 Git** : 4 branches à 0 commit supprimées (`feat/outils-v1`, `-build`, `-media`, `feat/codev-mvp`). `feat/outils-v1-build` worktree retiré.
- **Fix chatbot régresse** : `auteurs-pensees.json` (171 auteurs) restauré en prod (scp), versionné sur `main` (commit `04b02351`), push gitea. Worktree `nav-carte-media` retiré, les 4 fichiers untrackés sauvés sur `feat/outils-v1-media` push gitea (branche préservée).
### 2026-06-23 — Session P2 : Proposer 5 onglets (ATIS Dev / Sonnet)
**Accompli :**
- Interface Proposer avec 5 tabs (Écosystème/Réseau/Jobs/Outils/Références RAG)
- 4 types (ecosysteme/reseau/job/outil) → NocoDB `orgas` table avec `submission_type`
- Références → table dédiée NocoDB `ressources_references`
- `/contribuer` → 301 redirect vers `/proposer`
- 6 corrections pilote appliquées
- Build + deploy VPS (scp .output/ + systemctl restart aep)
- Tests : 1 par type (4×201), 1 référence (201), test records supprimés (404)
- Routes vérifiées : /proposer (200), /contribuer (301), /api/submit (201), /api/submit/reference (201)
- ✅ Tout est bon, GO pilote obtenu, P2 terminé
**Prochaine étape :**
- [ ] Push `main``gitea/main` (P2 + fixes chatbot non encore poussés)
- [ ] P3 : Google Search Console (reporté)