Commit Graph

1296 Commits

Author SHA1 Message Date
Robo 843588fd83 chore: bump electron 42 header version for msvc compatibility (#318587) 2026-05-28 01:12:00 +00:00
Robo 1897fa3403 ci: fix windows node_modules cache for pr pipeline (#318558) 2026-05-27 15:18:48 +00:00
Robo 8748be1f1a feat: update to Electron v42 (#316661)
* feat: update to Electron v42

* chore: drop support for arm 32-bit server

* chore: update types/node to v24.x

* chore: temporarily lock the target version for build/

* chore: update v8-source-location.patch

* chore: fix clippy

* chore: cleanup armhf server ci config

* fix: broken lock file

* fix: c++ version requirement for sysroot builds

* fix: msvc compilation of native modules

* fix: handle rejections for fire-and-forget loadurl

* fix: windows build

* ci: fix teardown of daemon process on windows

```
2026-05-15T20:55:09.7717127Z Assertion failed: !(handle->flags & UV_HANDLE_CLOSING), file src\win\async.c, line 76
```

* chore: update deb and rpm dependencies

* chore: update version info

* spec: improve reliablity of offscreencanvas tests

* spec: retry EPERM failures on teardown

* chore: update x86_64 rpm deps

* ci: exclude server binskim for armhf

* temp: bump distro

* test: ignore deprecation warnings treated as errors

* chore: update lockfile

* fix: externalize electron from auth extension bundles

 Error: Cannot find module 'c:\Users\cloudtest\AppData\Local\Temp\vscode-sanityQvCaze\vscode-server-win32-x64-web\extensions\github-authentication\dist\install.js'
     at Module._resolveFilename (node:internal/modules/cjs/loader:1476:15)
     at wrapResolveFilename (node:internal/modules/cjs/loader:1049:27)
     at defaultResolveImplForCJSLoading (node:internal/modules/cjs/loader:1073:10)
     at resolveForCJSWithHooks (node:internal/modules/cjs/loader:1094:12)
     at Module._load (node:internal/modules/cjs/loader:1262:25)
     at wrapModuleLoad (node:internal/modules/cjs/loader:255:19)
     at Module.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:154:5)
     at node:internal/main/run_main_module:33:47 {
   code: 'MODULE_NOT_FOUND',
   requireStack: []
 }

 Node.js v24.15.0

* test: make wsl sanity tests reliable

* chore: bump electron@42.1.0

* temp: bump distro

* chore: bump electron@42.2.0

* chore: bump distro

* chore: update debian dependencies

* Revert "test: make wsl sanity tests reliable"

This reverts commit b3f2b63e83.

* test: do not fail for deprecation warnings

* chore: patch node24 server binary for wsl1

* chore: address review feedback

* chore: revert global navigation error handler in browserview

* chore: bump distro
2026-05-27 14:57:41 +02:00
Anthony Kim 183159e2b3 Add more codenotify for terminal (#318285) 2026-05-26 04:28:27 +00:00
Zhichao Li cd9f29a0bb Merge remote-tracking branch 'origin/main' into zhichli/oteladdition 2026-05-23 23:42:15 -07:00
Zhichao Li ec79deaf7c Chat OTel: drop sprint plan, tighten comments and docs 2026-05-23 23:40:57 -07:00
Joaquín Ruales 9de77c295b Add browser-integration assignment to classifier.json (#317925) 2026-05-22 11:26:32 -07:00
Zhichao Li 2e9b3cf43e docs(otel): add dual-emit policy and github.copilot.* guidance to OTel skill 2026-05-22 11:15:51 -07:00
Christof Marti d1c9dfd9e5 Extract terminal sandbox engine into platform (#316943) 2026-05-18 18:28:31 +02:00
Henning Dieterichs 1c6a9e3f28 Fixes https://github.com/microsoft/vscode/issues/316959 2026-05-18 16:05:21 +02:00
Ben Villalobos 753447d68a Remove chat-ext-issue label from Copilot bug report template (#316708) 2026-05-15 22:22:35 +00:00
Rob Lourens 000097a5f3 Get rid of special user-data-dir for agents window (#316299) 2026-05-13 20:18:24 +00:00
Henning Dieterichs 54b4a0eaca ci: run component fixtures on release/* branches 2026-05-13 20:37:23 +02:00
Sandeep Somavarapu 1f66fd7bd5 sessions: improve AI readiness of skill and instruction files (#316239)
sessions: improve AI readiness of skill and instructions

- Restructure SKILL.md: remove duplicated content, add mandatory
  pre-change reads (coding guidelines, source-code-organization),
  add 'When to read' column to spec table, make valid-layers-check
  mandatory, add common pitfalls section
- Enhance sessions.instructions.md: add architecture overview,
  internal layer diagram, core services table, key development
  patterns (menus, context keys, observables), and learnings section
- Remove window isolation references (not applicable)
- Remove Development Recipes from skill (already in SESSIONS.md)
- Add explicit 'Before Making Any Changes' mandatory reads block
  to ensure coverage in all harnesses (not just VS Code Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-13 10:07:38 -04:00
Sandeep Somavarapu a3d955d72a sessions: move providers to contrib/providers with ESLint layer rules and docs (#316227)
- Move copilotChatSessions, remoteAgentHost, and agentHost providers from
  contrib/ into a new contrib/providers/ subfolder for clearer separation
- Add ESLint layer rule 'contrib/providers/*/~' (before 'contrib/*/~') so
  sibling contrib folders cannot import directly from providers
- Update all entry points (sessions.common.main.ts, sessions.desktop.main.ts,
  sessions.web.main.ts) to reference new provider paths
- Port all upstream changes from origin/main to the new provider locations
- Add contrib/providers entry to build/lib/i18n.resources.json
- Rewrite docs: README.md, LAYOUT.md, LAYERS.md, SESSIONS.md, SKILL.md,
  sessions.instructions.md; add source-code-organization, coding-guidelines,
  and writing-tests instruction files; remove stale SESSIONS_PROVIDER.md and
  AGENTS_CHAT_WIDGET.md

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-13 12:14:40 +00:00
dependabot[bot] 6a252b13fe Bump actions/download-artifact from 7 to 8 (#312121)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 7 to 8.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v7...v8)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-12 18:59:03 +00:00
Sandeep Somavarapu a86a7cfd06 add code ownership to sessions (#316009) 2026-05-12 16:41:48 +02:00
Rob Lourens 37ad80f8e5 Fix the node_modules cache (#315585) 2026-05-10 18:34:39 -07:00
Alexandru Dima cba69f9945 sudo :-) (#315439) 2026-05-09 07:22:37 +00:00
Dmitriy Vasyura 44669e93e8 Run copilot extension lint in PR CI (#315368) 2026-05-08 21:40:38 +00:00
Henning Dieterichs 94197da951 Deletes unneeded screenshot-test.yml 2026-05-08 13:19:23 +02:00
Benjamin Christopher Simmonds d27e3866ec Merge pull request #315233 from microsoft/benibenj/mobile-bobolink
Remove test plan item template
2026-05-08 13:14:04 +02:00
BeniBenj 50036d65cb remove template 2026-05-08 12:54:40 +02:00
Henning Dieterichs 66bdcf97c7 Renames component fixture ci workflow to "component-fixtures.yml" / Component Fixture Screenshots & Tests (#315218)
Renames component fixture ci workflow to "component-fixtures.yml" / Component Fixture Screenshots & Tests
2026-05-08 12:47:58 +02:00
BeniBenj 431141f273 update naming 2026-05-08 11:51:11 +02:00
BeniBenj 5df5c926c6 add testplan item template 2026-05-08 11:46:44 +02:00
Henning Dieterichs ca2ded47a8 updates component explorer 2026-05-07 18:43:10 +02:00
Henning Dieterichs 8ff4538da0 Fail CI if a component fixture throws & enable node_module caching 2026-05-07 12:44:16 +02:00
Don Jayamanne 18e7157c4a chore: remove unused GitHub hooks configuration (#314911) 2026-05-07 04:23:27 +00:00
Bryan Chen 144d32ffbc Merge branch 'main' into brchen/resize-observer-loop-batch 2026-05-06 12:14:37 -07:00
Bryan Chen 1995a3e5c2 docs: capture DI-over-global-stub testing learning in copilot-instructions
Records the rule that arose from review on #314411: don't mutate globals or use any-casts to install fakes in tests; inject the dependency via an optional constructor parameter.
2026-05-05 11:29:58 -07:00
Johannes Rieken a492920c66 Add architecture documentation and working notes for esbuild-based build system (#314390)
- Introduced `buildNext.instructions.md` to provide comprehensive notes on the new build pipeline.
- Documented key learnings, including issues with comment stripping, authorization errors, and build-time placeholders.
- Explained integration with the old build system and outlined important fixes related to source maps and resource copying.
- Included testing instructions and future work items to address outstanding issues.
2026-05-05 17:37:22 +02:00
Rob Lourens adc634820a Add Code OSS logs skill (#314313)
Add Code OSS logs skill (Written by Copilot)
2026-05-04 19:40:40 -07:00
Henning Dieterichs 8f4ed8d714 Do no fail component explorer check if fixture had errors 2026-05-05 01:51:38 +02:00
Henning Dieterichs 83b3a75bba Fixes component fixture errors (#314164)
* Fixes component fixture errors

* refactor: replace empty mock with MockChatModeService in chat fixture services
2026-05-04 22:43:25 +02:00
Henning Dieterichs b4399bee94 Fixes 2026-05-04 19:15:19 +02:00
Henning Dieterichs bb81c9c9bb Improves screenshot experience for forks 2026-05-04 19:15:19 +02:00
Ladislau Szomoru dc2572a33f Engineering - update GitHub actions codeowners (#313565) 2026-04-30 19:08:30 +00:00
Raymond Zhao d84f2e3008 fix: save extensions cache on misses (#313560)
* fix: restore built-in extensions cache on main workflow

* Add prepare step
2026-04-30 19:04:07 +00:00
Zhichao Li 639691fa6c Merge pull request #313383 from zhichli/zhichli/otel-skill
OTel: typed constants cleanup + add otel skill
2026-04-29 17:18:41 -07:00
Zhichao Li 298654bf21 OTel: address PR review (typed SpanStatusCode, doc accuracy)
Addresses copilot-pull-request-reviewer feedback on PR #313383:

- otelSpanToChatDebugEvent.ts: replace 6 magic-number 'span.status.code === 2 /* ERROR */' / '=== 1 /* OK */' checks with SpanStatusCode.ERROR / SpanStatusCode.OK. Switched the SpanStatusCode import from type-only to value to enable runtime use of the enum members.
- genAiAttributes.ts: correct HOOK_RESULT_KIND doc to include 'non_blocking_error' (chatHookService also produces this value); soften HOOK_INPUT/HOOK_OUTPUT docs since emitters do not currently gate on captureContent.
- .github/skills/otel/SKILL.md: replace the blanket 'always gate content on captureContent' guideline with the actual two-pattern convention used in the codebase: (1) tool args / hook input-output are always emitted (truncated only) for debug-panel essentials, (2) full prompt/response bodies and system instructions are gated on captureContent. Aligns the skill doc with how toolsService.ts and chatHookService.ts actually behave.

Did NOT add captureContent gating to chatHookService.ts hook input/output (reviewer suggestion 3): doing so would regress the Agent Debug Log panel for default users (captureContent is false by default), and would diverge from the existing toolsService.ts pattern that explicitly states 'Always capture tool call arguments for the debug panel'. A proper fix needs exporter-level stripping in DiagnosticSpanExporter and is out of scope for this PR.
2026-04-29 16:57:52 -07:00
Zhichao Li 963e7de03c Add otel skill for Copilot Chat OpenTelemetry instrumentation
Adds .github/skills/otel/SKILL.md describing:
- The two source-of-truth docs (agent_monitoring.md and agent_monitoring_arch.md)
- The four agent execution paths and their OTel strategies
- Canonical file map for all OTel code
- Service layer (NoopOTelService / NodeOTelService / InMemoryOTelService)
- Span / metric / event conventions, content-capture gating, debug-panel vs OTLP isolation
- Configuration surface invariants (settings + env vars + agent env-var translation)
- Procedure checklists for adding spans / metrics / events / new agent surfaces
- Validation commands and known risks/anti-patterns

Mandates that the two monitoring docs stay in sync with code changes.
2026-04-29 16:39:36 -07:00
Matt Bierner ac56466f75 Merge branch 'main' into dev/mjbvz/copilot-ts-go 2026-04-29 14:56:18 -07:00
Michael Lively 41499ac00a ci: drop VSCODE_OSS token conditional from pr.yml compile job (#313314)
Follow-up to #313128. The VSCODE_OSS fallback isn't needed for the
api.github.com calls in core-ci — secrets.GITHUB_TOKEN already
authenticates those reads with permissions: contents: read (added in
#304929), so we don't hit the anonymous rate limit on 1ES.
2026-04-29 14:41:25 -07:00
Matt Bierner 0f15f3b859 Merge branch 'main' into dev/mjbvz/copilot-ts-go 2026-04-29 13:57:24 -07:00
Tyler James Leonhardt f5e05a0253 chore: migrate agent-browser to @playwright/cli (#313316)
* chore: migrate agent-browser to @playwright/cli

Replace all uses of the `agent-browser` automation tool with `@playwright/cli`,
which supports `npx @playwright/cli attach --cdp=<port>` for connecting to
Electron/Chromium apps via CDP.

- Rewrite launch SKILL.md files (Code OSS and Copilot variants) with new
  command mappings: attach --cdp, tab-list, snapshot, screenshot --filename,
  fill, press
- Update auto-perf-optimize and chat-customizations-editor skills with
  @playwright/cli commands; fix eval blocks to use IIFE syntax required by
  the new tool
- Migrate testRemoteAgentHost.sh: connect→attach --cdp, snapshot -i→snapshot,
  screenshot path→screenshot --filename=path; verified end-to-end with --skip-message
- Remove agent-browser from extensions/copilot/package.json (covered by root
  devDependency); bump @playwright/cli to ^0.1.9 in root package.json

* fix: add @types/ws as explicit devDependency in copilot extension

Previously pulled in transitively via agent-browser -> webdriver.
Now that agent-browser is removed, @types/ws must be declared directly.
2026-04-29 20:55:11 +00:00
Matt Bierner 062d81fead Make sure we install root build tools 2026-04-29 13:53:28 -07:00
Joaquín Ruales 9d9b679f33 Update CODENOTIFY with more integrated browser items (#313212) 2026-04-29 13:41:26 -07:00
Michael Lively 7a833e177b ci: switch PR workflows back to 1ES self-hosted runners with JobId (#313128)
* ci: switch PR workflows back to 1ES self-hosted runners with JobId

Re-applies #311975 (reverted in #312033). Adds per-run+attempt JobId
labels to scope 1ES agents to specific GitHub Actions runs and prevent
intermittent runner cancellations.

Also switches the pr.yml compile job's GITHUB_TOKEN from the
ephemeral repo-scoped runner token to secrets.VSCODE_OSS so cross-repo
GitHub API release fetches (vscode-js-debug, vscode-js-debug-companion,
vscode-js-profile-visualizer, etc.) authenticate properly. On 1ES pools
the shared egress IPs hit the anonymous 60/hr api.github.com rate limit
and produced 403 fan-out across PRs last time.

* ci: fall back to GITHUB_TOKEN for fork PRs

Match the historical pattern from before #255987 — fork PRs can't
access secrets.VSCODE_OSS, so use the conditional to pick GITHUB_TOKEN
for forks.
2026-04-29 10:51:12 -07:00
Matt Bierner 371c4a0a73 Use root eslint for copilot 2026-04-28 15:20:59 -07:00