Workflow JSON → extract → state dict → card sections
Top-down. Each arrow is a one-way data dependency.
name
Run identifier. Prefers GLOBAL [ base name ]; fallback NAME.
Text Multiline
RELAY_OVERRIDES
JSON object of Prompt-Relay knobs. Wired into the Director's relay_overrides input.
Text Multiline
OVERLAY · INFO
Δ-this-render free-form note. Card renders this verbatim.
Text Multiline
OVERLAY · FEEDBACK
Post-render observations. motion:N/5 / sync:N/5 / sharp:N/5 lines auto-parsed into Outcome.
Text Multiline
working_folder
Working folder for renders. Prefers GLOBAL [ path ] - working folder; first reachable duplicate wins.
Text Multiline
SETUP variables
INPUT Path [ EXR ], GLOBAL [ version ], and GLOBAL [ run offset ] are captured into notes.md. BASE is a checklist; its [ai] rows are filled from derived facts.
Text Multiline / Primitive*
LTX Director
The active Director node: Koolook for modified runs, upstream original for A/B comparison.
LTXDirector__koolook / LTXDirector
loop-audio
Chat phrase → python scripts/loop_audio.py
· user-initiated only, never automatic
· config: scripts/loop_audio.config.json
find_workflow()
Newest JSON in the ComfyUI workflows dir matching workflow_pattern; excludes filenames containing skip_filename_substring.
config-driven · stdlib only
extract_multilines()
Dict-of-lists keyed by semantic capture name. tracked_multilines maps each key to preferred title aliases, so the v02 GLOBAL labels can coexist with older names.
config.tracked_multilines alias map
extract_setup_variables()
Reads extra SETUP values for notes.md, including primitive version/run-offset nodes, while ignoring GetNode/SetNode plumbing and BASE placeholders.
config.tracked_setup_variables
extract_director()
Finds the Koolook Director, its legacy alias, or upstream LTXDirector. Koolook wins if both are on the canvas. Returns the whole node dict so callers can read widgets AND inputs[].link.
DIRECTOR_TYPES priority
parse_timeline()
Decodes the timeline_data JSON widget into segments + audioSegments arrays. Returns empties on any error.
director widget timeline_data
derive_audio_state()
Reduces audio_vae link + use_custom_audio + audioSegments count to one of five labels — including the "(no director)" split that prevents a missing-Director workflow from silently collapsing into "VAE unwired".
5-state machine
parse_feedback()
Splits OVERLAY · FEEDBACK into motion / sync / sharp scores and prose lines via per-line regex.
SCORE_PAT regex
_build_state_for_card()
Returns a flat dict with the canonical field set the renderer consumes. Building it in one place — not inside the renderer — keeps the source rule auditable: every key here can be traced to one node on the canvas.
run_number · run_label · date · workflow_name · source_workflow_name
name · relay_overrides_raw · info_body · feedback_lines · scores · work_folder
output_folder · output_name · metadata
director_node · director_variant · director_flavor · director_pin_tag · audio_src
epsilon · frame_rate
segments · audio_segments · segment_prompt_mode
| Section | Accent | Source family | Exact source |
|---|---|---|---|
| HEADER | — | multiline + loop bookkeeping | name multiline + loop's own run number + date + module name |
| BASE / RUN | sky | workflow + multiline + setup | copied workflow stem (no .json) + expected output folder/name/version |
| DIRECTOR READINGS | sky | director + live upstream package metadata | Director flavor + pin tag + epsilon + derived audio_src + timeline_data segment coverage |
| KNOB STATE | amber | multiline | relay_overrides multiline (verbatim; marked inert when upstream Director is active) |
| BASE NOTES | amber | multiline | overlay - info multiline (verbatim, blank lines preserved) |
| POST-RENDER | green | multiline | overlay - feedback multiline → feedback body + parsed motion/sync/sharp scores |
runs/run-NNN_<label>/
koolook_audio_loop JSON metadata.
runs/run-NNN_<label>/
runs/run-NNN_<label>/
runs/run-NNN_<label>/
runs/run-NNN_<label>/
runs/run-NNN_<label>/
runs/log.md. Same column rule as the card (multilines + director only).
runs/log.md