Two edge vocabularies, and they never mix
An edge is written one way on the wire and another way in the execution record. Each form has its own key names, and a key from the wrong bag produces something nothing reads.
The rule
Normative: this is the rule
- An edge has two forms, each with its own key names.
- In transport, the form an editor reads and writes, the keys are
source,target,sourceHandleandtargetHandle. - In the execution record they are
source_handle,target_handle,is_trigger,is_loopback,is_tool,branch_nameandedge_id. - Neither vocabulary may carry a key belonging to the other.
Rule identifiers are permanent and are never renumbered. Each implementation publishes its own standing against these rules; this specification does not.spec 1.0-draft · EDGE-9 · changed in spec 1.0