The template wrote « Generated by Claude Code », the form AI_POLICY.md replaces with the Assisted-by trailer. Three defects rode along: the model came from ~/.claude/settings.json, which has no model key here, so it declared the sonnet default rather than the truth; --author alone failed on the committer, this checkout having no git identity; and [UPD] was missing from the tag table while being the most used tag, 134 of the last 400. The model now comes from the session transcript, the only source that follows a /model switch — checked, it prints Claude Opus 5. The timezone is left to the system so contributors keep their own, and the menu substitutes name and email separately, the placeholders no longer being adjacent. --- FR --- Le gabarit écrivait « Generated by Claude Code », la forme que AI_POLICY.md remplace par le trailer Assisted-by. Trois défauts l'accompagnaient : le modèle venait de ~/.claude/settings.json, sans clé model ici, si bien qu'il déclarait le défaut sonnet plutôt que la vérité ; --author seul échouait sur le committer, ce checkout n'ayant aucune identité git ; et [UPD] manquait au tableau des tags alors qu'il est le plus utilisé, 134 des 400 derniers. Le modèle vient désormais de la transcription de session, seule source qui suive un changement par /model — vérifié, elle rend Claude Opus 5. Le fuseau est laissé au système, pour que chaque contributeur garde le sien, et le menu substitue nom et courriel séparément, les jetons n'étant plus accolés. Assisted-by: Claude Opus 5
36 lines
1.7 KiB
Markdown
36 lines
1.7 KiB
Markdown
# Conventions de code
|
||
|
||
Le formatage et le lint sont entièrement décrits par les fichiers de
|
||
configuration du dépôt — les lire plutôt que de supposer : `.flake8`,
|
||
`.editorconfig`, et les sections `[tool.black]` / `[tool.isort]` de
|
||
`pyproject.toml`. `make format` applique l'ensemble.
|
||
|
||
Prettier (via npm) formate XML/JSON/YAML ; `.editorconfig` donne les
|
||
indentations par type de fichier.
|
||
|
||
## Git
|
||
- Branches : `develop` (développement), `master` (production)
|
||
- Pas de submodules Git — utilise **Google Repo** pour les addons
|
||
- Manifests XML dans `manifest/` pour chaque version Odoo
|
||
- Format de commit : `[TYPE] portée : sujet`, sujet à l'impératif, 72
|
||
caractères au plus. Tags réellement utilisés : `[UPD]`, `[FIX]`, `[ADD]`,
|
||
`[IMP]`, `[REF]`.
|
||
|
||
### Tout commit assisté par IA
|
||
|
||
Trois exigences, sans exception — `AI_POLICY.md` en donne la raison :
|
||
|
||
- Trailer `Assisted-by: <modèle>`, une ligne par modèle. C'est **binaire** :
|
||
il y a eu IA ou non, aucun seuil à apprécier.
|
||
- **Jamais** d'IA dans `Co-authored-by:` — ce champ est réservé aux humains.
|
||
- Corps **bilingue** : le corps, puis `--- FR ---` (ou `--- EN ---`, le
|
||
marqueur nomme la langue de ce qui SUIT), puis la traduction.
|
||
|
||
Court et direct : **10 lignes par langue**, 15 est déjà long. Le corps dit
|
||
pourquoi c'était nécessaire, puis s'arrête. Rien de ce que le diff montre
|
||
déjà ; on garde le symptôme, le chiffre mesuré et la vérification.
|
||
|
||
Le mode d'emploi complet — résolution dynamique du modèle, gabarit, identité
|
||
git, taille des correctifs — est dans
|
||
`conf/template_claude_commands_commit.md`, déployable en `/commit` par
|
||
`TODO › Execute › GPT code › Claude configs`.
|