azure-functions-durable 1.3.3__tar.gz → 1.4.0rc2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (341) hide show
  1. {azure-functions-durable-1.3.3/azure_functions_durable.egg-info → azure-functions-durable-1.4.0rc2}/PKG-INFO +6 -1
  2. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/README.md +5 -0
  3. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/__init__.py +8 -0
  4. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/decorators/durable_app.py +64 -1
  5. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/__init__.py +13 -0
  6. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/context.py +194 -0
  7. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/event_loop.py +17 -0
  8. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/exceptions.py +11 -0
  9. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/handoffs.py +67 -0
  10. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/model_invocation_activity.py +268 -0
  11. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/orchestrator_generator.py +67 -0
  12. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/runner.py +103 -0
  13. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/task_tracker.py +171 -0
  14. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/tools.py +148 -0
  15. azure-functions-durable-1.4.0rc2/azure/durable_functions/openai_agents/usage_telemetry.py +69 -0
  16. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2/azure_functions_durable.egg-info}/PKG-INFO +6 -1
  17. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure_functions_durable.egg-info/SOURCES.txt +39 -0
  18. azure-functions-durable-1.4.0rc2/docs/openai_agents/README.md +22 -0
  19. azure-functions-durable-1.4.0rc2/docs/openai_agents/getting-started.md +193 -0
  20. azure-functions-durable-1.4.0rc2/docs/openai_agents/reference.md +138 -0
  21. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/requirements.txt +5 -2
  22. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/.funcignore +8 -0
  23. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/.gitignore +128 -0
  24. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/README.md +44 -0
  25. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/__init__.py +3 -0
  26. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/basic/agent_lifecycle_example.py +97 -0
  27. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/basic/dynamic_system_prompt.py +42 -0
  28. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/basic/hello_world.py +16 -0
  29. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/basic/lifecycle_example.py +119 -0
  30. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/basic/local_image.py +21 -0
  31. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/basic/non_strict_output_type.py +27 -0
  32. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/basic/previous_response_id.py +23 -0
  33. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/basic/remote_image.py +20 -0
  34. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/basic/tools.py +31 -0
  35. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/function_app.py +117 -0
  36. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/handoffs/message_filter.py +175 -0
  37. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/host.json +24 -0
  38. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/local.settings.json.template +10 -0
  39. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/requirements.txt +10 -0
  40. azure-functions-durable-1.4.0rc2/samples-v2/openai_agents/test_orchestrators.py +371 -0
  41. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/setup.py +1 -1
  42. azure-functions-durable-1.4.0rc2/tests/openai_agents/test_context.py +466 -0
  43. azure-functions-durable-1.4.0rc2/tests/openai_agents/test_task_tracker.py +290 -0
  44. azure-functions-durable-1.4.0rc2/tests/openai_agents/test_usage_telemetry.py +99 -0
  45. azure-functions-durable-1.4.0rc2/tests/orchestrator/openai_agents/test_openai_agents.py +316 -0
  46. azure-functions-durable-1.4.0rc2/tests/tasks/__init__.py +0 -0
  47. azure-functions-durable-1.4.0rc2/tests/test_utils/__init__.py +0 -0
  48. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.devcontainer/devcontainer.json +0 -0
  49. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.devcontainer/setup.sh +0 -0
  50. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.flake8 +0 -0
  51. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.github/ISSUE_TEMPLATE/----feature-request.md +0 -0
  52. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.github/ISSUE_TEMPLATE/---bug-report.md +0 -0
  53. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.github/policies/resourceManagement.yml +0 -0
  54. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.github/workflows/codeQL.yml +0 -0
  55. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.github/workflows/durable_python_action.yml +0 -0
  56. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.github/workflows/submodule-sync.yml +0 -0
  57. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.github/workflows/validate.yml +0 -0
  58. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/.gitignore +0 -0
  59. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/CHANGELOG.md +0 -0
  60. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/CODEOWNERS +0 -0
  61. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/CONTRIBUTING.md +0 -0
  62. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/LICENSE +0 -0
  63. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/MANIFEST.in +0 -0
  64. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/SECURITY.md +0 -0
  65. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/__init__.py +0 -0
  66. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/constants.py +0 -0
  67. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/decorators/__init__.py +0 -0
  68. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/decorators/metadata.py +0 -0
  69. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/entity.py +0 -0
  70. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/DurableEntityContext.py +0 -0
  71. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/DurableHttpRequest.py +0 -0
  72. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/DurableOrchestrationBindings.py +0 -0
  73. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/DurableOrchestrationClient.py +0 -0
  74. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/DurableOrchestrationContext.py +0 -0
  75. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/DurableOrchestrationStatus.py +0 -0
  76. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/EntityStateResponse.py +0 -0
  77. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/FunctionContext.py +0 -0
  78. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/OrchestrationRuntimeStatus.py +0 -0
  79. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/OrchestratorState.py +0 -0
  80. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/PurgeHistoryResult.py +0 -0
  81. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/ReplaySchema.py +0 -0
  82. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/RetryOptions.py +0 -0
  83. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/RpcManagementOptions.py +0 -0
  84. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/Task.py +0 -0
  85. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/TaskOrchestrationExecutor.py +0 -0
  86. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/TokenSource.py +0 -0
  87. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/__init__.py +0 -0
  88. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/Action.py +0 -0
  89. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/ActionType.py +0 -0
  90. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/CallActivityAction.py +0 -0
  91. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/CallActivityWithRetryAction.py +0 -0
  92. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/CallEntityAction.py +0 -0
  93. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/CallHttpAction.py +0 -0
  94. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/CallSubOrchestratorAction.py +0 -0
  95. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/CallSubOrchestratorWithRetryAction.py +0 -0
  96. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/CompoundAction.py +0 -0
  97. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/ContinueAsNewAction.py +0 -0
  98. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/CreateTimerAction.py +0 -0
  99. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/NoOpAction.py +0 -0
  100. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/SignalEntityAction.py +0 -0
  101. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/WaitForExternalEventAction.py +0 -0
  102. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/WhenAllAction.py +0 -0
  103. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/WhenAnyAction.py +0 -0
  104. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/actions/__init__.py +0 -0
  105. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/entities/EntityState.py +0 -0
  106. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/entities/OperationResult.py +0 -0
  107. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/entities/RequestMessage.py +0 -0
  108. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/entities/ResponseMessage.py +0 -0
  109. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/entities/Signal.py +0 -0
  110. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/entities/__init__.py +0 -0
  111. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/history/HistoryEvent.py +0 -0
  112. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/history/HistoryEventType.py +0 -0
  113. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/history/__init__.py +0 -0
  114. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/utils/__init__.py +0 -0
  115. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/utils/entity_utils.py +0 -0
  116. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/utils/http_utils.py +0 -0
  117. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/models/utils/json_utils.py +0 -0
  118. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/orchestrator.py +0 -0
  119. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/testing/OrchestratorGeneratorWrapper.py +0 -0
  120. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure/durable_functions/testing/__init__.py +0 -0
  121. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure-pipelines-release.yml +0 -0
  122. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure-pipelines.yml +0 -0
  123. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure_functions_durable.egg-info/dependency_links.txt +0 -0
  124. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure_functions_durable.egg-info/requires.txt +0 -0
  125. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/azure_functions_durable.egg-info/top_level.txt +0 -0
  126. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/eng/ci/code-mirror.yml +0 -0
  127. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/eng/ci/official-build.yml +0 -0
  128. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/eng/templates/build.yml +0 -0
  129. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/host.json +0 -0
  130. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/noxfile.py +0 -0
  131. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/.funcignore +0 -0
  132. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/.gitignore +0 -0
  133. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/aml_durable_orchestrator/__init__.py +0 -0
  134. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/aml_durable_orchestrator/function.json +0 -0
  135. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/aml_pipeline/__init__.py +0 -0
  136. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/aml_pipeline/function.json +0 -0
  137. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/aml_poll_status/__init__.py +0 -0
  138. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/aml_poll_status/function.json +0 -0
  139. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/extensions.csproj +0 -0
  140. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/host.json +0 -0
  141. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/local.settings.json +0 -0
  142. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/proxies.json +0 -0
  143. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/requirements.txt +0 -0
  144. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/shared/__init__.py +0 -0
  145. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/shared/aml_helper.py +0 -0
  146. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/aml_monitoring/shared/auth_helper.py +0 -0
  147. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/.funcignore +0 -0
  148. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/.gitignore +0 -0
  149. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/Counter/__init__.py +0 -0
  150. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/Counter/function.json +0 -0
  151. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/DurableOrchestration/__init__.py +0 -0
  152. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/DurableOrchestration/function.json +0 -0
  153. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/DurableTrigger/__init__.py +0 -0
  154. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/DurableTrigger/function.json +0 -0
  155. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/README.md +0 -0
  156. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/RetrieveEntity/__init__.py +0 -0
  157. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/RetrieveEntity/function.json +0 -0
  158. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/host.json +0 -0
  159. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/local.settings.json +0 -0
  160. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/counter_entity/requirements.txt +0 -0
  161. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/.funcignore +0 -0
  162. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/.gitignore +0 -0
  163. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/E2_BackupSiteContent/__init__.py +0 -0
  164. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/E2_BackupSiteContent/function.json +0 -0
  165. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/E2_CopyFileToBlob/__init__.py +0 -0
  166. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/E2_CopyFileToBlob/function.json +0 -0
  167. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/E2_GetFileList/__init__.py +0 -0
  168. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/E2_GetFileList/function.json +0 -0
  169. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/HttpStart/__init__.py +0 -0
  170. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/HttpStart/function.json +0 -0
  171. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/README.md +0 -0
  172. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/host.json +0 -0
  173. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/local.settings.json +0 -0
  174. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/proxies.json +0 -0
  175. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/fan_in_fan_out/requirements.txt +0 -0
  176. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/.funcignore +0 -0
  177. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/.gitignore +0 -0
  178. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/E1_HelloSequence/__init__.py +0 -0
  179. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/E1_HelloSequence/function.json +0 -0
  180. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/E1_SayHello/__init__.py +0 -0
  181. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/E1_SayHello/function.json +0 -0
  182. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/HttpStart/__init__.py +0 -0
  183. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/HttpStart/function.json +0 -0
  184. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/README.md +0 -0
  185. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/host.json +0 -0
  186. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/local.settings.json +0 -0
  187. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/proxies.json +0 -0
  188. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining/requirements.txt +0 -0
  189. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/.funcignore +0 -0
  190. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/.gitignore +0 -0
  191. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/DurableActivity/__init__.py +0 -0
  192. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/DurableActivity/function.json +0 -0
  193. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/DurableOrchestration/__init__.py +0 -0
  194. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/DurableOrchestration/function.json +0 -0
  195. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/DurableTrigger/__init__.py +0 -0
  196. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/DurableTrigger/function.json +0 -0
  197. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/README.md +0 -0
  198. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/host.json +0 -0
  199. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/local.settings.json +0 -0
  200. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/proxies.json +0 -0
  201. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/function_chaining_custom_status/requirements.txt +0 -0
  202. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/.funcignore +0 -0
  203. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/.gitignore +0 -0
  204. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/E4_SMSPhoneVerification/__init__.py +0 -0
  205. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/E4_SMSPhoneVerification/function.json +0 -0
  206. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/HttpStart/__init__.py +0 -0
  207. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/HttpStart/function.json +0 -0
  208. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/README.md +0 -0
  209. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/SendSMSChallenge/__init__.py +0 -0
  210. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/SendSMSChallenge/function.json +0 -0
  211. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/host.json +0 -0
  212. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/local.settings.json +0 -0
  213. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/proxies.json +0 -0
  214. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/human_interaction/requirements.txt +0 -0
  215. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/.funcignore +0 -0
  216. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/.gitignore +0 -0
  217. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/E3_Monitor/__init__.py +0 -0
  218. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/E3_Monitor/function.json +0 -0
  219. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/E3_SendAlert/__init__.py +0 -0
  220. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/E3_SendAlert/function.json +0 -0
  221. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/E3_TooManyOpenIssues/__init__.py +0 -0
  222. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/E3_TooManyOpenIssues/function.json +0 -0
  223. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/HttpStart/__init__.py +0 -0
  224. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/HttpStart/function.json +0 -0
  225. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/README.md +0 -0
  226. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/host.json +0 -0
  227. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/local.settings.json +0 -0
  228. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/proxies.json +0 -0
  229. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/monitor/requirements.txt +0 -0
  230. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/.gitignore +0 -0
  231. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/DurableActivity/__init__.py +0 -0
  232. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/DurableActivity/function.json +0 -0
  233. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/DurableOrchestration/__init__.py +0 -0
  234. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/DurableOrchestration/function.json +0 -0
  235. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/DurableTrigger/__init__.py +0 -0
  236. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/DurableTrigger/function.json +0 -0
  237. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/README.md +0 -0
  238. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/host.json +0 -0
  239. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/local.settings.json +0 -0
  240. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/requirements.txt +0 -0
  241. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/serialize_arguments/shared_code/MyClasses.py +0 -0
  242. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/.funcignore +0 -0
  243. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/.gitignore +0 -0
  244. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/DurableFunctionsHttpStart/__init__.py +0 -0
  245. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/DurableFunctionsHttpStart/function.json +0 -0
  246. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/DurableOrchestrator/__init__.py +0 -0
  247. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/DurableOrchestrator/function.json +0 -0
  248. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/DurableSubOrchestrator/__init__.py +0 -0
  249. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/DurableSubOrchestrator/function.json +0 -0
  250. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/Hello/__init__.py +0 -0
  251. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/Hello/function.json +0 -0
  252. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/README.md +0 -0
  253. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/host.json +0 -0
  254. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/local.settings.json +0 -0
  255. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/proxies.json +0 -0
  256. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples/simple_sub_orchestration/requirements.txt +0 -0
  257. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/blueprint/.funcignore +0 -0
  258. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/blueprint/.gitignore +0 -0
  259. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/blueprint/durable_blueprints.py +0 -0
  260. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/blueprint/function_app.py +0 -0
  261. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/blueprint/host.json +0 -0
  262. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/blueprint/requirements.txt +0 -0
  263. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/blueprint/tests/readme.md +0 -0
  264. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/blueprint/tests/test_my_orchestrator.py +0 -0
  265. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/blueprint/tests/test_say_hello.py +0 -0
  266. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/blueprint/tests/test_start_orchestrator.py +0 -0
  267. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/.funcignore +0 -0
  268. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/.gitignore +0 -0
  269. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/README.md +0 -0
  270. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/function_app.py +0 -0
  271. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/host.json +0 -0
  272. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/proxies.json +0 -0
  273. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/requirements.txt +0 -0
  274. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/tests/readme.md +0 -0
  275. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/tests/test_E2_BackupSiteContent.py +0 -0
  276. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/tests/test_E2_CopyFileToBlob.py +0 -0
  277. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/tests/test_E2_GetFileList.py +0 -0
  278. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/fan_in_fan_out/tests/test_HttpStart.py +0 -0
  279. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/.funcignore +0 -0
  280. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/.gitignore +0 -0
  281. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/README.md +0 -0
  282. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/function_app.py +0 -0
  283. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/host.json +0 -0
  284. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/proxies.json +0 -0
  285. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/requirements.txt +0 -0
  286. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/tests/readme.md +0 -0
  287. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/tests/test_http_start.py +0 -0
  288. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/tests/test_my_orchestrator.py +0 -0
  289. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/function_chaining/tests/test_say_hello.py +0 -0
  290. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/orchestration_versioning/.funcignore +0 -0
  291. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/orchestration_versioning/.gitignore +0 -0
  292. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/orchestration_versioning/README.md +0 -0
  293. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/orchestration_versioning/function_app.py +0 -0
  294. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/orchestration_versioning/host.json +0 -0
  295. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/samples-v2/orchestration_versioning/requirements.txt +0 -0
  296. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/scripts/sample_deploy.sh +0 -0
  297. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/setup.cfg +0 -0
  298. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/__init__.py +0 -0
  299. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/conftest.py +0 -0
  300. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/models/__init__.py +0 -0
  301. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/models/test_DecoratorMetadata.py +0 -0
  302. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/models/test_Decorators.py +0 -0
  303. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/models/test_DurableOrchestrationBindings.py +0 -0
  304. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/models/test_DurableOrchestrationClient.py +0 -0
  305. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/models/test_DurableOrchestrationContext.py +0 -0
  306. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/models/test_DurableOrchestrationStatus.py +0 -0
  307. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/models/test_OrchestrationState.py +0 -0
  308. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/models/test_RpcManagementOptions.py +0 -0
  309. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/models/test_TokenSource.py +0 -0
  310. {azure-functions-durable-1.3.3/tests/orchestrator → azure-functions-durable-1.4.0rc2/tests/openai_agents}/__init__.py +0 -0
  311. {azure-functions-durable-1.3.3/tests/tasks → azure-functions-durable-1.4.0rc2/tests/orchestrator}/__init__.py +0 -0
  312. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/models/OrchestrationInstance.py +0 -0
  313. {azure-functions-durable-1.3.3/tests/test_utils → azure-functions-durable-1.4.0rc2/tests/orchestrator/openai_agents}/__init__.py +0 -0
  314. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/orchestrator_test_utils.py +0 -0
  315. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/schemas/OrchetrationStateSchema.py +0 -0
  316. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_call_http.py +0 -0
  317. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_continue_as_new.py +0 -0
  318. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_create_timer.py +0 -0
  319. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_entity.py +0 -0
  320. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_external_event.py +0 -0
  321. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_fan_out_fan_in.py +0 -0
  322. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_is_replaying_flag.py +0 -0
  323. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_retries.py +0 -0
  324. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_sequential_orchestrator.py +0 -0
  325. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_sequential_orchestrator_custom_status.py +0 -0
  326. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_sequential_orchestrator_with_retry.py +0 -0
  327. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_serialization.py +0 -0
  328. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_sub_orchestrator.py +0 -0
  329. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_sub_orchestrator_with_retry.py +0 -0
  330. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/orchestrator/test_task_any.py +0 -0
  331. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/tasks/tasks_test_utils.py +0 -0
  332. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/tasks/test_long_timers.py +0 -0
  333. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/tasks/test_new_uuid.py +0 -0
  334. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/test_constants.py +0 -0
  335. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/test_utils/ContextBuilder.py +0 -0
  336. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/test_utils/EntityContextBuilder.py +0 -0
  337. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/test_utils/constants.py +0 -0
  338. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/test_utils/json_utils.py +0 -0
  339. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/test_utils/testClasses.py +0 -0
  340. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/utils/__init__.py +0 -0
  341. {azure-functions-durable-1.3.3 → azure-functions-durable-1.4.0rc2}/tests/utils/test_entity_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: azure-functions-durable
3
- Version: 1.3.3
3
+ Version: 1.4.0rc2
4
4
  Summary: Durable Functions For Python
5
5
  Home-page: https://github.com/Azure/azure-functions-durable-python
6
6
  Author: Azure Functions team at Microsoft Corp.
@@ -51,4 +51,9 @@ Follow these instructions to get started with Durable Functions in Python:
51
51
 
52
52
  * Python Durable Functions requires [Azure Functions Core Tools](https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local) version 3.0.2630 or higher.
53
53
 
54
+ ## Durable OpenAI Agents (Preview)
55
+
56
+ Build resilient, stateful AI agents backed by Durable Functions orchestration—see the full documentation at [docs/openai_agents/README.md](docs/openai_agents/README.md).
57
+
58
+
54
59
 
@@ -28,3 +28,8 @@ Follow these instructions to get started with Durable Functions in Python:
28
28
  ## Tooling
29
29
 
30
30
  * Python Durable Functions requires [Azure Functions Core Tools](https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local) version 3.0.2630 or higher.
31
+
32
+ ## Durable OpenAI Agents (Preview)
33
+
34
+ Build resilient, stateful AI agents backed by Durable Functions orchestration—see the full documentation at [docs/openai_agents/README.md](docs/openai_agents/README.md).
35
+
@@ -79,3 +79,11 @@ try:
79
79
  __all__.append('Blueprint')
80
80
  except ModuleNotFoundError:
81
81
  pass
82
+
83
+ # Import OpenAI Agents integration (optional dependency)
84
+ try:
85
+ from . import openai_agents # noqa
86
+ __all__.append('openai_agents')
87
+ except ImportError:
88
+ # OpenAI agents integration requires additional dependencies
89
+ pass
@@ -1,6 +1,8 @@
1
1
  # Copyright (c) Microsoft Corporation. All rights reserved.
2
2
  # Licensed under the MIT License.
3
- from .metadata import OrchestrationTrigger, ActivityTrigger, EntityTrigger,\
3
+
4
+ from azure.durable_functions.models.RetryOptions import RetryOptions
5
+ from .metadata import OrchestrationTrigger, ActivityTrigger, EntityTrigger, \
4
6
  DurableClient
5
7
  from typing import Callable, Optional
6
8
  from azure.durable_functions.entity import Entity
@@ -45,6 +47,7 @@ class Blueprint(TriggerApi, BindingApi, SettingsApi):
45
47
  New instance of a Durable Functions app
46
48
  """
47
49
  super().__init__(auth_level=http_auth_level)
50
+ self._is_durable_openai_agent_setup = False
48
51
 
49
52
  def _configure_entity_callable(self, wrap) -> Callable:
50
53
  """Obtain decorator to construct an Entity class from a user-defined Function.
@@ -250,6 +253,66 @@ class Blueprint(TriggerApi, BindingApi, SettingsApi):
250
253
 
251
254
  return wrap
252
255
 
256
+ def _create_invoke_model_activity(self, model_provider, activity_name):
257
+ """Create and register the invoke_model_activity function with the provided FunctionApp."""
258
+
259
+ @self.activity_trigger(input_name="input", activity=activity_name)
260
+ async def run_model_activity(input: str):
261
+ from azure.durable_functions.openai_agents.orchestrator_generator\
262
+ import durable_openai_agent_activity
263
+
264
+ return await durable_openai_agent_activity(input, model_provider)
265
+
266
+ return run_model_activity
267
+
268
+ def _setup_durable_openai_agent(self, model_provider, activity_name):
269
+ if not self._is_durable_openai_agent_setup:
270
+ self._create_invoke_model_activity(model_provider, activity_name)
271
+ self._is_durable_openai_agent_setup = True
272
+
273
+ def durable_openai_agent_orchestrator(
274
+ self,
275
+ _func=None,
276
+ *,
277
+ model_provider=None,
278
+ model_retry_options: Optional[RetryOptions] = RetryOptions(
279
+ first_retry_interval_in_milliseconds=2000, max_number_of_attempts=5
280
+ ),
281
+ ):
282
+ """Decorate Azure Durable Functions orchestrators that use OpenAI Agents.
283
+
284
+ Parameters
285
+ ----------
286
+ model_provider: Optional[ModelProvider]
287
+ Use a non-default ModelProvider instead of the default OpenAIProvider,
288
+ such as when testing.
289
+ """
290
+ from agents import ModelProvider
291
+ from azure.durable_functions.openai_agents.orchestrator_generator\
292
+ import durable_openai_agent_orchestrator_generator
293
+
294
+ if model_provider is not None and type(model_provider) is not ModelProvider:
295
+ raise TypeError("Provided model provider must be of type ModelProvider")
296
+
297
+ activity_name = "run_model"
298
+
299
+ self._setup_durable_openai_agent(model_provider, activity_name)
300
+
301
+ def generator_wrapper_wrapper(func):
302
+
303
+ @wraps(func)
304
+ def generator_wrapper(context):
305
+ return durable_openai_agent_orchestrator_generator(
306
+ func, context, model_retry_options, activity_name
307
+ )
308
+
309
+ return generator_wrapper
310
+
311
+ if _func is None:
312
+ return generator_wrapper_wrapper
313
+ else:
314
+ return generator_wrapper_wrapper(_func)
315
+
253
316
 
254
317
  class DFApp(Blueprint, FunctionRegister):
255
318
  """Durable Functions (DF) app.
@@ -0,0 +1,13 @@
1
+ # Copyright (c) Microsoft Corporation. All rights reserved.
2
+ # Licensed under the MIT License.
3
+ """OpenAI Agents integration for Durable Functions.
4
+
5
+ This module provides decorators and utilities to integrate OpenAI Agents
6
+ with Durable Functions orchestration patterns.
7
+ """
8
+
9
+ from .context import DurableAIAgentContext
10
+
11
+ __all__ = [
12
+ 'DurableAIAgentContext',
13
+ ]
@@ -0,0 +1,194 @@
1
+ # Copyright (c) Microsoft Corporation. All rights reserved.
2
+ # Licensed under the MIT License.
3
+ import json
4
+ from typing import Any, Callable, Optional, TYPE_CHECKING, Union
5
+
6
+ from azure.durable_functions.models.DurableOrchestrationContext import (
7
+ DurableOrchestrationContext,
8
+ )
9
+ from azure.durable_functions.models.RetryOptions import RetryOptions
10
+
11
+ from agents import RunContextWrapper, Tool
12
+ from agents.function_schema import function_schema
13
+ from agents.tool import FunctionTool
14
+
15
+ from azure.durable_functions.models.Task import TaskBase
16
+ from .task_tracker import TaskTracker
17
+
18
+
19
+ if TYPE_CHECKING:
20
+ # At type-check time we want all members / signatures for IDE & linters.
21
+ _BaseDurableContext = DurableOrchestrationContext
22
+ else:
23
+ class _BaseDurableContext: # lightweight runtime stub
24
+ """Runtime stub base class for delegation; real context is wrapped.
25
+
26
+ At runtime we avoid inheriting from DurableOrchestrationContext so that
27
+ attribute lookups for its members are delegated via __getattr__ to the
28
+ wrapped ``_context`` instance.
29
+ """
30
+
31
+ __slots__ = ()
32
+
33
+
34
+ class DurableAIAgentContext(_BaseDurableContext):
35
+ """Context for AI agents running in Azure Durable Functions orchestration.
36
+
37
+ Design
38
+ ------
39
+ * Static analysis / IDEs: Appears to subclass ``DurableOrchestrationContext`` so
40
+ you get autocompletion and type hints (under TYPE_CHECKING branch).
41
+ * Runtime: Inherits from a trivial stub. All durable orchestration operations
42
+ are delegated to the real ``DurableOrchestrationContext`` instance provided
43
+ as ``context`` and stored in ``_context``.
44
+
45
+ Consequences
46
+ ------------
47
+ * ``isinstance(DurableAIAgentContext, DurableOrchestrationContext)`` is **False** at
48
+ runtime (expected).
49
+ * Delegation via ``__getattr__`` works for every member of the real context.
50
+ * No reliance on internal initialization side-effects of the durable SDK.
51
+ """
52
+
53
+ def __init__(
54
+ self,
55
+ context: DurableOrchestrationContext,
56
+ task_tracker: TaskTracker,
57
+ model_retry_options: Optional[RetryOptions],
58
+ ):
59
+ self._context = context
60
+ self._task_tracker = task_tracker
61
+ self._model_retry_options = model_retry_options
62
+
63
+ def call_activity(
64
+ self, name: Union[str, Callable], input_: Optional[Any] = None
65
+ ) -> TaskBase:
66
+ """Schedule an activity for execution.
67
+
68
+ Parameters
69
+ ----------
70
+ name: str | Callable
71
+ Either the name of the activity function to call, as a string or,
72
+ in the Python V2 programming model, the activity function itself.
73
+ input_: Optional[Any]
74
+ The JSON-serializable input to pass to the activity function.
75
+
76
+ Returns
77
+ -------
78
+ Task
79
+ A Durable Task that completes when the called activity function completes or fails.
80
+ """
81
+ task = self._context.call_activity(name, input_)
82
+ self._task_tracker.record_activity_call()
83
+ return task
84
+
85
+ def call_activity_with_retry(
86
+ self,
87
+ name: Union[str, Callable],
88
+ retry_options: RetryOptions,
89
+ input_: Optional[Any] = None,
90
+ ) -> TaskBase:
91
+ """Schedule an activity for execution with retry options.
92
+
93
+ Parameters
94
+ ----------
95
+ name: str | Callable
96
+ Either the name of the activity function to call, as a string or,
97
+ in the Python V2 programming model, the activity function itself.
98
+ retry_options: RetryOptions
99
+ The retry options for the activity function.
100
+ input_: Optional[Any]
101
+ The JSON-serializable input to pass to the activity function.
102
+
103
+ Returns
104
+ -------
105
+ Task
106
+ A Durable Task that completes when the called activity function completes or
107
+ fails completely.
108
+ """
109
+ task = self._context.call_activity_with_retry(name, retry_options, input_)
110
+ self._task_tracker.record_activity_call()
111
+ return task
112
+
113
+ def create_activity_tool(
114
+ self,
115
+ activity_func: Callable,
116
+ *,
117
+ description: Optional[str] = None,
118
+ retry_options: Optional[RetryOptions] = RetryOptions(
119
+ first_retry_interval_in_milliseconds=2000, max_number_of_attempts=5
120
+ ),
121
+ ) -> Tool:
122
+ """Convert an Azure Durable Functions activity to an OpenAI Agents SDK Tool.
123
+
124
+ Args
125
+ ----
126
+ activity_func: The Azure Functions activity function to convert
127
+ description: Optional description override for the tool
128
+ retry_options: The retry options for the activity function
129
+
130
+ Returns
131
+ -------
132
+ Tool: An OpenAI Agents SDK Tool object
133
+
134
+ """
135
+ if activity_func._function is None:
136
+ raise ValueError("The provided function is not a valid Azure Function.")
137
+
138
+ if (activity_func._function._trigger is not None
139
+ and activity_func._function._trigger.activity is not None):
140
+ activity_name = activity_func._function._trigger.activity
141
+ else:
142
+ activity_name = activity_func._function._name
143
+
144
+ input_name = None
145
+ if (activity_func._function._trigger is not None
146
+ and hasattr(activity_func._function._trigger, 'name')):
147
+ input_name = activity_func._function._trigger.name
148
+
149
+ async def run_activity(ctx: RunContextWrapper[Any], input: str) -> Any:
150
+ # Parse JSON input and extract the named value if input_name is specified
151
+ activity_input = input
152
+ if input_name:
153
+ try:
154
+ parsed_input = json.loads(input)
155
+ if isinstance(parsed_input, dict) and input_name in parsed_input:
156
+ activity_input = parsed_input[input_name]
157
+ # If parsing fails or the named parameter is not found, pass the original input
158
+ except (json.JSONDecodeError, TypeError):
159
+ pass
160
+
161
+ if retry_options:
162
+ result = self._task_tracker.get_activity_call_result_with_retry(
163
+ activity_name, retry_options, activity_input
164
+ )
165
+ else:
166
+ result = self._task_tracker.get_activity_call_result(activity_name, activity_input)
167
+ return result
168
+
169
+ schema = function_schema(
170
+ func=activity_func._function._func,
171
+ docstring_style=None,
172
+ description_override=description,
173
+ use_docstring_info=True,
174
+ strict_json_schema=True,
175
+ )
176
+
177
+ return FunctionTool(
178
+ name=schema.name,
179
+ description=schema.description or "",
180
+ params_json_schema=schema.params_json_schema,
181
+ on_invoke_tool=run_activity,
182
+ strict_json_schema=True,
183
+ )
184
+
185
+ def __getattr__(self, name):
186
+ """Delegate missing attributes to the underlying DurableOrchestrationContext."""
187
+ try:
188
+ return getattr(self._context, name)
189
+ except AttributeError:
190
+ raise AttributeError(f"'{type(self).__name__}' object has no attribute '{name}'")
191
+
192
+ def __dir__(self):
193
+ """Improve introspection and tab-completion by including delegated attributes."""
194
+ return sorted(set(dir(type(self)) + list(self.__dict__) + dir(self._context)))
@@ -0,0 +1,17 @@
1
+ # Copyright (c) Microsoft Corporation. All rights reserved.
2
+ # Licensed under the MIT License.
3
+ import asyncio
4
+
5
+
6
+ def ensure_event_loop():
7
+ """Ensure an event loop is available for sync execution context.
8
+
9
+ This is necessary when calling Runner.run_sync from Azure Functions
10
+ Durable orchestrators, which run in a synchronous context but need
11
+ an event loop for internal async operations.
12
+ """
13
+ try:
14
+ asyncio.get_running_loop()
15
+ except RuntimeError:
16
+ loop = asyncio.new_event_loop()
17
+ asyncio.set_event_loop(loop)
@@ -0,0 +1,11 @@
1
+ # Copyright (c) Microsoft Corporation. All rights reserved.
2
+ # Licensed under the MIT License.
3
+ from azure.durable_functions.models.Task import TaskBase
4
+
5
+
6
+ class YieldException(BaseException):
7
+ """Exception raised when an orchestrator should yield control."""
8
+
9
+ def __init__(self, task: TaskBase):
10
+ super().__init__("Orchestrator should yield.")
11
+ self.task = task
@@ -0,0 +1,67 @@
1
+ # Copyright (c) Microsoft Corporation. All rights reserved.
2
+ # Licensed under the MIT License.
3
+ """Handoff conversion utilities for Azure Durable Functions OpenAI agent operations."""
4
+
5
+ from typing import Any
6
+
7
+ from agents import Handoff
8
+ from pydantic import BaseModel
9
+
10
+
11
+ class DurableHandoff(BaseModel):
12
+ """Serializable representation of a Handoff.
13
+
14
+ Contains only the data needed by the model execution to
15
+ determine what to handoff to, not the actual handoff invocation.
16
+ """
17
+
18
+ tool_name: str
19
+ tool_description: str
20
+ input_json_schema: dict[str, Any]
21
+ agent_name: str
22
+ strict_json_schema: bool = True
23
+
24
+ @classmethod
25
+ def from_handoff(cls, handoff: Handoff) -> "DurableHandoff":
26
+ """Create a DurableHandoff from an OpenAI agent Handoff.
27
+
28
+ This method converts OpenAI agent Handoff instances into serializable
29
+ DurableHandoff objects for use within Azure Durable Functions.
30
+
31
+ Parameters
32
+ ----------
33
+ handoff : Handoff
34
+ The OpenAI agent Handoff to convert
35
+
36
+ Returns
37
+ -------
38
+ DurableHandoff
39
+ A serializable handoff representation
40
+ """
41
+ return cls(
42
+ tool_name=handoff.tool_name,
43
+ tool_description=handoff.tool_description,
44
+ input_json_schema=handoff.input_json_schema,
45
+ agent_name=handoff.agent_name,
46
+ strict_json_schema=handoff.strict_json_schema,
47
+ )
48
+
49
+ def to_handoff(self) -> Handoff[Any, Any]:
50
+ """Create an OpenAI agent Handoff instance from this DurableHandoff.
51
+
52
+ This method converts the serializable DurableHandoff back into an
53
+ OpenAI agent Handoff instance for execution.
54
+
55
+ Returns
56
+ -------
57
+ Handoff
58
+ OpenAI agent Handoff instance
59
+ """
60
+ return Handoff(
61
+ tool_name=self.tool_name,
62
+ tool_description=self.tool_description,
63
+ input_json_schema=self.input_json_schema,
64
+ agent_name=self.agent_name,
65
+ strict_json_schema=self.strict_json_schema,
66
+ on_invoke_handoff=lambda ctx, input: None,
67
+ )