Skip to content

[AutoPR @azure-arm-containerservicefleet]-generated-from-SDK Generation - JS-5926807#37369

Draft
azure-sdk wants to merge 1 commit intoAzure:mainfrom
azure-sdk:sdkauto/@azure-arm-containerservicefleet-5926807
Draft

[AutoPR @azure-arm-containerservicefleet]-generated-from-SDK Generation - JS-5926807#37369
azure-sdk wants to merge 1 commit intoAzure:mainfrom
azure-sdk:sdkauto/@azure-arm-containerservicefleet-5926807

Conversation

@azure-sdk
Copy link
Copy Markdown
Collaborator

@azure-sdk azure-sdk commented Feb 25, 2026

Configurations: 'specification/containerservice/resource-manager/Microsoft.ContainerService/fleet/tspconfig.yaml', API Version: 2025-08-01-preview, SDK Release Type: beta, and CommitSHA: 'd3e85dfd3b82ed7f275dc987656a65afda20a8f4' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=5926807 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release. Release plan link: https://web.powerapps.com/apps/821ab569-ae60-420d-8264-d7b5d5ef734c?release-plan-id=fd5c7709-d7cf-f011-bbd3-6045bd07ef68 Submitted by: ryan.zhang@microsoft.com

Release Plan Details

…osoft.ContainerService/fleet/tspconfig.yaml', API Version: 2025-08-01-preview, SDK Release Type: beta, and CommitSHA: 'd3e85dfd3b82ed7f275dc987656a65afda20a8f4' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=5926807 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
@github-actions github-actions bot added the Mgmt This issue is related to a management-plane library. label Feb 25, 2026
@kazrael2119 kazrael2119 added the Self-Service Release PR for self-service release label Feb 26, 2026
@frantran frantran marked this pull request as ready for review March 24, 2026 19:27
Copilot AI review requested due to automatic review settings March 24, 2026 19:27
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Autogenerated refresh of @azure/arm-containerservicefleet from the 2025-08-01-preview TypeSpec configuration, including a major beta version bump and updated operation surface (paging params, new operation groups) plus regenerated samples and API review files.

Changes:

  • Regenerated client/operations/models for 2025-08-01-preview, bumping package version to 3.0.0-beta.1.
  • Updated paging + LRO polling helpers to optionally inject api-version into nextLink/polling URLs and added new list options ($top, $skipToken, $filter where applicable).
  • Added/updated v3-beta JavaScript/TypeScript samples and refreshed API review markdowns.

Reviewed changes

Copilot reviewed 78 out of 131 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
sdk/containerservice/arm-containerservicefleet/tsp-location.yaml Updates TypeSpec spec directory + commit SHA reference for regeneration provenance.
sdk/containerservice/arm-containerservicefleet/src/static-helpers/urlTemplate.ts Minor helper refactor/regex tweak in URL template expansion.
sdk/containerservice/arm-containerservicefleet/src/static-helpers/serialization/check-prop-undefined.ts Adds helper used by serializers to omit empty properties.
sdk/containerservice/arm-containerservicefleet/src/static-helpers/pollingHelpers.ts Adds optional apiVersion support for LRO polling requests.
sdk/containerservice/arm-containerservicefleet/src/static-helpers/pagingHelpers.ts Adds optional apiVersion support for paging nextLink requests.
sdk/containerservice/arm-containerservicefleet/src/restorePollerHelpers.ts Passes api-version from serialized poller state into LRO poller; updates expected status lists.
sdk/containerservice/arm-containerservicefleet/src/api/updateRuns/options.ts Adds paging options (top, skipToken) to list options.
sdk/containerservice/arm-containerservicefleet/src/api/updateRuns/operations.ts Adds paging query params; normalizes api-version fallback; threads apiVersion into poller/pager.
sdk/containerservice/arm-containerservicefleet/src/api/operations/operations.ts Ensures api-version fallback and threads apiVersion into pager.
sdk/containerservice/arm-containerservicefleet/src/api/gates/options.ts Adds list options (filter, top, skipToken).
sdk/containerservice/arm-containerservicefleet/src/api/gates/operations.ts Adds list query params; normalizes api-version fallback; threads apiVersion into pager/poller.
sdk/containerservice/arm-containerservicefleet/src/api/fleets/options.ts Adds paging options (top, skipToken) to list-by-subscription.
sdk/containerservice/arm-containerservicefleet/src/api/fleets/operations.ts Adds list query params; normalizes api-version fallback; threads apiVersion into pager/poller.
sdk/containerservice/arm-containerservicefleet/src/api/fleetUpdateStrategies/options.ts Adds paging options (top, skipToken) to list options.
sdk/containerservice/arm-containerservicefleet/src/api/fleetUpdateStrategies/operations.ts Adds list query params; normalizes api-version fallback; threads apiVersion into pager/poller.
sdk/containerservice/arm-containerservicefleet/src/api/fleetMembers/options.ts Adds list options (top, skipToken, filter).
sdk/containerservice/arm-containerservicefleet/src/api/fleetMembers/operations.ts Adds list query params; normalizes api-version fallback; threads apiVersion into pager/poller.
sdk/containerservice/arm-containerservicefleet/src/api/fleetManagedNamespaces/operations.ts Normalizes api-version fallback; threads apiVersion into pager/poller.
sdk/containerservice/arm-containerservicefleet/src/api/containerServiceFleetContext.ts Makes apiVersion optional on context; bumps UA string; removes custom api-version pipeline policy.
sdk/containerservice/arm-containerservicefleet/src/api/autoUpgradeProfiles/options.ts Adds paging options (top, skipToken) to list options.
sdk/containerservice/arm-containerservicefleet/src/api/autoUpgradeProfiles/operations.ts Adds list query params; normalizes api-version fallback; threads apiVersion into pager/poller.
sdk/containerservice/arm-containerservicefleet/src/api/autoUpgradeProfileOperations/operations.ts Normalizes api-version fallback; threads apiVersion into poller.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/tsconfig.json Adds TS sample project config for v3-beta samples.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/updateRunsStopSample.ts Updates v3-beta TS sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/updateRunsStartSample.ts Adds v3-beta TS sample for start.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/updateRunsSkipSample.ts Adds v3-beta TS sample for skip.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/updateRunsListByFleetSample.ts Adds v3-beta TS sample for list.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/updateRunsGetSample.ts Adds v3-beta TS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/updateRunsDeleteSample.ts Updates v3-beta TS sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/updateRunsCreateOrUpdateSample.ts Updates v3-beta TS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/operationsListSample.ts Fixes subscriptionId placeholder length in TS sample.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/gatesUpdateSample.ts Adds v3-beta TS sample for gates update.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/gatesListByFleetSample.ts Adds v3-beta TS sample for gates list.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/gatesGetSample.ts Adds v3-beta TS sample for gates get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetsUpdateAsyncSample.ts Updates v3-beta TS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetsListCredentialsSample.ts Adds v3-beta TS sample for listCredentials.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetsListBySubscriptionSample.ts Adds v3-beta TS sample for listBySubscription.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetsListByResourceGroupSample.ts Adds v3-beta TS sample for listByResourceGroup.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetsGetSample.ts Adds v3-beta TS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetsDeleteSample.ts Updates v3-beta TS sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetsCreateSample.ts Updates v3-beta TS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetUpdateStrategiesListByFleetSample.ts Adds v3-beta TS sample for listByFleet.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetUpdateStrategiesGetSample.ts Adds v3-beta TS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetUpdateStrategiesDeleteSample.ts Adds v3-beta TS sample for delete.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetUpdateStrategiesCreateOrUpdateSample.ts Updates v3-beta TS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetMembersUpdateAsyncSample.ts Updates v3-beta TS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetMembersListByFleetSample.ts Adds v3-beta TS sample for listByFleet.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetMembersGetSample.ts Adds v3-beta TS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetMembersDeleteSample.ts Updates v3-beta TS sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetMembersCreateSample.ts Updates v3-beta TS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetManagedNamespacesUpdateSample.ts Adds v3-beta TS sample for update.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetManagedNamespacesListByFleetSample.ts Adds v3-beta TS sample for listByFleet.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetManagedNamespacesGetSample.ts Adds v3-beta TS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetManagedNamespacesDeleteSample.ts Adds v3-beta TS sample for delete.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/fleetManagedNamespacesCreateOrUpdateSample.ts Adds v3-beta TS sample for createOrUpdate.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/autoUpgradeProfilesListByFleetSample.ts Adds v3-beta TS sample for listByFleet.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/autoUpgradeProfilesGetSample.ts Adds v3-beta TS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/autoUpgradeProfilesDeleteSample.ts Adds v3-beta TS sample for delete.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/autoUpgradeProfilesCreateOrUpdateSample.ts Updates v3-beta TS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/src/autoUpgradeProfileOperationsGenerateUpdateRunSample.ts Adds v3-beta TS sample for generateUpdateRun.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/sample.env Adds v3-beta TS sample env template.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/typescript/package.json Adds v3-beta TS sample package manifest.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/updateRunsStopSample.js Updates v3-beta JS sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/updateRunsStartSample.js Adds v3-beta JS sample for start.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/updateRunsSkipSample.js Adds v3-beta JS sample for skip.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/updateRunsListByFleetSample.js Adds v3-beta JS sample for list.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/updateRunsGetSample.js Adds v3-beta JS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/updateRunsDeleteSample.js Updates v3-beta JS sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/updateRunsCreateOrUpdateSample.js Updates v3-beta JS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/sample.env Adds v3-beta JS sample env template.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/package.json Adds v3-beta JS sample package manifest.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/operationsListSample.js Fixes subscriptionId placeholder length in JS sample.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/gatesUpdateSample.js Adds v3-beta JS sample for gates update.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/gatesListByFleetSample.js Adds v3-beta JS sample for gates list.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/gatesGetSample.js Adds v3-beta JS sample for gates get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetsUpdateAsyncSample.js Updates v3-beta JS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetsListCredentialsSample.js Adds v3-beta JS sample for listCredentials.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetsListBySubscriptionSample.js Adds v3-beta JS sample for listBySubscription.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetsListByResourceGroupSample.js Adds v3-beta JS sample for listByResourceGroup.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetsGetSample.js Adds v3-beta JS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetsDeleteSample.js Updates v3-beta JS sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetsCreateSample.js Updates v3-beta JS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetUpdateStrategiesListByFleetSample.js Adds v3-beta JS sample for listByFleet.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetUpdateStrategiesGetSample.js Adds v3-beta JS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetUpdateStrategiesDeleteSample.js Adds v3-beta JS sample for delete.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetUpdateStrategiesCreateOrUpdateSample.js Updates v3-beta JS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetMembersUpdateAsyncSample.js Updates v3-beta JS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetMembersListByFleetSample.js Adds v3-beta JS sample for listByFleet.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetMembersGetSample.js Adds v3-beta JS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetMembersDeleteSample.js Updates v3-beta JS sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetMembersCreateSample.js Updates v3-beta JS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetManagedNamespacesUpdateSample.js Adds v3-beta JS sample for update.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetManagedNamespacesListByFleetSample.js Adds v3-beta JS sample for listByFleet.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetManagedNamespacesGetSample.js Adds v3-beta JS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetManagedNamespacesDeleteSample.js Adds v3-beta JS sample for delete.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/fleetManagedNamespacesCreateOrUpdateSample.js Adds v3-beta JS sample for createOrUpdate.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/autoUpgradeProfilesListByFleetSample.js Adds v3-beta JS sample for listByFleet.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/autoUpgradeProfilesGetSample.js Adds v3-beta JS sample for get.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/autoUpgradeProfilesDeleteSample.js Adds v3-beta JS sample for delete.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/autoUpgradeProfilesCreateOrUpdateSample.js Updates v3-beta JS sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/autoUpgradeProfileOperationsGenerateUpdateRunSample.js Adds v3-beta JS sample for generateUpdateRun.
sdk/containerservice/arm-containerservicefleet/samples/v3-beta/javascript/README.md Updates v3-beta sample README links + wording.
sdk/containerservice/arm-containerservicefleet/samples/v2-beta/typescript/src/fleetManagedNamespacesCreateOrUpdateSample.ts Removes older v2-beta TS sample (moved/replaced by v3-beta).
sdk/containerservice/arm-containerservicefleet/samples/v2-beta/javascript/fleetManagedNamespacesCreateOrUpdateSample.js Removes older v2-beta JS sample (moved/replaced by v3-beta).
sdk/containerservice/arm-containerservicefleet/samples-dev/updateRunsStopSample.ts Updates dev sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples-dev/updateRunsDeleteSample.ts Updates dev sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples-dev/updateRunsCreateOrUpdateSample.ts Updates dev sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples-dev/operationsListSample.ts Fixes subscriptionId placeholder length in dev sample.
sdk/containerservice/arm-containerservicefleet/samples-dev/fleetsUpdateAsyncSample.ts Updates dev sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples-dev/fleetsDeleteSample.ts Updates dev sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples-dev/fleetsCreateSample.ts Updates dev sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples-dev/fleetUpdateStrategiesCreateOrUpdateSample.ts Updates dev sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples-dev/fleetMembersUpdateAsyncSample.ts Updates dev sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples-dev/fleetMembersDeleteSample.ts Updates dev sample formatting/usage.
sdk/containerservice/arm-containerservicefleet/samples-dev/fleetMembersCreateSample.ts Updates dev sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples-dev/fleetManagedNamespacesCreateOrUpdateSample.ts Updates dev sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/samples-dev/autoUpgradeProfilesCreateOrUpdateSample.ts Updates dev sample body shape (flattened properties).
sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-node.api.md Updates public API surface review for new model flattening + new ops/options.
sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-models-node.api.md Updates model-only API review for flattened shapes.
sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-api-updateRuns-node.api.md Updates updateRuns API review for new paging options.
sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-api-node.api.md Updates top-level client/context API review (apiVersion optional).
sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-api-gates-node.api.md Updates gates API review for new list options.
sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-api-fleets-node.api.md Updates fleets API review for new list options.
sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-api-fleetUpdateStrategies-node.api.md Updates fleetUpdateStrategies API review for new list options.
sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-api-fleetMembers-node.api.md Updates fleetMembers API review for new list options.
sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-api-autoUpgradeProfiles-node.api.md Updates autoUpgradeProfiles API review for new list options.
sdk/containerservice/arm-containerservicefleet/package.json Bumps package version to 3.0.0-beta.1.
sdk/containerservice/arm-containerservicefleet/metadata.json Updates emitter version metadata.
sdk/containerservice/arm-containerservicefleet/CHANGELOG.md Adds 3.0.0-beta.1 release notes including breaking changes.

Comment on lines +140 to +148
function addApiVersionToUrl(url: string, apiVersion: string): string {
// The base URL is only used for parsing and won't appear in the returned URL
const urlObj = new URL(url, "https://microsoft.com");
if (!urlObj.searchParams.get("api-version")) {
// Append one if there is no apiVersion
return `${url}${
Array.from(urlObj.searchParams.keys()).length > 0 ? "&" : "?"
}api-version=${apiVersion}`;
}
Copy link

Copilot AI Mar 24, 2026

Choose a reason for hiding this comment

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

addApiVersionToUrl builds the updated URL by string concatenation (${url}?...). This can produce malformed URLs in edge cases (e.g., if url already ends with ?/&, or if it contains a #fragment, the api-version would be appended after the fragment). Consider constructing the URL via the URL object and searchParams.set/has, then returning the reconstructed URL (preserving path/search/hash) to avoid double '?' and fragment issues.

Copilot uses AI. Check for mistakes.
Comment on lines +260 to +269
function addApiVersionToUrl(url: string, apiVersion: string): string {
// The base URL is only used for parsing and won't appear in the returned URL
const urlObj = new URL(url, "https://microsoft.com");
if (!urlObj.searchParams.get("api-version")) {
// Append one if there is no apiVersion
return `${url}${
Array.from(urlObj.searchParams.keys()).length > 0 ? "&" : "?"
}api-version=${apiVersion}`;
}
return url;
Copy link

Copilot AI Mar 24, 2026

Choose a reason for hiding this comment

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

addApiVersionToUrl appends api-version via string concatenation (${url}?...). This can generate invalid URLs (e.g., if url already ends with ?/&, or contains a #fragment, the query parameter would be appended in the wrong place). Prefer using URL + searchParams.has/set and returning the reconstructed URL. Also, this helper is duplicated in pollingHelpers.ts; extracting a shared helper would avoid divergence over time.

Copilot uses AI. Check for mistakes.
@frantran frantran marked this pull request as draft March 24, 2026 19:42
Copy link
Copy Markdown

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

This PR updates @azure/arm-containerservicefleet from 2.1.0-beta.23.0.0-beta.1 (API version 2025-08-01-preview). The tooling setup is clean: version is consistent across package.json (3.0.0-beta.1), the context file (azsdk-js-arm-containerservicefleet/3.0.0-beta.1), and CHANGELOG.md; the changelog compares correctly against stable 2.0.0 rather than an alpha version.

Two pre-existing design issues (first introduced in 2.1.0-beta.2, not modified in this diff) are present in the public API surface of review/arm-containerservicefleet-node.api.md:

  1. AzureClouds enum uses UPPER_SNAKE_CASE member names (lines 129–133) — members AZURE_CHINA_CLOUD, AZURE_PUBLIC_CLOUD, AZURE_US_GOVERNMENT violate the Azure SDK guideline requiring PascalCase for enum members. The enum should also carry the Known prefix (KnownAzureClouds) to match the KnownXxx / type = string pattern used everywhere else in this package.
  2. AzureSupportedClouds is a closed template-literal type (line 136) — export type AzureSupportedClouds = \${AzureClouds}`creates a closed string union. Per Azure SDK guidelines, extensible string enums should resolve tostring(open), not a closed template literal, so that future service values are accepted without a breaking SDK change. It should beexport type AzureSupportedClouds = string`.

These two issues should be fixed in the TypeSpec spec (add @clientName decorators and/or change the enum extension strategy) and regenerated.

📊 Structured Report
{"agent":"mgmt-reviewer","pr":37369,"summary":"issues_found","findings":[{"file":"sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-node.api.md","line":129,"issueType":"design","category":"naming","description":"AzureClouds enum uses UPPER_SNAKE_CASE member names (AZURE_CHINA_CLOUD, AZURE_PUBLIC_CLOUD, AZURE_US_GOVERNMENT) instead of PascalCase. Enum should be renamed KnownAzureClouds with PascalCase values."},{"file":"sdk/containerservice/arm-containerservicefleet/review/arm-containerservicefleet-node.api.md","line":136,"issueType":"design","category":"type-safety","description":"AzureSupportedClouds defined as closed template literal type `${AzureClouds}` instead of open string type. Should be: export type AzureSupportedClouds = string"}]}

Benchmarked by Management SDK PR Review

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

Labels

Mgmt This issue is related to a management-plane library. mgmt-review-needed Self-Service Release PR for self-service release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants