Skip to content

Permet de créer un modèle depuis un événement, l'écrasement devenant une option - #26

Merged
flocom merged 1 commit into
mainfrom
claude/remove-apel-sensitive-data-73l5iu
Aug 1, 2026
Merged

Permet de créer un modèle depuis un événement, l'écrasement devenant une option#26
flocom merged 1 commit into
mainfrom
claude/remove-apel-sensitive-data-73l5iu

Conversation

@flocom

@flocom flocom commented Aug 1, 2026

Copy link
Copy Markdown
Owner

Le défaut de conception

La version précédente (#23) ne savait qu'écraser. Sans modèle existant, le bouton était désactivé et l'interface renvoyait l'utilisateur en créer un ailleurs, à la main, avant de revenir y verser la check-list.

Autrement dit : le cas d'usage principal — faire d'un événement qu'on vient de mettre au point un modèle réutilisable — était le seul que la fonctionnalité ne couvrait pas. Signalé en revue, corrigé ici.

Ce que ça devient

Un bouton, « Copier dans les modèles », qui propose les deux, la création par défaut :

  • Créer un nouveau modèle — nom prérempli avec le titre de l'événement, modifiable. Le modèle reprend aussi la description de l'événement : avec les tâches, ce sont les seuls champs qu'un modèle porte.
  • Remplacer un modèle existant — proposé seulement s'il en existe au moins un. Confirmation nommant le modèle et le nombre de tâches perdues, et verrou de version conservé.

Le bouton n'est plus désactivé que si la check-list est vide — le seul cas où il n'y a réellement rien à copier.

Serveur MCP

overwrite_template_from_event devient save_event_as_template et couvre les deux chemins : sans templateId il crée, avec il remplace. confirm n'est exigé que pour un remplacement — créer un modèle ne détruit rien, l'exiger serait du bruit.

Vérification

Rejoué sur un PostgreSQL 16 avec les migrations du projet, sur un événement de 3 tâches et un modèle existant de 1 tâche :

Chemin Résultat
Création modèle « Kermesse », description de l'événement reprise, 3 tâches
Fidélité des tâches {"title":"Réserver le photobooth","description":"Six mois à l'avance","leadTimeDays":180,"leadTimeUnit":"months","leadTimeValue":6} — unités d'affichage conservées
Écrasement 1 → 3 tâches, version 0 → 1
Écriture sur version périmée refusée, conflit détecté

tsc --noEmit, npm run lint et next build passent.


Generated by Claude Code

…une option

La version précédente ne savait qu'écraser : sans modèle existant, le bouton
était désactivé et renvoyait l'utilisateur en créer un ailleurs, avant de
revenir y verser la check-list. C'était le cas d'usage principal — faire d'un
événement mis au point un modèle réutilisable — qui était le seul impossible.

« Copier dans les modèles » propose maintenant les deux, la création par défaut.
Un nouveau modèle reprend le titre et la description de l'événement en plus de
ses tâches : ce sont les seuls champs qu'un modèle porte. Le remplacement d'un
modèle existant reste offert, précédé de sa confirmation nommant le modèle et le
nombre de tâches perdues, et protégé par le verrou de version.

Le bouton n'est plus désactivé que si la check-list est vide, seul cas où il n'y
a réellement rien à copier.

Côté MCP, overwrite_template_from_event devient save_event_as_template et couvre
les deux chemins. La confirmation n'est exigée que pour un remplacement : créer
un modèle ne détruit rien.

Vérifié sur un PostgreSQL 16 avec les migrations du projet : création reprenant
titre, description et les 3 tâches avec leurs unités d'affichage, écrasement
passant de 1 à 3 tâches, et refus d'une écriture sur version périmée.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014SfQYBU4xXTeSEHKhHQXdD
@flocom
flocom merged commit 85a4efa into main Aug 1, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants