refactor: remove placeholder join step

This commit is contained in:
lda
2026-09-05 17:47:57 +07:00 Verified
parent 043bda6a34
commit cccdbc0a47
42 changed files with 88 additions and 309 deletions
-2
View File
@@ -11,7 +11,6 @@ from .models import (
InputPathBinding,
InputValueBinding,
InterruptNode,
JoinNode,
JsonValue,
LiteralExpression,
NodeDef,
@@ -89,7 +88,6 @@ __all__ = [
"InputValueBinding",
"InterruptRequest",
"InterruptRoute",
"JoinNode",
"JsonValue",
"LiteralExpression",
"NodeDef",
-2
View File
@@ -30,7 +30,6 @@ from wf_core.models.steps import (
ForeachItemErrorPolicy,
ForeachNode,
InterruptNode,
JoinNode,
NodeUse,
Step,
SubgraphNode,
@@ -54,7 +53,6 @@ __all__ = [
"InputExpressionBinding",
"InputPathBinding",
"InputValueBinding",
"JoinNode",
"JsonValue",
"LiteralExpression",
"LiteralOperand",
+1 -14
View File
@@ -293,13 +293,6 @@ class ForeachNode(BaseModel):
return GraphSourcePath("context", ("foreach", self.id, "index"))
class JoinNode(BaseModel):
"""Control-flow step that marks a branch or frame as joined."""
id: str
type: Literal["join"]
class EndNode(BaseModel):
"""Explicit workflow terminal that sets the workflow-level outcome.
@@ -411,13 +404,7 @@ class InterruptNode(BaseModel):
Step = Annotated[
NodeUse
| SubgraphNode
| ConditionNode
| ForeachNode
| JoinNode
| EndNode
| InterruptNode,
NodeUse | SubgraphNode | ConditionNode | ForeachNode | EndNode | InterruptNode,
Field(discriminator="type"),
]
"""Discriminated union of all executable workflow graph steps."""
-9
View File
@@ -41,15 +41,6 @@ def handle_condition_step(
)
def handle_join_step() -> StepExecutionResult:
return StepExecutionResult(
outcome="done",
resolved_input={},
output={},
state_changes={},
)
def handle_interrupt_step(
run: RunState,
step: InterruptNode,
-6
View File
@@ -10,7 +10,6 @@ from wf_core.models.steps import (
EndNode,
ForeachNode,
InterruptNode,
JoinNode,
NodeUse,
SubgraphNode,
)
@@ -22,7 +21,6 @@ from wf_core.runtime.ops.foreach import step_foreach
from wf_core.runtime.ops.handlers import (
handle_condition_step,
handle_interrupt_step,
handle_join_step,
)
from wf_core.runtime.ops.index import WorkflowIndex, build_workflow_index
from wf_core.runtime.ops.merges import ReducerDefinition
@@ -149,8 +147,6 @@ def step_workflow(
raise
elif isinstance(step, ConditionNode):
step_result = handle_condition_step(run, step)
elif isinstance(step, JoinNode):
step_result = handle_join_step()
elif isinstance(step, EndNode):
return complete_end_step(
run=run,
@@ -264,8 +260,6 @@ async def step_workflow_async(
raise
elif isinstance(step, ConditionNode):
step_result = handle_condition_step(run, step)
elif isinstance(step, JoinNode):
step_result = handle_join_step()
elif isinstance(step, EndNode):
return complete_end_step(
run=run,
-2
View File
@@ -19,8 +19,6 @@ def declared_outcomes_for_step(step: Step, node_defs: dict[str, NodeDef]) -> set
if step.item_error.action in {"skip", "collect"}:
outcomes.add("completed_with_errors")
return outcomes
if step.type == "join":
return {"done"}
if isinstance(step, EndNode):
return set()
if isinstance(step, InterruptNode):