-
Notifications
You must be signed in to change notification settings - Fork 37.5k
Add better timing info to chat sessions #287668
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
Fixes microsoft#278567 Resubmission of microsoft#278858
📬 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 refactors chat session timing information to provide more granular tracking by replacing startTime/endTime with created, lastRequestStarted, and lastRequestEnded fields. The old fields are deprecated but maintained for backward compatibility.
Changes:
- Updated timing API to track session creation and individual request timing separately
- Deprecated old
startTimeandendTimefields in the public API - Added backward compatibility for reading old cached sessions and external provider data
Reviewed changes
Copilot reviewed 12 out of 13 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| vscode.proposed.chatSessionsProvider.d.ts | Added new timing fields (created, lastRequestStarted, lastRequestEnded) and deprecated old fields (startTime, endTime) |
| chatService.ts | Updated IChatSessionTiming interface with new fields and comprehensive documentation |
| chatModel.ts | Updated timing getter to compute new timing fields from request data |
| chatSessionStore.ts | Updated session metadata to use new timing structure |
| chatSessionsService.ts | Changed to use IChatSessionTiming type directly |
| chatServiceImpl.ts | Added fallback logic for old data migration |
| agentSessionsModel.ts | Updated model to handle new timing fields with backward compatibility for cached sessions |
| extHostChatSessions.ts | Added backward compatibility layer to convert old API usage to new format |
| agentSessionsViewer.ts | Updated viewer to use new timing fields with proper fallback chain |
| agentSessionsPicker.ts | Updated picker to use new timing fields |
| localAgentSessionsProvider.test.ts | Updated tests with new timing structure and helper function |
| agentSessionsDataSource.test.ts | Updated tests to use new timing fields |
| agentSessionViewModel.test.ts | Updated tests with new timing structure |
Add better timing info to chat sessions
Fixes #278567
Resubmission of #278858