feat: éditeur visuel d'automations (pipeline steps) + fix CSP multi-instructions (v7.45.0)
Added — Settings → Automations, pipeline visuel (API steps v7.0) :
- Cartes ordinees (trigger/condition/delay/action) : resume + edition
TYPÉE par kind/type (datalist evenements, 7 ops, 8 types d'action avec
leurs champs reels), ajout/edition/suppression/haut-bas via
POST/PUT/DELETE /workspace/automations[/steps]/...
- ✨ Convertir le JSON en pipeline (legacy → steps ordonnes) ; textareas
JSON masques des qu'un step existe.
- Gate E2E « editeur visuel de steps » : creation → edition → ajout →
carte « Action · webhook » sous CSP reel.
Fixed (trouve par le gate) — 51 expressions Alpine MULTI-INSTRUCTIONS
(`a=1; b()`) = interdites par le parseur CSP (une seule expression par
directive ; ';' = token inattendu) — INVISIBLE pour le scan par tokens :
- Conversion en methodes dans 11 fichiers : nav settings x8 (navTo),
menu section base x7 (closeAndSetCount/Move/...), parts+editeur x13
(setSharePerm, more*, markAndSave...), breadcrumb x5 (hover*/goClose),
library/local x6 (menus popup), board x3 (pickStatus/...), ctx-menu x2
(addTagAndClear), agent/card/gitea/workspaces x6.
- Scanner dedie scan_semi (inventaire ';' hors chaines) ajoute au lot.
Verifs : 39 templates Jinja parse OK · scan expressions = 0 incompatible
(4 faux positifs en chaines) · **E2E 8/8** · suite **1094/1094** ·
ruff OK · docs a jour
This commit is contained in:
@@ -1,5 +1,39 @@
|
||||
# Changelog - FlowDeck
|
||||
|
||||
## v7.45.0 (2026-10-01) — Éditeur visuel d'automations + correction CSP (multi-instructions)
|
||||
|
||||
### Added
|
||||
|
||||
- **Pipeline visuel (steps) dans Settings → Automations** : cartes
|
||||
ordonnées par étape avec badge + résumé (`📡 Déclencheur · event`,
|
||||
`⚖ Condition · prop op val`, `⏳ Attente · Xs`, `⚡ Action · type → …`),
|
||||
**éditeur typé par kind/type** (événements en datalist, 7 ops de
|
||||
condition, 8 types d'action avec leurs champs réels : url, property/value,
|
||||
collection/title, message, webhook_url/text, to/subject/body,
|
||||
owner/repo/labels, agent_id/message), ajout/édition/suppression/**↑↓** via
|
||||
`POST/PUT/DELETE /workspace/automations[/steps]/…`, conversion legacy
|
||||
**✨ Convertir le JSON en pipeline** (trigger + conditions + actions
|
||||
ordonnés) ; les textareas JSON disparaissent dès qu'un step existe.
|
||||
- **Gate E2E** « éditeur visuel de steps » : création → édition → ajout
|
||||
d'étape → carte `Action · webhook` visible (sous CSP réel).
|
||||
|
||||
### Fixed (trouvé par le gate)
|
||||
|
||||
- **51 expressions Alpine multi-instructions** (`activeSection='x';
|
||||
loadX()` etc.) = **interdites par le parseur CSP** (une seule expression
|
||||
par directive ; `;` = token inattendu) — invisible pour le scan par
|
||||
tokens ! Conversion en **méthodes** : settings nav ×8 (`navTo`), menu de
|
||||
section base ×7 (`closeAndSetCount/…`), parts/éditeur ×13
|
||||
(`setSharePerm`, `more*`, `markAndSave`…), breadcrumb ×5
|
||||
(`hoverEllipsis/goClose`), library/local ×6 (menus), board ×3
|
||||
(`pickStatus/…`), ctx-menu ×2 (`addTagAndClear`), agent/card/gitea/
|
||||
workspaces ×6. Scanner dédié `scan_semi` (inventaire `;` hors chaînes).
|
||||
|
||||
### Notes
|
||||
|
||||
- 39 templates Jinja parse OK, scan d'expressions = 0 incompatibilité
|
||||
(4 faux positifs en chaînes), E2E **8/8**, suite **1094/1094**.
|
||||
|
||||
## v7.44.0 (2026-10-01) — Palette Ctrl+K : onglets Pages / ✨ Réponses IA
|
||||
|
||||
### Added
|
||||
|
||||
Reference in New Issue
Block a user