Skip to Content
DesignPrompt SuggestionÉtat d'implémentation de la suggestion de prompt

État d’implémentation de la suggestion de prompt

Suit l’état d’implémentation de la fonctionnalité de suggestion de prompt (NES) dans tous les packages.

Module principal (packages/core/src/followup/)

ComposantÉtatLignesDescription
followupState.ts✅ Done~230Contrôleur agnostique au framework avec timer/debounce
suggestionGenerator.ts✅ Done~260Génération LLM + 12 règles de filtrage + prise en charge des requêtes forkées
forkedQuery.ts✅ Done~240CacheSafeParams + createForkedChat + runForkedQuery
overlayFs.ts✅ Done~140Système de fichiers overlay en copy-on-write
speculationToolGate.ts✅ Done~150Application des limites d’outils avec un analyseur AST shell
speculation.ts✅ Done~540Moteur de spéculation avec suggestion en pipeline + remplacement de modèle

Intégration CLI (packages/cli/)

ComposantÉtatDescription
AppContainer.tsx✅ DoneGénération de suggestions, cycle de vie de la spéculation, rendu UI
InputPrompt.tsx✅ DoneAcceptation via Tab/Entrée/Flèche droite, rejet + annulation
Composer.tsx✅ DoneTransmission des props
UIStateContext.tsx✅ DonepromptSuggestion + dismissPromptSuggestion
useFollowupSuggestions.tsx✅ DoneHook React avec télémétrie + suivi des frappes
settingsSchema.ts✅ Done3 feature flags + paramètre fastModel
settings.schema.json✅ DoneSchéma des paramètres VSCode

Intégration WebUI (packages/webui/)

ComposantÉtatDescription
InputForm.tsx✅ DoneTab/Entrée/Flèche droite + soumission explicitText
useFollowupSuggestions.ts✅ DoneHook React avec prise en charge de onOutcome
followup.ts✅ DonePoint d’entrée du sous-chemin
components.css✅ DoneStyle du texte fantôme
vite.config.followup.ts✅ DoneConfiguration de build séparée

Télémétrie (packages/core/src/telemetry/)

ComposantÉtatDescription
PromptSuggestionEvent✅ Done10 champs
SpeculationEvent✅ Done7 champs
logPromptSuggestion()✅ DoneLogger OpenTelemetry
logSpeculation()✅ DoneLogger OpenTelemetry

Couverture de tests

Fichier de testTestsDescription
followupState.test.ts14Timer du contrôleur, debounce, callback d’acceptation, onOutcome, clear
suggestionGenerator.test.ts16Les 12 règles de filtrage + cas limites + faux positifs
overlayFs.test.ts15Écriture COW, résolution de lecture, apply, cleanup, path traversal
speculationToolGate.test.ts27Catégories d’outils, mode d’approbation, AST shell, réécriture de chemin
forkedQuery.test.ts6Sauvegarde/récupération/suppression des params cache, deep clone, détection de version
speculation.test.ts7Cas limites de ensureToolResultPairing
smoke.test.ts21E2E inter-modules : filter + overlay + toolGate + cache + pairing
InputPrompt.test.tsx4Tab, Entrée+submit, Flèche droite, guard de complétion

Historique des audits

TourProblèmes trouvésProblèmes corrigés
R1-R41010 (moteur de règles → LLM, simplification de l’état)
R5-R622 (conflit de raccourci Entrée, télémétrie Flèche droite)
R7-R833 (télémétrie WebUI, type inutilisé, couverture de tests)
R90— (convergence)
R10-R1111 (dépendance historyManager)
R12-R1311 (limites de mots pour les regex évaluatives)
Phase 1+2 R1-R420+20+ (contournement de permissions, sécurité overlay, race conditions)
Total37+37+

Alignement avec Claude Code

FonctionnalitéAlignementNotes
Texte du prompt100%Identique (nom de marque uniquement)
12 règles de filtrage100%+Amélioration des limites de mots \b
Interaction UI (Tab/Entrée/Flèche droite)100%
Conditions de garde100%13 vérifications
Télémétrie100%10+7 champs
Partage de cacheDashScope cache_control
SpéculationOverlay COW + gating d’outils
Suggestion en pipelineGénérée après la fin de la spéculation
Gestion de l’état100%+Pattern contrôleur, Object.freeze
Last updated on