Skip to content

[pull] main from microsoft:main - #1656

Merged
pull[bot] merged 44 commits into
code:mainfrom
microsoft:main
Sep 1, 2026
Merged

[pull] main from microsoft:main#1656
pull[bot] merged 44 commits into
code:mainfrom
microsoft:main

Conversation

@pull

@pull pull Bot commented Sep 1, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

SimonSiefke and others added 30 commits August 28, 2026 16:38
agentHost: preserve client-addressed session directories

Keep non-file working directory URIs returned by listSessions in client space so remote workspace filtering treats live and restored sessions consistently.\n\n(Written by Copilot)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Reacquire the owning session state when a chat turn completes so main and hidden chat statuses do not remain stale after the idle subscription expires.

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

* sessions: fix empty-state attachment pills

Match the established chat attachment layout by leading with the remove action and rendering themed resource, provider, or generic fallback icons.

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

Copilot-Session: 878234d1-4d87-4726-add4-40b417070bdb

* sessions: address attachment review feedback

Keep open and remove actions as sibling controls, honor themed provider resource icons, and update the intentional component screenshot baselines.

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

Copilot-Session: ace2046a-b07a-4f5b-a1c4-3c7fb341ccc3

* sessions: refine attachment icon behavior

Use compact glyphs, preserve focused controls across color-theme changes, and keep pasted-text fallbacks compatible with the None icon theme.

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

Copilot-Session: ace2046a-b07a-4f5b-a1c4-3c7fb341ccc3

* sessions: align attachment tests after rebase

Update the merged DOM expectation and keep Node.contains null-safe against optional query results.

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

Copilot-Session: ace2046a-b07a-4f5b-a1c4-3c7fb341ccc3

* test: update attachment screenshot baselines

Accept the intentional dark and light fixture changes after compact attachment icons and leading removal controls.

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

Copilot-Session: ace2046a-b07a-4f5b-a1c4-3c7fb341ccc3

---------

Copilot-Session: 878234d1-4d87-4726-add4-40b417070bdb
Copilot-Session: ace2046a-b07a-4f5b-a1c4-3c7fb341ccc3
Remove deprecated agent debug log setting

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
#333537) (#333541)

* fix: cancel pending single-pane docked-tab reconciles on dispose (fixes #333537)

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

* fix: guard all coordinator sequencer tasks against disposal + add regression test

Route every SinglePaneDockedTabsCoordinator sequencer task through a
disposal-aware _queue() helper so a task still queued or resumed after
teardown never opens editors via the now-disposed instantiation service.
Adds a regression test covering a reconcile stalled mid-open across dispose.

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

* fix: address review on desktopSessionLayoutController.test.ts:2984 — clarify test name that only later editor opens are prevented

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

* fix: address review on singlePaneDockedTabsCoordinator.ts — trim dispose comment and add disposal checkpoint in _reconcileForeignChangesEditors

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

* fix: address review on singlePaneDockedTabsCoordinator.ts:325 — clarify _queue JSDoc disposal guard scope

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

* fix: address review on desktopSessionLayoutController.test.ts — condense function-body comments to one line

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

* fix: handle docked tab teardown failures

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

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: vs-code-engineering[bot] <122617954+vs-code-engineering[bot]@users.noreply.github.com>
Co-authored-by: Dmitriy Vasyura <dmitriv@microsoft.com>
* Fix dictation fallback and connection failures

Require cloud dictation authentication before it displaces extension providers, await editor and terminal startup, and fail promptly on rejected voice connections. Add targeted telemetry and regression coverage.\n\nFixes #333792\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* dictation: Address provider lifecycle races

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Remove deprecated npm script explorer setting

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Remove deprecated HTML mirror cursor setting

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ot to 1.0.83-0 (#333749)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Gate Voice Mode by account and policy

Disable Voice Mode for external Copilot Business and Enterprise accounts, and honor the Copilot preview-features policy.\n\nFixes #333790\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Stop Voice Mode when policy disables it

Treat the effective Voice Mode setting as a runtime connection gate, and avoid global contribution registration in the policy test so browser tests remain isolated.

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Mark `chat.agentHost.cloudSandbox.enabled` as experiment-driven so its
default can be rolled out to a subset of accounts without shipping a code
change, starting with the internal team.

`auto` rather than `startup` because the assignment filters only learn that
an account is internal once the entitlement resolves, which lands after
startup. With `startup` the treatment would latch before that and internal
users would stay off until a restart.

The setting still defaults to `false`, so this is inert until the
`config.chat.agentHost.cloudSandbox.enabled` flag is configured.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… Agents window (#332726)

* revert #329786

* feat: enhance prompts service to handle user-disabled built-in skills
* Browser: agent-scoped storage

* feedback

* update test
(Written by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Bound fetcher telemetry error cardinality

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Reserve the sign-in window during the user gesture

Browsers only allow `window.open` while a click's user activation is still
live. Chat sign-in shows a dialog, activates an extension and fetches an
authorization URL first, so by the time it opens anything the gesture has
expired and Safari refuses the window.

In a browser tab this surfaces as a "browser blocked opening a new tab"
prompt whose Retry works, because Retry runs inside a fresh click. In an
installed web app (PWA) on iOS there is no tab to fall back to and the
prompt is covered by the "Signing in..." modal, so sign-in dead-ends with
no way forward.

Claim the window synchronously on the click instead, and let
`windowOpenWithSuccess` navigate that reserved window once the URL is
known. Gated to Safari, so other browsers are unaffected. The reservation
is released when setup ends without using it, so a cancelled or failed
sign-in does not leave a blank window over the app.

Verified on an iPhone PWA that `window.open()` succeeds inside a real tap
and is refused outside one.

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

* Cover installed web apps in any browser, not just Safari

The reservation was gated on Safari, but the failure is a property of
installed web apps rather than of one browser: an app installed through
Edge or Chrome has no tab to fall back to either, and sign-in dead-ends
there the same way.

Gate on `isStandalone() || isSafari` instead, and route standalone
through the open-then-navigate path so a reserved window is actually
consumed. Browser tabs outside Safari are unaffected.

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

* Do not leave a blank window behind when sign-in does not complete

The reserved window is released when setup ends without using it, but
`close()` is not always honoured — an in-app browser view on iOS can
ignore it — which would leave a blank window covering the app. That is
worse than the popup block this change exists to fix.

Show a short explanation in the window when it refuses to close, and
render the placeholder via `textContent` on a document that follows the
system colour scheme, so it neither flashes white nor can inject markup.

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

* Address review feedback

- Reserve only for strategies that actually enter provider authentication.
  `DefaultSetup` can install and sign up without any browser round trip for
  an already signed-in user, so reserving for it left a window covering the
  app for the whole of setup.
- Open from the window the click happened in. User activation belongs to
  that window, so a dialog shown in an auxiliary window could still be
  blocked when opening from `mainWindow`.
- Give the placeholder document a title, so screen readers and window
  switchers do not announce it as `about:blank`.

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

* Trim comments to the non-obvious parts

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

* Narrow the popup workaround to installed mobile apps

`isStandalone()` also matches desktop installed apps, including a
self-hosted VS Code installed from the server's manifest. Those get real
windows and can open popups after the gesture, so they were being pulled
onto the open-then-navigate path — and its manual `opener` nulling — for
no benefit.

Add `isMobileStandalone()` and gate on that instead, keeping the
workaround where a blocked popup is actually unrecoverable.

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* chat: improve uninstalled MCP server details

Explain when MCP server details become available, avoid moving focus on pointer activation, and align the empty state styling with the detail header. Retry gallery loading when the configured manifest becomes available so the Featured section does not remain empty after startup. Fixes #333556.

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

* chat: address MCP detail review feedback

Initialize and refresh gallery state reliably, restore accessible focus navigation, align detail messaging with shared geometry, and register gallery manifest mocks for affected fixtures.

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

* chat: type MCP detail back button

Create the MCP detail Back control as an HTMLButtonElement so its stored focus target satisfies the client type check.

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

* test: update MCP detail screenshot hashes

Add the Ubuntu-generated blocks-ci hashes for the new uninstalled MCP detail fixture in dark and light themes.

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* agentHost: address Auto routing profile review feedback

Register AgentHostCopilotCliSettingsContribution in the Agents Window, whose
manual registrations omitted it, so the `chat.agentHost.copilot.*` gates reach
the host's root config there.

Resolve a provisional session's routing profile once at materialization and use
it for both the launch plan and the persisted model, so a gate turned off before
the first send cannot leave metadata claiming a profile the runtime never got.

Normalize a persisted picker tier before validating it, so a value stored under
the retired names upgrades instead of silently falling back.

Also cover AutoModeTiers in the exhaustive settings-forwarding test.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 9d0e056c-277d-40c3-ba90-eb5fe6653948

* agentHost: freeze the Auto routing profile on the launch plan

Resolving the profile at materialization was not enough: the launcher read the
gate again inside createSession, so a flip during the async launch could send
one profile and persist another.

Carry the resolved profile on the launch plan instead, and have the launcher and
the session's launchAutoTier use that exact value rather than re-resolving.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 9d0e056c-277d-40c3-ba90-eb5fe6653948

* agentHost: simplify Auto routing profile comments

Reword the comments added for the launch-plan freeze into plainer sentences.
Comment-only change.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 9d0e056c-277d-40c3-ba90-eb5fe6653948

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 9d0e056c-277d-40c3-ba90-eb5fe6653948
* agentHost: Hide merge actions after successful merge

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

* agentHost: Reconcile pull request state sources

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* POC: add chat session state frames

Add configurable state frames for chat editor sessions, with idle, unvisited, running, and blocked treatments.

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

Copilot-Session: 6b136484-221e-4b5d-99db-948b6533fa53

* Reset visited idle chat frames

Only render session state frames for unvisited completions, running requests, and blocked sessions.

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

Copilot-Session: 6b136484-221e-4b5d-99db-948b6533fa53

* Gate chat session state frames

Replace the style enum with a false-by-default experimental boolean feature flag.

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

Copilot-Session: 6b136484-221e-4b5d-99db-948b6533fa53

* Clarify chat state indicator defaults

Use a false-by-default host suppression option so the API semantics match the false-by-default feature flag.

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

Copilot-Session: 6b136484-221e-4b5d-99db-948b6533fa53

* Address chat state frame review

Add focused state-machine coverage and non-color stroke cues for state frames.

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

Copilot-Session: 6b136484-221e-4b5d-99db-948b6533fa53

* Use positive chat state indicator enablement

Make chat widget hosts opt in explicitly so both the host option and global feature flag default to false.

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

Copilot-Session: 6b136484-221e-4b5d-99db-948b6533fa53

* Keep chat state indicator surface guards

Explicitly reject inline and Quick Chat even when a host opts into session state indicators.

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

Copilot-Session: 6b136484-221e-4b5d-99db-948b6533fa53

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6b136484-221e-4b5d-99db-948b6533fa53
* Improved visual clarity in multi-file diffs in Agents window

* Fix multi-diff bottom padding layout

Avoid preserving a scroll anchor when replacing trailing padding and make the regression test deterministic.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 52046b61-1856-4a7d-9e41-6edd926637d2

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 52046b61-1856-4a7d-9e41-6edd926637d2
* sessions: show workspace before harness picker

Fixes #333807

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

* sessions: place context picker after harness

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

* sessions: test picker order after quick chat

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

* sessions: update new session picker screenshots

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
meganrogge and others added 14 commits September 1, 2026 16:30
* sessions: sync GitHub context from new session input

Create and remove issue and pull request context attachments as matching URLs are edited in the new-session composer. Preserve explicitly selected context when it matches an input-derived attachment.\n\nFixes #333845\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* sessions: validate input context metadata

Route GitHub input-context metadata through a common validating reader to satisfy metadata hygiene.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Stop active dictation after 20 minutes and bound NeMo finalization to eight seconds, preserving the streamed transcript when finalization stalls. Fixes #333832.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Agents - add commit operation into the Changes view

* Potential fix for pull request finding

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>
* accounts: avoid redundant managed settings requests

Preserve a fresh managed-settings cache during entitlement refreshes, deduplicate authentication sessions that match overlapping scope alternatives, and treat a managed-settings 404 as a final no-policy result.

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

* accounts: scope forced account refreshes

Replace the managed-settings cache exception with explicit refresh targets. Chat entitlement updates now force only account entitlements, while policy sync and retry actions force only managed settings.

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

* accounts: simplify scoped refresh options

Keep only the entitlement and managed-settings refresh modes used by production callers. Remove the general target enum, all mode, helper, and unused token and MCP refresh parameters.

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

* accounts: keep force refresh explicit

Restore forceRefresh as a simple all-account-data boolean. Normal chat and managed-settings source updates now use ordinary cache-aware refreshes; only explicit policy sync and retry actions force all caches.

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

* accounts: preserve explicit entitlement refreshes

Keep quota and upgrade checks fresh without forcing unrelated default-account caches. The all-or-nothing forceRefresh boolean remains reserved for explicit policy sync and retry actions.

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

* accounts: test governed entitlement refresh

Exercise the full account refresh path with a scoped, satisfied forceRemoteSettingsRefresh cache. Verify entitlement refresh requests only entitlement data and preserves satisfied managed-settings freshness before full force refresh.

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

* accounts: trim managed settings regression diff

Restore unrelated test wording and retry documentation, inline the managed-settings force check, and narrow the governed entitlement regression to the behavior under review.

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Handle warning and info messages froom SDK

* fix ci
* Agent Host changes for agents/fix-dark-theme-scrollbar-colors

* Use themed scrollbars for tools and MCP servers

Match the customization card scrollbar spacing and reuse the themed overlay scrollbar for MCP server cards.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix scrollbar colors for dark theme in AI customization widgets

* Fix scrolled customization fixture timeout

Give the scrolled fixtures enough virtual time for the scrollbar hide and fade wait to complete.

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

* Fix scrollbar colors for dark theme in CI screenshots documentation

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* sessions: refine Agent Merge PR actions

Add a combined create-PR-and-enable-Agent-Merge operation, reorganize Agent Merge configuration under a submenu, and restore immediate running feedback for changeset operations.

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

* test: register Agent Host configuration service

Keep the strict contribution activation harness aligned with the pull request operation contribution's dependencies.

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

* sessions: address Agent Merge review feedback

Reset stale controller state when enabling Agent Merge for a newly created pull request and preserve the delegated toggle command identity in the primary button.

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

---------

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

fix: memory leak in test results
* Fix skill completions in automations

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

Copilot-Session: 24f4e305-8042-4e9f-8061-72525532fc1b

* Fix Automation suggestion popup placement

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

Copilot-Session: 24f4e305-8042-4e9f-8061-72525532fc1b

* Preserve runtime skill completions

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

Copilot-Session: 24f4e305-8042-4e9f-8061-72525532fc1b

* Fix Automation skill completion acceptance

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

Copilot-Session: c69533f7-290b-4cfe-8863-4c2a9c43aec5

* Allow Automation suggestion acceptance

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

Copilot-Session: c69533f7-290b-4cfe-8863-4c2a9c43aec5

* Accept Automation suggestions with Tab

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

Copilot-Session: c69533f7-290b-4cfe-8863-4c2a9c43aec5

* Restore Automation skill highlights

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

Copilot-Session: c69533f7-290b-4cfe-8863-4c2a9c43aec5

* Test Automation skill edge edits

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

Copilot-Session: c69533f7-290b-4cfe-8863-4c2a9c43aec5

* Fix automation completion test decoration stub

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 54febce8-3c95-4100-bf37-0e38cca467d1

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 24f4e305-8042-4e9f-8061-72525532fc1b
Copilot-Session: c69533f7-290b-4cfe-8863-4c2a9c43aec5
Copilot-Session: 54febce8-3c95-4100-bf37-0e38cca467d1
sessions: move clear background into picker

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* agentHost: classify Copilot SKU telemetry context

Declare the dynamically injected copilotSku property on each applicable Agent Host event so telemetry extraction generates ingestion schemas that accept it. Keep runtime population centralized through the common-property path.

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

* agentHost: clear stale Copilot SKU telemetry

Allow common telemetry properties to be removed so account transitions clear the previous SKU before resolving the current account. Classify the same injected property on forwarded Copilot SDK event schemas.

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

* agentHost: compose shared telemetry context

Name the common initiator and Copilot SKU schema composition and use event-specific aliases when enriching generic telemetry types.

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

* agentHost: complete Copilot SKU telemetry coverage

Classify SKU context on Agent Host edit attribution and unhandled error events. Add regression coverage for authentication transitions, stale SKU resolution, and restricted envelope clearing.

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@pull pull Bot locked and limited conversation to collaborators Sep 1, 2026
@pull pull Bot added the ⤵️ pull label Sep 1, 2026
@pull
pull Bot merged commit 0b0fbc4 into code:main Sep 1, 2026
@pull pull Bot added the ⤵️ pull label Sep 1, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.