From f0be20f2048f9d70ae9a625d77ce402cd54d914f Mon Sep 17 00:00:00 2001 From: Nicolas Cantu Date: Sun, 15 Mar 2026 12:51:16 +0100 Subject: [PATCH] conf update --- .cursor/agents/README.md | 120 ------------- .cursor/agents/agent-loop.md | 52 +++--- .../branch-align-by-script-from-test.md | 2 + .cursor/agents/change-to-all-branches.md | 2 + .cursor/agents/code.md | 2 + .cursor/agents/deploy-by-script.md | 2 + .cursor/agents/deploy-pprod-or-prod.md | 2 + .cursor/agents/docupdate.md | 6 +- .cursor/agents/evol.md | 2 + .cursor/agents/fix-lint.md | 2 + .cursor/agents/fix-search.md | 2 + .cursor/agents/fix.md | 2 + .cursor/agents/gitea-issues-process.md | 36 ++-- .cursor/agents/push-by-script.md | 2 + .cursor/hooks/remonter-mails.sh | 7 +- README.md | 32 +++- gitea-issues/AGENT_LOOP.md | 138 --------------- gitea-issues/TICKETS_SPOOL_FORMAT.md | 128 -------------- gitea-issues/agent-loop-chat-iterations.sh | 4 + gitea-issues/agent-loop-lock-acquire.sh | 39 +++++ gitea-issues/agent-loop-lock-release.sh | 35 ++++ gitea-issues/agent-loop-retrieval-once.sh | 29 ++-- gitea-issues/agent-loop-stop-requested.sh | 27 +++ gitea-issues/agent-loop-stop.sh | 28 +++ gitea-issues/agent-loop-treatment.sh | 7 +- gitea-issues/agent-loop.env.example | 4 +- gitea-issues/agent-loop.sh | 59 +++---- gitea-issues/imap-bridge.env.example | 3 + gitea-issues/lib.sh | 1 + gitea-issues/list-pending-spooler.sh | 23 +++ gitea-issues/mail-create-issue-from-email.sh | 4 +- gitea-issues/mail-get-thread.py | 7 +- gitea-issues/mail-get-thread.sh | 4 +- gitea-issues/mail-list-unread.py | 9 +- gitea-issues/mail-list-unread.sh | 5 +- gitea-issues/mail-mark-read.sh | 4 +- gitea-issues/mail-send-reply.py | 37 +++- gitea-issues/mail-send-reply.sh | 4 +- gitea-issues/mail-thread-log.sh | 4 +- gitea-issues/mail-to-issue.py | 4 +- gitea-issues/mail-to-issue.sh | 4 +- gitea-issues/mail_common.py | 18 ++ gitea-issues/tickets-fetch-inbox.py | 159 ++++++++++++++++-- gitea-issues/tickets-fetch-inbox.sh | 11 +- gitea-issues/write-response-spooler.py | 66 ++++++++ gitea-issues/write-response-spooler.sh | 8 + projects/README.md | 2 +- projects/enso/conf.json | 2 +- projects/ia_dev/conf.json | 2 +- projects/lecoffreio/conf.json | 6 +- ...y_-_nicolas.cantu_pm.me_-___0xAFF1ECF4.asc | 14 ++ ...34128.af28dfa2.nicolas.cantu_pm.me.pending | 36 ++++ 52 files changed, 670 insertions(+), 538 deletions(-) delete mode 100644 .cursor/agents/README.md delete mode 100644 gitea-issues/AGENT_LOOP.md delete mode 100644 gitea-issues/TICKETS_SPOOL_FORMAT.md create mode 100755 gitea-issues/agent-loop-lock-acquire.sh create mode 100755 gitea-issues/agent-loop-lock-release.sh create mode 100755 gitea-issues/agent-loop-stop-requested.sh create mode 100755 gitea-issues/agent-loop-stop.sh create mode 100755 gitea-issues/list-pending-spooler.sh create mode 100644 gitea-issues/write-response-spooler.py create mode 100755 gitea-issues/write-response-spooler.sh create mode 100644 projects/lecoffreio/data/issues/2026-03-14T134128.af28dfa2.nicolas.cantu_pm.me.d/0_publickey_-_nicolas.cantu_pm.me_-___0xAFF1ECF4.asc create mode 100644 projects/lecoffreio/data/issues/2026-03-14T134128.af28dfa2.nicolas.cantu_pm.me.pending diff --git a/.cursor/agents/README.md b/.cursor/agents/README.md deleted file mode 100644 index 0330e99..0000000 --- a/.cursor/agents/README.md +++ /dev/null @@ -1,120 +0,0 @@ -# Gitea issues – scripts et agents - -Dossier dédié au traitement des tickets (issues) Gitea du dépôt **4nk/lecoffre_ng** (https://git.4nkweb.com/4nk/lecoffre_ng/issues). Toute la logique d'appel API et Git est dans les scripts ; les agents orchestrent et appellent /fix ou /evol. - -## Agents (.cursor/agents/) - -| Agent | Fichier | Rôle | -|-------|---------|------| -| **agent-loop** | `agent-loop.md` | Orchestre la boucle de récupération des mails et le traitement : lance les 2 boucles en arrière-plan (récupération + traitement, pas de timeout) ou exécute x fois (récupération 1 fois puis traitement 1 fois via gitea-issues-process). | -| **gitea-issues-process** | `gitea-issues-process.md` | Traite les issues Gitea et les mails en attente : liste les issues/mails, crée des branches, lance /fix ou /evol, /push-by-script ; workflow mails (fil, réponse réelle, marquage lu). | - -Spooler tickets (nouveau) : mails dans **projects//data/issues/** (filtre par `tickets.authorized_emails` dans conf.json), pas de « non lu », aucun enregistrement supprimé. Format : `gitea-issues/TICKETS_SPOOL_FORMAT.md`. Récupération : `./ia_dev/gitea-issues/tickets-fetch-inbox.sh`. Référence boucle mails (legacy) : `gitea-issues/AGENT_LOOP.md`. Hook Cursor : `sessionStart` → `.cursor/hooks/remonter-mails.sh` (lit `projects//data/issues/*.pending`). - -## Contexte d'exécution - -- **Emplacement** : `gitea-issues/` est dans le sous-module **ia_dev** du dépôt projet. Chemin typique : `/ia_dev/gitea-issues/`. Fonctionne pour tout projet utilisant ia_dev de la même manière. -- **Projet cible** : le projet est identifié **dynamiquement** par le fichier `../ai_project_id` (à la racine du dépôt projet, parent de `ia_dev`). Son contenu (slug) sert à charger la config dans `ia_dev/projects//`. Changer de projet = changer le dépôt (ou le contenu de `ai_project_id`) ; aucun chemin à hardcoder. -- **Lancement** : le chat Cursor et les scripts sont lancés depuis **ia_dev** (`/ia_dev/`), mais les opérations (issues, mails, déploiement) concernent le dépôt **parent** (`../` = racine projet). Invoquer les scripts depuis la racine du dépôt projet : `cd && ./ia_dev/gitea-issues/