mirror of
https://github.com/microsoft/vscode.git
synced 2026-08-22 12:32:42 +01:00
* Move the scenario runner out of the MCP server The validate-ui-scenario skill runs `runScenario`, which drives VS Code through `test/automation` and writes an evidence bundle. None of that is MCP: the runner loads no MCP module at runtime, and the SDK import it inherited was type-only, so TypeScript already elided it. It only lived under `test/mcp` because that is where the evidence pipeline was first written. That matters now: deleting the MCP server would take the skill with it. Move the six files that have nothing to do with MCP into a new `test/scenario` package, and leave `test/mcp` as one of its consumers alongside the skill. The MCP evidence tools move to `test/mcp/src/evidenceTools.ts`, where the server-specific schemas belong. Deleting `test/mcp` now removes only MCP code. Drop the step banner along with it. `showOverlay` appended a banner to the DOM of the product under test, which can shift layout and influence focus, so the runner always opted out via VSCODE_EVIDENCE_CLEAN_CAPTURE. With the runner as the only caller that opinion is unanimous, so the overlay and its opt-out both go and the capture is unconditionally faithful. Step titles are still rendered onto the finished recording by renderEvidenceChapters. The new package emits declarations, matching `test/automation`, so the MCP server keeps real types rather than silently degrading to `any`. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: adb443eb-11e5-40a1-8608-7f593fa79485 * Add the lockfile for the new scenario package Registering `test/scenario` in `build/npm/dirs.ts` makes the root install run npm in that directory, and CI uses `npm ci`, which requires a lockfile. Every other package registered there has one, so a clean CI install failed immediately with ENOENT on `test/scenario/package-lock.json` before anything compiled. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: adb443eb-11e5-40a1-8608-7f593fa79485 * Notify on the extracted scenario package `test/mcp/**` notifies @TylerLeonhardt, so moving the runner to `test/scenario` silently dropped notifications for it. Point the new path at the owner of the validate-ui-scenario skill. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: adb443eb-11e5-40a1-8608-7f593fa79485 * Do not re-declare @types/node in the scenario package The root package already declares `@types/node` as a devDependency, so the extracted package inherits it through normal ancestor resolution; declaring it again added a dependency that the OSS license check cannot cover, because `@types/node` ships no LICENSE file and is not in ClearlyDefined or cglicenses.json. Verified against the state CI produces: `npm ci` in `test/scenario` installs no `@types/node`, and both packages still compile, so the types resolve from the repository root as intended. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: adb443eb-11e5-40a1-8608-7f593fa79485 --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: adb443eb-11e5-40a1-8608-7f593fa79485
VS Code Tests
Contents
This folder contains the various test runners for VS Code. Please refer to the documentation within for how to run them: