Azure / Azure/azure-functions-durable-js

Remove the `df` parameter from orchestration contexts

Open
#422 3 comments 0 reactions 0 assignees View on GitHub
breaking-change P3 types
Dominant language
TypeScript
Stars
142
Forks
66
Avg merge
3d 19h
Merged PRs (30d)
4

Description

Currently, all orchestration APIs are provided under a `df` parameter inside the `Context` object, e.g., `context.df.callActivity()`, `context.df.callSubOrchestration()`, `context.df.currentUtcDateTime`, etc.

Since all these durable APIs are a lot more relevant to the user than the other metadata (coming from Azure Functions directly) present in the context object, this issue is to explore whether we should provide the APIs directly in the Context object rather than nested inside a `df` property. We could also define our own type of orchestration context, picking only the relevant elements from the Functions context, instead of extending it.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the orchestration APIs exposed through the Context object's df property, including callActivity(), callSubOrchestration(), and currentUtcDateTime. Review how Context extends or receives Azure Functions metadata. Done requires deciding whether to flatten these APIs or introduce a dedicated orchestration context type, then documenting the selected API shape.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
backend-api-design
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.