Skip to content

[specs] add missing ARM scenarios#4632

Open
iscai-msft wants to merge 6 commits into
Azure:mainfrom
iscai-msft:specs/addArmTests
Open

[specs] add missing ARM scenarios#4632
iscai-msft wants to merge 6 commits into
Azure:mainfrom
iscai-msft:specs/addArmTests

Conversation

@iscai-msft

@iscai-msft iscai-msft commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

fixes #4609

  1. getLro with @markAsLro
  2. postActionPaging
  3. @markAsPageable
  4. postPaginglroWithBody
  5. legacy template usages

@microsoft-github-policy-service microsoft-github-policy-service Bot added the lib:azure-http-specs For issues/prs related to the @azure-tools/typespec-azure-http-specs package label Jun 15, 2026
@azure-sdk

azure-sdk commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

All changed packages have been documented.

  • @azure-tools/azure-http-specs
Show changes

@azure-tools/azure-http-specs - feature ✏️

Add tests for ARM getLro, postActionPaging, markAsPageable, postPagingLroWithBody, routedGet, and createOrReplaceOptionalBody

@github-actions

github-actions Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

⚡ Benchmark Results

⚠️ 30 metric(s) regressed above the +5% threshold:

Metric Baseline Current Change
total 🟡 307.8ms 🔴 585.6ms +90.3% 🔴
loader 🟢 98.5ms 🟢 160.4ms +62.8% 🔴
resolver 🟢 12.0ms 🟢 22.1ms +84.0% 🔴
checker 🟢 101.5ms 🟢 186.5ms +83.8% 🔴
validation 🟢 24.4ms 🟢 42.6ms +74.7% 🔴
 ↳ validation/@azure-tools/typespec-azure-core 🟢 3.4ms 🟢 6.4ms +88.6% 🔴
 ↳ validation/@typespec/http 🟢 2.8ms 🟢 5.1ms +81.0% 🔴
 ↳ validation/@typespec/versioning 🟡 16.6ms 🔴 28.3ms +70.5% 🔴
linter 🟢 70.5ms 🟢 132.2ms +87.6% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/byos 🟢 3.1ms 🟢 5.7ms +84.7% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-header-explode 🟢 9.2ms 🟡 18.3ms +98.1% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-query-explode 🟡 10.5ms 🟡 18.8ms +79.3% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-response-body 🟡 13.3ms 🔴 24.7ms +85.9% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-route-parameter-name-mismatch 🟢 2.3ms 🟢 4.6ms +95.7% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/response-schema-problem 🟡 11.1ms 🔴 22.5ms +102.7% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/use-standard-names 🟢 2.8ms 🟢 4.7ms +71.1% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-agent-base-type-child-resources 🟢 1.9ms 🟢 3.9ms +108.7% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-common-types-version 🟢 1.9ms 🟢 3.8ms +98.3% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-no-path-casing-conflicts 🟢 2.2ms 🟢 4.1ms +91.5% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-operation-response 🟢 2.5ms 🟢 4.9ms +96.2% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/lro-location-header 🟢 7.0ms 🟡 12.3ms +74.8% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/no-response-body 🟡 11.3ms 🟡 19.5ms +73.4% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/secret-prop 🟢 1.5ms 🟢 2.8ms +85.3% 🔴
emit 🔴 3.27s 🔴 5.90s +80.8% 🔴
 ↳ emit/@azure-tools/typespec-autorest 🟢 96.4ms 🟢 165.0ms +71.1% 🔴
 ↳ emit/@azure-tools/typespec-python 🔴 2.25s 🔴 4.28s +89.9% 🔴
 ↳ emit/@typespec/http-client-js 🔴 751.5ms 🔴 1.19s +57.8% 🔴
 ↳ emit/@typespec/openapi3 🟢 88.9ms 🟢 150.0ms +68.6% 🔴
 ↳ emit/@typespec/openapi3/compute 🟢 75.6ms 🟢 130.1ms +72.1% 🔴
 ↳ emit/@typespec/openapi3/write 🟢 13.4ms 🟢 20.2ms +51.1% 🔴
Full details – comparing 928982e vs baseline b7123b1
Metric Baseline Current Change
total 🟡 307.8ms 🔴 585.6ms +90.3% 🔴
loader 🟢 98.5ms 🟢 160.4ms +62.8% 🔴
resolver 🟢 12.0ms 🟢 22.1ms +84.0% 🔴
checker 🟢 101.5ms 🟢 186.5ms +83.8% 🔴
validation 🟢 24.4ms 🟢 42.6ms +74.7% 🔴
 ↳ validation/@azure-tools/typespec-azure-core 🟢 3.4ms 🟢 6.4ms +88.6% 🔴
 ↳ validation/@typespec/http 🟢 2.8ms 🟢 5.1ms +81.0% 🔴
 ↳ validation/@typespec/rest 🟢 0.4ms 🟢 0.6ms +83.1%
 ↳ validation/@typespec/versioning 🟡 16.6ms 🔴 28.3ms +70.5% 🔴
 ↳ validation/compiler 🟢 1.0ms 🟢 1.7ms +63.6%
linter 🟢 70.5ms 🟢 132.2ms +87.6% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/auth-required 🟢 0.0ms 🟢 0.0ms +81.4%
 ↳ linter/@azure-tools/typespec-azure-core/bad-record-type 🟢 0.1ms 🟢 0.2ms +67.1%
 ↳ linter/@azure-tools/typespec-azure-core/byos 🟢 3.1ms 🟢 5.7ms +84.7% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/casing-style 🟢 0.3ms 🟢 0.7ms +88.5%
 ↳ linter/@azure-tools/typespec-azure-core/composition-over-inheritance 🟢 0.0ms 🟢 0.1ms +48.5%
 ↳ linter/@azure-tools/typespec-azure-core/documentation-required 🟢 0.5ms 🟢 0.9ms +79.0%
 ↳ linter/@azure-tools/typespec-azure-core/friendly-name 🟢 0.3ms 🟢 0.6ms +84.1%
 ↳ linter/@azure-tools/typespec-azure-core/key-visibility-required 🟢 0.1ms 🟢 0.2ms +95.6%
 ↳ linter/@azure-tools/typespec-azure-core/known-encoding 🟢 0.2ms 🟢 0.3ms +78.6%
 ↳ linter/@azure-tools/typespec-azure-core/long-running-polling-operation-required 🟢 0.1ms 🟢 0.3ms +102.5%
 ↳ linter/@azure-tools/typespec-azure-core/no-case-mismatch 🟢 0.1ms 🟢 0.3ms +85.2%
 ↳ linter/@azure-tools/typespec-azure-core/no-closed-literal-union 🟢 0.1ms 🟢 0.3ms +97.5%
 ↳ linter/@azure-tools/typespec-azure-core/no-enum 🟢 0.0ms 🟢 0.0ms +48.0%
 ↳ linter/@azure-tools/typespec-azure-core/no-error-status-codes 🟢 0.1ms 🟢 0.1ms +86.7%
 ↳ linter/@azure-tools/typespec-azure-core/no-explicit-routes-resource-ops 🟢 0.1ms 🟢 0.1ms +99.2%
 ↳ linter/@azure-tools/typespec-azure-core/no-format 🟢 0.3ms 🟢 0.6ms +86.0%
 ↳ linter/@azure-tools/typespec-azure-core/no-generic-numeric 🟢 0.3ms 🟢 0.5ms +70.6%
 ↳ linter/@azure-tools/typespec-azure-core/no-header-explode 🟢 9.2ms 🟡 18.3ms +98.1% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-legacy-usage 🟢 0.6ms 🟢 1.1ms +82.6%
 ↳ linter/@azure-tools/typespec-azure-core/no-multiple-discriminator 🟢 0.0ms 🟢 0.1ms +99.0%
 ↳ linter/@azure-tools/typespec-azure-core/no-nullable 🟢 0.1ms 🟢 0.3ms +95.7%
 ↳ linter/@azure-tools/typespec-azure-core/no-offsetdatetime 🟢 0.7ms 🟢 1.2ms +70.5%
 ↳ linter/@azure-tools/typespec-azure-core/no-openapi 🟢 1.2ms 🟢 2.1ms +79.2%
 ↳ linter/@azure-tools/typespec-azure-core/no-private-usage 🟢 1.0ms 🟢 2.0ms +89.2%
 ↳ linter/@azure-tools/typespec-azure-core/no-query-explode 🟡 10.5ms 🟡 18.8ms +79.3% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-response-body 🟡 13.3ms 🔴 24.7ms +85.9% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-rest-library-interfaces 🟢 0.0ms 🟢 0.0ms +71.1%
 ↳ linter/@azure-tools/typespec-azure-core/no-route-parameter-name-mismatch 🟢 2.3ms 🟢 4.6ms +95.7% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-rpc-path-params 🟢 0.1ms 🟢 0.2ms +107.6%
 ↳ linter/@azure-tools/typespec-azure-core/no-string-discriminator 🟢 0.0ms 🟢 0.0ms +107.2%
 ↳ linter/@azure-tools/typespec-azure-core/no-unknown 🟢 0.1ms 🟢 0.2ms +99.3%
 ↳ linter/@azure-tools/typespec-azure-core/no-unnamed-union 🟢 0.2ms 🟢 0.4ms +96.8%
 ↳ linter/@azure-tools/typespec-azure-core/operation-missing-api-version 🟢 0.1ms 🟢 0.2ms +115.5%
 ↳ linter/@azure-tools/typespec-azure-core/request-body-problem 🟢 0.2ms 🟢 0.3ms +72.9%
 ↳ linter/@azure-tools/typespec-azure-core/require-versioned 🟢 0.0ms 🟢 0.0ms +44.9%
 ↳ linter/@azure-tools/typespec-azure-core/response-schema-problem 🟡 11.1ms 🔴 22.5ms +102.7% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/rpc-operation-request-body 🟢 0.2ms 🟢 0.3ms +91.0%
 ↳ linter/@azure-tools/typespec-azure-core/spread-discriminated-model 🟢 0.1ms 🟢 0.3ms +88.2%
 ↳ linter/@azure-tools/typespec-azure-core/use-standard-names 🟢 2.8ms 🟢 4.7ms +71.1% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/use-standard-operations 🟢 0.1ms 🟢 0.1ms +131.8%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-agent-base-type-child-resources 🟢 1.9ms 🟢 3.9ms +108.7% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-agent-base-type-lifecycle-operations 🟢 0.0ms 🟢 0.0ms +74.8%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-common-types-version 🟢 1.9ms 🟢 3.8ms +98.3% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-custom-resource-no-key 🟢 0.0ms 🟢 0.1ms +106.9%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-custom-resource-usage-discourage 🟢 0.0ms 🟢 0.1ms +105.1%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes 🟢 0.5ms 🟢 1.1ms +114.7%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-no-path-casing-conflicts 🟢 2.2ms 🟢 4.1ms +91.5% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-no-record 🟢 0.2ms 🟢 0.4ms +78.4%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-post-operation-response-codes 🟢 0.2ms 🟢 0.5ms +122.5%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes 🟢 0.0ms 🟢 0.0ms +74.0%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-action-no-segment 🟢 0.1ms 🟢 0.2ms +118.5%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-duplicate-property 🟢 0.1ms 🟢 0.1ms +101.1%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-interface-requires-decorator 🟢 0.0ms 🟢 0.0ms +96.2%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-action-verb 🟢 0.0ms 🟢 0.1ms +111.4%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property 🟢 0.1ms 🟢 0.1ms +78.3%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-version-format 🟢 0.0ms 🟢 0.0ms +76.4%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-key-invalid-chars 🟢 0.1ms 🟢 0.2ms +86.0%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-name-pattern 🟢 0.0ms 🟢 0.0ms +108.6%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-operation 🟢 0.1ms 🟢 0.2ms +78.1%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-operation-response 🟢 2.5ms 🟢 4.9ms +96.2% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-patch 🟢 0.2ms 🟢 0.3ms +91.2%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-path-segment-invalid-chars 🟢 0.1ms 🟢 0.2ms +94.9%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state 🟢 0.1ms 🟢 0.1ms +92.6%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/beyond-nesting-levels 🟢 0.0ms 🟢 0.1ms +102.9%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/empty-updateable-properties 🟢 0.1ms 🟢 0.1ms +108.1%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/improper-subscription-list-operation 🟢 0.0ms 🟢 0.0ms +47.7%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/lro-location-header 🟢 7.0ms 🟡 12.3ms +74.8% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/missing-operations-endpoint 🟢 0.0ms 🟢 0.0ms +86.4%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/missing-x-ms-identifiers 🟢 0.2ms 🟢 0.3ms +85.8%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/no-empty-model 🟢 0.1ms 🟢 0.1ms +112.7%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/no-override-props 🟢 0.0ms 🟢 0.1ms +79.5%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/no-resource-delete-operation 🟢 0.1ms 🟢 0.2ms +124.7%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/no-response-body 🟡 11.3ms 🟡 19.5ms +73.4% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/patch-envelope 🟢 0.1ms 🟢 0.1ms +107.5%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/resource-name 🟢 0.1ms 🟢 0.1ms +106.7%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/secret-prop 🟢 1.5ms 🟢 2.8ms +85.3% 🔴
 ↳ linter/@azure-tools/typespec-azure-resource-manager/unsupported-type 🟢 0.2ms 🟢 0.4ms +90.1%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/version-progression 🟢 0.0ms 🟢 0.0ms +74.2%
 ↳ linter/@azure-tools/typespec-client-generator-core/property-name-conflict 🟢 0.5ms 🟢 1.1ms +108.7%
 ↳ linter/@azure-tools/typespec-client-generator-core/require-client-suffix 🟢 0.1ms 🟢 0.2ms +69.1%
emit 🔴 3.27s 🔴 5.90s +80.8% 🔴
 ↳ emit/@azure-tools/typespec-autorest 🟢 96.4ms 🟢 165.0ms +71.1% 🔴
 ↳ emit/@azure-tools/typespec-python 🔴 2.25s 🔴 4.28s +89.9% 🔴
 ↳ emit/@typespec/http-client-js 🔴 751.5ms 🔴 1.19s +57.8% 🔴
 ↳ emit/@typespec/openapi3 🟢 88.9ms 🟢 150.0ms +68.6% 🔴
 ↳ emit/@typespec/openapi3/compute 🟢 75.6ms 🟢 130.1ms +72.1% 🔴
 ↳ emit/@typespec/openapi3/write 🟢 13.4ms 🟢 20.2ms +51.1% 🔴

Averaged across 3 specs (azure-arm-resource-manager, azure-core-dataplane, azure-full).
Threshold: changes > ±5% are highlighted.
🟢 Fast · 🟡 Moderate (stages >200ms, rules >10ms) · 🔴 Slow (stages >400ms, rules >20ms)

@pkg-pr-new

pkg-pr-new Bot commented Jun 15, 2026

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/@azure-tools/azure-http-specs@4632

commit: 85ad0e3

@azure-sdk

azure-sdk commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

You can try these changes here

🛝 Playground 🌐 Website

Comment thread .chronus/changes/specs-addArmTests-2026-5-15-14-14-34.md Outdated
@iscai-msft iscai-msft enabled auto-merge June 23, 2026 15:16
@iscai-msft iscai-msft added this pull request to the merge queue Jul 6, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jul 6, 2026
@iscai-msft iscai-msft added this pull request to the merge queue Jul 6, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jul 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lib:azure-http-specs For issues/prs related to the @azure-tools/typespec-azure-http-specs package

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[specs] Push to add more coverage for ARM scenarios

4 participants