Module engine

Module engine 

Source
Expand description

DAG executor — topological sort + per-layer runner.

Phase 1 is sequential per layer (one block at a time). Phase 2 parallelizes independent branches with tokio::spawn.

Structs§

RunHandle

Enums§

RunEvent
Streaming events emitted to the frontend during a run.

Functions§

block_kind_of 🔒
edge_is_active 🔒
True iff the given edge carries control + data flow under the current scope. See should_skip for the full ruleset.
execute 🔒
mark_state 🔒
now_ms 🔒
run_drone
Run the drone end-to-end. Returns a handle whose events channel surfaces per-block lifecycle, and a final_states mutex callers can snapshot for the run-history record.
should_skip 🔒
Decide whether node_id should be pruned given the per-run state.
topological_layers
Returns the layered topological order of the graph. Each layer is the set of blocks whose dependencies are already satisfied — independent branches run together.