-
Notifications
You must be signed in to change notification settings - Fork 37.5k
Revert recent merges affecting chat session functionality #287734
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
📬 CODENOTIFYThe following users are being notified based on files changed in this PR: @bpaseroMatched files:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR reverts two recent pull requests (#287668 and #286642) that introduced changes to chat session functionality, specifically reverting the controller-based API and updated timing information structure.
Changes:
- Reverts API version from 4 to 3 for
chatSessionsProviderproposal - Reverts timing properties from
created/lastRequestStarted/lastRequestEndedback tostartTime/endTime - Removes the controller-based
ChatSessionItemControllerAPI in favor of the provider-basedChatSessionItemProviderAPI - Removes the
archivedproperty from chat session items - Updates all test files to use the reverted timing structure
Reviewed changes
Copilot reviewed 17 out of 18 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts | Reverts API version to 3, removes controller-based API, reverts timing properties to startTime/endTime |
| src/vs/workbench/contrib/chat/test/common/model/mockChatModel.ts | Updates mock timing to use startTime instead of created/lastRequestStarted/lastRequestEnded |
| src/vs/workbench/contrib/chat/test/browser/agentSessions/localAgentSessionsProvider.test.ts | Updates test timing objects to use startTime/endTime structure |
| src/vs/workbench/contrib/chat/test/browser/agentSessions/agentSessionsDataSource.test.ts | Updates test comparator to use startTime/endTime instead of created/lastRequestStarted/lastRequestEnded |
| src/vs/workbench/contrib/chat/test/browser/agentSessions/agentSessionViewModel.test.ts | Updates all test cases to use startTime/endTime timing structure, removes makeNewSessionTiming options |
| src/vs/workbench/contrib/chat/common/model/chatSessionStore.ts | Updates session metadata timing to use startTime/endTime |
| src/vs/workbench/contrib/chat/common/model/chatModel.ts | Reverts ChatModel.timing getter to return startTime/endTime |
| src/vs/workbench/contrib/chat/common/chatSessionsService.ts | Updates IChatSessionItem timing interface to use startTime/endTime |
| src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.ts | Updates timing fallback to use startTime instead of created/lastRequestStarted/lastRequestEnded |
| src/vs/workbench/contrib/chat/common/chatService/chatService.ts | Updates IChatSessionTiming interface to use startTime/endTime |
| src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.ts | Updates UI rendering to use startTime/endTime for display |
| src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.ts | Updates session picker to use startTime/endTime |
| src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.ts | Updates session model timing handling and cache serialization to use startTime/endTime |
| src/vs/workbench/api/common/extHostChatSessions.ts | Removes controller-based API implementation, removes native private fields and eslint disable comment |
| src/vs/workbench/api/common/extHost.api.impl.ts | Removes createChatSessionItemController API registration |
| src/vs/workbench/api/browser/mainThreadChatSessions.ts | Removes archived property from session items |
| src/vs/platform/extensions/common/extensionsApiProposals.ts | Reverts chatSessionsProvider version from 4 to 3 |
| eslint.config.js | Removes 'archive' from allowed event naming verbs |
| timing: { created, lastRequestStarted: created, lastRequestEnded }, | ||
| changes: { files: 1, insertions: 10, deletions: 5 } | ||
| timing: { startTime, endTime }, | ||
| changes: { files: 1, insertions: 10, deletions: 5, details: [] } |
Copilot
AI
Jan 14, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The details: [] property should be removed from the changes object. According to the IChatSessionItem interface, when changes is a simple object (not an array), it should only contain files, insertions, and deletions properties. The details property doesn't exist in this format.
| changes: { files: 1, insertions: 10, deletions: 5, details: [] } | |
| changes: { files: 1, insertions: 10, deletions: 5 } |
| const lastRequestStarted = timing?.lastRequestStarted ?? timing?.startTime; | ||
| const lastRequestEnded = timing?.lastRequestEnded ?? timing?.endTime; | ||
|
|
||
| private convertChatSessionItem(sessionType: string, sessionContent: vscode.ChatSessionItem): IChatSessionItem { |
Copilot
AI
Jan 14, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The sessionType parameter is not used in the method body and should be removed to clean up the code.
| private convertChatSessionItem(sessionType: string, sessionContent: vscode.ChatSessionItem): IChatSessionItem { | |
| private convertChatSessionItem(sessionType: string, sessionContent: vscode.ChatSessionItem): IChatSessionItem { | |
| void sessionType; |
|
Took long enough, I hope they remove his pull request privileges. I appreciate it when real developers do real work. Thank you very much for the reverts! |
Reverts #287668 and #286642