The defect
duration_head_path is listed in kKnownLoadExtras, so the engine accepts it without complaint. No code reads it. A caller who supplies a duration head gets the recipe default and is told nothing.
Contrast upsampler_path, which is accepted and read at src/vllm/multimodal/ltx2_video.cpp:771. The asymmetry is the tell: one extra is wired, its sibling is decoration.
Per AGENTS.md an arm that is not implemented is refused with a message naming the missing piece, never silently ignored. Silently substituting a default for a file the user explicitly pointed at is the worst of the three options — worse than refusing, and worse than not accepting the key at all.
How it was found, which is the more useful part
By sweeping for siblings while fixing an unrelated stale comment. ltx2_video.cpp:1134 justified the duration-head refusal as "needs the encoded prompt this engine cannot produce" — true when written, and made false by #600, which produces exactly that prompt.
That is the fifth refusal in the LTX-2.5 campaign (#435) whose stated reason went stale while the refusal itself stayed correct. Correcting the reason is what exposed the real one: no duration head is ever constructed, and the extra is inert.
The pattern is filed as #604. This issue is one of its instances, promoted because it has user-visible consequences rather than only documentary ones.
Fix
Either read duration_head_path and construct the head, or refuse it by name when supplied — with a message saying the duration head is unported and the recipe default will not be replaced. Refusing is the cheap correct answer until the head is ported.
While there: audit the rest of kKnownLoadExtras the same way. Any key accepted but unread has this defect, and the sweep that found this one did not cover them all.
Found while repairing #600 (issue #435).
The defect
duration_head_pathis listed inkKnownLoadExtras, so the engine accepts it without complaint. No code reads it. A caller who supplies a duration head gets the recipe default and is told nothing.Contrast
upsampler_path, which is accepted and read atsrc/vllm/multimodal/ltx2_video.cpp:771. The asymmetry is the tell: one extra is wired, its sibling is decoration.Per AGENTS.md an arm that is not implemented is refused with a message naming the missing piece, never silently ignored. Silently substituting a default for a file the user explicitly pointed at is the worst of the three options — worse than refusing, and worse than not accepting the key at all.
How it was found, which is the more useful part
By sweeping for siblings while fixing an unrelated stale comment.
ltx2_video.cpp:1134justified the duration-head refusal as "needs the encoded prompt this engine cannot produce" — true when written, and made false by #600, which produces exactly that prompt.That is the fifth refusal in the LTX-2.5 campaign (#435) whose stated reason went stale while the refusal itself stayed correct. Correcting the reason is what exposed the real one: no duration head is ever constructed, and the extra is inert.
The pattern is filed as #604. This issue is one of its instances, promoted because it has user-visible consequences rather than only documentary ones.
Fix
Either read
duration_head_pathand construct the head, or refuse it by name when supplied — with a message saying the duration head is unported and the recipe default will not be replaced. Refusing is the cheap correct answer until the head is ported.While there: audit the rest of
kKnownLoadExtrasthe same way. Any key accepted but unread has this defect, and the sweep that found this one did not cover them all.Found while repairing #600 (issue #435).