Implements the GATE-FAN-IN gateway. The aggregation counterpart to
GATE-FAN-OUT. Waits for all child worker instances spawned by the
corresponding fan-out node to complete, then merges their results back
into the parent workflow context. Currently registered in the node registry
but the execution body is a pass-through placeholder.
| Node Type | Icon | BPMN | Status |
|---|---|---|---|
GATE-FAN-IN |
◇« |
Complex Gateway (Fan-In) | Placeholder |
GATE-FAN-OUT finish.run_context.current_result.Pairs with GATE-FAN-OUT for workload distribution.
Acts as a pass-through: returns run_context and current_result unchanged.
No aggregation logic is executed.
-- Bulk processing scaffold (fan-in not yet active)
INSERT INTO def_workflows
(WorkflowName, Package, Rank, Type, Name, BranchDirect)
VALUES
('BULK_WF', 'core', 10, 'GATE-FAN-OUT', 'Distribute', NULL),
('BULK_WF', 'core', 20, 'SERVICE', 'Worker', NULL),
('BULK_WF', 'core', 30, 'GATE-FAN-IN', 'Collect', NULL);
| Node Type | Icon | BPMN Type | Status | Description |
|---|---|---|---|---|
GATE-EXCLUSIVE |
◇× |
Exclusive Gateway (XOR) | Implemented | Exactly one path is chosen based on current_result |
GATE |
◇ |
Exclusive Gateway (Default) | Implemented | Alias for GATE-EXCLUSIVE; generic default gateway |
GATE-PARALLEL |
◇+ |
Parallel Gateway (AND) | Placeholder | All outgoing paths execute in parallel |
GATE-INCLUSIVE |
◇○ |
Inclusive Gateway (OR) | Placeholder | One or more paths are chosen |
GATE-FAN-OUT |
◇» |
Complex Gateway (Fan-Out) | Placeholder | Distributes work across parallel bulk workers |
GATE-FAN-IN |
◇« |
Complex Gateway (Fan-In) | Placeholder | Aggregates results from parallel bulk workers |
GATE-GATHER |
◇∑ |
Parallel Gateway (Merge) | Placeholder | Gathers and merges converging branches |
ObjWorkflowNode.py — Base node classObjWorkflow.py — Workflow orchestration engineObjWorkflowGateFanOut.py — Corresponding fan-out distribution nodeObjEnum.WorkflowNodeType — Node type definitionsObjConstants.WorkflowNodeIcons — Icon constantsUpdated: 2026-03-01