Files
nas-runbooks/common/brief-gemini-audit-accents-20260901.md
T

125 lines
7.3 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.
# Brief Gemini — Audit indépendant du chantier « désaccentuation systémique »
**Date** : 2026-09-01
**Demandeur** : Nabil
**Rôle attendu** : audit indépendant, pas relecture d'un rapport. Tu dois retester en direct
chaque point ci-dessous en lisant les fichiers réels et en exécutant les vérifications
toi-même, jamais en te fiant à ce brief pour conclure qu'un point est déjà bon.
---
## Contexte (résumé)
Claude a diagnostiqué et corrigé une cause racine : sur les 3 instances Hermes du NAS
(nyora, tt, perso), le fichier `SOUL.md` (le vrai prompt système, chargé à chaque session)
avait reçu le 18/07/2026 un bloc de règle de langue correctement accentué, ajouté **en tête**
du document — mais le corps préexistant du fichier (rédigé à l'origine par Nabil au clavier
QWERTY) n'avait jamais été réaccentué. Le volume de texte non accentué dans le corps
écrasait la règle énoncée une seule fois en tête.
Le même défaut a été retrouvé et corrigé dans : `RUNBOOK-TEMPLATE.md` (×3), `boot.md` et
`USER.md` (nyora), les 3 sous-agents nyora (`agent-veille.md`, `agent-contenu.md`,
`agent-commercial.md`), plusieurs fichiers `references/`, un profil Bot Mode
(`profiles/veilleur/SOUL.md`), et l'intégralité de `PROTOCOL-INFRA.md` (tronc + changelog
daté juillet-août) sur les 3 instances.
Côté DSH-VPS (pas de fichier `SOUL.md` équivalent — son identité vient de context-hub,
relue à chaque session) : un script de génération de document Word
(`/workspace/mp1/generate-docx-v3.mjs`) avait régressé sur les accents de sa page de garde
et de son sommaire par rapport à des versions antérieures (v1/v2) qui étaient correctes.
Corrigé, document régénéré. Une règle de langue permanente a été ajoutée dans
`context-hub`, scope `infra` (clé `langue_rule`), lue par Claude, Gemini et DSH à chaque
session via `GET /api/context`.
`hermes-nabil` (VPS) a été vérifié sain — aucune correction nécessaire.
Runbook complet : `bolbol/nas-runbooks/common/desaccentuation-systemique-soul-md-20260901.md`
## Pourquoi ce check
Nabil veut une garantie que ce n'est plus jamais un problème récurrent. Ton rôle est de
vérifier deux choses distinctes :
1. **Que les correctifs déjà appliqués tiennent** (pas de régression, pas d'oubli localisé).
2. **Qu'il n'existe pas d'autre foyer de la même maladie** ailleurs dans la stack — le motif
générique est : *une règle de style/langue ajoutée en tête d'un document ou d'un prompt
système, jamais appliquée au corps existant*, ou *un générateur de document avec des
chaînes françaises codées en dur, jamais relues lors d'une réécriture*.
## Méthodologie de scan (accents)
Pour tout fichier `.md`/`.mjs`/`.py`/`.js` candidat, calcule le ratio de caractères
accentués pour 1000 caractères :
```python
ACCENTED = set("éèêëàâäùûüôöîïçœæÉÈÊËÀÂÄÙÛÜÔÖÎÏÇŒÆ")
ratio = sum(1 for c in content if c in ACCENTED) / len(content) * 1000
```
Un ratio en dessous de ~4-5/1000 sur un fichier de prose française de plus de 200
caractères est suspect. Un français correctement rédigé tourne plutôt autour de 15-25/1000.
**Exclusions à respecter absolument** (sinon tu vas noyer le signal sous du bruit) :
- `node_modules/`, `.venv/`, `venv/`, `site-packages/`, `.pnpm-store/`, `lazy-packages/`
- Tout paquet de skill tiers en anglais (ex. `skills/agents/`, `skills/ai-seo/`,
`skills/autonomous-ai-agents/`, `skills/creative/ascii-art/` sur les instances NAS —
ce sont des skills vendor, pas du contenu de Nabil)
- Les logs de sortie cron (`/opt/data/cron/output/*.md`) — ce sont des artefacts de runs
passés, pas des instructions vivantes ; à signaler seulement s'ils révèlent un job cassé
produisant toujours la même sortie (taille identique répétée), pas pour l'accentuation
- Les fichiers `.bak_accents_*` (sauvegardes déjà connues)
- Les données brutes (codes, identifiants, noms d'entreprises, gouvernorats TT sans accent
par convention — Gabes, Kebili, Medenine, Tataouine, Tozeur)
## Périmètre précis à vérifier
### 1. Re-vérification des correctifs Claude (échantillonnage, pas juste croire que c'est bon)
- `SOUL.md` sur hermes-agent-nyora, hermes-agent-tt, hermes-agent-perso : lire le fichier
entier, confirmer visuellement qu'aucun paragraphe n'est resté désaccentué
- `RUNBOOK-TEMPLATE.md` ×3
- `PROTOCOL-INFRA.md` ×3 : vérifier notamment qu'il n'y a plus d'occurrence du texte
littéral `\x27` (`grep -c '\x27' PROTOCOL-INFRA.md` doit renvoyer 0)
- `context-hub` scope `infra` : `curl http://100.86.197.88:3093/api/rules/infra` et
confirmer que `langue_rule` est présent et lisible avec ses accents
### 2. Recherche de nouveaux foyers — NAS (3 instances hermes-agent-*)
Balayer `/opt/data/` (top-level + `agents/`, `skills/` hors vendor, `references/`,
`profiles/*/`, `memories/`) sur les 3 instances avec le scan ci-dessus. Toute trouvaille
sous le seuil doit être lue en entier avant conclusion (un ratio bas peut aussi être un
fichier légitimement technique/anglais).
### 3. DSH-VPS
- Relire `generate-docx-v3.mjs` (déjà corrigé) et confirmer qu'aucune autre chaîne codée
en dur n'a été manquée
- Vérifier s'il existe **d'autres** scripts de génération de document dans
`/workspace/` (pas seulement `mp1/`) — chercher tout `.mjs`/`.py` qui construit un
document Word/PDF/PPTX avec du texte français, et appliquer le même scan
- Vérifier `/home/dsh-agent/.dsh/memory/notes.md` et tout fichier sous `skills/`
### 4. Au-delà de Hermes et DSH — autres générateurs de documents Nyora
- `nyora-doc-api` (port 3050, `formatting.py`) : ce service centralise la charte
Nyora pour tous les documents générés (XLSX/DOCX/PPTX/PDF) — vérifier qu'aucun libellé,
en-tête, pied de page ou métadonnée codé en dur n'est désaccentué. C'est un point à
fort effet de levier : un défaut ici se propage à tous les documents produits par ce
service, comme `RUNBOOK-TEMPLATE.md` se propageait à tous les runbooks.
- `redaction-pro`, `family-help`, `nyora-veille`, `rla-api`, `gsparc-mezzouna` : vérifier
s'il existe des templates ou chaînes de titre/en-tête codées en dur (même recherche
ciblée, pas un audit complet de ces apps si rien ne saute aux yeux rapidement)
## Si tu trouves un problème
Applique le même protocole que Claude, sans exception :
1. Sauvegarde avant toute écriture (`cp fichier fichier.bak_accents_gemini_20260901`)
2. Corrige uniquement le texte français concerné — jamais les données, jamais le code
fonctionnel, jamais les identifiants ou URLs
3. Vérifie après écriture (relire le fichier, confirmer visuellement)
4. Documente dans le runbook existant ou un nouveau runbook si le périmètre est distinct
## Format de rapport attendu
Un runbook Gitea (`bolbol/nas-runbooks/common/audit-gemini-accents-20260901.md`), suivant
la convention établie : ce qui a été vérifié, ce qui était déjà bon (avec preuve — extrait
ou commande de vérification, pas juste "OK"), ce qui a été trouvé et corrigé (avec avant/
après), et ce qui reste incertain ou hors de ta portée. Mets à jour `_INDEX.md`.
**Important** : Claude relira ce rapport puis retestera en direct un échantillon des
points listés — pas de clôture du chantier sur la seule foi du rapport. Sois donc précis
et vérifiable plutôt qu'exhaustif et vague.