[AutoPR @azure-arm-sql]-generated-from-SDK Generation - JS-6276195#38485
Conversation
…/tspconfig.yaml', API Version: 2025-01-01, SDK Release Type: stable, and CommitSHA: '41784cfad64229e05cb37b1532a686a0cc3a60a9' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6276195 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
…/tspconfig.yaml', API Version: 2025-02-01-preview, SDK Release Type: beta, and CommitSHA: '41784cfad64229e05cb37b1532a686a0cc3a60a9' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6276228 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
Next Steps to MergeOnly failed checks and required actions are listed below.
|
There was a problem hiding this comment.
No API design issues found. The @azure/arm-sql package (v11.0.0-beta.5) looks good:
- Versions are consistent across
package.json,src/api/sqlManagementContext.ts, andCHANGELOG.md - CHANGELOG compares against
10.0.0(not an alpha version) ✅ - No
_Nnaming suffixes, noAutoGeneratedsuffixes, nounknownin public types, noae-forgotten-exportwarnings - API version
2025-01-01(stable) is newer than previously published — acceptable for a preview package
📊 Structured Report
{"agent":"mgmt-reviewer","pr":38485,"summary":"clean","findings":[]}⚡ Benchmarked by Management Release Assistant
This comment was marked as outdated.
This comment was marked as outdated.
…/tspconfig.yaml', API Version: 2025-01-01, SDK Release Type: stable, and CommitSHA: 'af0b88ad4f593000acbde7f8a87df1cffc38ac56' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6312189 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
…/tspconfig.yaml', API Version: 2025-02-01-preview, SDK Release Type: beta, and CommitSHA: '4f11b887150acad0744deea7e382986b440b2f71' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6312561 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
This comment was marked as outdated.
This comment was marked as outdated.
…/tspconfig.yaml', API Version: 2025-01-01, SDK Release Type: stable, and CommitSHA: '465402d314b9a9ce96f122c5b10fdf416e7ef727' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6382983 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
This comment was marked as outdated.
This comment was marked as outdated.
Breaking Change Analysis —
|
| Category | Entries | Prior beta |
|---|---|---|
DistributedAvailabilityGroup property removals (lastHardenedLsn, linkState, primaryAvailabilityGroupName, secondaryAvailabilityGroupName, sourceEndpoint, sourceReplicaId, targetDatabase, targetReplicaId) |
8 | beta.1, beta.4 |
ManagedInstances.beginStartAndWait / beginStopAndWait new signature |
2 | beta.4 |
Servers.beginImportDatabase[AndWait] new signature + ImportNewDatabaseDefinition.administratorLoginPassword now optional |
3 | beta.4 |
Removed Type Alias ManagedInstancePropertiesProvisioningState + KnownManagedInstancePropertiesProvisioningState |
2 | beta.1, beta.2, beta.4 |
Removed Type Alias ReplicationMode + KnownReplicationMode |
2 | beta.1, beta.4 |
2. Caused by Legacy (2014-04-01) swagger NOT migrated to TypeSpec — recommend ACCEPT
Folder: specification/sql/resource-manager/Microsoft.Sql/Legacy/stable/2014-04-01. The operations and types below are only defined in this legacy swagger, which the TypeSpec project intentionally does not model. Every removal in this group is a direct or cascade consequence.
Operations (5)
| Removed operation | Legacy file / operationId |
|---|---|
Databases.listMetricDefinitions |
metrics.json · Databases_ListMetricDefinitions |
Databases.listMetrics |
metrics.json · Databases_ListMetrics |
ElasticPools.listMetricDefinitions |
metrics.json · ElasticPools_ListMetricDefinitions |
ElasticPools.listMetrics |
metrics.json · ElasticPools_ListMetrics |
GeoBackupPolicies.listByDatabase (replaced by GeoBackupPoliciesOperations.list) |
geoBackupPolicies.json · GeoBackupPolicies_ListByDatabase |
Operation-group interfaces removed (4)
| Removed | Legacy file / operationIds |
|---|---|
ElasticPoolActivities |
sql.core.json · ElasticPoolActivities_ListByElasticPool |
ElasticPoolDatabaseActivities |
sql.core.json · ElasticPoolDatabaseActivities_ListByElasticPool |
ServerCommunicationLinks |
serverCommunicationLinks.json · ServerCommunicationLinks_* (4 ops) |
ServiceObjectives |
serviceObjectives.json · ServiceObjectives_Get/ListByServer |
Models / type aliases / enums removed (all orphans of the above)
- Models:
Metric,MetricAvailability,MetricDefinition,MetricName,MetricValue,ElasticPoolActivity,ElasticPoolDatabaseActivity,ServerCommunicationLink,ServiceObjective - Type aliases:
PrimaryAggregationType,UnitType,UnitDefinitionType,ServiceObjectiveName - Enums:
KnownPrimaryAggregationType,KnownUnitType,KnownUnitDefinitionType,KnownServiceObjectiveName - All corresponding
*OptionalParams(cascade)
Sub-client fields truly removed from SqlManagementClient (4, Legacy-only — no replacement)
elasticPoolActivities, elasticPoolDatabaseActivities, serverCommunicationLinks, serviceObjectives — confirmed absent from the new client.
3. SqlManagementClient field RENAMES (not real removals) — 8 entries
The CHANGELOG lists these as "no longer has parameter ..." because the diff tool only sees the old name disappear. All 8 still exist on the new client under a name that drops the redundant Operations suffix (the interface type already ends in Operations). Type signatures unchanged. Callers only need to rename the field access.
| CHANGELOG "removed" field | Actual new field (same type) |
|---|---|
databaseAutomaticTuningOperations |
databaseAutomaticTuning: DatabaseAutomaticTuningOperations |
databaseExtensionsOperations |
databaseExtensions: DatabaseExtensionsOperations |
dataWarehouseUserActivitiesOperations |
dataWarehouseUserActivities: DataWarehouseUserActivitiesOperations |
ledgerDigestUploadsOperations |
ledgerDigestUploads: LedgerDigestUploadsOperations |
maintenanceWindowOptionsOperations |
maintenanceWindowOptions: MaintenanceWindowOptionsOperations |
maintenanceWindowsOperations |
maintenanceWindows: MaintenanceWindowsOperations |
managedLedgerDigestUploadsOperations |
managedLedgerDigestUploads: ManagedLedgerDigestUploadsOperations |
serverAutomaticTuningOperations |
serverAutomaticTuning: ServerAutomaticTuningOperations |
→ Still source-breaking (field name change), but low severity — pure naming convention cleanup from the Modular emitter.
4. Modular emitter shape changes — approved pattern
| Change | Notes |
|---|---|
Class SqlManagementClient has a new signature |
Modular constructor (TokenCredential, [subscriptionId,] options) |
SqlManagementClient no longer has parameter subscriptionId |
Standard Modular pattern (not a field anymore) |
24 "Operation X has a new signature" entries (DatabaseAdvisors.*, DatabaseRecommendedActions.*, Databases.beginExport[AndWait], Databases.beginImport[AndWait], GeoBackupPolicies.createOrUpdate/get, JobSteps.createOrUpdate/get/getByVersion, OutboundFirewallRules.beginCreateOrUpdate[AndWait], ServerAdvisors.*) |
Operation-group Xxx → XxxOperations + XxxOptionalParams → XxxOptions rename + cascade from §5 property changes |
5. New in 11.0.0 GA — needs reviewer sign-off
These are NOT in Legacy and NOT in any prior beta. They represent real contract changes from the TypeSpec model.
| # | Change | Risk |
|---|---|---|
| 1 | RecommendedAction.details type narrowed: { [k: string]: Record<string, unknown> } → Record<string, string> |
High — string-only values; please verify against swagger |
| 2 | ManagedInstanceEditionCapability.zoneRedundant removed |
Medium |
| 3 | ServerUsage.nextResetTime removed |
Medium — ServerUsages_ListByServer exists in BOTH legacy and main; please confirm main ServerUsage model also drops these |
| 4 | ServerUsage.resourceName removed |
Medium — same as #3 |
| 5 | OutboundFirewallRules.beginCreateOrUpdate removes the body parameter |
Medium — TypeSpec ARM default empty-body create; verify intent |
| 6 | ExportDatabaseDefinition.administratorLoginPassword now optional |
Low — optionality relaxation |
| 7 | ImportExistingDatabaseDefinition.administratorLoginPassword now optional |
Low |
| 8 | GeoBackupPolicy.state now optional |
Low |
| 9 | JobStepOutput.credential now optional |
Low |
| 10 | Orphan model/type/enum removals NOT covered by Legacy: ManagedInstanceQueryStatistics, SecurityEventCollection, SecurityEventsFilterParameters, OperationImpact, OutboundEnvironmentEndpointCollection, SloUsageMetric, UpsertManagedServerOperationStep, SQLVulnerabilityAssessmentName + matching Known* enums and UpsertManagedServerOperationStepStatus |
Low–Medium — confirm these are true orphans (no operation references) and not unintended drops |
Summary
| Bucket | Count | Recommendation |
|---|---|---|
| Already accepted in prior beta | 22 | ✅ Auto-accept |
| Caused by Legacy 2014-04-01 not migrated | ~42 (5 ops + 4 op-groups + 4 sub-client fields + ~13 models + 4 type aliases + 4 enums + cascades) | ✅ Recommend accept |
SqlManagementClient field renames (drop Operations suffix) |
8 | ✅ Naming-only; low severity |
| Modular emitter shape (constructor / signature renames cascade) | ~27 | ✅ Approved Modular pattern |
| Needs reviewer sign-off | 10 items in §5 |
No Type 1 REST regressions. Total breaking entries in CHANGELOG ≈ 111.
…/tspconfig.yaml', API Version: 2025-01-01, SDK Release Type: stable, and CommitSHA: '0439ab2191c59947249679869cf2690ca039fca8' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6399107 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
…/tspconfig.yaml', API Version: 2025-01-01, SDK Release Type: stable, and CommitSHA: '0439ab2191c59947249679869cf2690ca039fca8' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6399198 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
|
LGTM |
Configurations: 'specification/sql/resource-manager/Microsoft.Sql/SQL/tspconfig.yaml', API Version: 2025-01-01, SDK Release Type: stable, and CommitSHA: '41784cfad64229e05cb37b1532a686a0cc3a60a9` in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6276195 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://azsdk-releaseplan-dashboard-hveph5aqhhcfhtgu.westus-01.azurewebsites.net/?releasePlan=2227 Submitted by: jeremyfrosti@microsoft.com
Release Plan Details
Release Plan: https://azsdk-releaseplan-dashboard-hveph5aqhhcfhtgu.westus-01.azurewebsites.net/?releasePlan=2227
Spec pull request: Azure/azure-rest-api-specs#41520
Spec API version: