[PR #348] [MERGED] Changes to facilitate pluggable server runtime #349

Closed
opened 2026-02-16 02:17:18 -05:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/run-llama/workflows-py/pull/348
Author: @adrianlyjak
Created: 2/9/2026
Status: Merged
Merged: 2/9/2026
Merged by: @adrianlyjak

Base: devHead: adrian/server-runtime-core


📝 Commits (5)

  • 7d173bf Changes to facilitate pluggable server runtime
  • 13049a8 Safeguard against switching runtime after workflow is launched on basic runtime
  • 016dfbc make nicer
  • 1925638 add changeset
  • 3e631d0 optional for 3.9

📊 Changes

15 files changed (+1011 additions, -228 deletions)

View changed files

.changeset/neat-chicken-bake.md (+5 -0)
📝 packages/llama-index-workflows/src/workflows/context/state_store.py (+146 -77)
📝 packages/llama-index-workflows/src/workflows/plugins/basic.py (+6 -6)
📝 packages/llama-index-workflows/src/workflows/runtime/control_loop.py (+2 -6)
📝 packages/llama-index-workflows/src/workflows/runtime/types/plugin.py (+78 -31)
📝 packages/llama-index-workflows/src/workflows/runtime/types/results.py (+63 -49)
packages/llama-index-workflows/src/workflows/runtime/types/serialization_helpers.py (+100 -0)
📝 packages/llama-index-workflows/src/workflows/runtime/types/step_function.py (+23 -17)
📝 packages/llama-index-workflows/src/workflows/runtime/types/ticks.py (+27 -22)
📝 packages/llama-index-workflows/src/workflows/workflow.py (+24 -0)
📝 packages/llama-index-workflows/tests/conftest.py (+7 -6)
📝 packages/llama-index-workflows/tests/runtime/conftest.py (+1 -1)
📝 packages/llama-index-workflows/tests/runtime/test_control_loop_transformations.py (+12 -13)
packages/llama-index-workflows/tests/runtime/test_tick_serialization.py (+269 -0)
packages/llama-index-workflows/tests/runtime/test_workflow_set_and_tracking.py (+248 -0)

📄 Description

  • Make WorkflowTick (mostly) serializable
  • Defer runtime registration until launch time
  • Add support for modifying a workflow runtime or name before the workflow or runtime is launched
  • Extract more state store utils for sharing boilerplate logic with alternate state stores

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/run-llama/workflows-py/pull/348 **Author:** [@adrianlyjak](https://github.com/adrianlyjak) **Created:** 2/9/2026 **Status:** ✅ Merged **Merged:** 2/9/2026 **Merged by:** [@adrianlyjak](https://github.com/adrianlyjak) **Base:** `dev` ← **Head:** `adrian/server-runtime-core` --- ### 📝 Commits (5) - [`7d173bf`](https://github.com/run-llama/workflows-py/commit/7d173bfe09ae006298aa935d32785ad4d69e3b4e) Changes to facilitate pluggable server runtime - [`13049a8`](https://github.com/run-llama/workflows-py/commit/13049a8caacfa0a9557df8f82162dd0b138f02bf) Safeguard against switching runtime after workflow is launched on basic runtime - [`016dfbc`](https://github.com/run-llama/workflows-py/commit/016dfbce5f4c7a7f7b47cdf6d7ac5530fbf5120b) make nicer - [`1925638`](https://github.com/run-llama/workflows-py/commit/192563865b3cc8640358d98e32d53ce7eac304ef) add changeset - [`3e631d0`](https://github.com/run-llama/workflows-py/commit/3e631d00ba89ef2f30a4eff867ebae6981e14275) optional for 3.9 ### 📊 Changes **15 files changed** (+1011 additions, -228 deletions) <details> <summary>View changed files</summary> ➕ `.changeset/neat-chicken-bake.md` (+5 -0) 📝 `packages/llama-index-workflows/src/workflows/context/state_store.py` (+146 -77) 📝 `packages/llama-index-workflows/src/workflows/plugins/basic.py` (+6 -6) 📝 `packages/llama-index-workflows/src/workflows/runtime/control_loop.py` (+2 -6) 📝 `packages/llama-index-workflows/src/workflows/runtime/types/plugin.py` (+78 -31) 📝 `packages/llama-index-workflows/src/workflows/runtime/types/results.py` (+63 -49) ➕ `packages/llama-index-workflows/src/workflows/runtime/types/serialization_helpers.py` (+100 -0) 📝 `packages/llama-index-workflows/src/workflows/runtime/types/step_function.py` (+23 -17) 📝 `packages/llama-index-workflows/src/workflows/runtime/types/ticks.py` (+27 -22) 📝 `packages/llama-index-workflows/src/workflows/workflow.py` (+24 -0) 📝 `packages/llama-index-workflows/tests/conftest.py` (+7 -6) 📝 `packages/llama-index-workflows/tests/runtime/conftest.py` (+1 -1) 📝 `packages/llama-index-workflows/tests/runtime/test_control_loop_transformations.py` (+12 -13) ➕ `packages/llama-index-workflows/tests/runtime/test_tick_serialization.py` (+269 -0) ➕ `packages/llama-index-workflows/tests/runtime/test_workflow_set_and_tracking.py` (+248 -0) </details> ### 📄 Description - Make `WorkflowTick` (mostly) serializable - Defer runtime registration until launch time - Add support for modifying a workflow runtime or name before the workflow or runtime is launched - Extract more state store utils for sharing boilerplate logic with alternate state stores --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-02-16 02:17:18 -05:00
yindo closed this issue 2026-02-16 02:17:18 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: run-llama/workflows-py#349