You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
editor: restore model-visible post-save diagnostics on the chat-diff save path #2210
PR #1403 (L1) makes the saveDirectly (chat-diff, PREVENT_FOCUS_DISRUPTION) path fire-and-forget its post-save diagnostics: DiffViewProvider.saveDirectly resolves immediately and the tail emits new problems only through the say("error") chat/webview channel. formatFileWriteResponse therefore no longer receives a newProblemsMessage on this path, so the model does not see the diagnostics that the diff-editor saveChanges path still reports.
This is intentional for the L1 latency goal (the save path no longer waits for the LSP settle), but it is a behavior difference between the two approval paths and should not be silent.
Proposed direction
Restore a model-visible signal for new problems on the chat-diff path without blocking the save: e.g. persist the tail's problems into the next tool result / a queued non-interactive message the model sees, or return a promise-backed newProblemsMessage that the tool layer can await only when a problem is likely.
Keep the say("error") UI row and its non-interactive semantics unchanged.
Add tool-layer tests for WriteToFileTool/ApplyPatchTool/EditTool covering experiments: {} with a new problem: the model-visible response must include the problems text, while the save still resolves before the LSP settle.
Context
Found in the CodeRabbit review of #1403 (DiffViewProvider.saveDirectly); the current behavior is documented in that PR/issue. This issue tracks closing the gap between the diff-editor and chat-diff approval paths.
Activity
test(editor): pin overlapping save baselines and delay-time cancellation