Skip to content

feat: [TBB] Implement quota warning handling and UI updates for TBB#186

Merged
jdneo merged 12 commits into
mainfrom
ethan/tbb-notification
May 15, 2026
Merged

feat: [TBB] Implement quota warning handling and UI updates for TBB#186
jdneo merged 12 commits into
mainfrom
ethan/tbb-notification

Conversation

@ethanyhou
Copy link
Copy Markdown
Contributor

@ethanyhou ethanyhou commented May 13, 2026

Test:
1. Using debug templates with numbers to debug:

  • Switch CLS to ethan/tbb-notification, this branch is based on release/1.9.0 with customized debug templates.
  • As Copilot for eclipse doesn't have debug templates enabled for the slash commands, please paste manually.
    • /debug.ratelimit.notify 70 to test the weekly rate limit warn

      • image
    • /debug.ratelimit.notify sesssion 90 to test the session rate limit warn

      • image
    • /debug.quota.warn 90 to test the quota warn

      • image
    • /debug/byok.error to test inline byok warn

      • image

2. Using real account with quota portal.

  • Switch CLS to release/1.9.0
  • The rate limit and BYOK warns are hard to repro, but the quota warn can be tested via modify the quota usage via quota portal, then chat with Copilot.

A follow up commit will be pushed once this PR is reviewed to guard the period before the TBB release since the auto fallback is removed in TBB.

Copilot AI review requested due to automatic review settings May 13, 2026 07:55
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Implements quota-warning handling for TBB in the Copilot Eclipse chat UI, including new language-server notification plumbing, static/inline quota warning UI, and BYOK quota messaging.

Changes:

  • Adds quota warning protocol/event handling and ChatView banner rendering.
  • Refactors static/inline warning UI to support plan-driven actions.
  • Persists/restores BYOK model-provider information for error rendering.

Reviewed changes

Copilot reviewed 28 out of 29 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/i18n/messages.properties Updates quota action labels/tooltips.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/i18n/Messages.java Reflects updated i18n keys.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/WarnWidget.java Adds plan-driven warning buttons.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/FileToolService.java Reparents working-set bar under input area.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/StaticBanner.java Refactors banner to support severity and action links.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/TodoListService.java Reparents todo list bar under input area.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/QuotaActions.java Adds shared plan-to-action mapping.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/messages.properties Adds BYOK quota message.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/Messages.java Exposes BYOK quota message key.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ChatView.java Subscribes to quota warnings and renders banners.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ChatContentViewer.java Sanitizes request IDs and passes provider names to warnings.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/BaseTurnWidget.java Handles BYOK vs plan-driven 402 warnings.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/BannerAction.java Adds banner action record.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ActionBar.java Adds rate/quota banner APIs and input-area wrapper.
com.microsoft.copilot.eclipse.ui/META-INF/MANIFEST.MF Adds a UI bundle dependency.
com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/i18n/MessagesTest.java No functional test change.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/persistence/CopilotTurnData.java Persists model provider on errors.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/persistence/ConversationDataFactory.java Copies provider name into persisted error data.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/quota/QuotaWarningParams.java Adds quota warning DTO.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/quota/QuotaWarningNotification.java Adds quota warning notification DTO.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/quota/QuotaChangeParams.java Adds quota change DTO.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/quota/IntervalQuota.java Adds interval quota DTO.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/ConversationError.java Adds model provider to conversation errors.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/ChatTurnResult.java Loosens null annotations.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/ChatProgressValue.java Exposes error model provider.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/ChatCreateResult.java Loosens null annotations.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/CopilotLanguageClient.java Handles quota warning notifications.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/events/CopilotEventConstants.java Adds quota warning event topic.
com.microsoft.copilot.eclipse.core.test/src/com/microsoft/copilot/eclipse/core/lsp/CopilotLanguageClientTests.java Tests quota warning event posting.

Comment thread com.microsoft.copilot.eclipse.ui/META-INF/MANIFEST.MF Outdated
@ethanyhou ethanyhou force-pushed the ethan/tbb-notification branch from 03cf3d7 to 89a9b43 Compare May 13, 2026 08:22
Comment thread com.microsoft.copilot.eclipse.ui/META-INF/MANIFEST.MF Outdated
@ethanyhou ethanyhou force-pushed the ethan/tbb-notification branch from 25bb9af to 7c5ce0e Compare May 13, 2026 08:48
@jdneo jdneo merged commit c541143 into main May 15, 2026
4 checks passed
@jdneo jdneo deleted the ethan/tbb-notification branch May 15, 2026 02:00
@jdneo
Copy link
Copy Markdown
Member

jdneo commented May 15, 2026

#203

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants