feat: menu + — Compétences-skills « Gérer » + « Parcourir » — phase 2/8 (v7.52.0)
- Sous-menu « Compétences-skills » : 11 skills builtin + skills enregistrés,
libellés affichés « Deep research » (/research) et « Skill-creator »
(/create-new-skill) via FD_SKILL_ALIAS (slugs intacts) ; le clic épingle le
skill au contexte, même chemin que la palette /.
- « Gérer les compétences » : section du menu + formulaire intégré (nom,
description, prompt) — création, édition, suppression (chip épinglé nettoyé),
export JSON téléchargé, import fichier avec overwrite (pas de doublon).
- « Parcourir les compétences » : section galerie filtrable (nom/description/
slug), installation en 1 clic (installGallerySkill réutilisé).
- PATCH /api/agent/skills/{skill_id} créé : édition partielle, whitelist de
colonnes, 400/401/404/409. OpenAPI régénéré : 515 chemins, version 7.52.0.
- En-tête ← + titre de section dans le menu (navigation à 3 niveaux).
- Fix : épingler un skill enregistré n'efface plus le message déjà tapé
(_pinDbSkill ne vide le composer que s'il est vide).
- Tests : tests/test_v752_skills_menu.py (7) + test_v751 adapté. Suite
complète 1280 verts (-n auto), ruff 0, eslint 0 problème.
This commit is contained in:
@@ -1,5 +1,39 @@
|
||||
# Changelog - FlowDeck
|
||||
|
||||
## v7.52.0 (2026-10-06) — Menu + : Compétences-skills « Gérer » + « Parcourir » (phase 2/8)
|
||||
|
||||
### Added
|
||||
|
||||
- **Sous-menu « Compétences-skills »** — 11 skills builtin + les skills
|
||||
enregistrés, avec **libellés affichés** « Deep research » (`/research`) et
|
||||
« Skill-creator » (`/create-new-skill`) via `FD_SKILL_ALIAS` (slugs intacts) ;
|
||||
le clic épingle le skill au contexte, même chemin que la palette `/`.
|
||||
- **« Gérer les compétences »** — section du menu : liste des skills,
|
||||
formulaire intégré (nom, description, prompt) pour créer/éditer, suppression
|
||||
avec nettoyage du chip épinglé, **export JSON** téléchargé et **import** en
|
||||
fichier (`overwrite:true` → jamais de doublon).
|
||||
- **« Parcourir les compétences »** — section galerie filtrable (nom /
|
||||
description / slug), installation en 1 clic (`installGallerySkill`).
|
||||
- **`PATCH /api/agent/skills/{skill_id}`** — édition partielle, whitelist de
|
||||
colonnes figée côté serveur, réponses 400 (champ vide / aucun champ),
|
||||
401 (sans session), 404, 409 (nom déjà pris). **OpenAPI régénéré** :
|
||||
`docs/openapi-v2.json` → 515 chemins, `info.version` 7.52.0.
|
||||
- **En-tête ← + titre de section** dans le menu (indispensable à 3 niveaux :
|
||||
racine → compétences → gérer/parcourir/formulaire).
|
||||
- **Fix** : épingler un skill enregistré **n'efface plus** le message déjà tapé
|
||||
(`_pinDbSkill` ne vide le composer que s'il est vide).
|
||||
|
||||
### Tests
|
||||
|
||||
- `tests/test_v752_skills_menu.py` — **7 tests** : PATCH complet + partiel,
|
||||
validations 400/404, 401 sans session (CSRF valide pour isoler la route),
|
||||
import sans doublon (409 puis `overwrite` → 1 seule ligne), aller-retour
|
||||
export → import, câblage des sections + alias, markup rendu dans la page.
|
||||
- `tests/test_v751_plus_menu.py` adapté : 4 sections « bientôt » au lieu de 5.
|
||||
- **Suite complète : 1280 passed / 0 failed** (`-n auto`), `ruff check app tests`
|
||||
propre, `eslint static/js/agent_panel_2.js` **0 problème**.
|
||||
|
||||
|
||||
## v7.51.0 (2026-10-06) — Menu + de l'assistant : hub de contexte (phase 1/8)
|
||||
|
||||
### Added
|
||||
|
||||
Reference in New Issue
Block a user