Skip to content

BDD-130 — Corriger le renommage des blocs (Source, Traitement, Destination)

User story

En tant qu'utilisateur, je veux renommer n'importe quel bloc (source, transformation, destination) via le tiroir de configuration, afin que le libellé affiché sur le canvas soit persisté et stable après autosave / rechargement.

Problème

  • Le champ « Nom affiché sur le canvas » semblait ignoré pour Traitement et Destination après sauvegarde (sensation de rechargement).
  • La saisie provoquait des à-coups : boucle Vue Flow update:nodes + autosave déclenchant loading sur tout l'éditeur.

Critères d'acceptance

CritèreStatut
Source, Traitement ou Destination : modifier le nom met à jour immédiatement le libellé canvas
Après autosave (~1 s), un refresh navigateur affiche le même nom
Nom persisté en base (workflow_nodes.label) et relu au chargement✅ (inchangé côté API)
Renommer un bloc ne déplace pas le nœud (pas de régression position / fitView)
Déplacer un bloc sur le canvas : la position reste après autosave / refresh
Test unitaire front : label traitement + destination

Périmètre livré

Front

  • workflow-canvas-label.js — fusion des libellés sans écraser un nom personnalisé par le défaut du type.
  • workflow-canvas.sync.js — merge unifié source / traitement / destination.
  • useWorkflowCanvasNodeLabelDraft.js + WorkflowInspectorDrawer.vue — brouillon local debouncé pour la saisie.
  • useWorkflowActiveSourceBindings.js — plus de trim() à chaque frappe (trim à la persistance / blur).
  • workflow-canvas.model.jstrim à l'export API.
  • workflow-store.jssaveCanvas rafraîchit la liste sans loading (plus de overlay « Chargement… » sur le canvas).
  • workflow-canvas-position.js — résolution position / computedPosition (drag, merge Vue Flow).
  • WorkflowEditorPage.vue@node-drag-stop pour figer la position après glisser-déposer.

Back

Aucun changement (le champ label était déjà persisté).

Migration SQL

Aucune.

Tests

CoucheFichier
Front unitworkflow-canvas-label.spec.js
Front unitworkflow-canvas-position.spec.js
Front unituseWorkflowCanvasNodeLabelDraft.spec.js
Front unitworkflow-store.spec.js (autosave sans loading)

Vérification manuelle

  1. Ouvrir un workflow, ajouter Source / Traitement / Destination.
  2. Renommer chaque bloc dans le tiroir ; vérifier le titre sur le canvas sans tremblement à la frappe.
  3. Attendre l'autosave : pas d'overlay « Chargement du workflow… » sur le canvas.
  4. F5 : les noms personnalisés sont conservés.
  5. Déplacer un bloc, attendre l'autosave : le bloc reste à la nouvelle position (pas de retour au point d'ajout).