Skip to content

Improve management parameter compatibility review - #62022

Open
Wei Hu (live1206) wants to merge 3 commits into
Azure:mainfrom
live1206:fix/61975-mgmt-review-ga-compat
Open

Improve management parameter compatibility review#62022
Wei Hu (live1206) wants to merge 3 commits into
Azure:mainfrom
live1206:fix/61975-mgmt-review-ga-compat

Conversation

@live1206

Copy link
Copy Markdown
Member

Summary

  • use the released ApiCompatVersion assembly as the authoritative parameter baseline
  • report parameter names, ordering, GA version, and exact signatures deterministically
  • keep raw optionality differences non-blocking until synthesized compiler probes demonstrate a source break
  • separate signature compatibility from forwarding/runtime-semantic bugs
  • add regression coverage and a dependency-complete GA metadata exporter

Validation

  • pwsh .github/skills/azure-sdk-mgmt-pr-review/test/Check-MgmtNamingRules.tests.ps1
  • GA metadata export for Azure.ResourceManager.AppService 1.5.0 (net10.0)
  • GA metadata export for Azure.ResourceManager.IotHub 1.1.1 (netstandard2.0)
  • gh aw compile mgmt-review --strict

Fixes #61975

- by copilot

Use released GA assembly metadata as the authoritative baseline, keep raw optional-parameter differences non-blocking until compiler probes demonstrate a break, and add regression coverage for exact signatures and candidate reporting.

Fixes Azure#61975

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI lite review requested due to automatic review settings August 13, 2026 04:24
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
11 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

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

This PR updates the management SDK PR review workflow and skill guidance to use the released ApiCompatVersion NuGet assembly (via metadata export) as the authoritative baseline for parameter compatibility checks, and to treat optionality differences as non-blocking until a compiler probe demonstrates a source break.

Changes:

  • Add a GA baseline exporter (Export-GaApiBaseline.ps1) that downloads the released package and emits a GenAPI listing for deterministic comparisons.
  • Extend the naming scanner to report GA baseline version/signatures and separate parameter-name/order differences from optionality “candidates”.
  • Add regression tests and update workflow/skill docs + workflow allowlist domains to support NuGet/ADO feeds.

Reviewed changes

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

Show a summary per file
File Description
.github/workflows/mgmt-review.md Updates the documented review workflow to use exported GA assembly metadata and compiler-probe guidance for optionality.
.github/workflows/mgmt-review.lock.yml Regenerates the gh-aw lock file to reflect updated allowed domains and prompt content.
.github/skills/azure-sdk-mgmt-pr-review/test/Check-MgmtNamingRules.tests.ps1 Adds test coverage for the scanner’s new GA parameter compatibility reporting behavior.
.github/skills/azure-sdk-mgmt-pr-review/SKILL.md Aligns skill guidance with GA-assembly-as-authoritative baseline and non-blocking optionality candidates.
.github/skills/azure-sdk-mgmt-pr-review/Export-GaApiBaseline.ps1 Introduces a script to export GA API listings from released NuGet assemblies using GenAPI.
.github/skills/azure-sdk-mgmt-pr-review/Check-MgmtNamingRules.ps1 Enhances scanner output to include baseline version/signatures and adds PARAMNAME/PARAMORDER checks plus candidate-only optionality findings.
Suppressed comments (1)

.github/skills/azure-sdk-mgmt-pr-review/Export-GaApiBaseline.ps1:124

  • Same restore-source issue as above: restoring the dependency closure with only the Azure DevOps feed can fail when dependencies are only on NuGet.org. Since the workflow now explicitly allows api.nuget.org, include it as a source here as well.
    & dotnet restore $dependencyProject --source 'https://pkgs.dev.azure.com/azure-sdk/public/_packaging/azure-sdk-for-net/nuget/v3/index.json'
    if ($LASTEXITCODE -ne 0) {
        throw "Failed to restore the dependency closure for $PackageName $Version."
    }

💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

Comment thread .github/skills/azure-sdk-mgmt-pr-review/Export-GaApiBaseline.ps1 Outdated
Comment thread .github/skills/azure-sdk-mgmt-pr-review/Export-GaApiBaseline.ps1 Outdated
Wei Hu (live1206) and others added 2 commits August 13, 2026 05:13
Document the repository-approved Azure SDK feed and avoid recursively scanning the full .NET reference-pack tree.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Rely on CI ApiCompat and tagged API files by default, and download released assembly metadata only when a parameter compatibility result needs authoritative confirmation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improve management review parameter compatibility checks against GA baselines

2 participants