Skip to content

v3.2.0 - LTX-2.5, MiniMax Music 3, the OCIO 1.3.0 rename and Apache-2.0

Latest

Choose a tag to compare

@SlavaSexton SlavaSexton released this 19 Aug 16:24
· 2 commits to master since this release

Three new models, one breaking rename in our own OCIO pack, two claims this kit had wrong, and a licence change.

The kit is now Apache-2.0

Up to and including v3.1.0 the kit was MIT, and that grant is not withdrawn: anyone who took those versions keeps those rights, and the v3.1.0 tag stays there for anyone who prefers them. From this release the repository is Apache-2.0.

The reason is patents. MIT contains no patent language at all; Apache-2.0 grants one explicitly and terminates it for anyone who sues over patents. Section 6 also withholds trademark rights, and section 4d gives a NOTICE mechanism, which is why a NOTICE file now exists rather than being skipped: without it that clause protects nothing. It also puts the kit on the same licence as ComfyUI-OCIO.

Third-party components are untouched and were never vendored here. The installer fetches them from their own sources and each keeps its own licence.

LTX-2.5, both ways

Day-0 in ComfyUI core v0.32.0, and it ships as open weights and as partner nodes, so it gets an entry on each side.

The open-weights entry was written by parsing all three official templates, nodes, links and widget values, rather than reading their prose. That is how the trap came out: the shipped graph renders stage 1 at half the target size and lets the x2 latent upsampler restore it. Copy the visible width into EmptyLTXVLatentVideo and you render at twice the intended resolution and pay for it. The template's own note documents the subgraph's parameters, not its internal arithmetic, so no amount of reading it would surface this.

Also in there: both ManualSigmas step lists quoted verbatim, the two separate Gemma 4 encoders distinguished (12B conditions, E2B drives the Prompt Enhancer only), what LTXVDualCFGGuider actually does to a packed audio-plus-video latent, and flf2v flagged as structurally different rather than a variant, because it has no upsampler and no second stage at all.

The API entry names LtxApi25AudioToVideo, which ships no template and has to be built by hand. That absence was checked against all 598 template files.

MiniMax Music 3

Open-weight full songs with vocals, core v0.33.1. The graph, the two-stage architecture and which knob hits which stage, the caption's three-section structure, and the square-bracket section tags as the only executable structural instruction.

One number disagrees with the vendor: the template's own note says up to 300 s, and MAX_AUDIO_FRAMES / AUDIO_FRAMES_PER_SECOND in the model code is 9000/25, which is 360. Both are stated, with the code named as the authority.

Grok Imagine Image 2.0

The new model option, the GrokImageEditNodeV2 path with its Autogrow reference-image input, the per-tier reference limits, and both price tables read off the nodes' own rate expressions.

ComfyUI-OCIO v1.3.0, and a rename that made this kit teach a graph that fails

The kit had been sitting on v1.2.2 from 2026-07-06, five releases behind.

OCIO Write's from_colorspace is now input_colorspace. This kit exists to help an agent build API-format graphs, which is exactly the form that breaks: ComfyUI validates against INPUT_TYPES before the node runs, so the old key fails with HTTP 400 required_input_missing. Three layers behave differently and the doc separates them, because conflating them costs an afternoon. The API form breaks. A GUI workflow saved from the canvas does not, since widgets_values is positional and the key kept its slot. Callers reaching write() from Python still accept the old kwarg.

The node count moved from nine to eleven, established by reading the three NODE_CLASS_MAPPINGS dicts at the tag. Two traps came out of doing it that way and both are now written down. A naive scan of every mapping in that repo returns fourteen, because grade_nodes.py defines three more whose import in __init__.py is commented out. The rule that generalises past this pack is in the doc: read __init__.py before trusting a mapping scan, because a mapping nothing imports registers nothing.

The new OCIOVAEDecode / OCIOVAEEncode pair is written buildable: full I/O, both STRING report outputs, the clamp and out_of_range semantics, and the precision costs quoted from the nodes' own tooltips rather than estimated.

Two corrections

Qwen Image 3.0 Pro's partner nodes exist. This kit said they were absent from all of comfy_api_nodes. That was true on 2026-08-09 and stopped being true in core v0.32.0. The entry leads with the reversal rather than quietly swapping the text.

There is no OCIO Metadata node. It was registered on 2026-08-13 and removed the same day. A check across all 66 Python files at the tag finds neither the class nor the key.

Known issues, and the change most likely to break a working install

docs/KNOWN_ISSUES.md is current to core v0.33.1 and frontend v1.51.6. It now leads with the fact that core v0.32.0 raised the minimum supported PyTorch to 2.7. A portable or hand-built install pinned to an older torch is no longer supported, and that is the single change most likely to break an environment that has been working for months.

Eleven new rows under Recently fixed, including the three MiniMax H3 memory fixes in v0.32.0 that answer last week's still-open "dies in VAEDecode on long clips" row, and the v0.33.1 fix for Generate Text ignoring thinking=false on Gemma 4 E2B, which silently affected the LTX-2.5 prompt enhancer.

Counts

75 recipe entries, 68 named models, 163 library models, 581 templates.

The template total went down by two despite nine arrivals: the two old LTX API templates were deleted from the official library in the same week the 2.5 nodes landed, and both of the nodes behind them are now marked deprecated.

Verification

The buildable test is mechanical, not editorial: parse each template's node set including subgraphs, diff it against the entry text. All four new entries name every non-trivial node.

Every number was re-read from its source. The ResolutionSelector arithmetic was recomputed rather than copied, which is why the entry says 1280x736 and not the 1280x720 sitting dead in the widget.

Two defects were caught by the verification rather than by writing. Opening the rendered PNGs, which the counts gate cannot do, found five hardcoded numbers that no script checks. And an adversarial pass on the claim "there is no v0.33.0 release" found the tag does exist; only the GitHub Release object does not.