Skip to content

Complete the TypeScript 7 compatibility bridge - #19130

Closed
Adam Ratzman (adamint) wants to merge 44 commits into
microsoft:mainfrom
adamint:adamint/issue18905-ts7-bridge
Closed

Adam Ratzman (adamint) wants to merge 44 commits into
microsoft:mainfrom
adamint:adamint/issue18905-ts7-bridge

Conversation

@adamint

@adamint Adam Ratzman (adamint) commented Aug 7, 2026

Copy link
Copy Markdown
Member

Description

Moves Aspire's generated TypeScript, starter templates, JsTests, polyglot validation, and VS Code extension onto the TypeScript team's TS6/TS7 bridge.

TypeScript 7 is a native compiler and no longer exposes the JavaScript compiler API that tools such as typescript-eslint consume. The compatible shape is:

  • generated/scaffolded projects use TypeScript 6.0.3 with typescript-eslint 8.58.0;
  • the extension aliases typescript to @typescript/typescript6 for the JS API and installs the native TypeScript 7 compiler separately;
  • emitting scripts use tsc6, while typecheck runs the native compiler against both extension tsconfigs;
  • polyglot validation checks generated output with both the AppHost's declared compiler and TypeScript 7.

aspire init also avoids creating an uninstallable lint toolchain. If an existing project keeps a TypeScript spec that typescript-eslint cannot be proven to support, the merge does not add the scaffold-owned linter/script. If the merge upgrades the compiler, ordinary npm semver ranges can be reconciled, but project-owned opaque specs remain untouched: workspace:, file:, npm aliases, forks, git URLs, tarballs, and other non-semver references are never replaced.

The large file count is mechanical: the version floor changes regenerate the package manifests and lockfiles across the TypeScript polyglot fixtures. The separately bundled npm-registry enforcement is no longer part of this PR.

Related to #18905. This does not close it: scaffolded output intentionally stays on TypeScript 6 until typescript-eslint supports 7.

Verification

PackageJsonMergerTests
  84 passed

TypeScriptLanguageSupportTests
  17 passed

extension/package.json TypeScript 7 bridge
  6 passed

corepack yarn --silent typecheck
  tsconfig.json passed
  tsconfig.e2e.json passed

Checklist

  • Is this feature complete?
    • Yes. Ready to ship.
    • No. Follow-up changes expected.
  • Are you including unit tests for the changes and scenario tests if relevant?
    • Yes
    • No
  • Did you add public API?
    • Yes
    • No
  • Does the change make any security assumptions or guarantees?
    • Yes
    • No

Copilot AI balanced review requested due to automatic review settings August 7, 2026 14:22
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

🚀 Dogfood this PR with:

⚠️ WARNING: Do not do this without first carefully reviewing the code of this PR to satisfy yourself it is safe.

curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 19130

Or

  • Run remotely in PowerShell:
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 19130"

@github-actions github-actions Bot added the area-integrations Issues pertaining to Aspire Integrations packages label Aug 7, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Closes TypeScript 7 bridge gaps across scaffolding, extension tooling, and CI validation.

Changes:

  • Aligns generated projects, templates, tests, and fixtures on TypeScript 6.0.3 with compatible ESLint tooling.
  • Runs both declared TypeScript and native TypeScript 7 validation, with improved CI routing.
  • Removes dead manifest data and adds lockfile/feed regression checks.
Show a summary per file
File Description
.agents/skills/vscode-extension/SKILL.md Documents dual-compiler workflows.
.github/workflows/polyglot-validation/Dockerfile.typescript Installs TypeScript 7 GA.
.github/workflows/polyglot-validation/test-typescript-playground.sh Runs declared and native compilers.
eng/github-ci/test-trigger-map.yml Routes codegen changes to CLI E2E tests.
extension/CONTRIBUTING.md Documents TypeScript 6/7 bridging.
extension/package.json Configures compiler aliases and scripts.
extension/scripts/typecheck-native.js Resolves and runs native TypeScript.
extension/src/test/packageManifest.test.ts Tests compiler configuration.
extension/yarn.lock Locks native and compatibility compilers.
src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json Updates Python starter dependencies.
src/Aspire.Cli/Templating/Templates/py-starter/package.json Aligns Python starter toolchain.
src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json Updates TypeScript starter dependencies.
src/Aspire.Cli/Templating/Templates/ts-starter/package.json Aligns TypeScript starter toolchain.
src/Aspire.Hosting.CodeGeneration.TypeScript/Aspire.Hosting.CodeGeneration.TypeScript.csproj Removes dead embedded manifest.
src/Aspire.Hosting.CodeGeneration.TypeScript/Resources/package.json Removes unused manifest.
src/Aspire.Hosting.CodeGeneration.TypeScript/TypeScriptLanguageSupport.cs Fixes generated dependency pairing.
tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json Locks compatible test tooling.
tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package.json Updates JavaScript tests to TypeScript 6.
tests/Aspire.Hosting.CodeGeneration.TypeScript.Tests/AtsTypeScriptCodeGeneratorTests.cs Removes dead-resource test.
tests/Aspire.Hosting.CodeGeneration.TypeScript.Tests/TypeScriptLanguageSupportTests.cs Tests version compatibility.
tests/Infrastructure.Tests/Pipelines/NpmLockfileRegistryTests.cs Adds lockfile feed validation.
tests/Infrastructure.Tests/TestTriggerMap/SelectTestsAcceptanceTests.cs Tests CI routing.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Blazor/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json Regenerates TypeScript 6 dependencies.
tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json Locks TypeScript 6 fixture.
tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/TypeScript.PackageManagers.Bun/TypeScript/bun.lock Regenerates Bun lockfile.
tests/PolyglotAppHosts/TypeScript.PackageManagers.Bun/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json Regenerates npm lockfile.
tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml Regenerates pnpm lockfile.
tests/PolyglotAppHosts/TypeScript.PackageManagers.Yarn/TypeScript/package.json Pins TypeScript 6 fixture.
tests/PolyglotAppHosts/TypeScript.PackageManagers.Yarn/TypeScript/yarn.lock Regenerates Yarn lockfile.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
  • Files reviewed: 75/135 changed files
  • Comments generated: 2
  • Review effort level: Balanced

Comment thread tests/Infrastructure.Tests/Pipelines/NpmLockfileRegistryTests.cs Outdated
Comment thread tests/Infrastructure.Tests/Pipelines/NpmLockfileRegistryTests.cs Outdated
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
  • Files reviewed: 75/135 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread .github/workflows/polyglot-validation/test-typescript-playground.sh Outdated
Copilot AI review requested due to automatic review settings August 7, 2026 16:05

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
  • Files reviewed: 75/135 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)

tests/Infrastructure.Tests/Pipelines/NpmLockfileRegistryTests.cs:74

  • This list does not cover the frontend lockfiles shipped inside these same templates. Both ts-starter/frontend/package-lock.json and py-starter/frontend/package-lock.json are embedded by Aspire.Cli.csproj, and each currently contains public registry.npmjs.org tarball URLs. The trigger-map rule likewise names only the root lockfiles, so changes to the frontend lockfiles would not run this guard. Include and normalize the nested lockfiles and route their paths to Infrastructure.Tests to satisfy the PR's “every shipped lockfile” guarantee.
            var paths = new TheoryData<string>
            {
                Path.Combine("src", "Aspire.Cli", "Templating", "Templates", "ts-starter", "package-lock.json"),
                Path.Combine("src", "Aspire.Cli", "Templating", "Templates", "py-starter", "package-lock.json"),
                Path.Combine("tests", "Aspire.Hosting.CodeGeneration.TypeScript.JsTests", "package-lock.json"),
            };
  • Files reviewed: 77/137 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread .github/workflows/polyglot-validation/test-typescript.sh Outdated
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

Copilot AI review requested due to automatic review settings August 7, 2026 18:10

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
  • Files reviewed: 77/137 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI review requested due to automatic review settings August 7, 2026 18:28

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
  • Files reviewed: 77/137 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread tests/Infrastructure.Tests/Pipelines/NpmLockfileRegistryTests.cs Outdated
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

Copilot AI review requested due to automatic review settings August 7, 2026 19:11

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)

tests/Infrastructure.Tests/TestTriggerMap/SelectTestsAcceptanceTests.cs:980

  • This regression test exercises only lockfiles discovered under tests/PolyglotAppHosts. The new routing rule also has three explicit entries for the ts-starter, py-starter, and JsTests lockfiles; removing any of those entries leaves this test green and a lockfile-only change again skips NpmLockfileRegistryTests. Add acceptance cases for each non-polyglot lockfile covered by the rule.
    public void RealMapPolyglotLockfileChangeRunsInfrastructureTests(string lockfileName)
  • Files reviewed: 77/137 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread src/Aspire.Hosting.CodeGeneration.TypeScript/TypeScriptLanguageSupport.cs Outdated
Copilot AI added 2 commits August 9, 2026 22:10
…rrides

Two review findings.

IsTypeScriptVersionKnownSupported compared only the version the spec names, so
^6.0.3 read as supported. npm resolves a caret range to the newest match, so
that spec installs 6.1.0 the moment one is published and typescript-eslint
8.58.0's <6.1.0 peer turns into the ERESOLVE the guard exists to prevent. It now
computes the first version the range excludes, and accepts only the forms whose
upper bound follows from the spec alone.

npm also rejects an override for a package the manifest depends on directly
unless the two specs are identical. Upgrading a direct dependency while leaving
the project's overrides entry behind therefore fails with EOVERRIDE before peer
resolution runs, so the overrides entry now moves with the spec. Only npm's
section is reconciled; Yarn resolutions and pnpm overrides deliberately allow a
divergent spec.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
ReconcileNpmOverrides skipped object entries on the grounds that npm never
compares them against the direct spec. That holds for a nested tree scoping the
package's own dependencies, but not for the "." key, which is a spec for the
package itself. With devDependencies.typescript "6.0.3" and
overrides.typescript { ".": "^5.9.3", "some-dep": "1.0.0" },
npm install --package-lock-only reports:

  npm error code EOVERRIDE
  npm error Override for typescript@6.0.3 conflicts with direct dependency

Setting "." to 6.0.3 installs. The "." key now moves with the direct spec, and
is rewritten in place so a tree sitting beside it survives.

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

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (2)

src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:483

  • This records only upgrades made within the same dependency section. TryMergeExistingDependency can also upgrade a scaffolded devDependency in the project's dependencies section; if that package has a matching npm override, the direct spec changes but rewrittenSpecs does not, leaving the old override and causing npm to fail with EOVERRIDE. Record cross-section upgrades in this dictionary too.
            {

src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:424

  • npm also represents an override for the package itself as an object with a "." entry, for example "typescript": { ".": "^5.9.3", "child": "1.0.0" }. Treating every object as only a nested tree leaves . unchanged after the direct dependency is upgraded, so npm still fails with EOVERRIDE. Reconcile the . entry while preserving child overrides.
        {
            // A string entry is the spec for the package itself. An object entry is a nested
            // override tree, but its "." key - when present - is also a spec for the package
            // itself, and npm compares it against the direct dependency exactly the same way:
            //
            //   "devDependencies": { "typescript": "6.0.3" },
  • Files reviewed: 79/140 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (2)

src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:483

  • When a scaffolded devDependency already exists in dependencies, the cross-section path below can rewrite it without adding the package to rewrittenSpecs. For example, dependencies.typescript: "^5.9.3" plus overrides.typescript: "^5.9.3" becomes TypeScript 6.0.3 while the override remains unchanged, so npm rejects the merged manifest with EOVERRIDE. Record cross-section rewrites too so ReconcileNpmOverrides can update the matching override, and cover this runtime-dependency shape in the regression test.
            var existingVersionNode = existingDeps[packageName];
            if (existingVersionNode is null)
            {

src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:501

  • The override reconciliation also misses dependencies newly added by the scaffold. A valid brownfield manifest can have only overrides.typescript: "^5.9.3" to constrain a transitive compiler; adding direct devDependencies.typescript: "6.0.3" makes npm enforce the direct-dependency rule and fail with EOVERRIDE, but rewrittenSpecs is populated only when an existing value is upgraded. Include newly added direct specs in the reconciliation input as well.
                    && NpmVersionHelper.ShouldUpgrade(existingVersion, desiredVersion))
                {
                    existingDeps[packageName] = desiredVersion;
                    rewrittenSpecs?.TryAdd(packageName, desiredVersion);
  • Files reviewed: 79/140 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs
@github-actions

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

Adam Ratzman (adamint) and others added 2 commits August 9, 2026 23:18
`IsTypeScriptVersionKnownSupported` parsed the literal with
`SemVersionStyles.Any`, which fills omitted components with zero. That
made `6` look like the exact version 6.0.3 rather than the x-range
`6.x.x` npm reads it as, and `~6` look like `>=6.0.0 <6.1.0` rather than
`>=6.0.0 <7.0.0`. Both can resolve to 6.1.0, which typescript-eslint
8.58.0's `typescript: >=4.8.4 <6.1.0` peer excludes, so the merger kept
the lint toolchain next to a compiler spec that reintroduces ERESOLVE -
the opposite of the fail-closed behaviour the method documents for
x-ranges.

The bound is now derived from how many components the literal names, so
`6` and `~6` widen to the next major while `6.0` and `~6.0` still stop
below the next minor. Computing it this way rather than rejecting every
partial literal keeps `6.0` and `~6.0` accepted, which are provably
inside the peer range.

The test scaffold is deliberately behind the project's TypeScript.
Dependency merging rewrites a project spec whose lower bound sits below
the scaffold's version, which replaces the partial literal with the
scaffold's exact version and hides the bound calculation entirely - so
the bug is only reachable, and only observable, when the project is
already ahead of the scaffold.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 487b899d-d79d-4349-a84b-a026861bde7f
Clearing `projectOwnedPackage` when the compiler moves was not enough to
put the project's linter on a version that matches it. The version-floor
merge decides with `NpmVersionHelper.ShouldUpgrade`, which fails closed on
any spec it cannot reduce to a single version, so a comparator pair or an
x-range survives the merge untouched.

A project on TypeScript 5.9.3 with `typescript-eslint: ">=8.57.1 <8.58.0"`
therefore kept a linter that resolves to 8.57.x, whose `typescript: <6.0.0`
peer the freshly upgraded 6.0.3 compiler no longer satisfies. Nothing else
caught it: `RemoveLintToolchainWhenTypeScriptIsTooNew` only runs for a
project that had no linter to begin with.

Such a spec is now replaced with the scaffold's when - and only when - this
merge is what moved the compiler. A project whose compiler is left alone
still owns its linter, because nothing changed underneath it.

`>=8.57.1` is deliberately not among the tested forms: it reduces to
8.57.1, so the floor merge already upgrades it and it would pass with the
reconciliation disabled.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 487b899d-d79d-4349-a84b-a026861bde7f

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (2)

src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:146

  • rewrittenSpecs misses upgrades performed by TryMergeExistingDependency. For example, a brownfield manifest with dependencies.typescript: "^5.9.3" and the same npm override is upgraded in place while merging the scaffold devDependency, but the override is left at ^5.9.3; npm then fails with EOVERRIDE. Record cross-section upgrades too, and cover this runtime-dependency case.
        if (projectAlreadyLinted && !compilerIsUnchanged)

src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:439

  • The preceding MergeDependencySection summary is now also attached to ReconcileNpmOverrides, leaving this method with two summaries and one that describes the wrong behavior. Keep only the override-specific summary here and move the dependency-section summary back to MergeDependencySection.
    /// Merges a dependency section (e.g., "dependencies", "devDependencies") from scaffold into existing
  • Files reviewed: 79/140 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (3)

src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:151

  • rewrittenSpecs does not contain every direct dependency spec this merge changes. It is populated only for same-section semver upgrades, so a valid project with overrides.typescript: "5.9.3" and no direct TypeScript gets a new direct typescript: "6.0.3" while the override remains 5.9.3; npm then fails with EOVERRIDE. The same gap occurs for upgrades performed by TryMergeExistingDependency and ReconcileProjectLinterWithUpgradedCompiler. Record additions and all rewrite paths before reconciling overrides, and cover these cases with brownfield tests.
        ReconcileNpmOverrides(existing, rewrittenSpecs, logger);

src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:442

  • This summary describes MergeDependencySection, but it is now attached to ReconcileNpmOverrides together with a second <summary>. The generated XML documentation therefore assigns the wrong description to this method. Remove this stale block (or move it directly above MergeDependencySection) so each method has the correct single summary.
    /// <summary>
    /// Merges a dependency section (e.g., "dependencies", "devDependencies") from scaffold into existing
    /// using semver-aware comparison. New packages are added; existing packages are upgraded only when
    /// the scaffold specifies a newer version. Unparseable version ranges (union ranges, workspace
    /// references, etc.) are preserved as-is.

.github/workflows/polyglot-validation/npm-registry-env.sh:68

  • The PR description says this helper exports COREPACK_NPM_REGISTRY so Corepack downloads from the approved feed, but the implementation deliberately exports COREPACK_ENABLE_NETWORK=0 because that feed cannot satisfy Corepack’s acquisition paths. Update the description to reflect the fail-closed, preinstalled-manager strategy; the current security explanation describes behavior the PR no longer implements.
export COREPACK_ENABLE_NETWORK=0
  • Files reviewed: 79/140 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

npm compares an overrides entry with whatever direct spec the manifest ends up
with; it does not care how that spec got there. Only the plain in-place upgrade
was recorded, leaving three ways to produce EOVERRIDE:

  - An override beside no direct dependency is valid until the merge introduces
    one. `overrides.typescript "^5.9.3"` with no direct typescript became a new
    direct 6.0.3 with the override still on ^5.9.3.
  - A project that put typescript in dependencies keeps it there and is upgraded
    in place by TryMergeExistingDependency, which recorded nothing.
  - ReconcileProjectLinterWithUpgradedCompiler replaces an unreadable linter spec
    after the floor merge and is the last word on it, so an override on
    typescript-eslint has to follow that value rather than the project's.

Also moves the MergeDependencySection summary back onto MergeDependencySection.
It was left stacked on ReconcileNpmOverrides, which gave that method two
<summary> blocks and the wrong description in the generated docs.

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

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
  • Files reviewed: 79/140 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
  • Files reviewed: 79/140 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

@github-actions

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

@github-actions

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

@github-actions

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)

src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:474

  • $typescript is npm's supported self-reference to the direct dependency spec, so it stays synchronized when this method upgrades that dependency and cannot cause EOVERRIDE. Treating it as a mismatched literal rewrites it to 6.0.3, silently discarding the user's dynamic override; a later dependency-only update then leaves a stale literal override. Preserve $<packageName> references here and cover both the string and nested "." forms.
            if ((GetStringValue(entry) ?? GetStringValue(nestedOverrides?[SelfOverrideKey])) is not { } overriddenSpec ||
                string.Equals(overriddenSpec, rewrittenSpec, StringComparison.Ordinal))
            {
                continue;
  • Files reviewed: 79/140 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

@github-actions

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

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

Copilot-Session: 0d1cf760-b1bc-46ba-a6d4-628354b00f2c

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)

src/Aspire.Cli/Scaffolding/PackageJsonMerger.cs:534

  • A valid comparator range is treated as proof that the project's linter is stale. For example, typescript-eslint: ">=8.60.0 <8.66.0" cannot be reduced by NpmVersionHelper, so upgrading TypeScript from 5.9.3 to 6.0.3 reaches this branch and silently rewrites the newer, compatible linter range to 8.58.0. Versions 8.60.0 and 8.65.0 both peer TypeScript <6.1.0, so no downgrade is needed. Compare the parsed range's bounds with the scaffold floor and only replace ranges that cannot resolve any version at or above that floor.
        if (!SemVersionRange.TryParseNpm(projectLinter, out _))
        {
            return;
        }
  • Files reviewed: 77/137 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Inspect focused comparator and wildcard bounds before replacing a project-owned typescript-eslint range. Unknown forms now fail safe instead of being destructively pinned to the scaffold floor.

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

Copilot-Session: 3253974d-4f18-486f-863c-281a607656d4

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
  • Files reviewed: 77/137 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Keep the TypeScript 7 bridge lockfiles generated from the approved feed while taking upstream changes.

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

Copilot-Session: 96775000-0503-484a-9738-d68c9300ff52

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (57)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)

.github/workflows/polyglot-validation/test-typescript-playground.sh:193

  • This new “declared toolchain” leg still validates one fixture with the old compiler: tests/PolyglotAppHosts/Aspire.Hosting.Rust/TypeScript/package.json and its lockfile remain on ^5.3.0/5.9.3, while every other TypeScript fixture is pinned to 6.0.3. That leaves the PR’s stated polyglot migration incomplete and allows this fixture to pass without exercising the TS6 bridge. Update the Rust manifest and lockfile as well, ideally with a guard that requires the intended compiler across all discovered fixtures.
# Compiles the generated API surface with the TypeScript the AppHost's own package.json declares,
# rather than only with the native TypeScript 7 compiler the workflow supplies.
#
# Without this leg the installed toolchain is never used: CI would type-check with a compiler no
# scaffolded AppHost actually has, so generated code that the declared compiler rejects would reach
  • Files reviewed: 77/137 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Adam Ratzman added 2 commits August 14, 2026 18:52
Preserve the TypeScript 7 bridge dependency graph while taking upstream main’s public npm registry requirement for shipped CLI templates.

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

Copilot-Session: 96775000-0503-484a-9738-d68c9300ff52
Pin the newly merged Rust polyglot fixture to TypeScript 6.0.3 and guard every discovered TypeScript fixture against falling behind the declared-toolchain validation leg.

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

Copilot-Session: 96775000-0503-484a-9738-d68c9300ff52
@adamint

Adam Ratzman (adamint) commented Aug 14, 2026

Copy link
Copy Markdown
Member Author

Fixed the duplicate suppressed Rust fixture findings from reviews 4941720068 and 4941780277 in 3807f2d945. The merged fixture now pins TypeScript 6.0.3, and PolyglotTypeScriptFixturesUseBridgeCompiler enumerates every polyglot TypeScript package so the next fixture cannot silently stay behind the declared-toolchain leg.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (58)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Rust/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
Suppressed comments (1)

.github/workflows/polyglot-validation/test-typescript-playground.sh:193

  • This new “declared compiler” leg still leaves one validation AppHost outside the TS6 bridge: tests/PolyglotAppHosts/Aspire.Hosting.Rust/TypeScript/package.json uniquely declares typescript: "^5.3.0", and its lockfile resolves 5.9.3, while every other fixture is now on 6.0.3. Because discovery includes every */TypeScript directory, the Rust fixture passes this leg with TS5 and never validates its generated surface with the compiler version this PR says polyglot fixtures use. Update that manifest and lockfile to 6.0.3 as part of this migration.
# Compiles the generated API surface with the TypeScript the AppHost's own package.json declares,
# rather than only with the native TypeScript 7 compiler the workflow supplies.
#
# Without this leg the installed toolchain is never used: CI would type-check with a compiler no
# scaffolded AppHost actually has, so generated code that the declared compiler rejects would reach
  • Files reviewed: 79/140 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

Files not reviewed (58)
  • src/Aspire.Cli/Templating/Templates/py-starter/package-lock.json: Generated file
  • src/Aspire.Cli/Templating/Templates/ts-starter/package-lock.json: Generated file
  • tests/Aspire.Hosting.CodeGeneration.TypeScript.JsTests/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppConfiguration/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppContainers/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.AppService/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ApplicationInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CognitiveServices/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ContainerRegistry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.CosmosDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.EventHubs/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Functions/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.KeyVault/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Kusto/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Network/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.OperationalInsights/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Search/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.ServiceBus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.SignalR/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Sql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.Storage/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure.WebPubSub/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Azure/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.DevTunnels/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Docker/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Dotnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.EntityFrameworkCore/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Foundry/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Garnet/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.GitHub.Models/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Go/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.JavaScript/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kafka/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Keycloak/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Kubernetes/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Maui/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Milvus/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MongoDB/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.MySql/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Nats/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.OpenAI/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Oracle/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Orleans/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.PostgreSQL/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Python/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Qdrant/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.RabbitMQ/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Redis/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Rust/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Seq/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.SqlServer/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Valkey/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting.Yarp/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/Aspire.Hosting/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Npm/TypeScript/package-lock.json: Generated file
  • tests/PolyglotAppHosts/TypeScript.PackageManagers.Pnpm/TypeScript/pnpm-lock.yaml: Generated file
  • Files reviewed: 79/140 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

@github-actions

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-integrations Issues pertaining to Aspire Integrations packages

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants