Background
In #321263 the chat-lib tests workflow (.github/workflows/chat-lib-package.yml) was pinned from windows-latest to windows-2022.
This was needed because the GitHub-hosted windows-latest label migrated to the Windows Server 2025 + Visual Studio 2026 image (actions/runner-images#14017). During npm ci in extensions/copilot, the native sqlite3@5.1.7 module (a transitive dependency of the @keyv/sqlite devDependency) builds via prebuild-install -r napi || node-gyp rebuild. With no matching prebuilt, it falls back to node-gyp, which cannot detect the VS 18 toolchain on the new image:
gyp ERR! find VS unknown version "undefined" found at "...\Microsoft Visual Studio\18\Enterprise"
gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use
Pinning to windows-2022 (still VS 2022) restores green, but it is temporary tech debt — the windows-2022 runner image will eventually be deprecated.
Action
Once the underlying issue is resolved, revert the pin back to windows-latest. The pin can be lifted when either of these is true:
References
Background
In #321263 the
chat-lib testsworkflow (.github/workflows/chat-lib-package.yml) was pinned fromwindows-latesttowindows-2022.This was needed because the GitHub-hosted
windows-latestlabel migrated to the Windows Server 2025 + Visual Studio 2026 image (actions/runner-images#14017). Duringnpm ciinextensions/copilot, the nativesqlite3@5.1.7module (a transitive dependency of the@keyv/sqlitedevDependency) builds viaprebuild-install -r napi || node-gyp rebuild. With no matching prebuilt, it falls back tonode-gyp, which cannot detect the VS 18 toolchain on the new image:Pinning to
windows-2022(still VS 2022) restores green, but it is temporary tech debt — thewindows-2022runner image will eventually be deprecated.Action
Once the underlying issue is resolved, revert the pin back to
windows-latest. The pin can be lifted when either of these is true:node-gypwith Visual Studio 2026 support (>= v12.1.0, see nodejs/node-gyp#3240) is whatnpm ciuses forextensions/copiloton the new image, orsqlite3dependency is removed — e.g. upgrading@keyv/sqliteto v6, which no longer bundles nativesqlite3(usesbetter-sqlite3/node:sqlite) — so no native build is needed at all.References
windows-latestandwindows-2025image-label will use Windows Server 2025 with Visual Studio 2026 image in June 2026 actions/runner-images#14017