Browse documentation

Visual and ICE synchronization

The canvas and ICE are two representations of one semantic pipeline definition. Neither browser widget is the canonical store: the server owns the saved state.

Canvas to ICE

When a visual command adds, updates, connects, or removes an action, the server updates the semantic model and produces canonical ICE. Actions are sorted by reference name and graph edges are emitted deterministically.

ICE to canvas

When valid ICE is saved, the server parses it into actions and connections and returns the graph projection used by the visual editor. The browser replaces its projection with the server response.

Invalid drafts

An ICE draft may temporarily be invalid while the user types. Diagnostics belong to the text editor and do not invalidate the last saved graph. The visual editor remains usable from its last valid server state.

Semantic preservation

The synchronization guarantees equivalent pipeline metadata, action codes, reference names, parameters, and connections. Formatting and property order are canonicalized. Do not rely on custom whitespace as persistent semantic information.