Add query execution indicators#103
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR adds end-to-end support for query execution UX improvements in the VS Code extension: a native “running” indicator while queries execute, plus richer “last run” metadata (timestamp, duration, and client request ID) surfaced via CodeLens and persisted in history. It also wires a clientRequestId through the client → language server → Kusto connection stack so executions can be correlated.
Changes:
- Add query-running UI state (editor title command + CodeLens “Running” + status bar item + progress notification) driven by a new
msKustoExplorer.queryRunningcontext key. - Persist and display last-run details (started-at timestamp, client-measured duration, and client request ID), including a “Copy CID” CodeLens action.
- Plumb optional
clientRequestIdfrom the client LSP request through server query execution to KustoClientRequestProperties.ClientRequestId.
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/ServerTests/Features/ServerSchemaSourceTests.cs | Updates test IConnection.ExecuteAsync stub signature to include clientRequestId. |
| src/Server/Server.cs | Extends kusto/runQuery params with clientRequestId and forwards it to IQueryManager. |
| src/Server/Querying/QueryManager.cs | Adds clientRequestId to query execution context and forwards it to IConnection.ExecuteAsync. |
| src/Server/Querying/IQueryManager.cs | Updates RunQueryAsync contract to accept clientRequestId. |
| src/Server/Connections/IConnection.cs | Extends ExecuteAsync contract to accept optional clientRequestId. |
| src/Server/Connections/ConnectionManager.cs | Applies clientRequestId onto Kusto ClientRequestProperties when provided. |
| src/Client/package.json | Adds contributed “Running Query” command and swaps editor-title command based on msKustoExplorer.queryRunning. |
| src/Client/features/server.ts | Extends LSP runQuery request to accept and send clientRequestId; adds new ResultData fields. |
| src/Client/features/queryEditor.ts | Implements running indicator state machine + progress UI; captures/persists execution timing and CID; adds CodeLens for last-run details and copy CID. |
| src/Client/features/historyManager.ts | Persists execution metadata into history index entries. |
| src/Client/extension.ts | Registers new noop/copy commands used by CodeLens and editor-title running indicator. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 11 out of 11 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Shows a native running indicator while Kusto queries execute.
Also adds last-run details to the query CodeLens: run time, duration, and a copyable client request ID.
Validation: npm run lint/test/compile, dotnet build.