[PR #64] [MERGED] feat: simplify the fan-in/fan-out logic #86

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

📋 Pull Request Information

Original PR: https://github.com/run-llama/workflows-py/pull/64
Author: @AstraBert
Created: 8/11/2025
Status: Merged
Merged: 8/22/2025
Merged by: @logan-markewich

Base: mainHead: clelia/simplify-fan-in-fan-out


📝 Commits (10+)

  • cb887cc feat: simplify fan-in/fan-out logic
  • bd1c6d6 docs: example notebook
  • b032212 docs: add documentation
  • a166b0f chore: add tests
  • c708bfa chore: implement suggestions
  • e91497b chore: events queue, methods renaming, ser-deser
  • 254e5d7 chore: naming and using directly a dict for events queue
  • bb521be chore: improve consistency by renaming collect_events and send_event
  • 62e03cb chore: clean up
  • ab9a1fa Merge branch 'main' into clelia/simplify-fan-in-fan-out

📊 Changes

10 files changed (+664 additions, -66 deletions)

View changed files

📝 examples/document_processing.ipynb (+7 -5)
examples/emitting_and_receiving_multiple_events.ipynb (+356 -0)
📝 examples/feature_walkthrough.ipynb (+4 -4)
📝 src/workflows/context/context.py (+135 -14)
📝 src/workflows/workflow.py (+1 -1)
📝 tests/context/test_context.py (+23 -22)
📝 tests/test_retry_policy.py (+1 -1)
📝 tests/test_workflow.py (+12 -16)
tests/test_workflow_send_gather.py (+123 -0)
📝 tests/test_workflow_typed_state.py (+2 -3)

📄 Description

Closes #36

With the introduction of the dispatch and receive methods, we simplify the logic behind the current fan-in/fan-out (or map-reduce) approach, as detailed in the referenced issue


🔄 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/64 **Author:** [@AstraBert](https://github.com/AstraBert) **Created:** 8/11/2025 **Status:** ✅ Merged **Merged:** 8/22/2025 **Merged by:** [@logan-markewich](https://github.com/logan-markewich) **Base:** `main` ← **Head:** `clelia/simplify-fan-in-fan-out` --- ### 📝 Commits (10+) - [`cb887cc`](https://github.com/run-llama/workflows-py/commit/cb887cc3845b9275105e2081c6dd02383fb5f7ee) feat: simplify fan-in/fan-out logic - [`bd1c6d6`](https://github.com/run-llama/workflows-py/commit/bd1c6d62789cdace199f5c09752f9541390def67) docs: example notebook - [`b032212`](https://github.com/run-llama/workflows-py/commit/b032212f917965018c06ad38a7bd6ec2ac808009) docs: add documentation - [`a166b0f`](https://github.com/run-llama/workflows-py/commit/a166b0fa35bf5b3298cc5c9885705bd3e8a7fd3c) chore: add tests - [`c708bfa`](https://github.com/run-llama/workflows-py/commit/c708bfa2535f695e4c4480534299b984f90c0da3) chore: implement suggestions - [`e91497b`](https://github.com/run-llama/workflows-py/commit/e91497bbad8504048b4659f06628c03ae1a58c0d) chore: events queue, methods renaming, ser-deser - [`254e5d7`](https://github.com/run-llama/workflows-py/commit/254e5d787f3241850d090d8bc7eb3eafa403dd08) chore: naming and using directly a dict for events queue - [`bb521be`](https://github.com/run-llama/workflows-py/commit/bb521beb03162b8a329f14bdc4206f04a376e5a5) chore: improve consistency by renaming collect_events and send_event - [`62e03cb`](https://github.com/run-llama/workflows-py/commit/62e03cb385b330f4b4e2675beff3788828db959f) chore: clean up - [`ab9a1fa`](https://github.com/run-llama/workflows-py/commit/ab9a1fa82caa77953c76c733034ed04479d55c32) Merge branch 'main' into clelia/simplify-fan-in-fan-out ### 📊 Changes **10 files changed** (+664 additions, -66 deletions) <details> <summary>View changed files</summary> 📝 `examples/document_processing.ipynb` (+7 -5) ➕ `examples/emitting_and_receiving_multiple_events.ipynb` (+356 -0) 📝 `examples/feature_walkthrough.ipynb` (+4 -4) 📝 `src/workflows/context/context.py` (+135 -14) 📝 `src/workflows/workflow.py` (+1 -1) 📝 `tests/context/test_context.py` (+23 -22) 📝 `tests/test_retry_policy.py` (+1 -1) 📝 `tests/test_workflow.py` (+12 -16) ➕ `tests/test_workflow_send_gather.py` (+123 -0) 📝 `tests/test_workflow_typed_state.py` (+2 -3) </details> ### 📄 Description Closes #36 With the introduction of the `dispatch` and `receive` methods, we simplify the logic behind the current fan-in/fan-out (or map-reduce) approach, as detailed in the referenced issue --- <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:16:32 -05:00
yindo closed this issue 2026-02-16 02:16:32 -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#86