Corrected 2026-10-23 - see C3-B595-07; the original statements below are kept for history and are superseded where the correction says so. At the inspected commits the two formats are cleanly distinguishable by top-level shape. A workflow (editor) JSON is an object with a 'nodes' array, 'links', a numeric 'version' (0.4-style or 1) and layout data; an API prompt is a flat map from node id to {class_type, inputs, _meta} where a link is a two-element array [source node id, output index] and widgets are plain named inputs. The API form is derived at queue time from the workflow (muted/bypassed nodes omitted, UI-only widgets dropped) and has no version field; the official docs table for the save format has a row ('Node keys') that does not match the schema.
At the inspected commits the two formats are cleanly distinguishable by top-level shape. A workflow (editor) JSON is an object with a 'nodes' array, 'links', a numeric 'version' (0.4-style or 1) and layout data; an API prompt is a flat map from node id to {class_type, inputs, _meta} where a link is a two-element array [source node id, output index] and widgets are plain named inputs. The API form is derived at queue time from the workflow (muted/bypassed nodes omitted, UI-only widgets dropped) and has no version field; the official docs table for the save format has a row ('Node keys') that does not match the schema.
Curator correction 2026-10-23 (discovery audit record C3-B595-07; sources re-fetched 2026-10-23, excerpts re-located by curator GET): Problem. The earlier finding says an official docs table row ('Node keys') does not match the schema and that the API form omits muted/bypassed nodes. The cited docs/WIDGET_SERIALIZATION.md (commit 5306a54b) is a note on two 'serialize' properties with a permutation table; it has no 'Node keys' row and does not mention muted or bypassed nodes. What the cited file does support. widget.serialize controls what is written to widgets_values in the workflow JSON; widget.options.serialize controls what is sent in the API prompt; the two correspond to the WORKFLOW and PROMPT tags embedded in output files. The schema ranges cited show version as a number and node properties cnr_id/aux_id/ver/models. Impact. The top-level distinguishing shape (nodes array and numeric version vs flat id-to-{class_type, inputs}) remains supported by the schema; the two extra claims should be re-sourced (the docs.comfy.org page and graphToPrompt source were not cited and were not checked here). Limitations. Absence of a statement in the cited file is not proof the claims are false.
Curator qualifications: Schema: 'export const zNodeId = z.union([z.number().int(), z.string()])'; '/** Schema version 0.4 */' with 'nodes: z.array(zComfyNode)', 'links: z.array(zComfyLink)', 'version: z.number()'; '/** Schema version 1 */' with 'version: z.literal(1)', 'nodes: z.array(zComfyNode)', 'links: z.array(zComfyLinkObject).optional()'. Docs table row: '| **Node keys** | Node titles or labels | Numeric node IDs |'. Rights/verification notes are shown as limitations (L00 0019/ADR-0011): they restrict reuse of the cited material or record what was not verified; they are not cleared by this summary.
Limitations: [rights_conflict_record] eligible_conflict_preserved
Evidence status: statements located in the cited sources by a correlated desk review (Claude); not executed; not independently reviewed.
[sourced_fact] At the inspected commits the two formats are cleanly distinguishable by top-level shape. A workflow (editor) JSON is an object with a 'nodes' array, 'links', a numeric 'version' (0.4-style or 1) and layout data; an API prompt is a flat map from node id to {class_type, inputs, _meta} where a link is a two-element array [source node id, output index] and widgets are plain named inputs. The API form is derived at queue time from the workflow (muted/bypassed nodes omitted, UI-only widgets dropped) and has no version field; the official docs table for the save format has a row ('Node keys') that does not match the schema. · locator: ComfyUI_frontend workflowSchema.ts @5306a54b lines 24, 421-483; Comfy-Org/docs workflow-api-format.mdx @506a4a94 lines 13-25 (byte-identical to producer pin 1b8a4fdc)source
Rights
component
license
hosting
redistribution
modification
training
Evidence and notes
documentation
unknown
permitted
permitted
unknown
unknown
Applies to this original summary only, not to the cited sources.