# Workflow Spec 3.18 Rollout ## Canonical Source - DocCenter Path `3` - Name: `VL Workflow Spec 3.18` - Local mirror: [vl-workflow-spec-3.18.md](/Users/ivx/Documents/VLCode-Lite/docs/vl-workflow-spec-3.18.md) ## What Changed - `Tool_*` is now documented as a standard 3.17 extension profile rather than a private implementation note. - `Subflow_*` is supported as a display/runtime alias for `WorkflowRun`, so child workflows can stay visually distinct without adding a new execution primitive. - Runtime events now explicitly include `tool_start`, `tool_message`, `tool_done`, and `tool_error`. - Parallel run attribution now includes `clientRunToken` from the first event, before a stable `runID` exists. - Checkpoint rerun semantics now cover fork, loop, overrides, and rerun-from-node in complex graphs. - Workflow-of-workflows is now a documented orchestration pattern. ## Compatibility Rule - The spec document is `3.17`. - The currently deployed VLCode-Lite JS runtime still primarily uses workflow JSON `version: "3.16"`. - Do not mass-rewrite existing workflow files yet. - Treat 3.17 as a capability/documentation rollout first, then switch JSON version strings after all critical runtimes catch up. ## What Other Codex Instances Should Do - Reference DocCenter Path `3` as the canonical workflow spec. - When authoring new workflows for current VLCode-Lite, continue defaulting to JSON `version: "3.16"` unless the target runtime explicitly advertises `3.17`. - If using `Tool_*`, `tool_message`, `clientRunToken`, or checkpoint rerun in explanations, cite them as 3.17 extension-profile behavior. - Avoid claiming that every standalone/cloud workflow engine already accepts `version: "3.17"`.