Howie/release test from vnext - #48640
Open
Howie Leung (howieleung) wants to merge 44 commits into
Open
Conversation
…est, add new hosted agent samples for Teams message trigger and reminder preview (#48234) * Remove sample_agent_toolbox_skill.py per bakcned folks and Linda request, add new hosted agent samples for Teams message trigger and reminder preview * change log
… usage; update assets.json tag
* Add A2A protocol support and update related models - Introduced A2ATool and A2AToolboxTool classes for A2A protocol implementation. - Added A2AProtocolVersion enum to define supported A2A protocol versions. - Updated DataGenerationJobOptions to include SimulationSeedDataGenerationJobOptions and removed TaskGenerationDataGenerationJobOptions. - Modified existing models and enums to accommodate new A2A features. - Updated sample agent to utilize the new A2ATool class. - Adjusted beta routines API to remove unsupported parameters and enhance pagination handling. - Updated YAML configuration to reflect repository changes. * Update tsp-location.yaml with latest commit and repository details * Update sample_agent_to_agent.py skip reason in test_samples.py
|
Azure Pipelines: Successfully started running 1 pipeline(s). 9 pipeline(s) were filtered out due to trigger conditions. There may be pipelines that require an authorized user to comment /azp run to run. |
Contributor
There was a problem hiding this comment.
Pull request overview
Regenerates azure-ai-projects for version 2.5.0 with updated Foundry APIs, custom job pollers, and revised samples.
Changes:
- Adds stable A2A tools and renames beta optimization/data-generation models.
- Adds custom sync/async LRO pollers exposing job IDs.
- Updates routines V2 pagination, samples, tests, and release metadata.
Reviewed changes
Copilot reviewed 38 out of 41 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
sdk/ai/azure-ai-projects/tsp-location.yaml |
Updates the source specification commit. |
sdk/ai/azure-ai-projects/tests/samples/test_samples.py |
Updates synchronous sample exclusions. |
sdk/ai/azure-ai-projects/tests/samples/test_samples_async.py |
Updates asynchronous sample exclusions. |
sdk/ai/azure-ai-projects/tests/foundry_features_header/foundry_features_header_test_base.py |
Expects the routines V2 feature header. |
sdk/ai/azure-ai-projects/tests/evaluators/test_evaluators.py |
Tests evaluator poller job IDs. |
sdk/ai/azure-ai-projects/tests/evaluators/test_evaluators_async.py |
Tests async evaluator poller job IDs. |
sdk/ai/azure-ai-projects/tests/datasets/test_datasets.py |
Tests dataset poller job IDs. |
sdk/ai/azure-ai-projects/tests/datasets/test_datasets_async.py |
Tests async dataset poller job IDs. |
sdk/ai/azure-ai-projects/tests/agents/test_agent_optimization_poller.py |
Tests optimization poller job IDs. |
sdk/ai/azure-ai-projects/tests/agents/test_agent_optimization_poller_async.py |
Tests async optimization poller job IDs. |
sdk/ai/azure-ai-projects/samples/datasets/sample_dataset_generation_job_simpleqna_for_finetuning_with_app_polling.py |
Adds synchronous application-managed polling. |
sdk/ai/azure-ai-projects/samples/datasets/sample_dataset_generation_job_simpleqna_for_finetuning_with_app_polling_async.py |
Adds asynchronous application-managed polling. |
sdk/ai/azure-ai-projects/samples/agents/tools/sample_agent_to_agent.py |
Migrates the sample to stable A2A. |
sdk/ai/azure-ai-projects/samples/agents/optimization/sample_optimization_job_cancel.py |
Uses renamed optimization models. |
sdk/ai/azure-ai-projects/samples/agents/optimization/sample_optimization_job_basic.py |
Uses renamed optimization models. |
sdk/ai/azure-ai-projects/samples/agents/optimization/sample_optimization_job_basic_async.py |
Updates the async optimization sample. |
sdk/ai/azure-ai-projects/samples/agents/optimization/sample_optimization_job_advanced_app_polling.py |
Uses the new poller job ID. |
sdk/ai/azure-ai-projects/samples/agents/optimization/sample_optimization_job_advanced_app_polling_async.py |
Uses the async poller job ID. |
sdk/ai/azure-ai-projects/PostEmitter.ps1 |
Removes an obsolete generation workaround. |
sdk/ai/azure-ai-projects/docs/public-methods.md |
Marks customized LRO methods. |
sdk/ai/azure-ai-projects/CHANGELOG.md |
Adds 2.5.0 release notes. |
sdk/ai/azure-ai-projects/azure/ai/projects/operations/_patch.py |
Wires patched synchronous operations. |
sdk/ai/azure-ai-projects/azure/ai/projects/operations/_patch_evaluators.py |
Adds the evaluator custom poller operation. |
sdk/ai/azure-ai-projects/azure/ai/projects/operations/_patch_datasets.py |
Adds the dataset custom poller operation. |
sdk/ai/azure-ai-projects/azure/ai/projects/operations/_patch_agents.py |
Adds the optimization custom poller operation. |
sdk/ai/azure-ai-projects/azure/ai/projects/operations/_operations.py |
Regenerates sync operations and pagination. |
sdk/ai/azure-ai-projects/azure/ai/projects/models/_patch.py |
Defines custom sync/async pollers. |
sdk/ai/azure-ai-projects/azure/ai/projects/models/_enums.py |
Adds and renames generated enums. |
sdk/ai/azure-ai-projects/azure/ai/projects/models/__init__.py |
Exports the revised public models. |
sdk/ai/azure-ai-projects/azure/ai/projects/aio/operations/_patch.py |
Wires patched asynchronous operations. |
sdk/ai/azure-ai-projects/azure/ai/projects/aio/operations/_patch_evaluators_async.py |
Adds async evaluator polling customization. |
sdk/ai/azure-ai-projects/azure/ai/projects/aio/operations/_patch_datasets_async.py |
Adds async dataset polling customization. |
sdk/ai/azure-ai-projects/azure/ai/projects/aio/operations/_patch_agents_async.py |
Adds async optimization polling customization. |
sdk/ai/azure-ai-projects/azure/ai/projects/aio/operations/_operations.py |
Regenerates async operations and pagination. |
sdk/ai/azure-ai-projects/azure/ai/projects/_version.py |
Bumps the package to 2.5.0. |
sdk/ai/azure-ai-projects/apiview-properties.json |
Updates APIView model mappings. |
sdk/ai/azure-ai-projects/api.metadata.yml |
Updates generated API metadata. |
sdk/ai/azure-ai-projects/api.md |
Refreshes the public API surface. |
eng/emitter-package.json |
Normalizes the trailing newline. |
eng/emitter-package-lock.json |
Normalizes the trailing newline. |
💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
+15
to
+17
| All breaking changes are associated with beta features. | ||
|
|
||
| * Renamed class `TaskGenerationDataGenerationJobOptions` to `SimulationSeedDataGenerationJobOptions`. The corresponding `DataGenerationJobType.TASK_GENERATION` enum member was renamed to `DataGenerationJobType.SIMULATION_SEED`, and its wire value changed from `task_generation` to `simulation_seed`. |
| ### Sample updates | ||
|
|
||
| * Added `sample_dataset_generation_job_simpleqna_for_finetuning_async.py` under `samples/datasets/`, demonstrating asynchronous generation of a SimpleQnA dataset for fine-tuning. | ||
| * Added `sample_dataset_generation_job_simpleqna_for_finetuning_with_app_polling.py` under `samples/datasets/`, demonstrating application-managed polling for a SimpleQnA fine-tuning data generation job. |
Comment on lines
+229
to
+234
| for output in file_outputs: | ||
| print(f"Delete the generated Azure OpenAI file `{output.id}`.") | ||
| openai_client.files.delete(file_id=output.id) | ||
|
|
||
| print(f"Delete the Azure OpenAI input file `{seed_file.id}`.") | ||
| openai_client.files.delete(file_id=seed_file.id) |
Comment on lines
+232
to
+237
| for output in file_outputs: | ||
| print(f"Delete the generated Azure OpenAI file `{output.id}`.") | ||
| await openai_client.files.delete(file_id=output.id) | ||
|
|
||
| print(f"Delete the Azure OpenAI input file `{seed_file.id}`.") | ||
| await openai_client.files.delete(file_id=seed_file.id) |
| "sample_agent_browser_automation.py", # APITimeoutError: request timed out | ||
| "sample_agent_openapi.py", # 400 2/28/2026 validation/tool_user_error; failing weather GET curl call in OpenAPI tool | ||
| "sample_agent_memory_search.py", # Skipped until re-enabled and recorded on Foundry endpoint that supports the new versioning schema | ||
| "sample_agent_to_agent.py", # Skipped not sample should work, but not able to obtain a project endpoint that work with a2a at this moment |
| "sample_dataset_generation_job_traces_for_evaluation.py", # PR #47067: recording not yet available | ||
| "sample_dataset_generation_job_simpleqna_with_agent_source.py", # PR #47067: recording not yet available | ||
| "sample_dataset_generation_job_simpleqna_with_file_source.py", # PR #47067: recording not yet available | ||
| "sample_dataset_generation_job_simpleqna_for_finetuning_with_app_polling.py", # Need test recordings |
| samples_to_skip=[ | ||
| "sample_datasets_async.py", # Skipped until re-enabled and recorded on Foundry endpoint that supports the new versioning schema | ||
| "sample_dataset_generation_job_simpleqna_for_finetuning_async.py", # Need to add recordings | ||
| "sample_dataset_generation_job_simpleqna_for_finetuning_with_app_polling_async.py", # Need test recordings |
Restrict openai package version to less than 3.0.0
Contributor
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 39 out of 42 changed files in this pull request and generated no new comments.
Suppressed comments (6)
sdk/ai/azure-ai-projects/samples/datasets/sample_dataset_generation_job_simpleqna_for_finetuning_with_app_polling.py:129
- The uploaded seed file is deleted only on the fully successful path at the end of the sample. Any processing failure, failed/cancelled job, missing result/output, or retrieval exception leaves the Azure OpenAI file—and potentially generated output files—in the project. Wrap resource use in
try/finallyand perform best-effort cleanup there.
sdk/ai/azure-ai-projects/samples/datasets/sample_dataset_generation_job_simpleqna_for_finetuning_with_app_polling_async.py:130 - The uploaded seed file is deleted only on the fully successful path at the end of the sample. Any processing failure, failed/cancelled job, missing result/output, or retrieval exception leaves the Azure OpenAI file—and potentially generated output files—in the project. Wrap resource use in
try/finallyand perform best-effort async cleanup there.
sdk/ai/azure-ai-projects/tests/samples/test_samples.py:207 - This exclusion removes all automated execution coverage for the newly added synchronous app-polling sample, so its polling, error handling, and cleanup behavior can regress unnoticed. Add a recording and keep the sample in the parametrized sample test before release.
sdk/ai/azure-ai-projects/tests/samples/test_samples_async.py:171 - This exclusion removes all automated execution coverage for the newly added asynchronous app-polling sample, so its polling, error handling, and cleanup behavior can regress unnoticed. Add a recording and keep the sample in the parametrized async sample test before release.
sdk/ai/azure-ai-projects/tests/samples/test_samples.py:51 - The stable A2A migration is simultaneously excluded from the only parametrized sample test, and there are no other A2A tests in this package. This leaves the new
A2AToolconstruction and serialization path unverified. Add a suitable recording/test endpoint and retain automated coverage for the sample.
sdk/ai/azure-ai-projects/samples/agents/tools/sample_agent_to_agent.py:41 - The sample now imports the stable
A2ATool, but its DESCRIPTION still saysA2APreviewTooland its install command permitsazure-ai-projects>=2.0.0.A2AToolis introduced in this 2.5.0 release, so users following that command can install 2.0–2.4 and get an import failure. Update both references to the stable tool and requireazure-ai-projects>=2.5.0.
A2ATool,
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.
Description
Please add an informative description that covers that changes made by the pull request and link all relevant issues.
If an SDK is being regenerated based on a new API spec, a link to the pull request containing these API spec changes should be included above.
All SDK Contribution checklist:
General Guidelines and Best Practices
Testing Guidelines