ia_dev/.smartIde/rules/cloture-evolution.mdc
Nicolas Cantu e86a9fbb6e refactor: rename gitea-issues to git-issues and symlink projects to monorepo
- Rename directory and scripts env GIT_ISSUES_DIR; secrets path .secrets/git-issues
- Rename agent git-issues-process; update docs GIT_ISSUES_SCRIPTS_AGENTS.md
- Symlink projects/enso, smart_ide, builazoo to ../../projects/<id> when used inside smart_ide
- Update project conf paths for git-issues tokens and imap bridge
2026-04-03 19:05:28 +02:00

101 lines
5.5 KiB
Plaintext
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.

---
description: Règles pour tous les réponses (en fin de réponse)
alwaysApply: true
model: inherit
---
# Clôture évolution / correction
- **Principe** : tout agent ou règle invoqué dans ce document ou dans un agent doit être **appliqué intégralement**, sans omission (exécuter l'agent en entier ou appliquer toutes les étapes de la règle concernée).
- Clôturer toute réponse en **appliquant intégralement** ces règles /!\ TTRES IMPORTANT ET NON NEGOCIABLE, - **Périmètre** : la clôture est **toujours complète** pour **tous les agents** — sans exception. Aucune exception : même pour les agents qui ne modifient pas le code (ex. branch-align, push-by-script), les points 2 (5 sub-agents par projet), 14 (docupdate), 16 et 17 sappliquent. C'est toujours applicable de 1 à 19. Lister toutes les actions réaliées et non réalisées dans tous les cas de tous les points.
**Contexte projet :** Les agents sont définis et lancés depuis ia_dev (centralisé) mais sont **dédiés aux projets configurés** (lecoffreio, enso, algo, etc.), pas à ia_dev. La configuration et la documentation de chaque projet sont dans `projects/<id>/`. L'identifiant `<id>` est résolu par MAIL_TO ou AI_AGENT_TOKEN. Rappeler le projet et la branche au début de chaque agent.
**Répertoire d'exécution des scripts (standalone) :** Racine de ia_dev. Tous les scripts `deploy/` et `git-issues/` doivent être invoqués depuis la racine de ia_dev, ex. `./deploy/pousse.sh`, `./git-issues/wiki-migrate-docs.sh`. Les chemins absolus dans `conf.json` pointent vers les dépôts des projets.
**Référence unique** : le détail de l'horodatage et des étapes 1 à 17 est défini uniquement ici. Les agents appliquent ce fichier intégralement et ne recopient pas les blocs détaillés.
À la fin de toutes réponses il faut obligatoirement afficher :
1. **Horodatage et contexte obligatoires pour tous les agents** : à chaque exécution d'un agent (pas seulement en clôture), horodater (date et heure, format explicite ou ISO 8601) et afficher ou logger :
- **Projet et branche** : **projet** = id résolu par MAIL_TO ou AI_AGENT_TOKEN (config dans `projects/<id>/`). **Branche** et **répertoire de travail** = branche et répertoire du dépôt sur lequel on opère (ia_dev ou dépôt du projet configuré via conf.json, ex. `git branch --show-current`, `pwd`).
- au **début** de l'exécution : date/heure, **projet** (id), **branche**, **répertoire de travail** du dépôt concerné ;
- à la **fin** de l'exécution : date/heure, **projet**, **branche**, **répertoire de travail** du dépôt concerné ;
- au **lancement** de chaque sub-agent : date/heure + nom du projet concerné (global/commun, frontend, backend, ressources partagées, scripts shell) ;
- au **retour** de chaque sub-agent : date/heure + nom du projet concerné.
2. Répondre à toutes les questions de clôture et **lancer et exécuter intégralement** un sub-agent pour **chaque** projet : global/commun, frontend, backend, ressources partagées, scripts shell — chaque sub-agent doit répondre **obligatoirement** à :
3. **Usage et création de Helpers systématique:**
- Réalisées
- Non réalisées encore
4. **Texte i18n systématique + `.secrets/<env>/env-full` (obligatoire) :**
- Réalisées
- Non réalisées encore
5. **Fallback interdits obligatoire:**
- Réalisées
- Non réalisées encore
6. **Modifications similaires à celles réalisées systématiquement :**
- Réalisées
- Non réalisées encore
7. **Optimisation / mutualisation / centralisation systématique:**
- Réalisées
- Non réalisées encore
- Si « Non réalisées encore » : justification obligatoire par périmètre (voir `.smartIde/agents/closure-point-7-justification.md`).
8. **Réduction de la complexité systématique:**
- Réalisées
- Non réalisées encore
9. **Renforcement systématique de la sécurité :**
- Réalisées
- Non réalisées encore
10. **Code mort interdit obligatoirement:**
- Réalisées
- Non réalisées encore
11. **Lint corrigé obligatoirement :**
- Réalisées
- Non réalisées encore
12. Lister ce qu'il reste à faire (puces)
13. Réalise le "Non réalisées encore"
14. réalise le reste à faire.
15. Si il n'a pas été lancé avant, lancer l'agent `.smartIde/agents/push-by-script.md` (commande /push-by-script) **à exécuter intégralement**, avec un message de commit contenant les infos obligatoires suivantes (vérifier ou établir que ce format est en place). Voir `.smartIde/agents/push-by-script.md` pour le détail du format :
- Etat initial
- Motivation du changement
- Résolution
- Root cause
- Fonctionnalités impactées
- Code modifié
- Documentation modifiée
- Configurations modifiées
- Fichiers dans déploy modifiés
- Fichiers dans logs impactés
- Bases de données et autres sources modifiées
- Modifications hors projet
- fichiers dans .smartIde/ modifiés
- fichiers dans .secrets/ modifiés
- nouvelle sous sous version dans VERSION
- CHANGELOG.md mise à jour (oui/non)
16. Afficher le texte du commit.
## Preparer au maximum à l'aide d'outils et de scripts
En tant qu'agent, avant de solliciter l'ia, regarde ce que tu peux scripter (importe/install les outils nécessaires si besoin) l'ia est la derniere priorité par rapport à l'outillage, les outils sont lancés dans des scripts dans /home/desk/code/ia_dev/tools et rendus le plus générique possible afin de les réutilisé plus tard dans d'autres contextes, par contre l'ia peut serveur à développer ces scripts.