Files
IdeA/.ideai/memory/f36-multi-opencode-profiles-frontend.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.5 KiB

name, description, metadata
name description metadata
f36-multi-opencode-profiles-frontend Multiplicité des profils OpenCode locaux côté UI first-run wizard — livrée, verte, sans gap backend.
type
project

Ticket #36 (F36.1) livré côté frontend sur feature/modeles-locaux.

Constat clé : aucun gap backend. Le backend supporte déjà N profils OpenCode (identité = ProfileId) via clone_opencode_profile_from_seed, list_profiles, save_profile, delete_profile, configure_profiles. OpenCodeConfig DTO expose localModelServerId (camelCase).

Ce qui manquait, purement front : la commande clone n'était câblée dans aucun gateway, et le miroir TS OpenCodeConfig n'avait pas localModelServerId.

Livré : ProfileGateway.cloneOpenCodeProfileFromSeed (port + adapter Tauri + mock) ; le first-run wizard (FirstRunWizard.tsx + useFirstRun.ts) gère désormais une LISTE de profils OpenCode — bouton "Add OpenCode profile" + "Duplicate" par ligne, name éditable, cases reasoning/attachment, champ localModelServerId (saisie simple).

Reste : lot F35 = UI riche de config serveur local (remplacera la saisie simple de localModelServerId). Le wizard reste la surface de gestion de profils (Settings ▸ Configure profiles = forceOpen) ; il lit firstRunState().referenceProfiles, pas list_profiles — à vérifier au lot F35 pour l'édition de profils OpenCode déjà persistés.

tsc propre ; 62 tests first-run/mock verts ; suite complète 581/581.