Nodes/MiniMax H3 Audio T8/MiniMax H3 Review & Accept / 预览并接受候选 (EXP/T8)
ComfyUI Node

MiniMax H3 Review & Accept / 预览并接受候选 (EXP/T8)

The review gate that keeps your long video honest

By T8mars·Created 20 days ago·Updated a day ago· 807
MiniMax H3 Review & Accept / 预览并接受候选 (EXP/T8)
    • video
    • accepted
    • manifest_path
    • report_json
    candidate_json_path
    accept_candidatefalse
    replace_policyreject_existing
    strict_chain_identitytrue

    The whole long-video system in this pack is built on a simple discipline: a rendered segment is only a candidate until you say otherwise. This node is where you say otherwise. It's the Review & Accept gate - run it with accept_candidate=false and you get a preview; flip it to true and it atomically promotes the candidate into the accepted manifest that the rest of the chain builds on.

    It's an output node in T8/MiniMax H3/Long Video/Experimental, and its one-line description hides the most important behavior in the whole long-video family: replacing a segment invalidates all dependent later segments. If you accept a new segment 2 after already accepting segments 2–5, everything built on the old segment 2 is now stale. That's not a bug - it's the mechanism that stops you from shipping a Frankenstein cut.

    How it works

    You point it at candidate_json_path - the descriptor produced by Candidate Save. With accept_candidate false (the default), it loads the candidate's video for preview and does nothing else. With it true, it atomically promotes the candidate: the file becomes part of accepted history and the manifest updates in one step, so a crash mid-promotion can't leave a half-registered segment.

    replace_policy (default reject_existing) controls what happens when a candidate for an already-accepted slot shows up - rejecting is the safe default; replacing is where the invalidation cascade kicks in. strict_chain_identity (default true) enforces that the candidate's parent chain matches the manifest; turn it off and you're inviting a stale continuation into the timeline, which is exactly the thing the parent-id system was built to prevent.

    The inputs that matter

    • candidate_json_path - the descriptor from Candidate Save. Nothing happens without it.
    • accept_candidate - false to preview, true to promote. Default false is deliberate.
    • replace_policy - reject_existing unless you're intentionally redoing a segment.
    • strict_chain_identity - leave true; it's the staleness guard.

    Outputs

    video (the preview or the promoted file), accepted (BOOLEAN - the clear signal of what just happened), manifest_path (where the accepted manifest lives), and report_json.

    Installing it

    Pack install: ComfyUI Manager → "MiniMax H3 Audio T8", or git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8 into ComfyUI/custom_nodes, restart. No extra pip deps. (ffmpeg on PATH is the family requirement - needed for candidate saving upstream.)

    Common issues

    You replaced a segment and the later segments went stale. Working as designed. The invalidation is the feature: re-render the dependents from the new accepted context rather than fighting the guard. Check report_json to see which segments the manifest now considers out of date.

    strict_chain_identity rejects a candidate you think is fine. The candidate's parent chain doesn't match the manifest. Re-load context from Accepted Context Load (which returns the exact accepted_candidate_id) and re-run Candidate Save with that as the parent. Don't disable the check to make it pass.

    CategoryT8/MiniMax H3/Long Video/Experimental

    Inputs (4)

    NameTypeDefaultDescription
    candidate_json_pathSTRING
    accept_candidateBOOLEANfalse
    replace_policyCOMBOreject_existing2 options: reject_existing, replace_and_invalidate_following
    strict_chain_identityBOOLEANtrue

    Outputs (4)

    NameTypeDescription
    videoVIDEO
    acceptedBOOLEAN
    manifest_pathSTRING
    report_jsonSTRING