feat(webv2): MiniMax H3 Ref2VA reference mode - #163
Open
lstein wants to merge 4 commits into
Open
Conversation
lstein
requested review from
JPPhoto,
Pfannkuchensack and
blessedcoolant
as code owners
August 27, 2026 12:29
This was referenced Aug 27, 2026
lstein
force-pushed
the
feat/minimax-h3-ref2va-webv2
branch
from
August 27, 2026 12:46
82dd0d6 to
f96a584
Compare
lstein
force-pushed
the
feat/minimax-h3-ref2va-backend
branch
from
August 27, 2026 12:46
1c1ac51 to
9ba19bf
Compare
lstein
force-pushed
the
feat/minimax-h3-ref2va-webv2
branch
2 times, most recently
from
August 27, 2026 13:14
e2648a4 to
205f7ed
Compare
lstein
force-pushed
the
feat/minimax-h3-ref2va-backend
branch
from
August 27, 2026 13:14
9ba19bf to
66d3950
Compare
lstein
force-pushed
the
feat/minimax-h3-ref2va-webv2
branch
from
August 27, 2026 13:14
205f7ed to
392804b
Compare
The webv2 half of Ref2VA support: the transformer decides the task, and a Ref2VA transformer switches the Video panel to an ordered reference list. Core: - resolveEffectiveVideoModel: for MiniMax H3 the task variant lives on the selected single-file transformer; every policy lookup resolves through it. MINIMAX_H3_REF2VA config (modes: ['reference'], 4-step Ref2V Turbo accelerator, reference caps 3 videos / 9 images) registered under variants - a known ref2va transformer never falls back to fl2va's modes. - VideoSettings.references: one ordered array of video (VideoSourceClip + conditioning selector video_audio/video/audio) and image (detail max/match) references; mutually exclusive with first/last frames and the source video; normalization/caps/deep-clone/deleted-media sweep wired. - resolveVideoMode: references win; new 'reference' generation mode. - getVideoTransformerSelectionResult: the transformer slot is a mode-changing control, so its setter runs the full media/accelerator reconciliation. Widget sync drops references orphaned by an uninstalled ref2va transformer. Turbo auto-pick is task-aware (ref2v-token repack required for ref2va, excluded for fl2va). - Graph builder: per-reference descriptor nodes into CHAINED collect nodes (order is contractual), fanned to Reference Conditioning AND the Prompt node; no frame conditioning; minimax_h3_ref2v generation mode; ordered reference metadata for recall. UI: VideoReferenceListField (numbered cards, thumbnails, per-video conditioning + trim, per-image detail, reorder/remove, gallery drag + file upload), transformer picker gate removed. Recall: minimax_h3_ref2v recognized; ordered reference re-hydration with missing media dropped order-preserving; post-hydration reconciliation against the recalled transformer's policy. Backend (shared): core_metadata 2.5.0 gains minimax_h3_references + the minimax_h3_ref2v generation mode; bundled H3 workflows re-stamped; new 'Reference to Video - MiniMax H3' template (registry count 17 -> 18); docs updated; openapi/schema.ts regenerated; browser perf baseline re-captured. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01S4B5exWsbC2z2Uu2tA167A
lstein
force-pushed
the
feat/minimax-h3-ref2va-backend
branch
from
August 27, 2026 13:50
66d3950 to
7709468
Compare
lstein
force-pushed
the
feat/minimax-h3-ref2va-webv2
branch
from
August 27, 2026 13:50
392804b to
f05d1e1
Compare
…f2va-webv2 # Conflicts: # invokeai/frontend/webv2/performance/browser-baseline.json # invokeai/frontend/webv2/src/features/video/core/videoPolicies.ts # invokeai/frontend/webv2/src/workbench/image-actions/videoRecall.ts
…into feat/minimax-h3-ref2va-webv2
The minimax_h3_denoise node counts sigma grid points (terminal zero included), so N node steps run N-1 model evaluations. The panel's steps setting — and the accelerator configs' distilled step counts — mean model evaluations, so the 4-step turbo LoRAs were silently running 3 evaluations. Add the terminal grid point in the graph builder; metadata keeps the panel value so recall round-trips. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01S4B5exWsbC2z2Uu2tA167A
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Third of three stacked PRs (on #162): the webv2 reference mode. The transformer decides the task — selecting a Ref2VA single-file transformer switches the Video panel to an ordered reference list.
resolveEffectiveVideoModel— for MiniMax H3 the task variant lives on the selected transformer checkpoint; every policy lookup resolves through it.MINIMAX_H3_REF2VAconfig (modes['reference'], 4-step Ref2V Turbo accelerator, caps 3 videos / 9 images) is registered, so a known ref2va transformer never falls back to fl2va's modes.VideoSettings.references— one ordered array of video (clip + conditioning selector video+audio / video only / audio only) and image (detail max/match) references; mutually exclusive with first/last frames and the source video across setters, normalization, healing, recall, gallery-delete sweep and its optimistic rollback, and Send-to-Video/Extend actions.getVideoTransformerSelectionResultruns the full media/accelerator reconciliation (with a toast for what was cleared); widget sync drops references orphaned by an uninstalled ref2va transformer; reset-to-defaults clears them explicitly.minimax_h3_ref2vgeneration mode; ordered reference metadata.VideoReferenceListField— numbered cards (thumbnail, per-video conditioning + trim, per-image detail, reorder/remove), gallery drag + file upload, cap counters.core_metadata2.5.0 (minimax_h3_references+ theminimax_h3_ref2vmode), bundled workflows re-stamped, new Reference to Video - MiniMax H3 template (registry count 17→18), docs,openapi.json/schema.ts, browser perf baseline re-captured.Testing
check:architectureperf gate green.Deferred follow-ups: live GPU smoke with the real ~21 GB starter; standalone audio-file references (the packing path already ships — ingestion only); drag-reorder for the reference list.
Stack
🤖 Generated with Claude Code
https://claude.ai/code/session_01S4B5exWsbC2z2Uu2tA167A