Azure / Azure/azure-functions-agents-runtime

Migrate workflow client operations to native Durable APIs

Open
#202 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
9
Forks
7
Avg merge
1d 21h
Merged PRs (30d)
20

Description

> Please provide us with the following information:
> ---------------------------------------------------------------

### This issue is for a: (mark with an `x`)
```
- [ ] bug report -> please search issues before submitting
- [x] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)
```

### Minimal steps to reproduce
> Inspect `src/azure_functions_agents/workflows/tools.py`. Workflow startup now uses `schedule_new_orchestration()`, but status, termination, and event operations still use compatibility aliases: `get_status_all()`, `get_status()`, `terminate()`, and `raise_event()`.

### Any log messages given by the failure
> N/A. The compatibility aliases currently work but are deprecated by the pinned Durable API.

### Expected/desired behavior
> Complete the native Durable client API migration:
> - `get_status_all()` -> `get_all_orchestration_states()`
> - `get_status()` -> `get_orchestration_state()`
> - `terminate()` -> `terminate_orchestration()`
> - `raise_event()` -> `raise_orchestration_event()`
>
> Adapt `status_envelope()` and related tests deliberately for the native `OrchestrationState` contract, including `created_at`, `last_updated_at`, `get_output()`, and `get_custom_status()`. Preserve the existing public workflow status response shape and behavior.

### OS and Version?
> All supported development and hosted environments.

### Versions
> `azure-functions-durable==2.0.0b2`, `durabletask==1.9.0`

### Mention any other details that might be useful
> Follow-up discovered while reviewing PR #201. The orchestrator side in that PR is already consistently migrated to native `OrchestrationContext`, task types, and `when_any()`; this issue intentionally covers the remaining client-side compatibility aliases and associated test doubles.

> ---------------------------------------------------------------
> Thanks! We'll be in touch soon.

Contributor guide

Open the contributing guide

Research direction

Start in src/azure_functions_agents/workflows/tools.py, inspect the workflow client operations and status_envelope(), then review the related tests and test doubles for the compatibility aliases. Replace the four client calls with the named native Durable APIs and adapt the OrchestrationState handling; done means the existing public workflow status response shape and behavior remain unchanged.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, python
Domain
api, backend, cloud
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.