Overview
Router graphs use strict connection rules to keep request routing understandable and safe. The editor validates every edge as you draw it and rejects unsupported source-target pairs with a warning.Valid Topology
Allowed Lanes
| Lane | When to Use |
|---|---|
| Trigger → Signal | Evaluate request inputs or content before routing |
| Trigger → Projection | Derive structured routing context |
| Trigger → Decision | Evaluate routing rules |
| Decision → Algorithm | Select endpoints, weights, order, or fallback behavior |
| Decision → Plugin | Apply extension behavior such as cache, policy, or integrations |
Common Invalid Connections
Trigger → Algorithm
Trigger → Algorithm
Algorithms must attach to a Decision. Add a Decision node, connect Trigger → Decision, then connect Decision → Algorithm.
Signal → Decision
Signal → Decision
Signals are evaluated from the trigger and referenced by Decision rules. Connect Trigger → Signal and reference the signal in the decision configuration.
Projection → Decision
Projection → Decision
Projections are also evaluated from the trigger and referenced by name. Connect Trigger → Projection and reference the projection from the Decision.
Decision → Decision
Decision → Decision
Decisions do not chain. Model multiple conditions inside one Decision action or use priority inside the decision configuration.
Algorithm or Plugin → Any Node
Algorithm or Plugin → Any Node
Algorithms and plugins are leaf nodes. They do not have outgoing connections.
Recommended Design Pattern
Use this repeatable pattern for most routers:- Add Signals for request facts you need to evaluate.
- Add Projections for derived or normalized context.
- Add one Decision that references those inputs.
- Attach one or more Algorithm or Plugin leaf nodes from the Decision.
Troubleshooting Edge Warnings
If the editor blocks an edge:- Check the source and target action categories.
- Confirm the target belongs in one of the allowed lanes.
- If an action appears in the wrong category, refresh the page to reload
/routers/actionsmetadata. - If the action type is custom, ensure its prefix or API category resolves to Signal, Decision, Projection, Algorithm, or Plugin.