Skip to content

refactor: simplify executor materialization and fallback logic#46

Merged
mvallebr merged 18 commits into
mainfrom
fix-memory-materializer-fallback
Jun 20, 2026
Merged

refactor: simplify executor materialization and fallback logic#46
mvallebr merged 18 commits into
mainfrom
fix-memory-materializer-fallback

Conversation

@mvallebr

@mvallebr mvallebr commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

This PR refines Synaflow's materialization model by pushing more planning into the compiled Dag and simplifying what the executors decide at runtime.

What changed:

  • resolve more materialization semantics at build time
  • centralize eager-materialization planning in Dag helpers instead of re-deriving it in sync/async executors
  • keep resolved materializer callables and consumer materialization metadata as part of the compiled contract
  • fix PEP 563 materializer-context regressions so runtime factories receive the resolved item type
  • add/adjust tests around build-time planning, runtime materialization behavior, and PEP 563 parity
  • trim executor tests that became redundant after the planning logic moved into Dag
  • update docs to reflect the stronger build-time vs run-time separation

Why:

  • reduce duplicated materialization logic across executors
  • make the Dag a clearer execution contract for custom runners and future runtime overrides
  • preserve sync/async parity while keeping runtime behavior simpler and more predictable

Validation:

  • uv run pytest

mvallebr added 18 commits June 19, 2026 18:38
@mvallebr mvallebr merged commit fdc8e0e into main Jun 20, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant