True while the host is committing the workflow.
Owned by the host rather than this component because the host is what saves. Without it the form stays live during the write and a second click would create a second workflow.
Emitted when the author backs out.
Emitted when the author commits. The host routes to the canvas.
The user to run the drafting operation as.
True while an agent is drafting the steps.
Its own flag rather than a generic busy, because the wait is long enough to need explaining:
a spinner with no words reads as a hang, and this one can take several seconds.
Provider to read past runs through — supplied by the host, never resolved globally.
ReadonlyStartTrue when the form can be submitted.
Each door has its own bar, because each asks for something different: describe needs the
brief it will draft from, past-run needs the run being promoted, and blank needs only a
name — there is nothing else to supply before the canvas opens.
Loads the runs a workflow can be promoted from.
Reads parent task rows — a graph's root — because that is the unit someone recognises as "a run". Filtered to terminal statuses in SQL rather than in memory so an instance with a long history does not pull every task row across the wire to discard most of them.
The Create Workflow front door — the screen that replaces today's save-the-agent-record-first requirement.
Implements screens A and B of
mockups/workflow-ux/front-door-v1.html, which is the locked contract for this surface. Two of its five ratified answers are visible here:Emits a WorkflowDraftRequest rather than persisting anything: "Nothing is saved until you approve it" is a promise the middle tile makes in so many words, and the canvas is where approval happens.