erplibre/.claude/rules/06-code-generator.md
Mathieu Benoit 0e5441ac39 [ADD] commentaires : un relevé non bloquant, sa règle, le code nettoyé
Rien ne relevait les commentaires hors convention. L'outil lit commentaires et
docstrings, jamais le code autour, et rend deux familles inégales :
l'identifiant — adresse, courriel, chemin de compte, nom de la liste privée —
est une trouvaille ; le récit — témoignage, date, personne — un signal à relire.

Le hook pre-commit le lance sur l'index, sort toujours en 0 — un contrôle
bloquant à cette échelle se fait désinstaller — et parle quand l'outil échoue.
La règle du générateur et sa doc portent le nettoyage au fur et à mesure, et
l'exemple d'un interdit s'invente : base, adresse, compte et hôte en prennent un.

L'écran du contexte est posé, sans entrée de menu. Vérifié : 252 tests des six
fichiers d'essai touchés passent.

--- EN ---

Nothing reported the comments that break the convention. The tool reads
comments and docstrings, never the code around them, and returns two unequal
families: identifying data — address, e-mail, account path, private-list name
— is a finding; narrative — witness marker, date, person — a signal to re-read.

The pre-commit hook runs it on the index, always exits 0 — a blocking check at
that scale gets uninstalled — and speaks when the tool fails. The generator
rule and its doc carry the clean-up as you go, and a forbidden thing's example
is invented: a real database, address, account and host each take one.

The context screen is in place, with no menu entry. Checked: 252 tests of the
six touched fixture files pass.

Assisted-by: Claude Opus 5
2026-08-30 06:08:30 -04:00

1.8 KiB

Code Generator

ERPLibre inclut un système de génération de modules Odoo :

  • script/code_generator/new_project.py — Créer un nouveau module
  • script/code_generator/create_from_existing_module.py — Cloner un module existant
  • addons/TechnoLibre_odoo-code-generator/ — Moteur de génération
  • addons/TechnoLibre_odoo-code-generator-template/ — Templates

Documentation : doc/CODE_GENERATOR.md

Les commentaires du code produit

Le code généré porte des commentaires comme le reste, et la même règle : ils disent COMMENT ça marche, ils ne portent rien d'identifiant et ils ne racontent pas l'enquête. Voir .claude/rules/04-code-conventions.md.

Un module généré à partir d'une base existante hérite de ce qu'elle contient : relire ses commentaires et ses docstrings avant de committer, un nom de client ou de base y arrive tout seul.

Le nettoyage au fur et à mesure

Rien ne se nettoie en une passe : on corrige les commentaires du fichier qu'on touche, au moment où on le touche. Deux outils le rappellent.

Le hook pre-commit liste ce qui est à relire dans les fichiers indexés, SANS bloquer le commit :

git config core.hooksPath script/git/hooks   # une fois par clone

L'outil se lance aussi à la main, sur un fichier, un répertoire ou l'index :

python3 script/analyse/check_comment_hygiene.py script/todo/todo.py
python3 script/analyse/check_comment_hygiene.py --staged
python3 script/analyse/check_comment_hygiene.py script --identifying-only

🔴 identifiant — adresse, courriel, chemin de compte : à retirer. 🟡 récit — témoignage, date, première personne : à RELIRE, l'outil ne tranche pas. Un fait durable reste ; l'incident où on l'a observé part. Codes de sortie : 0 rien, 1 des trouvailles, 2 l'outil a échoué.