H3RelayInternalRestoreEnhanced
Re-open a finished H3 Relay run without re-running the finishing work
- enhanced
Somewhere in the middle of an H3 Relay session you'll meet a node called H3RelayInternalRestoreEnhanced and wonder what it's for. Short version: it's how the pack re-opens a run's finishing state - the LTX-enhanced and interpolated side of things - straight from disk, without re-running any of the expensive work.
H3 Relay runs two streams. sequence is the native MiniMax H3 continuation state (raw, 480p, with the jointly-generated audio). enhanced is everything after that: the LTX 2.5 upscale-and-refine pass and the frame interpolation. This node is the restore point for the enhanced stream. Its sibling H3RelayInternalRestoreRawSequence does the same for raw H3.
How it works
Every stage of H3 Relay is written to disk as content-addressed records under ComfyUI's protected user/__h3_relay_cache directory. When you call restore, the node reads that run's manifest, checks each segment's SHA-256 hash against what was recorded, and rebuilds the enhanced object truncated to the shot you asked for. If any segment failed integrity validation it raises, rather than silently handing you a corrupt video. That "verify before you trust" habit is the whole reason this pack can claim to be resumable.
The four inputs are ones you normally let the pack set, since restore nodes get wired by the pack's graph expansion rather than by hand:
run_name- which run to open.shot_index- how many shots you want (default 1, up to 128).stage-ltxorinterpolated(defaultinterpolated). Pick which finishing version you're restoring.delivery_count- how many interpolated deliveries to carry, capped at 128.
The single output, enhanced (H3_RELAY_ENHANCED), plugs straight into an Interpolate or Assemble node exactly as if the LTX pass had just run.
When you'd actually use it
Honestly? Mostly you don't wire this by hand. The Assemble node's "Run staged · bounded RAM" action derives the dependency order from your visible graph and restores each stage's accepted state from these same manifests before queueing the next job. The restore nodes exist so that partial graph re-runs - "I've finished shots 1–4, let me continue from 3" - don't force the whole chain to recompute.
One practical case where you will touch it: you finished a run, changed nothing, and want to re-assemble at a different output_crf. Because the masters are cached, restore + assemble gives you that variant without repeating inference.
Install and gotchas
Standard pack install - ComfyUI Manager, search H3 Relay, restart; or git clone https://github.com/akatz-ai/h3-relay into ComfyUI/custom_nodes. Needs ComfyUI 0.32.0+, FFmpeg on PATH, and the MiniMax H3 + LTX 2.5 models from MODELS.md (separately licensed - the H3 Community License geofences the US, EU, UK, and Korea).
The error you're most likely to hit is a restore failing integrity validation after you deleted or moved files inside the cache. Don't hand-edit user/__h3_relay_cache; use H3 Relay · Cache Manager to prune instead.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| run_name | STRING | — | |
| shot_index | INT | 11–128 | — |
| stage | COMBO | interpolated | 3 options: ltx, ultimate, interpolated |
| delivery_count | INT | 10–128 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| enhanced | H3_RELAY_ENHANCED | — |