feat(vscode): support diagnostic pull mode#17211
Conversation
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
There was a problem hiding this comment.
Pull request overview
This PR adds support for diagnostic pull mode to the VSCode extension, migrating from a custom string-based trigger type to the standardized DiagnosticPullMode enum from vscode-languageclient. This enables proper control over when diagnostics are requested (onChange, onSave, onTabs) through the language server protocol's diagnostic pull model.
Key Changes
- Replaced custom
Triggertype withDiagnosticPullModeenum from vscode-languageclient - Added
diagnosticPullOptionsconfiguration to the language client with filtering logic - Introduced
shouldRequestDiagnosticsmethods to determine when to request diagnostics based on workspace configuration
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
editors/vscode/tests/WorkspaceConfig.spec.ts |
Updated test cases to use DiagnosticPullMode.onSave enum instead of string literal |
editors/vscode/client/tools/linter.ts |
Added diagnosticPullOptions configuration with onChange/onSave flags and filtering logic |
editors/vscode/client/WorkspaceConfig.ts |
Replaced Trigger type with DiagnosticPullMode, updated property types and added shouldRequestDiagnostics method |
editors/vscode/client/ConfigService.ts |
Added shouldRequestDiagnostics method to check if diagnostics should be requested for a given document URI and mode |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
0d09adf to
fc9d078
Compare
cf709f0 to
33189e4
Compare
Merge activity
|
The editor implementation for `textDocument/diagnostic`. The client auto enables this request when the server responded with the `DocumentDiagnosticProvider` in `initialize` request. This change only aligns the new pull mode with the extension configuration.
fc9d078 to
220e8e8
Compare
33189e4 to
d9aa426
Compare

The editor implementation for
textDocument/diagnostic.The client auto enables this request when the server responded with the
DocumentDiagnosticProviderininitializerequest.This change only aligns the new pull mode with the extension configuration.