Extend upgrade widget to Copilot Pro users with experimental setting#296174
Extend upgrade widget to Copilot Pro users with experimental setting#296174
Conversation
Co-authored-by: cwebster-99 <60238438+cwebster-99@users.noreply.github.com>
Co-authored-by: cwebster-99 <60238438+cwebster-99@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR extends the upgrade status widget to show for GitHub Copilot Pro users when they exhaust their quota, in addition to Free tier users. Previously, only Free tier users saw the upgrade prompt when quota was exceeded. The PR consistently updates all quota-related UI components (status widget, status bar, dashboard, and title bar) to support Pro users while excluding Business, Enterprise, and ProPlus tiers.
Changes:
- Extended quota exhaustion upgrade widget to Copilot Pro users (previously Free-only)
- Added Pro-specific messaging in title bar widget to differentiate between Free and Pro plan quota messages
- Updated quota enforcement logic across all chat status UI components
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.ts | Added Pro SKU handling to widget registration context and created Pro-specific content with localized messaging |
| src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.ts | Extended status bar quota exceeded check to include Pro users alongside Free users |
| src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.ts | Updated canUseChat() method to prevent chat usage for Pro users with zero quota |
| src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.ts | Added Pro entitlement check and differentiated title bar messaging between Free and Pro plans |
|
@copilot put this feature behind an experimental setting controllable by exp |
- Added chat.statusWidget.pro experimental setting (default: false) - Updated all quota exceeded checks to respect the experimental setting - Widget only shows for Pro users when setting is enabled via experiment - Free users continue to see widget without requiring setting Co-authored-by: cwebster-99 <60238438+cwebster-99@users.noreply.github.com>
Added experimental setting |
The upgrade status widget was previously shown only to Free tier users when quota was exhausted. This extends the behavior to Copilot Pro users while excluding Business, Enterprise, and Pro+ tiers. The Pro user widget is controlled by an experimental setting that can be enabled via the experiment framework.
Changes
Experimental Setting (
chat.contribution.ts)chat.statusWidget.proexperimental setting (default: false)experiment.mode: 'auto'experimentalandadvancedfor proper categorizationWidget registration and content (
chatStatusWidget.ts)ChatContextKeys.Entitlement.planProto widget registration contextQuota enforcement (
chatStatusDashboard.ts,chatStatusEntry.ts,agentTitleBarStatusWidget.ts)entitlement === ChatEntitlement.Free || (entitlement === ChatEntitlement.Pro && config.getValue('chat.statusWidget.pro'))All changes use the same pattern to ensure consistent behavior across status bar, dashboard, chat input widget, and title bar. The feature can be rolled out gradually via the experiment framework.
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.