feat(ai): menu @ instantane, selecteurs agrandis et BooksLM racine (#82)
CI / lint (push) Successful in 1m11s
CI / security (push) Successful in 47s
CI / test (push) Successful in 2m12s
CI / build (push) Successful in 45s
CI / e2e (push) Successful in 10m21s

Nouvel endpoint GET /api/vault/{vault}/paths + prechargement et filtrage client du menu @ (affichage instantane des fichiers/repertoires). Selecteurs Fournisseur/Modele agrandis (0,8rem / 34px) pour s'aligner sur le reste du site. Ajout de BooksLM au menu contextuel de la racine des vaults.
This commit is contained in:
2026-09-12 20:09:08 -04:00
parent d6cdd670b1
commit 9274dbd49f
10 changed files with 218 additions and 26 deletions
+13 -4
View File
@@ -14,6 +14,12 @@ et [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
### Ajouté
- **#82 Assistant IA — menu `@` instantané** — nouvel endpoint `GET /api/vault/{vault}/paths`
(liste plate et plafonnée de l'index des chemins). Le frontend la récupère **une fois par vault**
(préchargée à l'ouverture du panneau) puis filtre **côté client** pendant la frappe : l'affichage
des fichiers/répertoires est immédiat, au lieu d'une requête réseau par caractère. Tests :
`tests/test_api_main.py` (+2), `tests/frontend/ai.test.mjs` (+1).
- **#82 Assistant IA — Section « Fournisseur & modèle » compacte** — la barre de sélection du
modèle devient **discrète** : la liste complète des types d'endpoints (Chat, Embeddings, Vision…)
est remplacée par un **bouton d'information ⓘ** qui affiche les capacités dans une **bulle** au
@@ -229,10 +235,13 @@ et [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
statut masqué, description accessible au **survol** de l'en-tête) ; le placeholder
« Posez une question sur ces documents… » est retiré ; l'indice clavier
« Entrée pour envoyer · Ctrl+Entrée… » est retiré ; le bouton « Envoyer » devient un **emoji
compact** (✈️). Un **indicateur d'activité** apparaît pendant le traitement et détaille le
workflow : envoi, réception de la réponse, appels d'outils (`Outil : X…`), attente de
confirmation, succès ou échec. i18n FR/EN (`ai.activity_*`, `ai.composer_label`). Tests JSDOM
(`tests/frontend/ai.test.mjs` +1).
compact** (✈️). Les sélecteurs Fournisseur/Modèle adoptent la **taille des autres contrôles du
site** (police 0,8 rem, hauteur 34 px, rayon 6 px) au lieu d'être plus fins. Un **indicateur
d'activité** apparaît pendant le traitement et détaille le workflow : envoi, réception de la
réponse, appels d'outils (`Outil : X…`), attente de confirmation, succès ou échec. Le menu
contextuel de la **racine d'une vault** expose aussi « 🧠 BooksLM », comme les répertoires.
i18n FR/EN (`ai.activity_*`, `ai.composer_label`). Tests JSDOM
(`tests/frontend/ai.test.mjs` +2).
### Corrigé