blog.vfg.lol

STATUS — VFG_PT__ — 2026-10-04

STATUS — VFG_PT__

_Article généré automatiquement depuis le STATUS.md de VFG_PT__ — 2026-10-04. Les chemins locaux, les hôtes internes et les noms de variables ont été neutralisés._

STATUS — Workspace VFG

État vivant au 2026-10-02. La vérité instantanée reste node _scripts/dev-meta.mjs status.

Session — 2026-10-02 10:00 (audit état des lieux post-reboot · vague 1 livrée · orchestrateur local)

  • Audit mesuré (08:45–09:05, 3 éclaireurs en lecture seule) :
    • prod ok ×5 ;
    • 6 lots n'existent qu'en un exemplaire local (VFGate didou-llm, blog inferstatus/triage-unknown, méta devmeta, vfg-system, wt-handoffs-triage) ;
    • blog : deux clones, le manifeste pointe vers le clone périmé (−327) ;
    • 36 worktrees : 19 élagables, 11 actifs, 6 cassés (_outils = outil reaper, ne pas supprimer ; JahMessenger-suivi a un test jamais commité) ;
    • bus d'événements figé depuis le 2026-06-15 ; C: 6,7 Go libres.
    • Plan V0→V4 : docs/workspace/2026-10-02-audit-etat-des-lieux-plan.md.
  • Vague 1 livrée (local, non poussé, tests rejoués par l'orchestrateur) :
    • W1-A check-secrets élargi, 4a63daa, 31/31 ;
    • W1-B dev-meta --root et garde de sync-ports, c28f8b3 + 4be078d, 28/28 ;
    • W1-C docs/handoffs/INDEX.md et plans recochés avec preuve, 68f386d.
  • Orchestrateur local : prompt système LM Studio, docs/workspace/2026-10-02-prompt-orchestrateur-local.md. Aucun code.
  • Articles : 2, gardes vertes, commit blog 1c666c7 (worktree RAPPORT-EXPERIENTIEL-audit-1002). Publication = R3 FG (mot d'admin).
  • Relais : docs/handoffs/2026-10-02-1000-audit-etat-des-lieux-vague1-orchestrateur.md. Prochaine action : FG publie les 2 articles, puis tient la séance V0.

Session — 2026-10-02 08:48 (GitHub MCP distant : reconnaissance + plan, aucun fichier déposé)

  • Demande : URL nue https://api.githubcopilot.com/mcp/ → identifier, mesurer, planifier. Doc-only.
  • Ce que c'est : GitHub MCP server hébergé (remote HTTP ; variantes /mcp/readonly, /mcp/x/<toolset> ; en-têtes X-MCP-Toolsets/X-MCP-Readonly ; OAuth VS Code, PAT ailleurs). Classé Volet B (MCP public).
  • Mesuré : _dev\VFVFGPT\config\ssot\mcp-servers.json absent · %APPDATA%\Code\User\mcp.json absent · [chemin local] inexistant · [chemin local] = settings.json seul. Le générateur generate-mcp-configs.mjs ne fait que des serveurs locaux et écrase les configs → pas de serveur externe.
  • ⚠ Sécurité (R3) : PAT GitHub en clair dans [chemin local] (user-level, non versionné, serveur github) → rotation / indirection ${env:GITHUB_PAT} à décider.
  • Piège prouvé : .gitignore deny-by-default → git check-ignore .vscode/mcp.json = ignoré (exit 0) ; il faudra négativer !.vscode/mcp.json.
  • Aucun test ni commit : la session n'a rien déposé (fail-open assumé). _docs/workflows/atlas.md (session atlas 06:20) et docs/workspace/_pass4_probe.ps1 sont étrangers → laissés intacts.
  • Relais : docs/handoffs/2026-10-02-0848-plan-branchement-github-mcp.md. Prochaine action : FG tranche ampleur (A / A+C / A+B+C), auth Cursor, et sort du SSOT absent.

Session — 2026-10-02 06:35 (vue live des agents : concurrence nulle, un jeton de bot exfiltré puis masqué)

  • Livré (code) : _scripts/vue-live.mjs — script unique, zéro dépendance, lecture seule : sonde (Chronos, Pulse, VFGate, Hub), collecte (schtasks, git par worktree, checkpoint, handoffs), masque, puis écrit une page HTML autonome. Options --out --json --data --no-probe --worktrees --quiet. Rendu déterministe prouvé (2 rendus de la même donnée → hash identique).
  • ⚠ Sécurité (vrai résultat de la session) : le contrôle de motif a trouvé un jeton de bot réel (api.telegram.org/bot<id>:<jeton>/getUpdates) recopié dans l'artefact HTML, en provenance du bus d'activité FG_Pulse (titre d'onglet Chrome capturé : 3 occurrences dans acts.jsonl). Correctif prouvé : passe de rédaction appliquée au JSON et au HTML (bot, Bearer, sk-, gh[pousr]_, AKIA, Slack, PEM, paramètres d'URL nommés) → 0 motif, témoin bot*** présent. Leçon : une trace d'activité est une entrée non fiable ; le masquage est une étape de pipeline, pas une intention.
  • Mesure de concurrence : aucune collision — 1 seul agent actif, dans son worktree (JahMessenger\.claude\worktrees\jahm-pr-181-254204) ; le point chaud du 01/10 est évité ; workflow-smoke est une sonde du pont, pas un agent. 37 worktrees → 15 alignés · 11 sans upstream · 3 modifs · 2 non poussés · 6 cassés. 3/4 services up (Hub :4320 injoignable). 6 tâches planifiées, 2 en cours.
  • Convention à trancher (R2) : plusieurs sessions committent sur la même branche du méta (docs/agent-presence-live-cleanup-plan) — « 1 agent = 1 worktree » ne s'applique pas au méta.
  • Article publié : « La concurrence n'était qu'un agent dans son propre worktree » — blog.vfg.lol/devblog/posts/metaprojet/2026-10-02-0635_la-concurrence-etait-un-agent-dans-son-worktree.md (gardes vertes, page HTTP 200, catalogue 626, flux 428, dérive 0/0).
  • Tests : _scripts/check-secrets.mjs exit 0 ; test:ci blog 526/526 fail 0 ; rendu déterministe.
  • Non poussé (décision distincte) : commit méta (code + doc) et commit blog (article).
  • Relais : docs/handoffs/2026-10-02-0635-vue-live-agents-et-masquage-secrets.md. Prochaine action : R3 FG — rotation du jeton révélé + décision de push, puis élagage des 6 worktrees cassés.

Session — 2026-10-02 05:07 (connerie-lab v0.2 : correctifs 1-3 du POC)

  • v0.2 livrée et poussée : poc/Connerie_Lab_POC_v0.2.html (copie de l'original, conservé intact) + tests/verif_v02.mjs + CHANGELOG.md. connerie-lab passe à 13 fichiers, HEAD bd62d27, main SYNC.
  • Correctifs appliqués (1 : « ? je ne sais pas » avec ≥ 3 réponses ; 2 : égalités d'archétype départagées ; 3 : écart de regard pondéré − neutre affiché). Format schemaVersion 1 inchangé — vérifié.
  • Tests : verif_v02.mjs 15/15 vert ; les 2 tests d'origine (poc_test.mjs, verif_correctifs.mjs) restent verts. Rendu validé dans le navigateur sur le fichier livré (case « ? », garde-fou 2 → refus).
  • Non fait (avec raison) : correctif 4 (reformulation = choix éditorial FG) ; 7ᵉ situation (schemaVersion 2, chantier séparé) ; dépôt non inscrit au manifeste ni à l'atlas.
  • Push méta : 0d1cc06 poussé (branche docs/agent-presence-live-cleanup-plan).
  • Article publié : « Un ZIP de 3,8 Mo, dix fichiers, un dépôt privé » — blog.vfg.lol/devblog/posts/workflows-agentiques/2026-10-02-0515_un-zip-dix-fichiers-un-depot-prive.md (catalogue 624, page HTTP 200, flux 426, dérive 0/0). Commit blog 9931913 local, non poussé (code-deploy = R3).
  • Relais : docs/handoffs/2026-10-02-0507-connerie-lab-v0.2-correctifs.md. Décision attendue : correctif 4.

Session — 2026-10-02 03:24 (dépôt privé connerie-lab : POC + rapport Gandalf + audit)

  • Dépôt FGDidou/connerie-lab créé et poussé : privé, branche main, HEAD 9621823, 10 fichiers. Preuve serveur : gh api .../git/trees/main?recursive=1 → 10 blobs, visibility=PRIVATE.
  • Traçabilité de la charge utile : extraction de connerie-lab.zip → [chemin local], 10/10 SHA1 identiques entre tar et Expand-Archive (0 écart).
  • Tests verts : node poc_test.mjs → 80.0 / 82.5 / 85.0 ; node verif_correctifs.mjs → ? sur écoute 95.0.
  • Aucune autre surface touchée : originaux (poc/Connerie_Lab_POC.html, rapport/rapport-gandalf.html) et Connerie_Lab_complet.zip intacts ; rien poussé dans RAPPORT-EXPERIENTIEL ; aucun dépôt de l'audit supprimé.
  • Hors périmètre (décision FG) : dépôt non inscrit au manifeste ni à l'atlas.
  • Relais : docs/handoffs/2026-10-02-0324-creation-depot-connerie-lab.md. Prochaine étape : appliquer poc/CORRECTIFS.md sur une copie poc/Connerie_Lab_POC_v0.2.html (7e situation = migration schemaVersion 2, chantier séparé), avec accord FG.

Session — 2026-10-02 02:45 (méta-analyse : 7 sous-agents, sécurité, vision V0→V3)

  • Livré (local) : triage des handoffs du blog (84 entrées avec preuve), dev-meta signale OFF-DEFAULT/BEHIND-ORIGIN (3/3), inferStatus reconnaît les statuts réels (24/24, unknown 77 → 69). Branches dans [chemin local] (non poussées).
  • ⚠ Sécurité : 12 secrets critiques et 5 élevés versionnés (dépôts privés) ; 0 hook actif ; check-secrets aveugle à ces motifs. Fiche hors Git : _out/audits-securite-2026-10-02/. Rotation = R3 FG (V0).
  • Plans : docs/workspace/2026-10-02-vision-plan-agentique.md (V0→V3, dispatch par modèle) ; annexes docs/workspace/audits-2026-10-02/.
  • Relais : docs/handoffs/2026-10-02-0245-meta-analyse-7-sous-agents.md. Prochaine étape : séance FG sur les configs agentiques (MCP, plugins, règles, skills, outils), avec V0 en priorité.

Session — 2026-10-02 02:40 (flash PowerShell 10 min + [variable d'environnement])

  • Flash écran supprimé : la tâche VFG-Atlas-Monitor (PT10M) lançait powershell.exe sans -WindowStyle Hidden (motif hérité de _live/FG_Pulse/agents/windows/install-task.ps1). Correctif : lanceur _scripts/run-hidden.vbs via wscript.exe (zéro console → zéro flash ; -WindowStyle Hidden flashe encore). Agent long/tuable FG_Pulse-MediaAgent → powershell -WindowStyle Hidden conservé. Preuve : Start-ScheduledTask → LastTaskResult=0, log +619 o, aucune fenêtre.
  • [variable d'environnement] branché (401 → OK) : vfg-atlas/scripts/monitoring.mjs repliait sur dev-pulse-local faute de .env dans vfg-atlas. monitor-tick.ps1 charge désormais _live/FG_Pulse/.env via load-env.ps1 en portée enfant (dot-source = écrase $Root, piège mesuré). Preuve : repli _ssot/monitoring-events.jsonl 15 → 15, tick « Evenement publie ».
  • Tests : vfg-atlas 6/6 ; _live/FG_Pulse 69/69. git diff --check vert.
  • Commits locaux (non poussés) : vfg-atlas cf0714a ; _live/FG_Pulse 3fb7171 ; méta (ce commit).
  • Sauvegardes de tâches : _out\schtasks-backup-{VFG-Atlas-Monitor,FG_Pulse-MediaAgent}-2026-10-02.xml.
  • Relais : docs/handoffs/2026-10-02-0240-fix-flash-powershell-tick-atlas-et-token-pulse.md.
  • Dette mesurée : doc interne _live/FG_Pulse/docs/*.md périmée (2026-06-16, commit f7c236b).

Session — 2026-10-02 01:21 (rangement du dossier [chemin local])

  • Triage mesuré d'un dossier de rapatriement (14 fichiers + 4 dossiers) → 4 familles ; doublons tranchés au hash / comparaison 1:1, jamais par ressemblance de nom.
  • Rangement — 7 pièces, 3 dépôts : vfg-atlas (prototype HTML + 2 rapports d'audit dans atlas/ et audits/), JahMessenger (2 boards HTML dans docs/plans/boards/), RainbowPiano (5 visuels synesthésie + le MIDI « Atlas de Do »).
  • Quarantaine _out/quarantine/racine-2026-10-02/ : 11 pièces — 4 doublons exacts vérifiés (zip atlas 33/33 déjà au kit, docx = md, zip rainbow 14/14 déjà au dépôt, board Jah sha1 identique), 2 obsolètes/déjà traités, 4 exports d'agent hors dépôt.
  • [chemin local] est vide (dossier conservé).
  • Commits atomiques (non poussés) : vfg-atlas e64398f · JahMessenger 97548e3 · RainbowPiano ee0b649. Les artefacts d'autres agents (Jah : 4 ; RainbowPiano : 4) ont été laissés intacts.
  • Garde verte : check-secrets exit 0. Aucun test (déplacement de fichiers, pas de code).
  • Relais : docs/handoffs/2026-10-02-0121-rangement-gitrepos-to-triage-3-depots.md.

Session — 2026-10-02 01:05 (clôture du lot atlas)

  • vfg-atlas — lot clos : catalogue 112 projets, 90 vérifiés, 0 erreur ; dépôt FGDidou/vfg-atlas PRIVATE (HEAD 7eb150d) ; junction _tools\vfg-atlas ; tools.vfg-atlas au manifeste.
  • Tests : npm test (atlas) 6/6 ; test:ci (blog) 526/526 ; chaîne rejouable npm run build.
  • Monitoring 10 min ACTIF : tâche planifiée Windows VFG-Atlas-Monitor (10 min) → scripts/monitor-tick.ps1 → journal _ssot/monitor-tick.log. Avancement plan : 22/25 (88 %).
  • 3 articles publiés sur blog.vfg.lol (atlas, inventaire, monitoring) + 3 captures atlas servies 200.
  • Skill dev-notifications créé (.cursor/skills/ + miroir Claude vfg-notifications).
  • Bloqué humain (3) : [variable d'environnement] pour la vue temps réel Cockpit/Jah, token bot Telegram, bannière blog→atlas.
  • Relais : vfg-atlas/handoffs/2026-10-02-0105-vfg-atlas-cloture.md.
  • Anomalie mesurée : arbre [chemin local] partagé entre agents (gardes instables) → worktree isolé recommandé.

Session — 2026-10-02 00:46 (clôture reprise post-crash)

  • Constat : la session « crashée » (09bc4edd, « distille push … + URL article ») n'était pas en panne — ses outils terminal + édition étaient désactivés, d'où des snippets livrés non appliqués.
  • Loose ends du crash : résolus (métadépôt déjà poussé) — lien ARBRE-CONNAISSANCE.md dans docs/workspace/README.md ✅ ; addendum de provenance dans docs/handoffs/2026-10-02-0014-… ✅. Méta et blog poussés ; article servi (blog.vfg.lol).
  • Rien de neuf produit (fail-open assumé) : la clôture documente l'état, sans re-planifier ni ouvrir de chantier.
  • Relais : docs/handoffs/2026-10-02-0046-cloture-reprise-post-crash.md.
  • Action ouverte (R3, accord FG) : allowlisté ≠ servi — le slice MCP prod est packedAt: 2026-06-16 (77 fichiers, périmé) → npm run mcp:docs:pack + vps-deploy-mcp-docs-push.ps1 (dépôt VFVFGPT) pour que la fiche distillée soit réellement servie.
  • Hors périmètre (signalé, non commité) : workspace.manifest.json (entrée tools.vfg-atlas, manifest:check cohérent) · docs/workspace/_pass4_probe.ps1 (sonde non suivie).

Session — 2026-10-02 00:30

  • vfg-atlas intégré au workspace : dépôt physique [chemin local] + junction _tools\vfg-atlas + entrée tools.vfg-atlas au manifeste (manifest:check → cohérent, port 4173 libre). Distant FGDidou/vfg-atlas PRIVATE créé et poussé (16fc5ca).
  • Catalogue de vérité : l'inventaire réel (90 projets vérifiés) transformé au schéma atlas (import-inventaire.mjs) + fusionné (merge-catalog.mjs) + réconcilié avec le manifeste (reconcile-manifest.mjs) → 112 projets, 90 vérifiés, 0 erreur. Couche méta (meta.json : 8 catégories + 16 tags).
  • Monitoring 10 min (P0, délégué) : scripts/monitoring.mjs (zéro dépendance, --once/--watch N/--publish). Mesure 14/24 (58 %), ~7 h 50 restantes. POST FG_Pulse → 401 ([variable d'environnement] à brancher), repli _ssot/monitoring-events.jsonl.
  • A6 mesuré : l'atlas n'était pas un sur-ensemble du manifeste (intersection 25) → réconcilié (14 entrées ajoutées).
  • Publication (R3 accordé) : 2 articles publiés sur blog.vfg.lol (metaprojet/2026-10-01-0011_l-atlas-mode-emploi…, …-0013_ce-que-l-inventaire-a-reellement-mesure…) + 3 captures atlas servies HTTP 200. Convention d'image découverte : [chemin serveur] sur le VPS (hors workflow code-deploy).
  • Relais : vfg-atlas/handoffs/2026-10-01-2340-vfg-atlas-socle-monitoring-meta.md.
  • Action ouverte (agent suivant) : brancher [variable d'environnement] (monitoring → Cockpit :5230 + Jah), publier l'article 3 (monitoring), bannière blog vers l'atlas, skill « notifications ».

Dernière session — 2026-10-02 00:14

  • Jeton Citadelle retrouvé : didou.vfg.lol demandait [variable d'environnement]. Localisé sur le VPS dans citadelle.service → EnvironmentFile=[chemin serveur] (CITADELLE_ROLE=vps, [hôte interne]). Aucune régénération, aucune écriture VPS. Validé : /api/etat = 401 sans jeton, 200 avec Bearer (local et public). Empreinte SHA-256 notée (valeur non stockée).
  • Arbre de connaissance créé : règle .cursor/rules/vfg-knowledge-tree.mdc + skill .cursor/skills/dev-arbre-connaissance/SKILL.md — le flux méta → blog → MCP vfg-docs → dev (écrire une fois, servir partout).
  • Skill récurrent créé : .cursor/skills/dev-skillifier/SKILL.md — transformer une demande récurrente de FG en skill, + simplifier un skill trop complexe. (Miroirs Claude : vfg-arbre-connaissance, vfg-skillifier.)
  • Relais : docs/handoffs/2026-10-02-0014-citadelle-jeton-arbre-connaissance-et-skills-recurrents.md.
  • Distillation + push (2026-10-02 ~01:00) : canon docs/workspace/ARBRE-CONNAISSANCE.md (lié depuis docs/workspace/README.md) ; méta poussé (…7407329, …099b486) et blog poussé (6696e66). Article servi HTTP 200.
  • Découverte mesurée — « allowlisté » ≠ « servi » : le slice MCP prod (curl http://[hôte interne]/stats) est packedAt: 2026-06-16, indexedFiles: 77 → périmé, la fiche n'y est pas encore. Index local = 1036 fichiers ; pack local vérifié : 1125 fichiers, la fiche est dans l'archive. Action R3 restante : npm run mcp:docs:pack + deploy/vps/scripts/vps-deploy-mcp-docs-push.ps1 (déploiement prod → accord FG).
  • Action ouverte (agent suivant, accord FG) : ajouter .cursor/skills/**/SKILL.md + .cursor/rules/*.mdc à VFVFGPT/config/ssot/knowledge-allowlist.json puis redéployer mcp-docs (dépôt VFVFGPT — hors périmètre de cette clôture).
  • Constat non corrigé : /etc/caddy/citadelle.caddy existe mais n'est pas importé ; le bloc didou.vfg.lol est inline dans vfg-fleet.caddy (divergence connue, service en marche).

Session — 2026-10-01 22:40

  • Rainbow Journey lancé ([chemin local], FGDidou/RainbowJourney, hors tiers) sur serveur Vite isolé :5186 (PID 6000). Port 5173 évité (occupé par un autre service). App vérifiée à l'écran. Commande : node node_modules/vite/bin/vite.js --host 0.0.0.0 --port 5186 --strictPort.
  • Mémoire méta créée : skill .cursor/skills/dev-meta-carte/SKILL.md + règle .cursor/rules/vfg-carte-meta.mdc (carte des repos/tiers/ports + procédure de mesure).
  • Article publié : blog.vfg.lol/…/metaprojet/2026-10-01-2249_lancer-rainbow-journey-et-carte-meta-du-systeme.md (catalogue 614, dérive 0/0).
  • Relais : docs/handoffs/2026-10-01-2240-lancement-rainbow-journey-carte-meta.md.
  • Dettes mesurées ce jour : VFVFGPT BEHIND 2 (5 modifs) ; VFJah_Messenger BEHIND 6 (sale) ; collision port :5210 ; _ssot/ports.json en avance sur sa source ; divergence handoffs (handoffs/ vs docs/handoffs/).
  • Blocage environnemental : disque C: quasi plein (ENOSPC) → la garde test:ci du dépôt blog échoue (6 tests copient des fixtures dans %TEMP%). Publication faite avec --skip-tests assumé (check:links + check:counts verts).

Rangement livré

  • Manifeste schéma 3 : path, kind, aliases, lifecycle, expected_present.
  • Résolution de chemin centralisée dans dev-meta.mjs pour boot, verify, status, pull, manifest-check, closure et plan-status.
  • manifest:check : zéro erreur ; les projets non clonés sont explicitement optionnels.
  • Chemins canoniques actifs sous _live, _dev, _sites et _docs/repos.
  • FG_SkinEditor et LaboHub déplacés physiquement ; les dépôts Git verrouillés par VS Code utilisent provisoirement une junction canonique vers leur ancien emplacement.
  • Outils _tools reconnectés à _dev/VFVFGPT.
  • Exports, sauvegardes, logs et fichiers temporaires déplacés sous _out/quarantine/root-artifacts-20260919 sans suppression.
  • Ancien worktree blog déplacé avec Git sous _out/quarantine/worktrees en conservant son .env et ses dépendances ignorées.
  • Tâches Windows Pulse réécrites vers _live/FG_Pulse et relancées ; API :4330 active.
  • Suites validées : RAPPORT 106, VFVFGPT 296, VFGate 195, Pulse 69, Hero 82, Grimoire 21, IdeaPit 57, Cockpit 114, VFJah 160, Gandalf 47, ai-usage-hub 2 et Chronos 29 tests verts. CleanDaMatrix frontend 158/158 ; backend à corriger pour fermer proprement son runner après le test de retry réseau.

Travail sécurisé

RAPPORT-EXPERIENTIEL est sur la branche locale chore/workspace-reorder-safety-20260919 :

  • 5b8d051 — contenu baie de brassage et Rainbow Journey ;
  • 57ddd04 — compatibilité manifeste et handoff ;
  • tests : 106/106 PASS ;
  • aucun push, aucun déploiement live.

Restant opérationnel

  1. Fermer puis rouvrir VS Code, inverser les junctions des dépôts Git : dépôt physique sous le tier, junction temporaire à la racine.
  2. Rejouer un démarrage Windows complet, vérifier Pulse et Agent Presence, puis dater la période de compatibilité de sept jours.
  3. Retirer les anciennes junctions uniquement après absence de référence runtime et validation d’un reboot.
  4. Revalider les clients natifs Chronos, les longues coupures de transport et l’export/import Chronowflow.
  5. Trier les anciens plans en clos, superseded, blocked-human ou candidate; aucun backlog ancien n’est automatiquement réactivé.
  6. Rebaser les 73 liens morts relevés par VFVFGPT npm run doc:check-links et corriger la fermeture du runner backend CleanDaMatrix.

Protections

  • Lucien, VFG_UnifiedPOC et ____Currently_Archived : no-touch.
  • .env, bases, médias et archives : aucune suppression ou migration.
  • node_modules et builds : conservés pour ce passage ; nettoyage futur seulement après preuve de reconstruction.
  • Matachigot-1 : clone doublon conservé physiquement tant que son dossier est verrouillé, avec pointeur de quarantaine daté.

Repris de main (STATUS de la racine historique, à réconcilier)

Fusion de main du 2026-10-02 : sections propres à main conservées telles quelles ; l'instantané des tiers de juillet est remplacé par node _scripts/dev-meta.mjs status.

Actions 2026-10-02 — Atlas mesuré

  • État des lieux méta des 60 dépôts (format vfg-audit-mesure) : docs/AUDIT-ATLAS-2026-10-02.md, base HTML docs/atlas/atlas-2026-10-02.html, outil rejouable _scripts/atlas/.
  • P0 : API de règles VFGate écrivable sans authentification (C03) ; docker-publish VFGate 10/10 en échec (C04) ; jeton Telegram en clair dans la base Jah (C05) ; registres de ports divergents, 4344/4477 absents (C01).
  • REFACTOR-RULES : 0/8 fiches exécutées au 02/10. Handoff : docs/handoffs/2026-10-02-atlas-base-connaissance.md.

⚠️ Deux racines coexistent sur ce poste (2026-09-22)

[chemin local] est un second workspace racine, et c'est le clone actif de ce dépôt : manifeste schéma 3 (updated_at 2026-09-19), tiers _live/_dev/_prod/… peuplés, 26 projets, FG_Chronos embarqué, branche courante docs/agent-presence-live-cleanup-plan.

Son CLAUDE.md déclare « Racine locale actuelle : [chemin local] » et interdit d'explorer les chemins racine historiques. [chemin local] est donc l'arborescence historique. La chaîne GitRepos n'apparaît nulle part dans [chemin local].

→ Conséquence : les documents produits par le ménage du 22/09 vivent dans une arborescence qu'une session active ne verra pas. Rapatriement = décision humaine (les deux formes diffèrent : tiers contre dépôts à plat). Détail : docs/AUDIT-DOUBLONS-2026-09-22.md.

Actions 2026-09-22

  • Ménage de la racine [chemin local] (la racine du poste, pas ce dépôt) : 46 → 20 entrées, 27 → 4 worktrees enregistrés, 0 fichier supprimé, 0 branche supprimée, aucun --force. Documents : docs/MENAGE-RACINE-GITREPOS-2026-09-22.md (carte + corrections) et docs/handoffs/2026-09-22-racine-gitrepos-nettoyage-worktrees.md.
  • Convention de worktree unifiée : un chantier vit désormais dans .worktrees\<depot>-<lot>. Trois conventions coexistaient (racine nue du disque, <depot>\.claude\worktrees\, hors racine). Inscrite dans RainbowPiano\AGENTS.md, Chronowflow\AGENTS.md, les skills cote-jardin-tache et vfg-agent-presence.
  • ⚠ Corrigendum action 4 : FGDidou/vfg-kit existe déjà et désigne un autre projet (80 commits, aucun ancêtre commun avec le vfg-kit local). Le local (3 commits, 63 Mo, aucun remote) doit être sauvegardé sous un nom libre. Voir docs/PLAN-SUITE-RACINE-GITREPOS.md, ACTION 4. Exploration : ce nom recouvre en réalité quatre objets distincts (docs/AUDIT-DOUBLONS-2026-09-22.md, §1).
  • Exploration des doublons (docs/AUDIT-DOUBLONS-2026-09-22.md) : seconde racine, vfg-kit ×4, SSOT ports en 5 exemplaires et 2 formats incompatibles, sync-services.mjs inopérant sur le format du 18/07, bug label dans snapshot-articles-index.mjs (dossier -undefined), HEAD détaché non rattaché dans -publish, et un précédent documenté de suppression de ce dépôt (WSL, 2026-07-12).
  • Restent FG : fermer l'IDE sur [chemin local] (bloque l'action 1) ; choisir le nom du dépôt distant pour vfg-kit (action 4) ; accord nominatif cible par cible avant toute purge de l'archive (action 3, seule destructive) ; trancher la question des deux racines.

Actions 2026-07-07

  • Citadelle vague 2 mergée (PR #29, CI verte) : filtre quartier, zoom/pan, vue liste, anneaux objectifs + garde-fou check:secrets. Plans/handoffs : docs/PLAN-EVOLUTION-2026-07-07.md (W1–W5) et docs/handoffs/2026-07-07-plan-evolution-citadelle-vague2.md.
  • Nouveau : node _scripts/check-secrets.mjs <repo> — scan de secrets en dur d'un repo sibling (W3.1 fait, testé sur RAPPORT-EXPERIENTIEL : propre).
  • ⚠ VFG_Citadelle divergé (ahead 2 / behind 2, dont un fix(citadelle) jamais poussé) — rien forcé, arbitrage FG requis. Détail : VFG_Citadelle/PLAN-EVOLUTION-2026-07-07.md.
  • Restent FG : W1 (port SSOT Citadelle via /plug-tool), W2 (collision :5210).

Items ouverts

  1. Collision port :5210 — ✅ décision FG 2026-07-03 : EOL du legacy VFJah_Messenger à la promotion de la vNext (consigné dans le STATUS du legacy). La collision se résout à la promotion de VFJahMsnPlus.
  2. .env de l'archive VFGPT — les 9 tokens MCP/hub ont été copiés vers _dev/VFVFGPT/.env (gitignoré) le 2026-07-03. La copie archive ne peut pas encore être purgée : START-ALL-MCP-SERVERS.ps1 (archive) la charge au lancement des serveurs MCP, et ~/.claude.json référence encore le chemin archive. Go FG 2026-07-03 pour préparer la migration vers _dev/VFVFGPT — bascule + purge = R3 avec FG.
  3. Repo Articles_Configuration_IA (hors workspace, sibling) — ✅ décision FG 2026-07-03 : reste local + zip, pas de remote (données perso d'un tiers — Paul). Aucune publication sans son accord. Item clos tant que la situation ne change pas.

En cours / à venir

  • Bascule MCP (R3, avec FG) : le lanceur migré est prêt (_dev/VFVFGPT/START-ALL-MCP-SERVERS.ps1, commit 8cf1561) — arrêter les MCP archive, lancer le nouveau, vérifier 7+7 OK, purger le .env archive (item ouvert n°2)
  • S1 rotation Grafana + S3 admin:reset VFJahMsnPlus : actions FG guidées, en attente
  • ADR 0002 (unification usage IA) : proposée, lecture + décision FG
  • P4 Docker VFGate : checklist FG dans le plan micro VFGate (VPS + GHCR, non délégable)
  • Hero PR-D1 (fusion doc) : session dédiée
  • Remote GitHub privé Articles_Configuration_IA — décision FG 03/07 : reste local + zip

source markdown

Concepts de cet article

worktreeMCPVFGatehandoffgardePulseVFVFGPTCitadelleVPSdériveSSOTVFG Hero

Partage le plus de concepts avec