Repository navigation
Align Kiota-compatible OpenAPI operation IDs with PowerShell - #3861
Merged
Ramses Sanchez-Hernandez (ramsessanchez) merged 1 commit intoOct 23, 2026
Merged
Ramses Sanchez-Hernandez (ramsessanchez) merged 1 commit into
Ramses Sanchez-Hernandez (ramsessanchez) merged 1 commit into
Conversation
Preserve Plain Kiota schemas while copying singularized PowerShell operation IDs and applying operation-ID-only compatibility tweaks. Cover both refresh profiles, schema preservation, failure handling, and deprecation pruning. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b803bea4-5e52-445b-8d8b-ecfb22cfbca6
Ramses Sanchez-Hernandez (ramsessanchez)
requested a review
from a team
as a code owner
October 22, 2026 20:18
Ramses Sanchez-Hernandez (ramsessanchez)
merged commit Oct 23, 2026
5c92f8d
into
powershell-v3
4 checks passed
Ramses Sanchez-Hernandez (ramsessanchez)
deleted the
ramsessanchez-openapi-operation-ids
branch
October 23, 2026 18:56
This was referenced Oct 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes proposed in this pull request
DevX ignores
singularizeOperationIdswithstyle=Plain. Switching the Kiota-compatible download tostyle=Powershellwould remove schema features needed by Kiota. This change retains the Plain document and changes only its operation IDs, reducing the translation needed to migrate existing operation-ID-based directives.fileName=openapi&style=Plain, request a companion view of the same source withstyle=Powershell&singularizeOperationIds=true&format=json, and copy only the IDs matched by exact path and HTTP method. Missing or ambiguous mappings fail explicitly; reference request failures cannot silently leave mixed naming.TweakOpenApi.ps1 -OperationIdsOnlyfor the Kiota-compatible documents. Reuse the existing preposition/word corrections without rewriting response codes, navigation properties, schemas, parameters, or other content. Preserve quotes, comments and line endings; ignore JSON removal reports and subdirectories. The default PowerShell tweak behavior remains enabled for the existing flow.Example:
auditLogs.auditLogRoot.UpdateAuditLogRootbecomesauditLog.auditLogRoot_UpdateAuditLogRoot, while discriminators,anyOf/oneOf, additional properties and navigation properties remain intact.Validation
Invoke-Pester -Path @('.\tools\Tests\KiotaCompatOperationIds.Tests.ps1', '.\tools\Tests\Remove-ExpiredDeprecatedOpenApiOperations.Tests.ps1') -Output None -PassThru— passed: 30 tests. Includes both refresh profiles, exact non-ID content preservation, quoted IDs, compatibility corrections, missing mappings, retries/reference failures, unchanged default tweaks, and deprecation pruning.kiota generate -d (Join-Path $validationRoot 'v1.0\Reports.yml') -l CSharp -c ReportsClient -n Microsoft.Graph.OperationIdValidation -o (Join-Path $validationRoot 'client') --log-level Warning— passed with Kiota 1.34.1, generating 326 C# source files ($validationRootwas temporary validation output). Kiota reported unresolved discriminator-reference warnings in the sliced schema, but no operation-ID/duplicate warnings.git --no-pager diff --cached --check— passed.No committed OpenAPI corpus, generated clients/wrappers, or directive migration ledgers are regenerated here; the naming changes take effect on the next refresh. Full wrapper gates were not run because this PR changes refresh tooling rather than generated wrapper output.
Other links