Skip to content

Conversation

@shreyanshd
Copy link
Member

@shreyanshd shreyanshd commented Nov 12, 2025

ARM (Control Plane) API Specification Update Pull Request

Tip

Overwhelmed by all this guidance? See the Getting help section at the bottom of this PR description.

PR review workflow diagram

Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

spec_pr_review_workflow_diagram

Purpose of this PR

What's the purpose of this PR? Check the specific option that applies. This is mandatory!

  • New resource provider.
  • New API version for an existing resource provider. (If API spec is not defined in TypeSpec, the PR should have been created in adherence to OpenAPI specs PR creation guidance).
  • Update existing version for a new feature. (This is applicable only when you are revising a private preview API version.)
  • Update existing version to fix OpenAPI spec quality issues in S360.
  • Convert existing OpenAPI spec to TypeSpec spec (do not combine this with implementing changes for a new API version).
  • Other, please clarify:
    • edit this with your clarification

Due diligence checklist

To merge this PR, you must go through the following checklist and confirm you understood
and followed the instructions by checking all the boxes:

  • I confirm this PR is modifying Azure Resource Manager (ARM) related specifications, and not data plane related specifications.
  • I have reviewed following Resource Provider guidelines, including
    ARM resource provider contract and
    REST guidelines (estimated time: 4 hours).
    I understand this is required before I can proceed to the diagram Step 2, "ARM API changes review", for this PR.
  • A release plan has been created. If not, please create one as it will help guide you through the REST API and SDK creation process.

Additional information

Viewing API changes

For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.

Suppressing failures

If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
suppressions guide to get approval.

Getting help

  • First, please carefully read through this PR description, from top to bottom. Please fill out the Purpose of this PR and Due diligence checklist.
  • If you don't have permissions to remove or add labels to the PR, request write access per aka.ms/azsdk/access#request-access-to-rest-api-or-sdk-repositories
  • To understand what you must do next to merge this PR, see the Next Steps to Merge comment. It will appear within few minutes of submitting this PR and will continue to be up-to-date with current PR state.
  • For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure
    and https://aka.ms/ci-fix.
  • For help with ARM review (PR workflow diagram Step 2), see https://aka.ms/azsdk/pr-arm-review.
  • If the PR CI checks appear to be stuck in queued state, please add a comment with contents /azp run.
    This should result in a new comment denoting a PR validation pipeline has started and the checks should be updated after few minutes.
  • If the help provided by the previous points is not enough, post to https://aka.ms/azsdk/support/specreview-channel and link to this PR.
  • For guidance on SDK breaking change review, refer to https://aka.ms/ci-fix.

@github-actions
Copy link

github-actions bot commented Nov 12, 2025

Next Steps to Merge

✅ All automated merging requirements have been met! To get your PR merged, see aka.ms/azsdk/specreview/merge.

Comment generated by summarize-checks workflow run.

@github-actions github-actions bot added brownfield Brownfield services will soon be required to convert to TypeSpec. See https://aka.ms/azsdk/typespec. ARMReview new-api-version resource-manager RPaaS TypeSpec Authored with TypeSpec WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required labels Nov 12, 2025
@github-actions
Copy link

github-actions bot commented Nov 12, 2025

API Change Check

APIView identified API level changes in this PR and created the following API reviews

Language API Review for Package
Swagger Microsoft.AzureStackHCI-StackHCI
Go sdk/resourcemanager/azurestackhci/armazurestackhci
Python azure-mgmt-placeholder
JavaScript @azure/arm-azurestackhci
Java com.azure.resourcemanager:azure-resourcemanager-azurestackhci
TypeSpec Microsoft.AzureStackHCI

@sandipsh
Copy link
Contributor

sandipsh commented Nov 12, 2025

Tag: package-preview-2025-12-01-preview

what's changed from last preview version exactly? I can't seem to find any change. #Resolved


Refers to: specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/readme.md:242 in eee1ae1. [](commit_id = eee1ae1, deletion_comment = False)

@sandipsh sandipsh added ARMChangesRequested and removed WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required labels Nov 12, 2025
@shreyanshd shreyanshd added PublishToCustomers Acknowledgement the changes will be published to Azure customers. and removed ARMChangesRequested labels Nov 14, 2025
@github-actions github-actions bot added the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Nov 14, 2025
@github-actions github-actions bot removed the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Nov 26, 2025
@abaranwal-ms abaranwal-ms force-pushed the users/shreyanshd/hci-api-2025-12-01-preview branch from 95c5efb to 7555fbe Compare November 27, 2025 06:57
@shreyanshd
Copy link
Member Author

@shreyanshd - I'm not sure I understand exactly what's happening with this PR. Is this just to promote an existing API version (already signed off by ARM) from the private repo to public? If so, please indicate that when you submit the PR (along with a link to the previous PR). This saves reviewers a lot of time: we don't want to re-review the same APIs that have already shipped publicly. If this is adding new APIs, then you should be free to change things like property names. Can you clarify what this PR is for?

@mentat9 - We have an approved PR: Azure/azure-rest-api-specs-pr#23165 for API version 2025-08-01-preview. This is a private preview API, and our product was in private preview for past one year. Now we intend to promote the resource types to public preview with this API version 2025-12-01-preview. So, this PR includes:

  1. EdgeMachine and EdgeMachineJobs resource types which were part of approved private preview PR: AzureStackHCI 2025-08-01-preview azure-rest-api-specs-pr#23165. Since these models were already in public preview, Device SDKs have already taken a dependency on them and changing them would mean a breaking change for all private preview users who would continue the same product in public preview. Having said that, all other review comments except property renaming has been addressed.
  2. ValidateOwnershipVouchers resource - this is a new resource that we have added in this API version.

Thank-you, this helps a bit, but the refactoring and moving of files makes it really hard to track what's changing. For example, currently in the -pr repo, I expected to see spec files edgeMachine.tsp and edgeMachineJobs.tsp so I could compare them to files in this PR, but they aren't there. The PR you linked shows them being added, so they have been deleted afterward. Comparing those two files in the earlier PR to this PR shows differences. Can you explain what's going on with those two resource types? Where did you get those files when you added them to this PR and why are they no longer part of the private spec?

This PR is a refactoring taking place at the same time you are moving from private to public repo and also adding APIs in a new API version. Reviewing this properly is essentially impossible. Can you do the promotion from private to public repo, refactoring, and new API version as separate PRs? Basically, we should be able to see the spec copied unchanged from private to public repo. Then a refactoring that doesn't change API versions, then a new API version to add new APIs (or in some other order if that works better).

@mentat9 - We understand the confusion this might have caused to the reviewers. To simplify the review process for this PR, we have updated the PR with following 3 commits:

Commit Details
766529 Baseline commit from 2025-11-01-preview
a5049d Bring changes from private branch (approved PR: Azure/azure-rest-api-specs-pr#23165)
7555fb This commit has all the additional changes introduced in 2025-12-01-preview

The last commit essentially has all the changes which needs to be reviewed, hope this helps!

@github-actions github-actions bot added the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Nov 27, 2025
@shreyanshd
Copy link
Member Author

@shreyanshd - I'm not sure I understand exactly what's happening with this PR. Is this just to promote an existing API version (already signed off by ARM) from the private repo to public? If so, please indicate that when you submit the PR (along with a link to the previous PR). This saves reviewers a lot of time: we don't want to re-review the same APIs that have already shipped publicly. If this is adding new APIs, then you should be free to change things like property names. Can you clarify what this PR is for?

@mentat9 - We have an approved PR: Azure/azure-rest-api-specs-pr#23165 for API version 2025-08-01-preview. This is a private preview API, and our product was in private preview for past one year. Now we intend to promote the resource types to public preview with this API version 2025-12-01-preview. So, this PR includes:

  1. EdgeMachine and EdgeMachineJobs resource types which were part of approved private preview PR: AzureStackHCI 2025-08-01-preview azure-rest-api-specs-pr#23165. Since these models were already in public preview, Device SDKs have already taken a dependency on them and changing them would mean a breaking change for all private preview users who would continue the same product in public preview. Having said that, all other review comments except property renaming has been addressed.
  2. ValidateOwnershipVouchers resource - this is a new resource that we have added in this API version.

Thank-you, this helps a bit, but the refactoring and moving of files makes it really hard to track what's changing. For example, currently in the -pr repo, I expected to see spec files edgeMachine.tsp and edgeMachineJobs.tsp so I could compare them to files in this PR, but they aren't there. The PR you linked shows them being added, so they have been deleted afterward. Comparing those two files in the earlier PR to this PR shows differences. Can you explain what's going on with those two resource types? Where did you get those files when you added them to this PR and why are they no longer part of the private spec?
This PR is a refactoring taking place at the same time you are moving from private to public repo and also adding APIs in a new API version. Reviewing this properly is essentially impossible. Can you do the promotion from private to public repo, refactoring, and new API version as separate PRs? Basically, we should be able to see the spec copied unchanged from private to public repo. Then a refactoring that doesn't change API versions, then a new API version to add new APIs (or in some other order if that works better).

@mentat9 - We understand the confusion this might have caused to the reviewers. To simplify the review process for this PR, we have updated the PR with following 3 commits:

Commit Details
766529 Baseline commit from 2025-11-01-preview
a5049d Bring changes from private branch (approved PR: Azure/azure-rest-api-specs-pr#23165)
7555fb This commit has all the additional changes introduced in 2025-12-01-preview
The last commit essentially has all the changes which needs to be reviewed, hope this helps!

Note to reviewer: The Cluster, EdgeDevice, EdgeMachine, EdgeMachineJobs models are also used by the device SDK and tooling. Many attributes in these models already have established dependencies. Renaming such attributes would be difficult, as we are not in a position to upgrade the device-side tooling to newer contracts. Therefore, we aim to maintain backward compatibility.

@psah434 psah434 added the ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review label Dec 1, 2025
@github-actions github-actions bot removed the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Dec 1, 2025
@abaranwal-ms abaranwal-ms enabled auto-merge (squash) December 1, 2025 21:44
@abaranwal-ms abaranwal-ms merged commit 29c080b into main Dec 4, 2025
38 of 41 checks passed
@abaranwal-ms abaranwal-ms deleted the users/shreyanshd/hci-api-2025-12-01-preview branch December 4, 2025 11:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ArcReview ArcSignedOff ARMReview ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review BreakingChange-Go-Sdk BreakingChange-Go-Sdk-Approved brownfield Brownfield services will soon be required to convert to TypeSpec. See https://aka.ms/azsdk/typespec. new-api-version PublishToCustomers Acknowledgement the changes will be published to Azure customers. resource-manager RPaaS TypeSpec Authored with TypeSpec

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants