mirror of
https://github.com/microsoft/vscode.git
synced 2026-06-02 13:45:52 +01:00
7d45e9906e
Don't emit empty <customizationsUpdate> on steering turns Fixes #317763 Terminal steering requests sent from runInTerminalTool.ts don't forward an instructionContext, so chatServiceImpl short-circuits collectInstructions() to [] and the vscode.customizations.index variable is absent for those turns. The old freeze/drift consumer in agentPrompt.tsx treated that absence as 'all customizations removed' via 'effectiveCurrent = currentValue ?? ''', emitting an empty <customizationsUpdate> block whose own text says it 'supersedes the system prompt' — falsely telling the model that all skills/instructions/agents had been wiped mid-task and churning the cache tail. Gate drift emission on 'currentValue !== undefined' so an absent variable preserves the frozen system-prompt listing instead of falsely signalling removal. Also graduates the experimental 'github.copilot.chat.freezeCustomizationsIndex' setting (it was already default true on onExp).