From 16302e5814a1e79d9ce0b4d0cc5dee06ce39b178 Mon Sep 17 00:00:00 2001 From: Nicolas Cantu Date: Wed, 25 Mar 2026 04:22:02 +0100 Subject: [PATCH] deploy added --- .cursor/agents/deploy-pprod-or-prod.md | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/.cursor/agents/deploy-pprod-or-prod.md b/.cursor/agents/deploy-pprod-or-prod.md index 84c1c5f..e93f7ef 100644 --- a/.cursor/agents/deploy-pprod-or-prod.md +++ b/.cursor/agents/deploy-pprod-or-prod.md @@ -16,8 +16,6 @@ En tant qu'agent, avant de solliciter l'ia, regarde ce que tu peux scripter (imp - Sous-agents : uniquement si nécessaire ; descriptions courtes ; éviter « explore » si grep/read/chemin connu suffit. - Réponses concises, sans répéter règles ou docs déjà référencées. -- **Lint** : si **aucun** lint (`npm run lint` ou équivalent sur les `build_dirs` du dépôt projet : `projects//conf.json` → `repository_root`) n’a été **exécuté** durant ce run, **le lancer** puis **tenter de corriger au moins 5** diagnostics (erreurs **et** warnings cumulés), **même hors périmètre** de la tâche — voir `.cursor/rules/cloture-lint.mdc` (section **Si aucun lint n’a été exécuté pendant l’agent**). - # Agent deploy-pprod-or-prod ## Règle d'exécution intégrale (obligatoire, non négociable) @@ -37,6 +35,30 @@ En tant qu'agent, avant de solliciter l'ia, regarde ce que tu peux scripter (imp **Répertoire d'exécution (standalone) :** Racine de ia_dev. Tous les scripts sont invoqués depuis la racine de ia_dev. +## Ordre des agents et anti-duplication (obligatoire) + +Règles **décisionnelles** (ne pas lancer en double ce qu’un agent en aval exécute déjà) : + +| Action en amont | Condition | Application (tant que l’étape 2 ci-dessous existe dans ce fichier) | +| --- | --- | --- | +| **`/push-by-script`** (branche **test**) | Lancer **avant** ce workflow **seulement si** **`/change-to-all-branches`** ne le lance **pas** aussi. | L’agent **`/change-to-all-branches`** exécute **`/push-by-script`** **avant** `./deploy/change-to-all-branches.sh` (voir `.cursor/agents/change-to-all-branches.md`, checklist étape 5). Comme **`/deploy-pprod-or-prod`** appelle **`/change-to-all-branches`** à l’étape 2, **interdit** de lancer **`/push-by-script`** sur test **séparément avant** l’étape 2 de ce workflow. | +| **`/change-to-all-branches`** | Lancer **avant** ce workflow **seulement si** **`/deploy-pprod-or-prod`** (cible pprod ou prod) ne le lance **pas** aussi. | Ce fichier impose l’**étape 2** « Lancer **`/change-to-all-branches`** ». **Interdit** de lancer **`/change-to-all-branches`** **séparément avant** de commencer ce workflow (sauf **évolution documentée** de ce fichier **sans** étape 2 ; dans ce cas seulement, enchaîner manuellement dans l’ordre push → change-to-all-branches → suite). | + +**Si** une future version de ce fichier **supprime** l’étape 2 : réévaluer le tableau (alors **`/change-to-all-branches`** peut être requis en amont, et **`/push-by-script`** reste couvert **si** **`/change-to-all-branches`** est inchangé côté ia_dev). + +### Vérification obligatoire — début d’exécution + +Avant l’**étape 1** du workflow, **afficher et cocher** (dans la sortie de l’agent) : + +1. **Anti-duplication `change-to-all-branches`** : je **n’ai pas** exécuté **`/change-to-all-branches`** complet en dehors de ce run **immédiatement avant** l’étape 2 (conforme : une seule exécution, celle de l’étape 2). +2. **Anti-duplication `push-by-script`** : je **n’ai pas** exécuté **`/push-by-script`** sur test **uniquement pour préparer** ce déploiement avant l’étape 2 (le premier push est celui inclus dans **`/change-to-all-branches`** à l’étape 2). + +Si l’utilisateur ou un autre processus **a** déjà aligné / poussé : **le signaler** ; ne **pas** refaire **`/push-by-script`** ni **`/change-to-all-branches`** en amont par habitude — suivre quand même l’étape 2 (idempotence gérée par les scripts / l’agent change-to-all-branches). + +### Vérification obligatoire — fin d’agent (avant clôture) + +Cocher explicitement : **« Ordre anti-duplication : respecté (pas de `/push-by-script` ni `/change-to-all-branches` standalone avant l’étape 2 hors ce workflow) »** — ou documenter l’exception si évolution du fichier sans étape 2. + ## Workflow obligatoire 1. **Vérifier la branche** : La machine doit être sur la branche **test** au démarrage. Si ce n'est pas le cas, indiquer à l'utilisateur de passer sur test (ou exécuter `git checkout test` depuis la racine projet) avant de continuer.