Skip to content

[ImgBot] Optimize images#1

Open
imgbot[bot] wants to merge 781 commits into
mainfrom
imgbot
Open

[ImgBot] Optimize images#1
imgbot[bot] wants to merge 781 commits into
mainfrom
imgbot

Conversation

@imgbot

@imgbot imgbot Bot commented Jan 19, 2026

Copy link
Copy Markdown

Beep boop. Your images are optimized!

Your image file size has been reduced 🎉

Details
File Before After Percent reduction
/src/vs/workbench/contrib/editTelemetry/common/arcTracker.dio.svg 27.55kb 19.09kb 30.70%
/extensions/media-preview/media/loading.svg 1.12kb 0.83kb 25.44%
/src/vs/workbench/contrib/extensions/browser/media/loading.svg 1.12kb 0.83kb 25.44%
/extensions/media-preview/media/loading-hc.svg 1.14kb 0.85kb 25.17%
/src/vs/workbench/contrib/extensions/browser/media/loading-hc.svg 1.14kb 0.85kb 25.17%
/extensions/media-preview/media/loading-dark.svg 1.14kb 0.85kb 25.11%
/src/vs/workbench/contrib/extensions/browser/media/loading-dark.svg 1.14kb 0.85kb 25.11%
/extensions/git/resources/icons/light/status-renamed.svg 0.42kb 0.39kb 7.42%
/extensions/git/resources/icons/dark/status-renamed.svg 0.42kb 0.39kb 7.42%
/extensions/typescript-language-features/resources/walkthroughs/learn-more.svg 16.06kb 14.91kb 7.15%
/extensions/git/resources/icons/dark/status-type-changed.svg 0.42kb 0.39kb 6.94%
/extensions/git/resources/icons/light/status-type-changed.svg 0.42kb 0.39kb 6.94%
/extensions/git/resources/icons/light/status-untracked.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/light/status-conflict.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/light/status-copied.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/light/status-ignored.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/dark/status-deleted.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/light/status-modified.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/dark/status-untracked.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/dark/status-copied.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/light/status-added.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/dark/status-modified.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/dark/status-conflict.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/dark/status-added.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/dark/status-ignored.svg 0.42kb 0.39kb 6.73%
/extensions/git/resources/icons/light/status-deleted.svg 0.42kb 0.39kb 6.73%
/extensions/typescript-language-features/resources/walkthroughs/debug-and-run.svg 27.11kb 26.18kb 3.43%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/settingsSync.svg 15.75kb 15.30kb 2.88%
/extensions/typescript-language-features/resources/walkthroughs/create-a-js-file.svg 10.78kb 10.49kb 2.70%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/ai-powered-suggestions.svg 69.17kb 67.31kb 2.69%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/menuBar.svg 9.07kb 8.83kb 2.68%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/customize-ai.svg 85.31kb 83.46kb 2.17%
/extensions/typescript-language-features/resources/walkthroughs/install-node-js.svg 35.54kb 34.90kb 1.79%
/extensions/theme-defaults/fileicons/images/document-dark.svg 0.27kb 0.27kb 1.08%
/extensions/theme-defaults/fileicons/images/document-light.svg 0.27kb 0.27kb 1.08%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/learn.svg 39.23kb 38.83kb 1.02%
/extensions/simple-browser/media/preview-light.svg 0.30kb 0.30kb 0.96%
/extensions/simple-browser/media/preview-dark.svg 0.30kb 0.30kb 0.96%
/extensions/markdown-language-features/media/preview-light.svg 0.30kb 0.30kb 0.96%
/extensions/markdown-language-features/media/preview-dark.svg 0.30kb 0.30kb 0.96%
/src/vs/editor/standalone/browser/iPadShowKeyboard/keyboard-dark.svg 1.16kb 1.15kb 0.93%
/src/vs/editor/standalone/browser/iPadShowKeyboard/keyboard-light.svg 1.16kb 1.15kb 0.93%
/extensions/npm/images/code.svg 0.42kb 0.42kb 0.92%
/extensions/theme-defaults/fileicons/images/folder-open-dark.svg 0.48kb 0.48kb 0.81%
/extensions/theme-defaults/fileicons/images/folder-open-light.svg 0.48kb 0.48kb 0.81%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/commandPalette.svg 9.42kb 9.35kb 0.80%
/extensions/search-result/src/media/refresh-light.svg 0.57kb 0.57kb 0.68%
/extensions/search-result/src/media/refresh-dark.svg 0.57kb 0.57kb 0.68%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/extensions-web.svg 155.73kb 154.79kb 0.61%
/src/vs/workbench/contrib/chat/browser/media/google.svg 1.02kb 1.02kb 0.57%
/extensions/theme-defaults/fileicons/images/root-folder-open-light.svg 0.91kb 0.90kb 0.54%
/extensions/theme-defaults/fileicons/images/folder-dark.svg 0.60kb 0.60kb 0.49%
/extensions/theme-defaults/fileicons/images/folder-light.svg 0.60kb 0.60kb 0.49%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/multi-file-edits.svg 340.85kb 339.21kb 0.48%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/languages.svg 73.58kb 73.23kb 0.47%
/extensions/theme-defaults/fileicons/images/root-folder-light.svg 1.04kb 1.03kb 0.47%
/extensions/theme-defaults/fileicons/images/root-folder-dark.svg 1.04kb 1.03kb 0.47%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/shortcuts.svg 42.35kb 42.15kb 0.47%
/src/vs/workbench/contrib/chat/browser/media/apple-light.svg 1.00kb 1.00kb 0.39%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/runTask.svg 16.89kb 16.82kb 0.39%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/openFolder.svg 31.73kb 31.61kb 0.37%
/src/vs/workbench/browser/parts/editor/media/letterpress-light.svg 1.09kb 1.09kb 0.36%
/src/vs/workbench/browser/parts/editor/media/letterpress-dark.svg 1.09kb 1.09kb 0.36%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/profiles.svg 12.98kb 12.94kb 0.35%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/workspaceTrust.svg 25.10kb 25.03kb 0.28%
/src/vs/workbench/browser/parts/editor/media/letterpress-hcDark.svg 1.11kb 1.10kb 0.27%
/src/vs/workbench/browser/parts/editor/media/letterpress-hcLight.svg 1.11kb 1.10kb 0.27%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/search.svg 26.92kb 26.86kb 0.24%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/debug.svg 63.05kb 62.92kb 0.21%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/git.svg 73.47kb 73.35kb 0.17%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/extensions.svg 423.80kb 423.37kb 0.10%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/settings.svg 58.54kb 58.49kb 0.09%
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/terminal.svg 104.16kb 104.12kb 0.04%
Total : 1,825.74kb 1,802.78kb 1.26%

📝 docs | :octocat: repo | 🙋🏾 issues | 🏪 marketplace

~Imgbot - Part of Optimole family

dmitrivMS and others added 30 commits June 29, 2026 21:43
Add an optional `supportsVision` flag to `IByokLmModelInfo` so the renderer
BYOK handler can report whether a model accepts image inputs, derived from the
language model's `capabilities.vision` metadata. Consumers can then surface the
capability instead of assuming `false`.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Rework `ByokLmBridgeRegistry` from a single "most recently active" connection
to a serving-window model that tolerates multiple connected renderers. BYOK
models are a property of the user's installed extensions, not of a particular
window, so every window that registers the handler (the main workbench and the
Agents app) exposes the same set and either can serve.

The registry now:
- enumerates each connection on register and on `onDidChangeModels`, caching its
  models so reads are synchronous;
- treats a connection as "serving" once its `listModels()` resolves, and skips
  non-serving windows (those that connected without binding the BYOK handler,
  whose enumeration rejects);
- prefers a serving window that actually has models so a still-starting window
  answering empty cannot shadow a populated peer;
- fires `onDidChangeModels` when the serving model set changes.

Consumers are updated to the new API: `CopilotAgent` republishes from the cached
union (dropping its own enumeration/retry bookkeeping), `ByokLmProxyService`
routes inference to `getServingConnection()` after validating the request, and
`resolveByokSessionConfig` aggregates models via `listModels()` and degrades
gracefully if the loopback proxy fails to start.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…out a handler

Register `IAgentHostByokLmHandler` in the Agents app chat contribution,
mirroring the main workbench. The Agents app runs a full extension host whose LM
API holds the user's BYOK models, so it can serve BYOK back to the node host —
necessary when it is the only window connected.

Harden the renderer reverse-RPC channel registration so a window that connects
without binding the handler still comes up: wrap the BYOK channel registration
in a try/catch that logs a warning instead of aborting `_connect` (which would
cost the window its agent host). Thread `ILogService` through
`registerAgentHostClientChannels` for the warning and add regression coverage.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…soft#323630)

* sessions: keyboard shortcuts for chat actions within a session

Add keyboard navigation and quick pickers for the chats inside an Agents
window session:

- Ctrl/Cmd+Shift+] / [ to go to the next/previous chat tab (positional)
- Ctrl/Cmd+W to close the active chat tab (deletes a draft, hides a
  committed chat) instead of the session, when the active chat is closeable
- Ctrl+Tab / Ctrl+Shift+Tab as an editor-switcher (MRU) chat switcher over
  open chats (no input, hold-cycle-release), gated above the session-history
  secondary on that chord and falling back to session navigation otherwise
- Ctrl/Cmd+Shift+O (and the 'Go to Chat in Session' palette command) opens a
  searchable picker listing Open and Closed chats; selecting a closed chat
  reopens it

Each chat row shows a chat icon, untitled drafts are skipped, and the tab
order is exposed as a reactive IActiveSession.visibleChatTabs observable
(implemented in VisibleSession) instead of a standalone helper.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* sessions: contribute chat tab close button via a menu

Introduce Menus.SessionChatTab and contribute the close-chat command
(sessions.chatCompositeBar.closeChat) to it, so the chat tab strip renders
each non-main tab's close button from the menu (forwarding the tab's chat as
the action argument) instead of a hand-rolled action bar. The same command
keeps the Ctrl/Cmd+W keybinding for the active chat. The active-chat
precondition is moved to the keybinding's when-clause so the per-tab menu
button is not disabled based on which chat is active.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* sessions: address PR review feedback on chat navigation

- Compare chat/main-chat URIs via IUriIdentityService.extUri.isEqual (and
  isEqual in sessionContextKeys) instead of URI.toString(), matching the rest
  of the sessions navigation stack (openChat) and avoiding path-casing/encoding
  pitfalls.
- Include in-composer drafts in the Ctrl+Tab MRU switcher so its switchable set
  matches its SessionHasMultipleOpenChatsContext gate: a session with one
  committed open chat plus a draft now offers a useful two-entry switch instead
  of winning the chord with a single item. The searchable palette flow still
  skips drafts and lists closed chats.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* sessions: fix chatCompositeBar fixture missing visibleChatTabs

The component fixture's mock IActiveSession did not implement the new
visibleChatTabs observable, so ChatCompositeBar.setSession crashed while
reading it. Provide visibleChatTabs in the mock so the fixtures render again.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…t#323615)

* policy: let native MDM win over server for managed settings

Flip the managed-settings precedence so native MDM takes priority over
the GitHub server endpoint. selectManagedSettings now resolves native
MDM first, then server, then the on-disk file, and the Policy Diagnostics
report lists the channels in that same precedence order.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* policy: update accountPolicyService tests, comment, and docs for MDM precedence

Flip the AccountPolicyService precedence unit tests so native MDM wins
over the server channel, fix the stale getPolicyData() comment, and
update the add-policy skill docs to describe native MDM > server > file.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* policy: reorder selectManagedSettings params to match precedence

Address PR review: make the parameter order (nativeMdm, server, file)
match the resolution precedence so same-typed call sites are
self-documenting and harder to transpose. Update both call sites, the
unit tests, and the skill docs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…icrosoft#323628)

* Migrate `chat.sendElementsToChat.attachImages` to browser settings

* Apply suggestions from code review

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* Fix background browser screenshots on Mac

* feedback
* Add Responses API cache control markers

* Refactoring code

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Gate Responses API cache breakpoints by model support

* Disable Responses API reasoning summaries

* reverting cache commits

* Remove Responses API cache breakpoint handling

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* Fix potential memory leak in terminal link hover

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Leave comment about osc 8 hovers

* Handle OSC 8 terminal hover cleanup

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Anthony Kim <anthonykim@microsoft.com>
Preserve workspace context as a hidden workspace variable when Agent Host session history is restored.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* chat: avoid layout shift when switching sessions

Publish every fresh dynamic row measurement to the delegate cache so chat can size the last response correctly before the initial ResizeObserver report. Preserve the deferred initial height-change behavior and avoid any additional DOM measurement.\n\n(Written by Copilot)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* list: publish only valid dynamic heights

Cover delegate-provided dynamic heights and centralize publication so all fresh probe paths update caches while zero heights remain excluded.\n\n(Written by Copilot)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…soft#323613)

* Tidy Copilot managed-settings structured table for consistency

Give every STRUCTURED_MANAGED_SETTINGS row a named encode* helper
(encodeObject, encodeArray, encodeExtraMarketplaces) co-located with the
existing encodeStringMap, instead of mixing inline lambdas with named refs.
This keeps the central deserialization/mapping table uniform and easy to
extend.

No behavior change. base/common/managedSettings.ts stays the shared
base-layer module (consumed by both the policy layer and chat plugin code),
and IStrictMarketplaceSource is retained.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Harden extraKnownMarketplacesToConfigDict against prototype pollution

Marketplace names arrive from managed settings (untrusted input) and are
written as object keys, so skip __proto__/constructor/prototype keys, mirroring
the guard already present in the managed-settings string-map encoder.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Centralize the default-model managed-settings value callback

The model managed setting was the only managed-settings-driven control whose
policy value callback was hand-rolled inline in chat.shared.contribution.ts
(pass-through + trim + empty->undefined), while enabledPlugins / extraMarketplaces
/ strictMarketplaces all use the shared managedSettingValue() helper.

Add a memoized managedModelValue() helper in copilotManagedSettings.ts that holds
the model-specific trim/empty normalization, and wire the policy with
value: managedModelValue() so every managed-settings control is declared the same
way and the model normalization lives with the rest of the managed-settings logic.
No behavior change.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Rename capi-oauth secret to capi-oauth-pipeline-token

The capi-oauth Key Vault secret value leaked. Rename the secret
reference to capi-oauth-pipeline-token so that revoking the old
capi-oauth secret cuts off access for any other harness still
pointing at the old name. The new name is also more descriptive of
its purpose (CAPI OAuth token used in the automation pipeline).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…sent (microsoft#323671)

* Agents - select the first available changeset when default is not present

* Pull request feedback
…d-progress-ahp

Show progress while downloading agent SDK binaries
* AH: fix subagent rendering and tools not attaching

* address comments
…l for improved performance (microsoft#323677)

* refactor: streamline agent, rule, and skill discovery with Promise.all for improved performance

* refactor: remove unused import for raceCancellation in sessionCustomizationDiscovery
…soft#323683)

Previously only the Fix Checks button was hidden after requesting a CI fix for the current PR head commit; the banner stayed visible with the Reveal Checks action. Now the whole CI input banner is hidden until a new commit lands on the PR.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…t#323686)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…rove layout consistency

Co-authored-by: Copilot <copilot@github.com>
[cherry-pick] Skip for now the sanity checks
* Agent Host changes for agents/fix-onboarding-tour-button-wrap

* Fix onboarding tour button wrap and accessibility issues

* Fix stray character causing compile error in chatAccessibilityProvider

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
vritant24 and others added 29 commits July 2, 2026 15:13
Verified end-to-end on an rt=1 enterprise account: rt/tid resolved from the minted
CAPI Copilot token, endpoint routed to the enterprise host, request.options.tools
emitted to the enhanced iKey and accepted (HTTP 200). Reverts the emit log to trace
and drops the rt-debug/POST-accepted diagnostics.
Keeps a normal, non-technical info log of the restricted/enhanced telemetry opt-in state (no rt value).
…icrosoft#324103)

* chat: show "Starting MCP servers…" hint for slow agent-host startup

When a new agent-host turn begins and one or more MCP servers stay in the
`starting` state past a short grace period (5s) without any content arriving
from the host, surface a lightweight progress hint listing the servers still
starting. The hint is observable-backed: it updates as servers finish and hides
itself once every server has started, content starts being received, or the
turn ends — whichever happens first. There is no interactive affordance (no
"Skip").

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
agentHost: emit enhanced GH request.options.tools telemetry
…oft#324120)

* Support local folder paths in Install Plugin from Source

"Install Plugin from Source" now accepts local folder paths (file:// URIs,
absolute paths, and ~-prefixed paths) in addition to GitHub shorthand and
git URLs. Local folders are inspected to route them to the right setting: a
marketplace (has marketplace.json) is registered under chat.plugins.marketplaces,
while a standalone plugin (has a single-plugin manifest) is registered under
chat.pluginLocations.

Also consolidates installPluginFromSource and installPluginFromValidatedSource
into a single result-returning installPluginFromSource; callers now surface
source-level error messages themselves.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Address review: verify trust before persisting local marketplace

Declining the trust prompt for a local folder that is a marketplace no longer
persists it under chat.plugins.marketplaces; the trust check now runs before
config is written, mirroring the git path. Also fixes a chat.plugins.marketplaces
doc typo in AGENTS_PLUGINS.md.

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>
…-failing-unit-test-fix

Enable provider-level ZDR for OpenAI BYOK and surface Responses API stream errors as terminal failures
…o-commit-5b10bb5

Update distro commit to 5b10bb5b3d400cf801a343ebe7ed2e9835df5ab4
…microsoft#324129)

Refine how VS Code-configured MCP servers reach the agent host:

- resolveCustomizationRefs now excludes workspace-discovered MCP servers
  by default, since the agent host discovers workspace `.mcp.json` itself
  (via enableConfigDiscovery). The exception is `.vscode/mcp.json`, which
  the SDK does not discover: those servers are synced explicitly, but only
  when their config resolves without user interaction. Resolution uses
  IConfigurationResolverService.resolveAsync + ConfigurationResolverExpression
  and skips servers that reference interactive variables (${input:…},
  ${command:…}) or fail to resolve.

- Enable `enableConfigDiscovery` when creating/resuming Copilot agent-host
  sessions so the host discovers workspace `.mcp.json` on its own.

- Move MCP_CONFIGURATION_COLLECTION_ID_PREFIX and add
  McpCollectionDefinition.isWorkspaceDiscovered / isVscodeMcpJson helpers to
  mcpTypes so the collection-classification logic lives in one place.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Bump @anthropic-ai/claude-agent-sdk to 0.3.198

Bumps the pinned Claude agent SDK from 0.3.187 to 0.3.198 following
build/agent-sdk/README.md: updates the exact version in the build
agent-sdk pin and its lockfile, plus the matching root devDependency
types pin and root lockfile so shipped types and the build-time pin
stay in lockstep.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* Implement Query.reinitialize in test fakes

0.3.198 adds reinitialize() to the SDK's Query interface. Add the
matching stub to the three test doubles that implement Query
(FakeQuery, RoundTripQuery, ImmediatelyDoneQuery), following each
file's existing "not modeled" pattern.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
…-unit-test-failure-fix

Don't crash BYOK/custom models when the response hits the length limit
* Gate Responses API prompt cache breakpoints

* updating prompts for gpt5
* fix mismatched spinners in chat

* Address PR feedback: use DOM.EventType.ANIMATION_START and skip non-keyframe animations

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Update distro commit to a78eb828

Co-authored-by: vs-code-engineering[bot] <122617954+vs-code-engineering[bot]@users.noreply.github.com>
* Remove the system-wide keybindings first-run dialog

The first-run notice could appear in multiple windows at once on startup, and
the single-window election meant to prevent that was racy across concurrently
syncing renderers. Rather than harden the election, remove the dialog entirely:
the feature is always on and users who opt a keybinding into "systemWide" know
what they are doing.

This deletes the whole notice path, which existed only to serve the dialog:
- renderer: drop the first-run notification, the acknowledged-storage gate, and
  the IDialogService/IStorageService deps; sync() now just warns about ignored
  when-clauses and pushes to the main process.
- main process: drop the elected-window bookkeeping so INativeSystemWideKeybindingResult
  only reports failures.
- update the systemWide keybindings.json schema description and drop the
  now-obsolete election unit tests.

Global registration and trigger routing are unchanged.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Add a specification doc for system-wide keybindings

Co-locate an architecture/spec document next to the renderer contribution so
future work has the full feature context (user contract, renderer<->main-process
flow, the systemWide flag plumbing, design rationale, tests, and gotchas).

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
microsoft#324179)

fix: update scrollbar and minimap slider colors for better visibility

Co-authored-by: mrleemurray <mrleemurray@users.noreply.github.com>
…nd light themes (microsoft#324183)

fix: update placeholder foreground colors in input fields for dark and light themes

Co-authored-by: mrleemurray <mrleemurray@users.noreply.github.com>
The chat list rows span the full viewport width while the item container is centered with a max-width, leaving gutters on either side. The base list stylesheet sets cursor: pointer on rows, so the gutters showed a pointer cursor even though the item container uses cursor: default. Force default cursor on chat list rows so the gutters match.

Fixes microsoft#324173

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
*Total -- 2,169.19kb -> 2,088.26kb (3.73%)

/src/vs/workbench/contrib/editTelemetry/common/arcTracker.dio.svg -- 27.55kb -> 19.09kb (30.7%)
/.github/instructions/resources/notebook/viewport-rendering.drawio.svg -- 43.94kb -> 32.45kb (26.15%)
/.github/instructions/resources/interactive/interactive.model.resolution.drawio.svg -- 29.63kb -> 21.97kb (25.85%)
/extensions/media-preview/media/loading.svg -- 1.12kb -> 0.83kb (25.44%)
/src/vs/workbench/contrib/extensions/browser/media/loading.svg -- 1.12kb -> 0.83kb (25.44%)
/extensions/media-preview/media/loading-hc.svg -- 1.14kb -> 0.85kb (25.17%)
/src/vs/workbench/contrib/extensions/browser/media/loading-hc.svg -- 1.14kb -> 0.85kb (25.17%)
/extensions/media-preview/media/loading-dark.svg -- 1.14kb -> 0.85kb (25.11%)
/src/vs/workbench/contrib/extensions/browser/media/loading-dark.svg -- 1.14kb -> 0.85kb (25.11%)
/.github/instructions/resources/interactive/interactive.editor.drawio.svg -- 29.69kb -> 22.79kb (23.24%)
/.github/instructions/resources/interactive/interactive.eh.drawio.svg -- 24.89kb -> 19.82kb (20.36%)
/.github/instructions/resources/notebook/hybrid-find.drawio.svg -- 58.71kb -> 51.98kb (11.47%)
/.github/instructions/resources/notebook/cell-resize-above-viewport.drawio.svg -- 133.40kb -> 120.31kb (9.82%)
/src/vs/workbench/contrib/welcomeOnboarding/browser/media/theme-preview-hc-dark.svg -- 1.37kb -> 1.27kb (7.62%)
/extensions/git/resources/icons/light/status-renamed.svg -- 0.42kb -> 0.39kb (7.42%)
/extensions/git/resources/icons/dark/status-renamed.svg -- 0.42kb -> 0.39kb (7.42%)
/extensions/typescript-language-features/resources/walkthroughs/learn-more.svg -- 16.06kb -> 14.91kb (7.15%)
/src/vs/workbench/contrib/welcomeOnboarding/browser/media/theme-preview-hc-light.svg -- 1.37kb -> 1.27kb (7.12%)
/extensions/git/resources/icons/light/status-type-changed.svg -- 0.42kb -> 0.39kb (6.94%)
/extensions/git/resources/icons/dark/status-type-changed.svg -- 0.42kb -> 0.39kb (6.94%)
/src/vs/workbench/contrib/welcomeOnboarding/browser/media/theme-preview-light-2026.svg -- 1.37kb -> 1.28kb (6.77%)
/extensions/git/resources/icons/light/status-modified.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/light/status-copied.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/light/status-ignored.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/dark/status-conflict.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/light/status-untracked.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/dark/status-deleted.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/dark/status-ignored.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/dark/status-added.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/dark/status-modified.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/light/status-conflict.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/dark/status-copied.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/light/status-deleted.svg -- 0.42kb -> 0.39kb (6.73%)
/extensions/git/resources/icons/light/status-added.svg -- 0.42kb -> 0.39kb (6.73%)
/src/vs/workbench/contrib/welcomeOnboarding/browser/media/theme-preview-dark-2026.svg -- 1.37kb -> 1.28kb (6.34%)
/src/vs/workbench/contrib/welcomeOnboarding/browser/media/theme-preview-solarized-dark.svg -- 1.37kb -> 1.28kb (6.34%)
/src/vs/workbench/contrib/welcomeOnboarding/browser/media/theme-preview-solarized-light.svg -- 1.37kb -> 1.28kb (6.34%)
/extensions/typescript-language-features/resources/walkthroughs/debug-and-run.svg -- 27.11kb -> 26.18kb (3.43%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/settingsSync.svg -- 15.75kb -> 15.30kb (2.88%)
/extensions/typescript-language-features/resources/walkthroughs/create-a-js-file.svg -- 10.78kb -> 10.49kb (2.7%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/ai-powered-suggestions.svg -- 69.17kb -> 67.31kb (2.69%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/menuBar.svg -- 9.07kb -> 8.83kb (2.68%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/multi-file-edits.svg -- 335.42kb -> 327.45kb (2.38%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/customize-ai.svg -- 85.31kb -> 83.46kb (2.17%)
/extensions/copilot/assets/debug-icon.svg -- 2.47kb -> 2.42kb (1.82%)
/extensions/typescript-language-features/resources/walkthroughs/install-node-js.svg -- 35.54kb -> 34.90kb (1.79%)
/src/vs/sessions/browser/media/sessions-icon.svg -- 2.07kb -> 2.04kb (1.42%)
/src/vs/sessions/browser/media/vscode-icon.svg -- 5.05kb -> 4.98kb (1.37%)
/extensions/theme-defaults/fileicons/images/document-dark.svg -- 0.27kb -> 0.27kb (1.08%)
/extensions/theme-defaults/fileicons/images/document-light.svg -- 0.27kb -> 0.27kb (1.08%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/learn.svg -- 39.23kb -> 38.83kb (1.02%)
/extensions/simple-browser/media/preview-light.svg -- 0.30kb -> 0.30kb (0.96%)
/extensions/simple-browser/media/preview-dark.svg -- 0.30kb -> 0.30kb (0.96%)
/extensions/markdown-language-features/media/preview-light.svg -- 0.30kb -> 0.30kb (0.96%)
/extensions/markdown-language-features/media/preview-dark.svg -- 0.30kb -> 0.30kb (0.96%)
/src/vs/editor/standalone/browser/iPadShowKeyboard/keyboard-light.svg -- 1.16kb -> 1.15kb (0.93%)
/src/vs/editor/standalone/browser/iPadShowKeyboard/keyboard-dark.svg -- 1.16kb -> 1.15kb (0.93%)
/extensions/npm/images/code.svg -- 0.42kb -> 0.42kb (0.92%)
/extensions/theme-defaults/fileicons/images/folder-open-dark.svg -- 0.48kb -> 0.48kb (0.81%)
/extensions/theme-defaults/fileicons/images/folder-open-light.svg -- 0.48kb -> 0.48kb (0.81%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/commandPalette.svg -- 9.42kb -> 9.35kb (0.8%)
/extensions/search-result/src/media/refresh-light.svg -- 0.57kb -> 0.57kb (0.68%)
/extensions/search-result/src/media/refresh-dark.svg -- 0.57kb -> 0.57kb (0.68%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/extensions-web.svg -- 155.73kb -> 154.79kb (0.61%)
/src/vs/workbench/contrib/chat/browser/chatSetup/media/google.svg -- 1.02kb -> 1.02kb (0.57%)
/extensions/theme-defaults/fileicons/images/root-folder-open-light.svg -- 0.91kb -> 0.90kb (0.54%)
/extensions/theme-defaults/fileicons/images/root-folder-open-dark.svg -- 0.91kb -> 0.90kb (0.54%)
/extensions/theme-defaults/fileicons/images/folder-light.svg -- 0.60kb -> 0.60kb (0.49%)
/extensions/theme-defaults/fileicons/images/folder-dark.svg -- 0.60kb -> 0.60kb (0.49%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/languages.svg -- 73.58kb -> 73.23kb (0.47%)
/extensions/theme-defaults/fileicons/images/root-folder-dark.svg -- 1.04kb -> 1.03kb (0.47%)
/extensions/theme-defaults/fileicons/images/root-folder-light.svg -- 1.04kb -> 1.03kb (0.47%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/shortcuts.svg -- 42.35kb -> 42.15kb (0.47%)
/src/vs/workbench/contrib/chat/browser/chatSetup/media/apple-dark.svg -- 1.00kb -> 1.00kb (0.39%)
/src/vs/workbench/contrib/chat/browser/chatSetup/media/apple-light.svg -- 1.00kb -> 1.00kb (0.39%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/runTask.svg -- 16.89kb -> 16.82kb (0.39%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/openFolder.svg -- 31.73kb -> 31.61kb (0.37%)
/src/vs/workbench/browser/parts/editor/media/letterpress-light.svg -- 1.09kb -> 1.09kb (0.36%)
/src/vs/workbench/browser/parts/editor/media/letterpress-dark.svg -- 1.09kb -> 1.09kb (0.36%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/profiles.svg -- 12.98kb -> 12.94kb (0.35%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/workspaceTrust.svg -- 25.10kb -> 25.03kb (0.28%)
/src/vs/workbench/browser/parts/editor/media/letterpress-hcDark.svg -- 1.11kb -> 1.10kb (0.27%)
/src/vs/workbench/browser/parts/editor/media/letterpress-hcLight.svg -- 1.11kb -> 1.10kb (0.27%)
/src/vs/sessions/browser/media/sessions-logo-light.svg -- 2.33kb -> 2.32kb (0.25%)
/src/vs/sessions/contrib/chat/browser/media/letterpress-sessions-light.svg -- 2.33kb -> 2.32kb (0.25%)
/src/vs/sessions/contrib/chat/browser/media/letterpress-sessions-dark.svg -- 2.33kb -> 2.32kb (0.25%)
/src/vs/sessions/browser/media/sessions-logo-dark.svg -- 2.35kb -> 2.34kb (0.25%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/search.svg -- 26.92kb -> 26.86kb (0.24%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/debug.svg -- 63.05kb -> 62.92kb (0.21%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/git.svg -- 73.47kb -> 73.35kb (0.17%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/extensions.svg -- 423.80kb -> 423.37kb (0.1%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/settings.svg -- 58.54kb -> 58.49kb (0.09%)
/src/vs/workbench/contrib/welcomeGettingStarted/common/media/terminal.svg -- 104.16kb -> 104.12kb (0.04%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
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.