Skip to content

Generate .NET SDK for Microsoft.Insights metric alerts 2024-03-01-preview version#53565

Draft
violetVo wants to merge 3642 commits into
sdk-gen-trigger-metricAlert-preview-2024-03from
main
Draft

Generate .NET SDK for Microsoft.Insights metric alerts 2024-03-01-preview version#53565
violetVo wants to merge 3642 commits into
sdk-gen-trigger-metricAlert-preview-2024-03from
main

Conversation

@violetVo

Copy link
Copy Markdown
Contributor

Contributing to the Azure SDK

Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.

For specific information about pull request etiquette and best practices, see this section.

@github-actions github-actions Bot added AI Model Inference AI Projects Client This issue points to a problem in the data-plane of the library. CodeGen Issues that relate to code generation Event Grid Health Deidentification Image Analysis KeyVault Mgmt This issue is related to a management-plane library. Monitor - Query Provisioning Schema Registry labels Oct 29, 2025

@mrm9084 mrm9084 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Update for release

ArcturusZhang and others added 15 commits July 1, 2026 17:45
* Regenerate repository SDK with TypeSpec build 20260630.2

* Update SDK code pe_pr_12

* Update SDK code re_re_14

---------

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Update provisioning generator dependencies

Align provisioning generator npm dependencies with the latest management generator release and update the Azure.Generator.Management NuGet dependency.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Revert provisioning emitter package updates

Keep the provisioning emitter package configuration unchanged while updating generator dependencies.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix provisioning generator npm lock sync

Add TypeSpec peer dev dependencies required by the updated generator toolchain so npm ci succeeds.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Revert "Fix provisioning generator npm lock sync"

This reverts commit de37ba1.

* Align provisioning npm lock with management generator

Add the TypeSpec peer dev dependencies used by the management generator and keep Vite pinned to the management generator lock version.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix provisioning emitter lint

Use a type alias for provisioning emitter options to satisfy the updated TypeScript ESLint rules.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…elease 1.0.0-alpha.20260701.1 (#60573)

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
….0.0-alpha.20260701.2 (#60571)

* Regenerate repository SDK with TypeSpec build 20260701.2

* Update SDK code ne_pe_11

---------

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
…rp (#60505)

Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.8.3 to 6.0.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v5.8.3...v6.0.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-version: 6.0.3
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the typespec group with 4 updates in the /eng/packages/http-client-csharp-provisioning directory: [@typespec/http-client-csharp](https://github.com/Microsoft/typespec), [@azure-tools/typespec-azure-resource-manager](https://github.com/Azure/typespec-azure), [@azure-tools/typespec-azure-rulesets](https://github.com/Azure/typespec-azure) and [@azure-tools/typespec-client-generator-core](https://github.com/Azure/typespec-azure).


Updates `@typespec/http-client-csharp` from 1.0.0-alpha.20260629.10 to 1.0.0-alpha.20260630.5
- [Release notes](https://github.com/Microsoft/typespec/releases)
- [Commits](https://github.com/Microsoft/typespec/commits)

Updates `@azure-tools/typespec-azure-resource-manager` from 0.69.1 to 0.69.2
- [Release notes](https://github.com/Azure/typespec-azure/releases)
- [Commits](https://github.com/Azure/typespec-azure/compare/@azure-tools/typespec-azure-resource-manager@0.69.1...@azure-tools/typespec-azure-resource-manager@0.69.2)

Updates `@azure-tools/typespec-azure-rulesets` from 0.69.1 to 0.69.2
- [Release notes](https://github.com/Azure/typespec-azure/releases)
- [Commits](https://github.com/Azure/typespec-azure/compare/@azure-tools/typespec-azure-rulesets@0.69.1...@azure-tools/typespec-azure-rulesets@0.69.2)

Updates `@azure-tools/typespec-client-generator-core` from 0.69.1 to 0.69.2
- [Release notes](https://github.com/Azure/typespec-azure/releases)
- [Commits](https://github.com/Azure/typespec-azure/compare/@azure-tools/typespec-client-generator-core@0.69.1...@azure-tools/typespec-client-generator-core@0.69.2)

---
updated-dependencies:
- dependency-name: "@typespec/http-client-csharp"
  dependency-version: 1.0.0-alpha.20260630.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: typespec
- dependency-name: "@azure-tools/typespec-azure-resource-manager"
  dependency-version: 0.69.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: typespec
- dependency-name: "@azure-tools/typespec-azure-rulesets"
  dependency-version: 0.69.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: typespec
- dependency-name: "@azure-tools/typespec-client-generator-core"
  dependency-version: 0.69.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: typespec
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…list (#60521)

* Document CS1591 members and peel 3 mgmt packages off the NoWarn skip-list

Removes Azure.ResourceManager.AppService, .Compute, and .MachineLearning from
eng/NoWarnSkipValidation.txt by documenting the members that triggered CS1591
rather than suppressing the warning.

CS1591 fired only on hand-written members in the src/Customize(d)/ layer
(generated files auto-suppress it). These were documented with real content:

- Properties: recovered the original <summary> from the generated source
  (they are [CodeGenSuppress]+re-declared backward-compat members, so the doc
  text survives in generated models / ModelFactory <param> docs), matched
  type-qualified to avoid cross-type mismatches.
- Serialization *Core methods: uniform summaries (ModelReaderWriter pattern).
- Equals/GetHashCode/ToString: <inheritdoc/> (genuine overrides).
- Operators, extensible-enum boilerplate, constructors: standard pattern text.
- Collection getters and *Options / fully-custom types: authored summaries.

Also removes the CS1591 <NoWarn> from each csproj and adds
eng/NoWarnSkipValidation.txt to cspell ignorePaths (it is a machine-maintained
list of package identifiers).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix inaccurate extensible-enum value docs on ML connection-status enums

The property-doc recovery matched by value name and pulled an unrelated
type's summary for the 'Timeout' value ('AutoML job timeout'). Replace it and
the sibling values with accurate status descriptions on
MachineLearningPrivateEndpointServiceConnectionStatus and
MachineLearningPublicNetworkAccessType.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Use 'Gets or sets' for settable option properties

The property-doc recovery pulled read-only 'Gets the X' summaries onto four
settable ({ get; set; }) customization properties (Count on two GetAllOptions
types, KeyIdentifier, Identity). Correct them to 'Gets or sets the X'.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Replace internal-note doc on IdentityClientId with a proper description

The recovered summary was an internal swagger note ('Currently, we support
only SystemAssigned MSI...'); replace it with a customer-facing description of
what IdentityClientId represents.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix ungrammatical/lowercase recovered doc summaries

Several summaries recovered from raw swagger text were lowercase and
ungrammatical (e.g. 'who this data mount created by.', 'page size.',
'name for the featureset version.', 'format for the workspace connection
value.'). Rewrite them as proper capitalized descriptions across the ML
FeatureSet/Feature GetAllOptions and connection-value types.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Make PageSize option docs more descriptive

Expand the terse 'The page size.' summary to describe what it controls on the
ML *GetAllOptions types.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix 'workspaces connections' grammar in recovered list-method doc

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add article to EncryptionSetting Status doc summary

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Clarify KeyVault-related doc summaries on ML encryption types

Rewrite the awkward recovered summaries (e.g. 'KeyVault details to do the
encryption.') into customer-facing sentences on MachineLearningEncryptionSetting
and MachineLearningEncryptionKeyVaultProperties.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…1591) (#60577)

Removes 22 Azure.Provisioning.* packages from eng/NoWarnSkipValidation.txt.
Their <NoWarn>CS1591</NoWarn> was dead (the generated provisioning code carries
XML doc comments, so no CS1591 fires) - verified by building each package with
the suppression removed and the skip entry gone.

Also removes the now-orphaned '<!-- Disable warning CS1591 -->' comments.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: azure-sdk <azuresdk@microsoft.com>
* Add CPM-007 check for inline PackageVersion items

Extend Validate-CpmCompliance.ps1 to flag <PackageVersion Include=...>
items defined outside eng/centralpackagemanagement and the samples
allowlist, closing a gap where inline package versions in csproj files
passed the analyze stage. Adds Pester coverage.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Match PackageVersion items regardless of attribute order

Broaden the CPM-007 pattern so Include can appear in any attribute
position (e.g. after a Condition attribute), and add a regression test.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Tag CPM-007 tests with UnitTest so CI runs them

eng/scripts/ci.yml runs Pester with TargetTags='UnitTest'; without the
tag the Describe block would be filtered out and CPM-007 left uncovered.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…d local emitter pins (#60544)

* Remove Key Vault Certificates emitter-bug patch script and local emitter pin

The library-local emitter-package.json pin (1.0.0-alpha.20260617.2) and the
post-emit Internalize-Generated.ps1 patch script were workarounds for emitter
bugs. The relevant fixes have shipped in the default Azure C# emitter, so:

- Point tsp-location.yaml emitterPackageJsonPath at the shared repo default
  (eng/azure-typespec-http-client-csharp-emitter-package.json,
  1.0.0-alpha.20260629.2) and delete the library-local emitter-package.json.
- Delete eng/Internalize-Generated.ps1 and the two MSBuild targets in the
  csproj (InternalizeGeneratedCode / InternalizeGeneratedCodeAfterGenerate).
- Regenerate src/Generated with the default emitter.

The emitter now natively produces the correct output for former patches
1 (UpdateCertificate arg order, #60160), 2 (trailing slash on null version),
and 6 (continuation-token off-by-one, #60274).

Patches 3-5 (#60162: trailing slash on /certificates/contacts and
/certificates/issuers, PurgeDeletedCertificate Accept header) were
intentionally not fixed in the emitter, so the generated client now uses the
emitter's natural wire shape (no trailing slash, no Accept header). Updated the
contacts/issuers/purge playback recordings and the CertificateClientWireShapeTests
unit guards to match.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Regenerate Library_Inventory.md: Certificates now on shared TypeSpec emitter

Direct consequence of pointing tsp-location.yaml at the shared
eng/azure-typespec-http-client-csharp-emitter-package.json - the inventory
script now categorizes Azure.Security.KeyVault.Certificates as a New Emitter
(TypeSpec) data-plane library (migration status 45/47 -> 46/47).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Migrate Key Vault Secrets to the shared TypeSpec emitter; remove patch script

Same cleanup as Azure.Security.KeyVault.Certificates: the library-local
emitter-package.json pin (1.0.0-alpha.20260617.2) and the post-emit
Internalize-Generated.ps1 patch script (UpdateSecret arg-order swap, #60160)
were emitter-bug workarounds now fixed in the default Azure C# emitter.

- Point tsp-location.yaml emitterPackageJsonPath at the shared repo default
  (eng/azure-typespec-http-client-csharp-emitter-package.json) and delete the
  library-local emitter-package.json.
- Delete eng/Internalize-Generated.ps1 and the InternalizeGeneratedCodeAfterGenerate
  MSBuild target in the csproj.
- Regenerate src/Generated with the default emitter. The emitter now natively
  produces the correct UpdateSecret arg order (#60160), the null-version path
  without a trailing slash (/secrets/{name}), and the fixed paging
  continuation-token (#60274).
- Update the secret playback recordings so latest-version GET/PATCH URLs drop
  the trailing slash to match the emitter-native wire shape.
- Regenerate Library_Inventory.md: data-plane Old TypeSpec is now 0 and the
  migration status is 47/47 (100%).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Refresh Library_Inventory.md via Library_Inventory.ps1

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: azure-sdk <azuresdk@microsoft.com>
Co-authored-by: azure-sdk <azuresdk@microsoft.com>
azure-sdk-automation Bot and others added 30 commits July 15, 2026 13:12
Co-authored-by: Praveen Kuttappan <prmarott@microsoft.com>
…factSigning (#61018)

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
…Task (#61016)

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 7610455f-dd0a-46b7-bdca-135e152b4dc8
…61028)

* Peel AI/Core/AgriFood/Monitor/Purview cluster off NoWarn skip list

Remove 5 packages from eng/NoWarnSkipValidation.txt (32 -> 27), resolving
each warning in code rather than suppressing where feasible.

Renamed sub-clients to service-prefixed names (regenerated via the code
generator, not hand-edited) to clear AZC0012:
- AgriFood.Farming: 14 sub-clients -> Farming* (AutoRest); version bump to beta.3.
- AnomalyDetector: Univariate/Multivariate -> UnivariateDetector/MultivariateDetector (TypeSpec).
- Purview.DataMap: Entity/Glossary/Lineage/Relationship/Discovery -> DataMap* (TypeSpec),
  and EntityStatus -> DataMapEntityStatus to clear AZC0034 (collision with ServiceBus).

Dead-code removals: Monitor.Ingestion CA1835; AnomalyDetector CS1591; Purview AZC0030.

Per-type suppression (intentional general-purpose primitive): Core.Experimental Variant
(AZC0012). Re-added AZC0012 to AllowListDiagnosticSuppressor for that scoped suppression.

Updated api/*.cs, CHANGELOGs, and regenerated sample/test call sites for the renames.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 31980216-cd78-4de6-9ac4-da16f896e4b3

* Re-sync AnomalyDetector snippet markdown to renamed accessors

Run Update-Snippets so README.md and samples/Sample1-4.md use
GetUnivariateDetectorClient()/GetMultivariateDetectorClient(), fixing the
Verify Generated Code check.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 31980216-cd78-4de6-9ac4-da16f896e4b3

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* make prefix check optional

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Marcos Salamanca <masalama@microsoft.com>
Co-authored-by: msalaman <Marcossalamanca97@hotmail.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: azure-sdk <azuresdk@microsoft.com>
* Release Azure.AI.VoiceLive 1.2.0 GA

- Bump version 1.2.0-beta.2 -> 1.2.0 (GA)
- Regenerate from updated TypeSpec (tsp-location bump)
- Default service API version now 2026-07-15 (ServiceVersion.V2026_07_15)
- Remove AZC0010 suppression (default is now latest+stable)
- Add VoiceLiveSessionResponse.ExpiresAt
- Remove RTC call SDP, output audio buffer started/stopped, and smart EOU detection types no longer in spec
- Update CHANGELOG, regenerate api listings, update/remove affected tests

* Address PR review feedback for 1.2.0 GA

- CHANGELOG: note removed preview-only types (SmartEndOfTurnDetection, RTC call SDP events, output audio buffer started/stopped) under Other Changes
- Add VoiceLiveSessionResponseExpiresAtTests validating expires_at Unix-seconds wire format round-trip

* Add 2026-04-10 service version; rename ParallelToolCalls->AllowParallelToolCalls and ExpiresAt->ExpiresOn

* Regenerate VoiceLive: rename AzureRealtimeNativeVoice.Type to Kind

Update tsp-location commit and adjust test to use the renamed Kind property.

* Update VoiceLive public API surface for Type to Kind rename

---------

Co-authored-by: Xiting Zhang <xitzhang@microsoft.com>
…alpha.20260715.3 (#61044)

* Regenerate repository SDK with TypeSpec build 20260715.3

* Update SDK code co_co_3

---------

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
* [ServiceBus] Add support for 2026-01-01 API version

Regenerated Azure.ResourceManager.ServiceBus from TypeSpec (azure-rest-api-specs#43547,
commit cf559e06).

- Add IpAddressType (IPv4/DualStack) to the namespace
- Remove ClusterArmId from ServiceBusNamespaceReplicaLocation (no effect for Service Bus)
- Namespace PATCH is now synchronous (ArmCustomPatchSync); removed obsolete LRO Update
  customization so the generator emits the native synchronous Update(patch, ct)
- Regenerated public API surface and updated CHANGELOG

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* [ServiceBus] Fix tests/samples for synchronous namespace Update (2026-01-01)

Update generated sample and hand-written namespace test to use the new
synchronous Update(patch)/UpdateAsync(patch) instead of the removed LRO overload.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* [ServiceBus] Remove stray package-local copilot-instructions.md

This file was inadvertently swept into the PR; it duplicates/conflicts with the
repository-wide .github/copilot-instructions.md and references tooling not part of
this repo. Not related to the 2026-01-01 API version change.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* [ServiceBus] Add CreateNamespaceWithIPAddressType test for 2026-01-01

Validates the new 2026-01-01 'ipAddressType' property (replaces the legacy
'ipV6Enabled' boolean) on ServiceBus namespaces. Covers both enum values
(DualStack and IPv4) with create round-trip, re-fetch verification, and
explicit cleanup, following the existing property-test conventions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* [ServiceBus] Update test recordings for 2026-01-01 API version

Re-recorded the ServiceBus management SDK tests against the 2026-01-01 API
version and pushed updated recordings to azure-sdk-assets. This fixes the CI
playback failures caused by the api-version bump (2025-05-01-preview ->
2026-01-01) and the namespace PATCH becoming synchronous.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(servicebus): align IP address type naming

Regenerate the 2026-01-01 management SDK from the merged TypeSpec naming update. Rename IpAddressType to ServiceBusIPAddressType and expose IPAddressType consistently across the generated API and tests.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: bebdf959-e8ee-4dda-9e6e-08fcf0d7ad99

* release(servicebus): prepare 1.2.0

Set the Azure.ResourceManager.ServiceBus package version to 1.2.0 and finalize the release date in the changelog.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: bebdf959-e8ee-4dda-9e6e-08fcf0d7ad99

* docs(servicebus): adjust changelog spacing

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: bebdf959-e8ee-4dda-9e6e-08fcf0d7ad99

* docs(servicebus): remove empty changelog sections

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: bebdf959-e8ee-4dda-9e6e-08fcf0d7ad99

* Remove generated ServiceBus code before regeneration

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dc038d97-a46b-46a8-b1bf-da82d1569688

* Regenerate ServiceBus SDK code

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dc038d97-a46b-46a8-b1bf-da82d1569688

* Fix ServiceBus generated failover sample

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dc038d97-a46b-46a8-b1bf-da82d1569688

* updated the latest commit id

---------

Co-authored-by: Ashraf Siddiquee <asiddiquee@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Arcturus Zhang <dapzhang@microsoft.com>
Co-authored-by: Shubham Chaudhari <schaudhari@microsoft.com>
* [EventHub] Add support for 2026-01-01 API version

Regenerated Azure.ResourceManager.EventHubs from TypeSpec (azure-rest-api-specs#43547,
commit cf559e06).

- Add IpAddressType (IPv4/DualStack) to the namespace
- Namespace PATCH is now synchronous (ArmCustomPatchSync); removed obsolete LRO Update
  convenience overloads from Custom/EventHubsNamespaceResource.cs so the generator emits
  the native synchronous Update(data, ct) (other NSP customizations preserved)
- Regenerated public API surface and updated CHANGELOG

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* [EventHub] Fix tests/samples for synchronous namespace Update (2026-01-01)

Update generated sample and hand-written namespace test to use the new
synchronous Update(data)/UpdateAsync(data) instead of the removed LRO overload.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* [EventHub] Add CreateNamespaceWithIPAddressType test for 2026-01-01

Validates the new 2026-01-01 'ipAddressType' property (replaces the legacy
'ipV6Enabled' boolean) on EventHub namespaces. Covers DualStack create with
re-fetch verification, the IPv4 round-trip via the now-synchronous namespace
PATCH (UpdateAsync), and explicit cleanup.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* test(eventhub): update management recordings

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: bebdf959-e8ee-4dda-9e6e-08fcf0d7ad99

* fix(eventhub): align IP address type naming

Regenerate from the TypeSpec client naming fix so the public model is EventHubIPAddressType and the namespace property is IPAddressType.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: bebdf959-e8ee-4dda-9e6e-08fcf0d7ad99

* fix(eventhub): make generated code reproducible

Pin to the Event Hubs spec correction that removes the stale preview API override. Default generation now selects 2026-01-01 without command-line emitter options.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: bebdf959-e8ee-4dda-9e6e-08fcf0d7ad99

* release(eventhubs): prepare 1.3.0

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: bebdf959-e8ee-4dda-9e6e-08fcf0d7ad99

* docs(eventhubs): remove empty changelog sections

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: bebdf959-e8ee-4dda-9e6e-08fcf0d7ad99

* Remove generated EventHubs code before regeneration

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dc038d97-a46b-46a8-b1bf-da82d1569688

* Regenerate EventHubs SDK code

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dc038d97-a46b-46a8-b1bf-da82d1569688

* Restore generated EventHubs sample output

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dc038d97-a46b-46a8-b1bf-da82d1569688

* Fix EventHubs test compile failures

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dc038d97-a46b-46a8-b1bf-da82d1569688

* Remove generated EventHubs code before regeneration

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dc038d97-a46b-46a8-b1bf-da82d1569688

* Regenerate EventHubs SDK code from updated spec

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: dc038d97-a46b-46a8-b1bf-da82d1569688

* updatesd commit id

---------

Co-authored-by: Ashraf Siddiquee <asiddiquee@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Arcturus Zhang <dapzhang@microsoft.com>
Co-authored-by: Shubham Chaudhari <schaudhari@microsoft.com>
* Update UnbrandedGeneratorVersion to 1.0.0-alpha.20260715.4

* Update tcgc to 0.70.0 and regenerate unbranded outputs

Co-authored-by: jorgerangel-msft <102122018+jorgerangel-msft@users.noreply.github.com>

* Revert unintended README and non-responses agentserver changes

Co-authored-by: jorgerangel-msft <102122018+jorgerangel-msft@users.noreply.github.com>

* Align generated README with emitter output to fix CI diff

Co-authored-by: jorgerangel-msft <102122018+jorgerangel-msft@users.noreply.github.com>

---------

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jorgerangel-msft <102122018+jorgerangel-msft@users.noreply.github.com>
* manually edited changelog

* updated cspoj

---------

Co-authored-by: Hari K <kha@microsoft.com>
…rency (#61029)

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
Co-authored-by: azure-sdk <azuresdk@microsoft.com>
…ys (#61065)

Co-authored-by: azure-sdk <azuresdk@microsoft.com>
Co-authored-by: helen229 <gaoh@microsoft.com>
* Add first sample for Agent Optimization

* Add tests and more samples.

* Add fixes and samples for Agent Optimizatio and generate the latest code.

* Fix

* Fix
…s unavailable (#60701)

* [Identity] Continue credential chain when all managed identity sources are unavailable

When DefaultAzureCredential is used on a host without a managed identity, MSAL source detection can succeed (Source == None) while the subsequent token acquisition throws MsalClientException with ManagedIdentityAllSourcesUnavailable. This was wrapped as AuthenticationFailedException, aborting the chain. When chained, it is now surfaced as CredentialUnavailableException so the chain continues to the next credential. Fixes #60650.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* [Identity] Add regression tests for MI all-sources-unavailable chain fallback

Adds chained (expects CredentialUnavailableException) and standalone (expects AuthenticationFailedException) tests covering the MSAL ManagedIdentityAllSourcesUnavailable token-acquisition path, plus a MockMsalManagedIdentityClient.CreateCapabilities helper to force Source == None. Tests run in both the base and ConfigurableCredentials fixtures.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* [Identity] Log accurate event when all managed identity sources are unavailable

The chained catch for MsalError.ManagedIdentityAllSourcesUnavailable logged
ImdsEndpointUnavailable, which singled out IMDS as the cause even though MSAL
reports that every managed identity source was probed and none was available.
Emit a new neutral ManagedIdentitySourcesUnavailable event ("No managed identity
source is available. Error: {0}") instead. The full MSAL exception is still
carried as the error detail and inner exception, so no diagnostic information is
lost. Addresses review feedback on #60701.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Migrate Azure.Provisioning.Redis to TypeSpec

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Restore RedisResource compatibility type

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Restore Redis provisioning compatibility APIs

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Mitigate Redis private endpoint compatibility

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Adjust Redis private endpoint compatibility

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Narrow Redis obsolete compatibility suppression

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Restore Redis patch schedule compatibility enum

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Revert Redis legacy generator cleanup

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Update Redis spec reference

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Restore Redis name requirements

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Use Redis spec name constraints

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Update Redis name constraint spec reference

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Update Redis constraints spec reference

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Document Redis provisioning customizations

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…s/docs/asyncapi.{json,yaml} (#60663)

* [Azure.AI.AgentServer.Invocations] Serve AsyncAPI docs at /invocations/docs/asyncapi.{json,yaml}

InvocationHandler now exposes two new virtual methods, GetAsyncApiJsonAsync
and GetAsyncApiYamlAsync, served at GET /invocations/docs/asyncapi.json and
GET /invocations/docs/asyncapi.yaml respectively. Both default to 404;
override either or both to publish the AsyncAPI companion to the existing
openapi.json endpoint for streaming/bidirectional surfaces (e.g. the
invocations_ws WebSocket protocol) that OpenAPI cannot express.

Path extension is authoritative for the returned content type — no Accept
negotiation, no format conversion between the two representations. JSON and
YAML are served independently at their own paths; users may override one or
both.

Design choice: two distinct virtual methods rather than a single method with
a format enum. Rationale: mirrors GetOpenApiAsync (strongly-typed, no magic
values), matches .NET conventions, keeps SDK dependency-free of a YAML
library (users write their preferred YAML directly to response.Body), and
lets a handler that only supports one format skip the other with zero
boilerplate.

Companion to Python PR Azure/azure-sdk-for-python#47829 and TypeSpec PR
Azure/azure-rest-api-specs#44416.

Fixes: AB#5407709

* Address review: extract session-id helper, rename lambda params, sync XML docs, split independence test

- InvocationEndpointHandler.cs: extract InjectSessionIdHeaderFromEnv
  helper and migrate HandleGetOpenApiAsync + both new AsyncAPI
  dispatchers to use it. Removes the third copy of the identical
  session-id-from-env header injection block (rule of three).
- InvocationsServerEndpointRouteBuilderExtensions.cs: rename lambda
  parameters `handler` -> `endpointHandler` and `invocationHandler`
  -> `userHandler` across all MapPost/MapGet/Map calls (POST /invocations,
  GET /invocations/{id}, cancel, openapi.json, asyncapi.json,
  asyncapi.yaml, invocations_ws). The old names had ambiguous
  distinguishability inside a single lambda scope; the new names make
  the endpoint-vs-user-handler split explicit and are applied
  consistently rather than only on the new endpoints.
- InvocationHandler.cs: mirror the "path extension authoritative,
  no Accept negotiation, no format conversion" remarks onto
  GetAsyncApiYamlAsync (previously only on the JSON method), and add
  an explicit "must set StatusCode when overriding" warning to both
  virtual methods -- the base 404 is only in effect while the base
  implementation is used, and override authors who forget to set a
  status get 200 with whatever body they wrote.
- tests: split GetAsyncApi_JsonAndYamlAreIndependent into two focused
  tests (JSON-only override, YAML-only override). Each starts and
  stops one TestServer, so a failure isolates to a single direction
  and the reassigned `builder`/`app`/`client` locals go away.

* Address Copilot review: clarify override doc, add explicit StatusCode to README sample
…8761)

* feat(servicebus): add GetMessageSessionsAsync to ServiceBusClient

- Add GetMessageSessionsAsync overloads for queues and subscriptions
- Implement com.microsoft:get-message-sessions AMQP management operation
- Add IAsyncEnumerable streaming return type with pagination
- Add unit tests and live tests
- Update API surface and CHANGELOG

* fix(servicebus): address jsquire review - remove updatedAfter overloads, reorganize tests

- Remove GetMessageSessionsAsync updatedAfter overloads (queue + subscription)
  per jsquire: no customer requests and session state rules will confuse users
- Move GetMessageSessionsTests into ServiceBusClientTests (organize by client)
- Move GetMessageSessionsLiveTests into ServiceBusClientLiveTests
- Move pageSize constant to class-level SessionBrowsePageSize
- Use var consistently for local variables
- Format AmqpReceiver params one-per-line
- Update API surface files to remove updatedAfter overloads

* docs(servicebus): remove updatedAfter references from CHANGELOG

The updatedAfter overloads were removed per jsquire's review.
Update CHANGELOG to reflect the final API surface.

* fix(servicebus): restore updatedAfter overloads, apply style fixes

- Revert removal of updatedAfter overloads (queue + subscription): both
  modes are part of the feature spec (PBI 27270814 - confirmed by service
  team: DateTime.MaxValue = all sessions, timestamp = state-updated-after)
- Keep jsquire's style fixes: one-per-line params in AmqpReceiver
- Restore standalone test files (GetMessageSessionsTests.cs,
  GetMessageSessionsLiveTests.cs) with updatedAfter test coverage
- Restore API surface files with all four overloads
- Restore original CHANGELOG entry describing both modes

* docs(servicebus): correct error-handling comments per service-side code

The service returns 204 NoContent + com.microsoft:session-not-found for
empty get-message-sessions results, not 404 + message-not-found. The 204
is handled by the NoContent branch above. The 404+message-not-found
catch is a cross-SDK safety net matching JS and Python, not the actual
service response.

Verified against AmqpControlProtocolClient.cs in ServiceBus-Messaging.

* fix(servicebus): rename updatedAfter to sessionStateUpdatedAfter

- Rename parameter per jsquire review: 'updatedAfter' implied the session
  itself was updated, but the filter is on session state update time.
- 'sessionStateUpdatedAfter' clarifies the semantics.
- Applied across all 4 overloads, 3 API surface files, unit tests, and
  live tests.

* fix(servicebus): use DateTimeOffset throughout internal layers per review

- Change lastUpdatedTime parameter from DateTime to DateTimeOffset in
  TransportReceiver, AmqpReceiver, and ServiceBusClient core method
- Convert to UTC DateTime via .UtcDateTime only at AMQP encoding point
- No-filter overloads pass DateTimeOffset.MaxValue instead of
  DateTime.SpecifyKind(DateTime.MaxValue, DateTimeKind.Utc)
- Add full XML doc param/returns tags on AmqpReceiver override
- Use 'session state' consistently in all doc comments (not bare 'state')
- Use 'set or updated' in param descriptions (matches Python SDK)
- Rename stale test methods to match new types
- Update unit test mocks from DateTime to DateTimeOffset

* fix(servicebus): restore jsquire review items regressed by c11de99

- Move SessionBrowsePageSize back to class-level constant
- Use var consistently (var skip = 0)
- Move unit tests from standalone GetMessageSessionsTests.cs into ServiceBusClientTests.cs
- Move live tests from standalone GetMessageSessionsLiveTests.cs into ServiceBusClientLiveTests.cs
- Delete standalone test files

---------

Co-authored-by: Eldert Grootenboer (from Dev Box) <egrootenboer@microsoft.com>
Co-authored-by: Chidozie Ononiwu <chononiw@microsoft.com>
Co-authored-by: azure-sdk <azuresdk@microsoft.com>
* Add environment.skills to workflow-scenario eval specs

Wires environment.skills: [<skill dirs>] into the mock workflow eval YAML specs so Vally loads the relevant skill per-eval instead of relying on --skill-dir at the pipeline level.

* Fix flaky generate-sdk-locally eval stimuli

- Add missing environment.skills block to sdk-local-update-metadata-001
  (all other positive stimuli in this file already had it)
- Replace ambiguous/fictional 'contoso' package paths with the real
  fixture package (sdk/compute/azure-mgmt-compute, azure-resourcemanager-compute)
  so the model doesn't need to ask for clarification on a made-up path
- Add explicit version/release-type/date to the version-update stimuli
  since the tool genuinely requires that info

Verified locally: suite score went from ~42% to consistently 83-92%
across repeated runs (threshold 80%).

* Broaden sdk-release skill trigger phrases

The trigger.eval.yaml suite reproducibly failed at ~70%% because vague/
informational prompts (SDK release checklist, walk me through the
release process, how to publish a new SDK version, release a new
version of azure-sdk) weren't covered by the skill's narrow trigger
phrase list, so the model didn't reliably invoke the skill.

Added those phrasings to the description, Triggers section, and
Examples, and clarified that the skill should also handle how-to/
checklist style questions, not just direct action requests.

Verified locally: trigger.eval.yaml went from 70%% to 100%% across two
repeated runs (threshold 80%%).

* Add environment.skills to anti-trigger/negative eval stimuli

Per Copilot PR review feedback: anti-trigger and negative stimuli in
these eval specs didn't set environment.skills, so the skill was never
loaded/available for those prompts. That made the disallowed
skill-invocation / tool-calls grader checks trivially true (the skill
literally couldn't be invoked), providing no real signal.

Added environment.skills: [..] to all anti-trigger/negative stimuli in:
- azsdk-common-apiview-feedback-resolution/evals/trigger.eval.yaml
- azsdk-common-pipeline-fixer/evals/trigger.eval.yaml
- azsdk-common-pipeline-analysis/evals/trigger.eval.yaml
- azsdk-common-prepare-release-plan/evals/trigger.eval.yaml
- azsdk-common-sdk-release/evals/trigger.eval.yaml
- azsdk-common-generate-sdk-locally/evals/eval.yaml (sdk-local-negative-001)

Verified locally: all 6 suites still pass with the skill loaded and
available - the model correctly declines to invoke it on out-of-scope
prompts. No new failures introduced (5 trigger suites at 100%,
generate-sdk-locally-eval at 91.7%, same pre-existing unrelated failure
as before on sdk-local-analyzer-errors-001).

* Mirror .github/skills after patch conflict

---------

Co-authored-by: helen229 <gaoh@microsoft.com>
Co-authored-by: azure-sdk <azuresdk@microsoft.com>
Copilot-Session: 94d9ccb7-958d-4d8e-b9d3-e792f1086841

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…th challenge-based auth (#59553)

* Fix AzureCliCredential failing when Subscription is set with challenge-based auth

When AzureCliCredential has Subscription set but no explicit TenantId, services
like Key Vault that use challenge-based authentication populate
TokenRequestContext.TenantId. The TenantIdResolver would resolve this challenge
tenant, causing both --tenant and --subscription to be passed to the az CLI
command. Azure CLI does not support both flags simultaneously, resulting in:
  ERROR: Please specify only one of subscription and tenant, not both

Fix: When subscription is specified, omit --tenant from the CLI command since
the subscription already implies a specific tenant.

Fixes #58949

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Prefer requested tenant over --subscription in AzureCliCredential

The Azure CLI rejects passing both --tenant and --subscription to
'az account get-access-token'. A requested tenant (e.g. from a
challenge-based auth response) is authoritative for the issued token, so
it now takes precedence and --subscription is omitted; --subscription is
used only when no tenant is requested. Updates tests and changelog.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add regression test and document Subscription/tenant precedence

Adds a dedicated regression test mirroring issue #58949 (subscription set,
no explicit tenant, challenge-based tenant on the request context) asserting
--tenant is used and --subscription is omitted. Documents on
AzureCliCredentialOptions.Subscription that a requested tenant takes
precedence and the subscription is omitted for that request.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

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

Labels

AI Model Inference AI Projects Client This issue points to a problem in the data-plane of the library. CodeGen Issues that relate to code generation Event Grid Health Deidentification Image Analysis KeyVault Mgmt This issue is related to a management-plane library. Monitor - Query Provisioning Schema Registry