Files
IdeA/.ideai/memory/f35-config-crud-delivered.md
Blomios a244f32f31 chore(ideai): versionne le store tickets/sprints/mémoire du sprint Modeles locaux
Store d'orchestration du sprint « Modeles locaux » : sprint 883534aa,
tickets #35/#36 (et #32/#37–#41 du store), compteurs et index, notes
mémoire de livraison (#35 CRUD/statut, #36 multi-profils, OpenCode↔llama.cpp).

Runtime transitoire volontairement exclu (background-tasks/, agent scratch
testllamacpp.md).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-11 15:50:46 +02:00

1.6 KiB

name, description, metadata
name description metadata
f35-config-crud-delivered F35.2 (config serveur local + sélection dans les profils OpenCode) livrée et verte sur feature/modeles-locaux ; clôt le sprint modèles locaux F34-F36.
type
project

Ticket #35 F35.2 LIVRÉ (vert) sur feature/modeles-locaux. Débloqué par le contrat PLAT d'Architect.

Contrat backend : list_model_servers / save_model_server({request:{config}}) / delete_model_server({serverId}). DTO plat camelCase LocalModelServerConfig { id, kind:"llamaCpp", name, baseURL, port, modelPath?, servedModelName, binaryPath?, args, autoStart, stopPolicy }. PIÈGE intégré : save_model_server exige un UUID valide dans config.id même à la création (backend ne génère PAS l'id serveur, seulement le model.id interne caché) → le front minte l'UUID client-side (newModelServerId). Erreur suppression référencée = code:"model_server_in_use".

Livré : ModelServerGateway (port + adapter Tauri adapters/modelServer.ts + MockModelServerGateway avec markInUse). Feature features/model-servers/ : useModelServers (CRUD, traduit in-use en message FR actionnable), ModelServersPanel (déclarer/éditer/supprimer), ModelServerSelect (dropdown binding avec « None » = serveur externe + préserve un id orphelin « unknown/removed »). Dans FirstRunWizard, le champ texte localModelServerId (F36) est remplacé par ModelServerSelect.

Cohérent avec F35.1 (badge corrèle via localModelServerId). tsc 0 ; suite 608/608. Sprint modèles locaux (F34 backend, F35, F36) désormais complet côté frontend.