**Motivations:** - Provide a single repo for IA-driven piloting of all projects (agents, rules, deploy scripts). - Reusable as git submodule; project-specific config in projects/ (no slug from submodule path). **Evolutions:** - Cursor agents: deploy-by-script, push-by-script, branch-align, fix, evol, fix-lint, fix-search, code, docupdate, gitea-issues-process, change-to-all-branches. - Deploy scripts: pousse.sh (build_dirs from project config), bump-version.sh (version from project config), branch-align.sh, change-to-all-branches.sh. - Project config schema in projects/README.md; lecoffreio.json as example. **Pages affectées:** - .cursor/agents/*.md, .cursor/rules/*.mdc, deploy/*.sh, projects/README.md, projects/lecoffreio.json, README.md, CLAUDE.md, config files.
2.8 KiB
| name | model | description |
|---|---|---|
| change-to-all-branches | inherit | Uniquement en test, lance /push-by-script puis deploy/change-to-all-branches.sh (alignement + déploiement test). |
Rôle de l’agent : vérifier que la branche locale est test (sinon retour 1), fournir le message de commit (via /push-by-script), lancer le script, contrôler la sortie et le code de retour. Rôle du script : exécution déterministe (vérif branche test, branch-align.sh test, deploy.sh test --import-v1 --skipSetupHost --no-sync-origin ; log dans logs/ par défaut).
Focus qualité et résolution de problèmes :
-
Qualité : Ne lancer le script qu'après un push-by-script réussi (message structuré, CHANGELOG à jour, build OK). En cas d'échec de push-by-script, traiter la cause (message manquant, build en échec, etc.) avant de continuer.
-
Résolution de problèmes : Si change-to-all-branches.sh échoue (alignement ou déploiement), analyser la sortie pour identifier la cause ; rapporter la cause et la résolution à apporter. Ne pas relancer sans avoir corrigé ou sans instruction utilisateur.
-
Logs et corrections : Vérifier la sortie du script et le fichier logs/deploy_*.log produit par deploy.sh. En cas d'échec, identifier la cause à partir de ces logs, appliquer les corrections (code, config, doc), committer et pousser les changements via push-by-script si nécessaire, puis relancer le script jusqu'à succès ou blocage nécessitant instruction utilisateur.
Avant d'exécuter un script du projet :
- Lire le fichier du script avec l'outil de lecture (ex.
deploy/change-to-all-branches.sh). - Présenter à l'utilisateur un résumé de ce que le script va faire : étapes principales, options utilisées, effets attendus.
- Lancer le script uniquement après cette présentation.
Si la branche locale actuelle n'est pas test, retourner 1.
Uniquement en test (branche git), exécuter dans l'ordre :
- /push-by-script — pousse directement sur la branche test distante (pas de pull request). Message de commit fourni par l'agent.
- ./deploy/change-to-all-branches.sh — aligne origin/test, origin/pprod, origin/prod sur le SHA de test, puis déploie l'environnement test (deploy.sh avec --import-v1 --skipSetupHost --no-sync-origin ; log dans logs/ par défaut). Le script vérifie qu'on est sur la branche test et se ré-exécute depuis la racine si besoin. Push direct uniquement ; aucun script ni agent ne crée de pull request.
Retourner 0 en cas de succès. En cas d'échec d'une étape : consulter les logs (sortie du script, logs/deploy_*.log), identifier la cause, appliquer les corrections, mettre à jour git (push-by-script) si des fichiers ont été modifiés, puis relancer. S'arrêter uniquement si la correction n'est pas possible sans instruction utilisateur.