ComfyUI Node

Singularity R178

Singularity's Tail 5 gate for long Wan videos

By DIIIUA·Created 3 months ago·Updated 26 days ago· 1
Singularity R178
  • primary_model
  • clip
  • vae
  • secondary_model
  • image
  • mask
  • status
  • saved_video_path
  • saved_report_path
  • report
  • tail_frame_0
  • tail_frame_1
  • tail_frame_2
  • tail_frame_3
  • tail_frame_4
source_image_filenone
positive_prompt
negative_prompt色调艳丽,过曝,静态,细节模糊不清,字幕,风格,作品,画作,画面,静止,整体发灰,最差质量,低质量,JPEG压缩残留,丑陋的,残缺的,多余的手指,画得不好的手部,画得不好的脸部,畸形的,毁容的,形态畸形的肢体,手指融合,静止不动的画面,杂乱的背景,三条腿,背景人很多,倒着走
temporal_texture_lockfalse
cascade_count2
pause_after_cascade_1true
pause_after_cascade_2false
pause_after_cascade_3false
pause_after_cascade_4false
frames_per_cascade49
width704
height1280
fps16
seed123
sampler_nameeuler
schedulersimple
global_steps4
primary_cfg1.00
secondary_cfg1.00
primary_start_step0
primary_end_step1
secondary_start_step1
secondary_end_step4
math_control_modeObserve Only
high_delta_strength1.0000
low_delta_strength1.0000
strategy_field_modeOFF
decode_tile_size512
decode_overlap64
decode_temporal_size32
decode_temporal_overlap12
image_upscale_methodnearest-exact
image_cropwan_native
save_videotrue
video_formatvideo/h264-mp4
save_reporttrue
save_prefixSingularity
sampler_trace_modeOFF
sampler_trace_max_steps64
use_formula_recommendationfalse
prompt_transcode_modeReport Only
auto_calibration_modeOFF
bridge_wan_alpha0.100
bridge_concat_alpha0.060
bridge_wan_max_step0.450
bridge_concat_max_step0.280
selected_tail_index-1

If you've ever made a Wan clip longer than ~5 seconds, you know the ritual: render segment one, grab its last frame, feed it back into an I2V node as the new start image, render segment two, and pray the two clips don't visibly jump. It works, and it's miserable. Singularity ("Singularity R178") is a public-alpha ComfyUI node that wraps that whole loop into one node - and then does one genuinely clever thing on top: at each segment boundary it pauses and shows you the last five frames so you can pick which one the next segment continues from, instead of chaining off whatever frame the model left you with.

It's Wan-first, one node, and early. The whole ComfyUI-Event-Equality-Core pack registers exactly one visible node; everything else is internal machinery. Treat it as an experiment you can actually run, not a production tool.

How it works

Under the hood the node runs a cascade: it samples a segment, extracts five tail candidate frames, and (when a pause is enabled) stops the run and shows a detached panel - Source | Tail 1 | Tail 2 | Tail 3 | Tail 4 | Tail 5 | Result. Click the frame with the best pose, face, or motion direction, hit Resume Cascade / Continue, and that frame becomes the source state for the next segment. Same run, no manual file juggling, one stitched MP4 at the end.

Sampling itself follows the Wan 2.2 high/low pattern you already know: a high-noise stage on primary_model (the structure/motion pass, default steps 0→1) and a low-noise refinement stage on secondary_model (default steps 1→4). If you don't wire a secondary_model, it falls back to the primary for the second stage. The high/low terminology maps directly onto Wan's own two-expert setup.

Here's the honest part: the project dresses this up in a lot of "event equality formula" language. In the public default (math_control_mode = Observe Only) that layer mostly records evidence into a report instead of mutating tensors. The author says it themselves: the formula is not a magic quality button. You're getting a convenient cascade loop plus diagnostics, not a new sampling algorithm.

The inputs that matter

The node has a big surface, but most of it hides in LAB/research groups. For your first run, set these:

  • primary_model, clip, vae - standard Wan wiring. Models are not included, so you need a Wan 2.2 checkpoint, its CLIP, and VAE.
  • source_image_file - the reference image for I2V. It uses ComfyUI's native image upload, so you can pick from your input folder directly.
  • cascade_count (default 2, max 5 in this alpha) and pause_after_cascade_1..4 - where the Tail 5 gate appears. Keep cascade_count = 2 and pause_after_cascade_1 = true for your first test.
  • frames_per_cascade (default 49), width/height (default 704×1280), fps, seed.

The default negative prompt is a Chinese Wan-style one; leave it. math_control_mode has 27 options, but only Observe Only, Latent Delta Scale, and Tail Source Reconstruction are billed as public-safe - the rest are research modes that can change output quality.

Outputs

You get status, saved_video_path, saved_report_path, and report as STRINGs, plus tail_frame_0 through tail_frame_4 as IMAGEs you can route to a preview. When save_report is on, a Markdown report lands next to the video with CompletionGate, cascade_progress, seam diagnostics, and more. Read it, but remember CompletionGate = PASS is structural proof, not a quality verdict - always inspect the MP4.

Install

ComfyUI Manager is the easy route - search "Singularity - Tail 5 Continuation Gate" and hit install. Or go manual:

cd ComfyUI/custom_nodes
git clone https://github.com/DIIIUA/ComfyUI-Event-Equality-Core

Then restart ComfyUI. The pack's requirements.txt declares no extra Python dependencies - it runs on ComfyUI's own runtime. One real gotcha the README doesn't advertise: video saving prefers VHS_VideoCombine, i.e. the VideoHelperSuite pack. There's an emergency fallback writer if VHS is missing, but installing VHS through Manager gives you clean MP4 output.

Troubleshooting

  • OOM at 704×1280? That's the default and it's heavy. Drop to 416×608 for a fast debugging pass - the README recommends it explicitly.
  • The pause panel didn't appear? Check pause_after_cascade_1 is on. The panel stays detached under the node while paused and vanishes once the run finishes - easy to miss.
  • Weird output? If you flipped math_control_mode away from Observe Only, or enabled strategy_field_mode, sampler_trace_mode, or auto_calibration_mode, revert them. They're real research modes, not safe defaults.
  • Fuzzy stitches between segments are what picking a better tail frame is for. The report's cascade_seam_impulse and tail_next_source_continuity fields tell you whether the boundary jumped.

It's alpha and niche, but the Tail 5 picker is the part that's hard to fake with stock nodes - and it's genuinely the right fix for the 5-second problem.

CategorySingularity/Singularity

Inputs (53)

NameTypeDefaultDescription
primary_modelMODEL
clipCLIP
vaeVAE
source_image_fileCOMBOnoneReference image used as the source state for the cascade.
positive_promptSTRINGClean model-facing strategy text. Math records must not inject extra prompt prose here.
negative_promptSTRING色调艳丽,过曝,静态,细节模糊不清,字幕,风格,作品,画作,画面,静止,整体发灰,最差质量,低质量,JPEG压缩残留,丑陋的,残缺的,多余的手指,画得不好的手部,画得不好的脸部,畸形的,毁容的,形态畸形的肢体,手指融合,静止不动的画面,杂乱的背景,三条腿,背景人很多,倒着走Negative prompt passed to the Wan conditioning route.
temporal_texture_lockBOOLEANfalseExperimental continuity guard for temporal texture drift. Keep off for baseline comparisons.
cascade_countINT21–5How many video segments to generate and stitch.
pause_after_cascade_1BOOLEANtruePause after segment 1 and show the Tail 5 frame picker.
pause_after_cascade_2BOOLEANfalsePause after segment 2 and show the Tail 5 frame picker.
pause_after_cascade_3BOOLEANfalsePause after segment 3 and show the Tail 5 frame picker.
pause_after_cascade_4BOOLEANfalsePause after segment 4 and show the Tail 5 frame picker.
frames_per_cascadeINT491–4096Frames generated per cascade segment.
widthINT70416–8192Output width in pixels. Values align to multiples of 8.
heightINT128016–8192Output height in pixels. Values align to multiples of 8.
fpsINT161–240Saved video frame rate.
seedINT1230–18446744073709550000Seed used for repeatable fixed-seed comparisons.
sampler_nameSTRINGeulerSampler name passed to the internal high/low sampling windows.
schedulerSTRINGsimpleScheduler name passed to the internal high/low sampling windows.
global_stepsINT40–10000Total sampler step count for the high/low windows.
primary_cfgFLOAT1.00-1000–1000CFG used for the high/noise stage.
secondary_cfgFLOAT1.00-1000–1000CFG used for the low/refinement stage.
primary_start_stepINT00–10000High/noise stage start step.
primary_end_stepINT10–10000High/noise stage end step.
secondary_start_stepINT10–10000Low/refinement stage start step.
secondary_end_stepINT40–10000Low/refinement stage end step.
math_control_modeCOMBOObserve OnlyMain math surface. Observe Only records evidence; active modes apply bounded numeric control.
high_delta_strengthFLOAT1.00000–2High/noise stage delta multiplier. 1.0 is neutral.
low_delta_strengthFLOAT1.00000–2Low/refinement stage delta multiplier. 1.0 is neutral.
strategy_field_modeCOMBOOFFResearch StrategyField router. Keep off unless testing semantic pressure surfaces.
decode_tile_sizeINT51264–8192VAE decode tile size.
decode_overlapINT640–65535VAE spatial overlap; runtime clamps impossible values.
decode_temporal_sizeINT321–4096Frames decoded per temporal VAE tile.
decode_temporal_overlapINT120–65535Temporal overlap for video VAE decode.
image_upscale_methodCOMBOnearest-exactResize method for source image preparation.
image_cropCOMBOwan_nativeHow the source image is fitted to the Wan frame size.
save_videoBOOLEANtrueSave the stitched cascade video.
video_formatCOMBOvideo/h264-mp4Output format for saved video/animation.
save_reportBOOLEANtrueSave the Markdown report with runtime evidence.
save_prefixSTRINGSingularityFilename prefix for saved outputs.
sampler_trace_modeCOMBOOFFOptional sampler shadow trace diagnostics.
sampler_trace_max_stepsINT641–65535Maximum sampler steps recorded by shadow trace.
use_formula_recommendationBOOLEANfalseShow formula frame suggestion in Tail 5; manual green selection remains primary.
prompt_transcode_modeCOMBOReport OnlyPrompt strategy transform. Transform Prompt builds a semantic map without adding extra prose to the prompt.
auto_calibration_modeCOMBOOFFResearch auto-calibration proposal/apply mode. Keep off for public-safe baseline.
bridge_wan_alphaFLOAT0.1000–0.5Internal latent memory bridge alpha for Wan latent path.
bridge_concat_alphaFLOAT0.0600–0.5Internal latent memory bridge alpha for concat/source path.
bridge_wan_max_stepFLOAT0.4500–2Maximum Wan latent bridge step size.
bridge_concat_max_stepFLOAT0.2800–2Maximum concat/source bridge step size.
secondary_modeloptMODEL
imageoptIMAGE
maskoptMASK
selected_tail_indexoptSTRING-1

Outputs (9)

NameTypeDescription
statusSTRING
saved_video_pathSTRING
saved_report_pathSTRING
reportSTRING
tail_frame_0IMAGE
tail_frame_1IMAGE
tail_frame_2IMAGE
tail_frame_3IMAGE
tail_frame_4IMAGE