Repository navigation
Open site previews in VS Code integrated browser - #1621
Closed
Priyanshu Agrawal (priyanshu92) wants to merge 88 commits into
Closed
Priyanshu Agrawal (priyanshu92) wants to merge 88 commits into
Priyanshu Agrawal (priyanshu92) wants to merge 88 commits into
Conversation
Open Power Pages site previews in VS Code's integrated browser when the command is available, and keep the existing Edge Tools flow as the fallback for older builds. Copilot-Session: e313faed-11b2-4875-88ea-6cb213b7f097
- Add extension version to diff reports - Show the installed extension version in generated HTML reports - Add localized report metadata and integration coverage - Automated translations export from CI
…6: Build ID 2631844 (#1623) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2631844 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
…6: Build ID 2637048 (#1624) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2637048 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
…6: Build ID 2639053 (#1631) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2639053 * Automated localization update from CI
…ld (#1632) ci: pin integration test runners to VS Code 'stable' to fix macOS The web and common integration test runners requested VS Code 'insiders' via @vscode/test-electron. Because 'insiders' resolves to the latest Insiders build at run time, a recent change to the Insiders macOS app-bundle layout broke @vscode/test-electron's (v2.3.8) binary resolution, causing `spawn .../Contents/MacOS/Electron ENOENT` and a red `build (macos-latest)` check on every PR (and on main if re-run). Linux and Windows Insiders keep the old layout, so only macOS failed. The desktop and debugger runners already default to 'stable' (Insiders is even commented out in the desktop runner), so this simply aligns the web and common runners with that convention. No product code changes. Copilot-Session: 1bf22d2b-3fd2-419a-bafa-9ba2406a97b7 Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Refactor URI handler to a route map and add deep-link constants Convert `UriHandler.handleUri` from an if/else chain into a `ReadonlyMap<string, UriRouteHandler>` built in the constructor. The two existing paths (`/pcfInit`, `/open`) keep identical behavior; unrecognized paths are now ignored for forward compatibility instead of falling through. Add the versioned deep-link contract constants that the Power Pages home page will use to launch VS Code: - reserved paths `/agenticCreate` and `/pacCreate` (registered but not yet wired to any handler) - shared params `region`, `tenantid`, `source`, `agenthost`, `v` - enumerated `SOURCE_VALUES`, `AGENT_HOST_VALUES`, and `CONTRACT_VERSION` Export the `UriHandler` class so dispatch can be covered by an integration test. Adds a pure unit test asserting the constants contract and an integration test asserting each path routes correctly (including the reserved/unknown no-op paths). This change is behavior-preserving and ships dark: no new user-facing behavior. Follow-up PRs extract shared auth/env helpers and add the flag-gated skeleton handlers. Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Update axios and brace-expansion overrides to patched versions for the open Dependabot alerts. Also bump js-yaml, markdown-it, linkify-it, and the @vscode/vsce brace-expansion override to clear related resolvable npm audit findings. Copilot-Session: 8c84d3bd-a7df-4078-ae74-5439e768a14c
Update the fast-uri override from 3.1.2 to 3.1.4 so schema-utils and ajv-formats resolve to the patched transitive version. Addresses CVE-2026-13676 and CVE-2026-16221. Copilot-Session: 5e47cdbe-a2c0-41ea-853b-4597aa29125c
…6: Build ID 2640657 (#1635)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Fix Dependabot security vulnerability in liquidjs - Updated liquidjs from 10.26.0 to 10.27.1 - Addresses CVE-2026-55575 / GHSA-g357-x5c3-c72p (high): the `pop` filter bypassed the `memoryLimit` accounting enforced by its array-filter siblings - Patch release within 10.x, no API changes; build and unit tests pass Also normalized four package-lock.json entries that had been rewritten by an internal npm proxy (agent-base, https-proxy-agent, uc.micro, liquidjs). Their `resolved` URLs pointed at ms-feed-*.pkgs.visualstudio.com with sha1 integrity instead of registry.npmjs.org with sha512. Each sha512 was recomputed from the tarball after verifying its sha1 against the published shasum. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 0bde2a62-741b-4321-8cba-770788c8575d
VS Code 1.131.0 renamed the macOS app bundle executable from Contents/MacOS/Electron to Contents/MacOS/Code. @vscode/test-electron 2.5.2 hardcodes the old name, so every macOS run died with: spawn .../Visual Studio Code.app/Contents/MacOS/Electron ENOENT right after the download step. Linux and Windows were unaffected because their launcher paths did not change. @vscode/test-electron 3.1.0 resolves the executable from the bundle contents instead of assuming a fixed name, so bump to it. It declares engines.node >= 22, so the CI jobs that install and run it move from Node 20 (already past end of life) to Node 22. Also refresh the 'stable' pin comments in the two runTest.ts files that carried a workaround note for the older, now-fixed resolver. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 5858992e-2d0e-41a5-ada9-c9b664b21479
- tar 7.5.19 -> 7.5.21, fixes alert #230 (medium): uncontrolled recursion in mapHas/filesFilter allows an uncatchable stack-overflow DoS via a crafted long-path tar with member selection. - brace-expansion 5.0.7 -> 5.0.8, fixes alert #231 (high): DoS via unbounded expansion length causing an out-of-memory process crash. The version is pinned through the "overrides" block, so package.json had to move in lockstep with the lock file. Both are transitive dependencies. The brace-expansion 5.0.8 tarball is not mirrored on the internal npm proxy yet, so its lock entry was written from the upstream registry metadata; `npm ci` against registry.npmjs.org resolves it normally. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 5858992e-2d0e-41a5-ada9-c9b664b21479
Fix Other Sites hiding classic sites in Actions Hub findOtherSites probed fs.existsSync(dir) to decide whether a folder was a code site. Every path in that loop came from readdirSync, so the check was always true. That forced the scan into <site>/.powerpages-site, which meant classic sites with website.yml at the folder root were never listed under "Other Sites", and every site that did show up was mislabelled isCodeSite. Probe the .powerpages-site folder itself, and run the website.yml lookup through the injected fs module so the scan is fully testable. The previous code called the real fs via hasWebsiteYaml, which is why the unit tests never caught this. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 1209cbfe-7e75-40a7-9dbf-b88c175bb55e
* Extract shared PAC auth/environment helpers into AuthEnvironmentService Move the PAC CLI authentication, environment-selection, and process-reset logic out of the `UriHandler` class into a new `utils/authEnvironment.ts` `AuthEnvironmentService` that takes a `PacWrapper`. `UriHandler` now composes the service and delegates: - `handleOpenPowerPages` (`/open`) calls `authEnvironmentService.prepareAuthenticationAndEnvironment(...)` - `executeDownload` calls `authEnvironmentService.resetPacProcessSafely(...)` This is a behavior-preserving refactor: the moved methods (`prepareAuthenticationAndEnvironment`, `ensureAuthentication`, `ensureCorrectEnvironment`, `resetPacProcessAndThrow`, `resetPacProcessSafely`) keep identical logic, telemetry, prompts, and error handling. Extracting them lets the upcoming `/pacCreate` and `/agenticCreate` handlers reuse the exact same auth/environment flow instead of duplicating it. Adds an integration test (`test/integration/authEnvironment.test.ts`) covering the no-prompt happy path, the environment-switch path, and the reset-safely / reset-and-throw error behaviors with a stubbed PacWrapper. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Fix failing AuthEnvironmentService tests by stubbing OneDS logger The three failing integration tests (switches environment..., resetPacProcessSafely swallows reset errors, resetPacProcessAndThrow resets and rethrows the original error) all exercise code paths that emit telemetry via oneDSLoggerWrapper.getLogger(). In the integration test host the OneDS logger is never instantiated, so getLogger() returns undefined and the telemetry calls threw "Cannot read properties of undefined (reading 'traceInfo'/'traceError')". The one test that passed never touched telemetry. Stub oneDSLoggerWrapper.getLogger() in beforeEach to return a no-op logger (traceInfo/traceWarning/traceError/featureUsage), matching the existing pattern in WebsiteUtil.test.ts. All four AuthEnvironmentService tests now pass; full desktop integration suite: 895 passing. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 21dcede3-a8f3-4593-9ee6-367b083c2993 --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 21dcede3-a8f3-4593-9ee6-367b083c2993
Add dark, flag-gated skeleton handlers for Power Pages create deep links
PR-3 of 3 (stacked on the auth/env extraction). Introduces the dark
scaffolding for the two new Power Pages "create" deep links launched from
the Power Pages home page:
- vscode://.../agenticCreate (agentic / terminal CLI agent-host flow)
- vscode://.../pacCreate (PAC CLI flow)
Both ship OFF by default and change no user-facing behavior. When their
ECS flag is off the handler is a no-op that emits a "disabled" telemetry
event; when on it parses the versioned, secret-free deep-link parameters
and emits a "triggered" telemetry event. The actual create behavior
(auth -> environment -> folder -> PAC CLI / agent-host bootstrapping) is
intentionally deferred to follow-up changes.
Changes:
- ecs-features/ecsFeatureGates.ts: add EnableAgenticCreateFromHome and
EnablePacCreateFromHome gates (fallback = off).
- uriHandler/telemetry/uriHandlerTelemetryEvents.ts: add triggered /
disabled / failed events for both flows.
- uriHandler/handlers/createFlowParams.ts: shared param parsing plus a
redacted telemetry builder (records only low-cardinality, non-secret
values and presence flags — never raw org URLs or tenant IDs).
- uriHandler/handlers/{agenticCreateHandler,pacCreateHandler}.ts: gated
dark handlers wired into the PR-1 route map.
- uriHandler/uriHandler.ts: construct and register both handlers.
- test/integration/createHandlers.test.ts: covers gated no-op (flag off)
and enabled-parse (flag on) paths for both handlers.
- test/integration/uriHandler.test.ts: assert routing dispatches the new
paths to their handlers now that they are wired up.
Validated: gulp lint, compile-tests, npm test (106 unit passing), build.
Co-authored-by: Amit Joshi <amitjoshi@microsoft.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…y tree (#1642) Fix Dependabot alert 232: drop brace-expansion 1.x from the tree CVE-2026-14257 (high, GHSA-mh99-v99m-4gvg): brace-expansion below 1.1.17 can be driven to an out-of-memory crash through unbounded expansion length. Two stale copies of 1.1.16 were still in the lock file even though the top-level "brace-expansion": "5.0.8" override was already in package.json: - node_modules/glob/node_modules (runtime, via the direct glob@7 dependency) survived only because npm keeps existing lock entries and never re-resolved them against the override. Deleting the nested entries and re-resolving lets glob@7 use the hoisted minimatch@10 / brace-expansion@5, which was verified to work for every glob pattern the extension uses. - node_modules/@vscode/vsce/node_modules (dev) was pinned there on purpose, since vsce 2.x needs minimatch 3.x. vsce 3.9.2 is the first release that moved to minimatch ^10.2.2, so bumping vsce removes both the pin and the vulnerable copy instead of carrying it forward. The patched 1.1.17 is not an option here: it is unavailable on the internal npm proxy, and brace-expansion 5.x is not a drop-in for minimatch 3.x because its CommonJS build exports `expand` as a named export rather than as module.exports. Verified with gulp package (vsce 3.9.2 builds the VSIX, including its new secretlint scan), lint, and the unit test suite. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b805fea5-ddbd-4c67-a52b-6b7e15ee64f0
Make npm lockfile registry-agnostic
Update socket.io-parser, undici, and ip-address to patched releases. Keep both Undici major lines secure and include the latest ip-address SSRF fix.
… (dark) (#1645) * Generalize auth environment target for create flows Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 817c33dc-36f5-48c7-8e57-eb006c2e19a2 * Validate auth environment targets before PAC calls Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 817c33dc-36f5-48c7-8e57-eb006c2e19a2 --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 817c33dc-36f5-48c7-8e57-eb006c2e19a2
Add dark target folder selection utility Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 643427cc-6c21-4e43-a725-e7c43b2c1407
…6: Build ID 2672648 (#1649) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2672648 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
…bing (dark) (#1647) * Add create-flow funnel telemetry helper Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7507eea4-d157-4835-a139-cd737d927f8b * Add hashed create-flow identifiers Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7507eea4-d157-4835-a139-cd737d927f8b * Emit create-flow website and environment IDs Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7507eea4-d157-4835-a139-cd737d927f8b --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7507eea4-d157-4835-a139-cd737d927f8b
* URI handler: add agent-host detection utility Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: d1b714e1-4483-40af-a0e0-d3763f36a6d6 * Harden agent-host detection probes Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: d1b714e1-4483-40af-a0e0-d3763f36a6d6 * Run agent probes without shell parsing Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: d1b714e1-4483-40af-a0e0-d3763f36a6d6 --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Copilot-Session: d1b714e1-4483-40af-a0e0-d3763f36a6d6
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…dark) (#1650) Instrument common create-flow stages Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Copilot-Session: e70b7207-e877-439a-9e32-0997de39462e
Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3954d0bf-0120-4b31-9ced-562327bb7312
- Updated morgan override from 1.12.0 to 1.12.1 (dev, via @vscode/test-web > koa-morgan) - Addresses alert #272 (medium): log injection via unescaped double quote in quoted log fields - Updated ip-address override from 10.3.1 to 10.5.1 (via release-it > proxy-agent > socks) - Addresses alert #271 (medium): Address6.isLinkLocal() matched fe80::/64 instead of fe80::/10 - Addresses alert #270 (medium): NAT64 local-use range 64:ff9b:1::/48 not classified Both parents already accept the patched versions; the existing override pins were holding them back.
…6: Build ID 2742703 (#1704) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2742703 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Fix Dependabot security vulnerabilities - Update moment and vulnerable transitive overrides to patched releases - Resolve alerts for fast-uri, ip-address, brace-expansion, undici, and markdown-it - Update qs to 6.16.0 for the newly detected audit advisories Addresses CVE-2026-86472, CVE-2026-101911, CVE-2026-101912, CVE-2026-17495, CVE-2026-102276, CVE-2026-102277, CVE-2026-102278, and CVE-2026-18540. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 06cd4251-b2af-4792-bd00-746360795fda
Fix Power Pages site shell recovery and command copying Discover installed compatible Windows shells and keep command previews, manual recovery, and terminal execution aligned. Add safe per-command clipboard actions and accessible recovery near the confirmation actions, with concise localized guidance and targeted coverage. Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…6: Build ID 2744149 (#1709) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2744149 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Fix Dependabot security vulnerabilities in axios - Update the axios override from 1.18.0 to 1.20.0 - axios is a transitive runtime dependency of @fluidframework/server-services-client, used by the web worker - Addresses CVE-2026-101898, CVE-2026-101899, CVE-2026-101900, CVE-2026-101901, CVE-2026-101902, CVE-2026-101903, CVE-2026-101904, CVE-2026-101905, CVE-2026-101906, CVE-2026-101907, CVE-2026-101908, and CVE-2026-101909 (7 high, 5 medium) - The 1.20.0 breaking-change note only adds status-code aliases and keeps the old names Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
* Bump the github-actions group across 1 directory with 3 updates Bumps the github-actions group with 3 updates in the / directory: [actions/checkout](https://github.com/actions/checkout), [actions/setup-node](https://github.com/actions/setup-node) and [actions/setup-dotnet](https://github.com/actions/setup-dotnet). Updates `actions/checkout` from 6.1.0 to 7.0.1 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](actions/checkout@d23441a...3d3c42e) Updates `actions/setup-node` from 6.5.0 to 7.0.0 - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](actions/setup-node@2499707...8207627) Updates `actions/setup-dotnet` from 5.4.0 to 6.0.0 - [Release notes](https://github.com/actions/setup-dotnet/releases) - [Commits](actions/setup-dotnet@26b0ec1...a98b568) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 7.0.1 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: actions/setup-dotnet dependency-version: 6.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: actions/setup-node dependency-version: 7.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com> * Skip translations export on Dependabot PRs Dependabot-triggered runs do not receive Actions secrets, so the create-github-app-token step failed with an empty private key on every Dependabot PR. Dependabot never changes localized source strings, so the export has nothing to do on those PRs. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Priyanshu Agrawal <priyanshuag@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…6: Build ID 2751217 (#1711)
Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…6: Build ID 2752843 (#1713) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2752843 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: f31c4af7-573f-4046-9a6e-a6b32af391bf
…up (#1717) Bumps the github-actions group with 1 update: [actions/setup-node](https://github.com/actions/setup-node). Updates `actions/setup-node` from 7.0.0 to 7.1.0 - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](actions/setup-node@8207627...949feb2) --- updated-dependencies: - dependency-name: actions/setup-node dependency-version: 7.1.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…b-actions group (#1718) Bump actions/create-github-app-token Bumps the github-actions group with 1 update: [actions/create-github-app-token](https://github.com/actions/create-github-app-token). Updates `actions/create-github-app-token` from 3.2.0 to 3.3.0 - [Release notes](https://github.com/actions/create-github-app-token/releases) - [Changelog](https://github.com/actions/create-github-app-token/blob/main/CHANGELOG.md) - [Commits](actions/create-github-app-token@bcd2ba4...64ab729) --- updated-dependencies: - dependency-name: actions/create-github-app-token dependency-version: 3.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Copilot-Session: f62eaf6d-a61c-4806-90cf-7229c9811f7f
* Launch agentic create hosts without a terminal shell Run installer and plugin setup commands as child processes and start the agent as the integrated terminal's process. This removes the PowerShell 7, Git Bash, and Shell Integration requirements that blocked makers with missingPowerShell and unsupportedShell. When a step can't run directly, the remaining plan continues in the existing terminal flow without repeating completed setup. - Add persisted search path discovery (registry Path, WinGet Links, ~/.local/bin) so freshly installed hosts resolve without a new shell. - Fall back to Windows PowerShell for the winget bootstrap preview. - Add executionMode and directFallbackReason telemetry. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: ebe73624-7572-44ba-b15e-7164ff7bf300 * Align AI site creation messages with Microsoft content guidelines Review the user-facing text on the agentic create setup page against the Microsoft Writing Style Guide guidance in Agents.md: - Use "VS Code" instead of "we" in errors and recovery messages, and drop the ellipsis from the progress status. - Fix the skipped-step announcement, which rendered as "Prepare your AI assistant is already set up." It now reads like the progress status. - Say "The remaining setup commands didn't run." because direct mode can finish some steps before it falls back to the terminal. - Match the VS Code Settings UI names for the shell integration and Windows terminal profile settings. - Show a cause-specific message when Copy is unavailable (terminal shell versus a .cmd or .bat assistant) instead of telling users to select Try again before that button exists. - Mention "Runs only if needed" in the manual setup instructions only when the plan contains conditional commands. - Use the official "Power Pages plugin" casing. - Reference button and section labels through shared localized constants, with translator comments, so instructions always match the UI. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: ebe73624-7572-44ba-b15e-7164ff7bf300 --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: ebe73624-7572-44ba-b15e-7164ff7bf300
Route Actions Hub and preview uploads through PacWrapper, preserve configuration overrides, require workspace trust, and report upload failures through the PAC output channel. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Copilot-Session: 08c8755b-9743-4bdc-8dba-ceef7ab6841c
* Recover large Power Pages file downloads in VS Code web Add gated Dataverse block-download recovery after HTTP 413, validated VFS publication, correlated reliability telemetry, focused regressions, and recovery documentation. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Remove download recovery ECS gate and documentation Recover eligible enhanced-model file downloads automatically after HTTP 413, remove obsolete gate telemetry and configuration wiring, and retain automatic recovery and logical-outcome regression coverage. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
* Add release notes for Power Platform Tools 2.0.160 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Focus 2.0.160 release notes on user benefits Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Remove PR links from 2.0.160 release notes Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Update fast-uri, follow-redirects, ip-address, markdown-it, and both undici major lines to patched releases. Update @azure/identity to 4.14.1 for patched @azure/msal-node, and puppeteer-core to 25.16.0 for patched chromium-bidi and zod. Addresses: - [CVE-2023-54404](https://github.com/microsoft/powerplatform-vscode/security/dependabot/312) - [CVE-2026-110095](https://github.com/microsoft/powerplatform-vscode/security/dependabot/311) - [CVE-2026-110306](https://github.com/microsoft/powerplatform-vscode/security/dependabot/310) - [CVE-2026-110725](https://github.com/microsoft/powerplatform-vscode/security/dependabot/309) - [CVE-2026-109869](https://github.com/microsoft/powerplatform-vscode/security/dependabot/307) - [CVE-2026-109841](https://github.com/microsoft/powerplatform-vscode/security/dependabot/306) - [CVE-2026-110180](https://github.com/microsoft/powerplatform-vscode/security/dependabot/305) - [CVE-2026-109869](https://github.com/microsoft/powerplatform-vscode/security/dependabot/304) - [CVE-2026-109461](https://github.com/microsoft/powerplatform-vscode/security/dependabot/303) - [CVE-2026-111997](https://github.com/microsoft/powerplatform-vscode/security/dependabot/302) - [CVE-2026-111758](https://github.com/microsoft/powerplatform-vscode/security/dependabot/301) - [CVE-2026-111766](https://github.com/microsoft/powerplatform-vscode/security/dependabot/300) - [CVE-2026-111756](https://github.com/microsoft/powerplatform-vscode/security/dependabot/299) - [CVE-2026-111755](https://github.com/microsoft/powerplatform-vscode/security/dependabot/298)
…al (#1732) * Make metadata diff report file headers keyboard accessible Each file row in the metadata comparison HTML report was toggled by a clickable div, so keyboard and screen-reader users could not open or close an individual diff. Render the header as a button with aria-controls pointing at its diff container, keep aria-expanded in sync in toggleDiff, expandAll, and collapseAll, hide the decorative arrow from assistive technology, and add a visible focus indicator. Button styles are reset so the report looks the same as before. The markup, CSS, and script match the copy of this renderer in the power-platform-skills compare-site-metadata skill. * Show metadata diff report component tabs as a vertical list The report listed all component tabs in one horizontal row. With every component type shown, the row is wider than the files card, which has overflow hidden, so tabs past the edge were cut off and moving keyboard focus to them scrolled the whole files section sideways. List the tabs in a 220px sidebar beside the file panels. Below 768px the sidebar would leave file paths too little room, so the tabs wrap into rows above the files instead. The tab markup and CSS match the copy of this renderer in the power-platform-skills compare-site-metadata skill. * Extract the report script in tests without a tag regex CodeQL flagged the test helper's <script> regex as a bad HTML filtering pattern (js/bad-tag-filter) and failed the code scanning check. The helper only extracts the report's own inline script, so slice it out by index instead.
Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Fix lazy server logic folder creation - Create conditional parent folders before committing downloaded content.\n- Preserve write-before-loaded-metadata ordering and surface directory creation failures.\n- Cover initial and preload downloads through HTTP 200 and 413 recovery.\n- Use a complete VS Code URI in the filesystem read test fixture.
…6: Build ID 2782029 (#1726) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2782029 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Co-authored-by: Priyanshu Agrawal <priyanshuag@microsoft.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> # Conflicts: # src/client/test/integration/power-pages/preview-site/PreviewSite.test.ts
Contributor
Author
|
Superseded by #1737, which includes these changes synced with main and the full rebuild results. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Power Pages previews should use VS Code's integrated browser on newer VS Code builds, so users can keep the preview inside the editor without depending on Edge Tools first.
This change routes Preview Site through
workbench.action.browser.openwhen that command is available. Older VS Code builds keep the current Edge Tools behavior, including the existing install prompt when Edge Tools is missing. I avoided Simple Browser as a fallback because it does not render Power Pages sites reliably.I also updated the Preview Site tests to cover integrated browser launch, Edge Tools fallback, and the missing-Edge-Tools prompt. The desktop integration test runner now uses a short temp user-data directory so macOS socket path limits do not break test runs from long worktree paths.
Validation:
npm run compile-testsnpm run buildnpm run test-desktop-int