Skip to content

Canvas

Canvas is the editable visual workspace for Pioneer Flow. It has Design, Run, and Inspect modes so authoring, following execution, and examining evidence remain deliberate activities.

Draft state

The current draft contains blocks, connections, configuration, title, viewport, and workspace mounts. Same-tab refresh restores a convenience copy from browser session storage. That copy is not a durable Saved Flow and is not shared with a new browser tab.

The status beside the title distinguishes:

  • New — empty Canvas;
  • Draft — work exists but has no Saved Flow identity;
  • Saved — current content matches the loaded Saved Flow; and
  • Unsaved changes — current content differs from it.

Editing and connections

Add blocks from the palette, select a block to edit its configuration, and drag between compatible ports to create dependencies. Use Code view for the same job in JSON or YAML when that is clearer; returning to visual view parses and validates the code before replacing the draft.

Visual connections serialize as upstream dependencies on the logical rows stream. They establish execution order. Do not infer independent branch data channels merely from the drawing.

Library and saving

Library → Templates lists Saved Flows. Load, duplicate, schedule, or delete them there. Save creates a Saved Flow; Update replaces the current saved definition with a new revision; Save as creates a separate identity. Deleting a Saved Flow does not erase existing run history.

Chat changes to the draft

Chat can propose and, after an explicit request and approval, apply a guarded change to the current draft. Pioneer rechecks the draft fingerprint immediately before mutation. If the draft changed, the proposal is stale and is not rebased.

A successful draft apply updates the current Canvas and marks it unsaved. It does not update a Saved Flow and does not run anything. Review the diff, then save or run as separate decisions.