
Sketch
Undeployable placeholder for sketching pipeline intent before a real component exists. Carries free-form notes in a {{param:readme}} parameter and intentionally fails deploy so unfinished pipelines cannot ship.
How it fits
Pack flow: {{type:t}}... -> {{component:sketch}} -> {{type:u}}...
$as... -> {{component:sketch}} -> $bs...
Variadic inputs and outputs are distinct typevars, so neither side constrains the other. Use it to mark "something goes here" while wiring the rest of the graph.
Typical backends
- Spec a missing scorer: feed candidate images into {{component:sketch}}, capture the intended scoring contract in {{param:readme}}, wire the sketch outputs into the rest of the graph to validate the surrounding plumbing.
- Hand-off marker between halves: drop {{component:sketch}} between two halves of the backend when the team agrees the connector has not been built yet; {{param:readme}} describes the expected behaviour.
- Capture intent for an AI rewrite: stand up {{component:sketch}} where an LLM-authored worker will land later; {{param:readme}} carries the brief and acceptance criteria.
- Prototype a fan-out before commit: insert {{component:sketch}} where a future splitter will sit so downstream stages can be exercised in isolation.
Caveats
- Strict inference rejects any backend containing a {{component:sketch}}; the Run button stays disabled until every sketch is removed or replaced.
- Both inputs and outputs are unconstrained typevars; downstream consumers leave their inputs unresolved, which surfaces as
NodeIncompleteTypeerrors in the canvas. - The {{param:readme}} parameter is plain Markdown; the platform does not parse or render it — it exists for humans and agents reading the graph.

