Skip to content

[AutoPR @azure-arm-dnsresolver]-generated-from-SDK Generation - JS-6416843#38893

Merged
JialinHuang803 merged 6 commits into
mainfrom
sdkauto/@azure-arm-dnsresolver-6415482
Jun 12, 2026
Merged

[AutoPR @azure-arm-dnsresolver]-generated-from-SDK Generation - JS-6416843#38893
JialinHuang803 merged 6 commits into
mainfrom
sdkauto/@azure-arm-dnsresolver-6415482

Conversation

@azure-sdk

@azure-sdk azure-sdk commented Jun 10, 2026

Copy link
Copy Markdown
Collaborator

Configurations: 'specification/dnsresolver/resource-manager/Microsoft.Network/DnsResolver/tspconfig.yaml', API Version: 2025-10-01-preview, SDK Release Type: beta, and CommitSHA: '8409d9ffeca520f92e0235d2fda4a7c8fd4470fd' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6416843 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.

….Network/DnsResolver/tspconfig.yaml', API Version: 2025-10-01-preview, SDK Release Type: beta, and CommitSHA: 'd192a20174553da3f13f2fafcb7269c9071e34ef' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6415482 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 Jun 10, 2026
@v-jiaodi v-jiaodi added refresh PR for SDK refresh mgmt-review-needed labels Jun 10, 2026
@v-jiaodi v-jiaodi marked this pull request as ready for review June 10, 2026 02:50
Copilot AI review requested due to automatic review settings June 10, 2026 02:50

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.

Copilot wasn't able to review this pull request because it exceeds the maximum number of lines (20,000). Try reducing the number of changed lines and requesting a review from Copilot again.

@github-actions github-actions Bot added mgmt-review-in-progress Management SDK review is in progress and removed mgmt-review-needed labels Jun 10, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Next Steps to Merge

Only failed checks and required actions are listed below.

  • ⏳ js - pullrequest (Build Build): still running.
  • ⏳ js - pullrequest (Build Analyze): still running.
  • ⏳ js - pullrequest (Build generate_job_matrix): still running.
  • ⏳ js - codeowners-linter - ci: still running.

All ADO pipeline checks are currently in progress. Review the ADO pipeline run for live status. Re-check once CI completes.

@github-actions github-actions Bot added mgmt-review-added Management SDK review completed and removed mgmt-review-in-progress Management SDK review is in progress labels Jun 10, 2026

@github-actions github-actions Bot 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.

No API design issues or tool issues found. The @azure/arm-dnsresolver public API surface looks good for PR #38893.

Summary: 0 tool issues · 0 design issues.

  • Version consistency ✅ — package.json, src/api/dnsResolverManagementContext.ts, and CHANGELOG.md all agree on 2.0.0-beta.2.
  • No alpha versions ✅ — no alpha strings in CHANGELOG.md, context file, or package.json.
  • API version ✅ — 2025-10-01-preview (new) is strictly newer than 2025-05-01 already in KnownVersions.
  • Naming ✅ — no _N suffixes, AutoGenerated suffixes, or _ prefixes.
  • Type safety ✅ — no unexpected unknown in public types; no void on get/list/create/update operations.
  • Client name ✅ — DnsResolverManagementClient preserved; subscriptionId constructor parameter preserved.
  • KnownVersions ✅ — both stable (2025-05-01) and preview (2025-10-01-preview) versions present; no previously-existing stable versions removed.
📊 Structured Report
{"agent":"mgmt-reviewer","pr":38893,"summary":"clean","findings":[]}

Benchmarked by Management Release Assistant

….Network/DnsResolver/tspconfig.yaml', API Version: 2025-10-01-preview, SDK Release Type: beta, and CommitSHA: '8409d9ffeca520f92e0235d2fda4a7c8fd4470fd' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6416843 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
@azure-sdk azure-sdk changed the title [AutoPR @azure-arm-dnsresolver]-generated-from-SDK Generation - JS-6415482 [AutoPR @azure-arm-dnsresolver]-generated-from-SDK Generation - JS-6416843 Jun 10, 2026
@JialinHuang803

Copy link
Copy Markdown
Member

Note

This analysis was generated by AI. Please review the classifications and root causes for accuracy.

Breaking Change Analysis: @azure/arm-dnsresolver 2.0.0-beta.2

Old SDK (CHANGELOG baseline) New SDK (PR)
Generator Swagger / AutoRest TypeSpec / emitter
API Version 2025-05-01 2025-10-01-preview
Package Version 1.2.0 (last stable) 2.0.0-beta.2

Note

The CHANGELOG header in this PR reads "Compared with version 1.2.0", so all breaking changes are measured against the last stable release (1.2.0, AutoRest). The currently-published main head is 2.0.0-beta.1, which is itself a TypeSpec/Modular regeneration. As a result, some entries reflect differences that were already present in beta.1 versus 1.2.0 (5 entries carried over from beta.1) and four entries are new in beta.2.

Spec References:

Type 1: API Version Upgrade (2025-05-01 -> 2025-10-01-preview) -- 5 items

# Breaking Change Root Cause
1 Parameter dnsResolverDomainLists of interface DnsSecurityRule is now optional Spec change: DnsSecurityRuleProperties.dnsResolverDomainLists is in the required list in Layer A (2025-05-01 dnsresolverpolicy.json), but is removed from the required list in Layer C (2025-10-01-preview openapi.json). The new API version models domain-list selection as optional because managedDomainLists was added as an alternative.
2 Operation DnsSecurityRules.get has a new signature Cascading from row 1: return type resolves to DnsSecurityRule, and DnsSecurityRule.dnsResolverDomainLists changed from required to optional. The return type alias DnsSecurityRulesGetResponse (= DnsSecurityRule) was also dropped, but that wrapper removal is structurally identical and does not itself drive the signature change.
3 Operation DnsSecurityRules.beginCreateOrUpdate has a new signature Cascading from row 1: input parameter parameters: DnsSecurityRule and the LRO state/return type DnsSecurityRule (was DnsSecurityRulesCreateOrUpdateResponse = DnsSecurityRule) both reference the changed model. Also has a Type 2b cause: resumeFrom?: string was removed from DnsSecurityRulesCreateOrUpdateOptionalParams (Modular emitter no longer surfaces resumeFrom on LRO option bags; pollers are restored via restorePoller(RestorePollerOptions) instead).
4 Operation DnsSecurityRules.beginCreateOrUpdateAndWait has a new signature Same as row 3.
5 Operation DnsSecurityRules.beginUpdateAndWait has a new signature Cascading from row 1: LRO return type resolves to DnsSecurityRule (was DnsSecurityRulesUpdateResponse = DnsSecurityRule). The input parameter DnsSecurityRulePatch was already optional-only in both versions (only addition is managedDomainLists, which is non-breaking). Also has a Type 2b cause: resumeFrom?: string was removed from DnsSecurityRulesUpdateOptionalParams.

Type 2: TypeSpec / Emitter Migration -- 4 items

Root Cause Sub-Type Count Accepted
LRO beginDeleteAndWait return type changed from XxxDeleteResponse (= XxxDeleteHeaders with location?/retryAfter?) to void; resumeFrom? removed from delete option bag. Modular emitter no longer wraps LRO delete responses with the response-headers interface and no longer exposes resumeFrom on operation options. Emitter 4

Details

  1. Operation DnsResolverDomainLists.beginDeleteAndWait has a new signature -- Emitter ✅

    Return type changed from Promise<DnsResolverDomainListsDeleteResponse> (alias for DnsResolverDomainListsDeleteHeaders with optional location and retryAfter) to Promise<void>. Swagger is unchanged across layers for this path (DELETE 202 has no body, only a Location header in Layer A; Location + Retry-After in Layer C). The Modular emitter does not surface LRO response headers as the wait result. Also: resumeFrom?: string was removed from DnsResolverDomainListsDeleteOptionalParams.

  2. Operation DnsResolverPolicies.beginDeleteAndWait has a new signature -- Emitter ✅

    Same as row 1 (applied to DnsResolverPolicies).

  3. Operation DnsResolverPolicyVirtualNetworkLinks.beginDeleteAndWait has a new signature -- Emitter ✅

    Same as row 1 (applied to DnsResolverPolicyVirtualNetworkLinks).

  4. Operation DnsSecurityRules.beginDeleteAndWait has a new signature -- Emitter ✅

    Same as row 1 (applied to DnsSecurityRules). Note: this entry is new in beta.2 (the other three LRO-delete entries above are also new in beta.2). The earlier 2.0.0-beta.1 release still returned the headers-wrapper type; the emitter regenerated for beta.2 now returns void.

Open Questions

  1. CHANGELOG completeness. Comparing the new arm-dnsresolver-node.api.md against the published 2.0.0-beta.1 api.md reveals additional surface-level renames that are characteristic of the AutoRest -> Modular migration (e.g., operation-group interfaces gained an Operations suffix such as DnsSecurityRules -> DnsSecurityRulesOperations; XxxResponse/XxxHeaders wrapper types were removed; XxxOptionalParams interfaces had resumeFrom removed across many operations). These do not appear as individual Removed Interface ... entries in the generated CHANGELOG -- the changelog tool seems to have merged them into the "has a new signature" entries above. The 9 CHANGELOG entries are analyzed as written, but reviewers may want to confirm the tool's grouping is correct.
  2. beta.1 vs beta.2 emitter behavior change. The 4 LRO beginDeleteAndWait entries reflect a behavior change between the emitter version used for 2.0.0-beta.1 (which still returned XxxDeleteResponse headers wrappers) and the version used for 2.0.0-beta.2 (which returns void). API version is identical (2025-10-01-preview) in both betas, so this is purely an emitter-version delta. Confirming that this is the intended Modular behavior would help future reviewers.

Total: 5 (Type 1: API Version Upgrade) + 4 (Type 2: TypeSpec/Emitter Migration) = 9 breaking changes

Type 2 breakdown: 0 items from TypeSpec conversion (Type 2a), 4 items from emitter differences (Type 2b).

Methodology

Four-layer comparison:

  • Layer A = original swagger that produced 1.2.0 (stable/2025-05-01/*.json @ 8865273)
  • Layer B = original swagger immediately before TypeSpec conversion -- not separately fetched, since the TypeSpec project was already in place when 2.0.0-beta.1 was generated and the same TypeSpec project services this PR; differences attributable to spec authoring are captured by the Layer A vs Layer C comparison at the new API version
  • Layer C = TypeSpec-generated swagger (preview/2025-10-01-preview/openapi.json @ 8409d9f)
  • Layer D = SDK review/arm-dnsresolver-node.api.md from the 2.0.0-beta.1 tag (old) and from the PR head (new)

Classification rule: Layer A != Layer C at the changed model -> Type 1 (API version upgrade); Layer C identical but Layer D differs -> Type 2b (Emitter).

@Azure Azure deleted a comment from wxl534 Jun 11, 2026
@JialinHuang803 JialinHuang803 merged commit d2ee847 into main Jun 12, 2026
13 checks passed
@JialinHuang803 JialinHuang803 deleted the sdkauto/@azure-arm-dnsresolver-6415482 branch June 12, 2026 03:17
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-added Management SDK review completed refresh PR for SDK refresh

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants