Nodes/saya-comfy-couple-plus/AUTO PASS 4 · STOP / UNLOAD
ComfyUI Node

AUTO PASS 4 · STOP / UNLOAD

Seal the upscaled image and hand it to the detailers

By alphaziod·Created 3 months ago·Updated about 15 hours ago· 3
AUTO PASS 4 · STOP / UNLOAD
  • image
  • image
  • validated_path
  • manifest_json
seed0
positive_prompt
negative_prompt
models_json[]
vaes_json[]
samplers_json{}
source_path
save_receipt

What this node does

The pre-detail upscale pass ends at SayaImagePhase4Stop, doing what every STOP in this pack does: persist the phase's output as a validated checkpoint, free the VRAM, and roll the queue forward to the next pass - here, pass 5, the DETAILERS.

If you've read the other STOP articles, the mechanism is familiar and I won't pad it: it takes image, seed, positive_prompt, negative_prompt, and the models_json/vaes_json/samplers_json metadata widgets (record-keeping only - nothing here steers execution), plus optional source_path and an ignored save_receipt. It writes phase_4_predetail.candidate.png/.json, atomically promotes them to phase_4_predetail.png/.json under ComfyUI/output/image/checkpoints/, and emits the phase-complete event the frontend listens for. Outputs: image passthrough, validated_path, manifest_json. Model unload is deferred to after execution_success so pinned model pages don't get yanked mid-prompt; then pass 5 queues after a short pause.

Why this boundary specifically matters

This STOP is the gatekeeper between the upscale stage and the most expensive phase in the run. Pass 5's detailers crop regions and re-render them one at a time, and they all inherit whatever this node validated. Two consequences worth your attention:

  • Don't validate sloppy work here. The detailers can fix faces and hands, but they amplify whatever texture and resolution problems the pre-detail upscale left behind. If the image at this boundary is soft or the upscale was too aggressive, every detailer crop pays for it.
  • The manifest is the receipt. Because phase 4 records the exact seed, prompts, and model/VAE/sampler notes in phase_4_predetail.json, you can always audit what the upscale actually used - and phase 5's LOAD reads that record to stay continuous with it.

The usual traps

The usual operational traps apply across the whole family: run passes in order (phase 5's LOAD will reject a missing or discarded phase-4 checkpoint), and expect WIP churn between versions - the README is upfront that ports and behavior can change, so keep workflow backups before updating. Also worth repeating: this entire STOP/LOAD persistence layer only earns its complexity inside the author's automated multi-pass setup. For a one-off upscale-then-save, ordinary nodes do the job.

Install: ComfyUI Manager search saya-comfy-couple-plus, or git clone https://github.com/alphaziod/saya-comfy-couple-plus into custom_nodes, then restart ComfyUI. Just numpy and Pillow; nothing to download.

CategorySaya/Image Phases

Inputs (9)

NameTypeDefaultDescription
imageIMAGE
seedINT00–18446744073709550000
positive_promptSTRING
negative_promptSTRING
models_jsonSTRING[]
vaes_jsonSTRING[]
samplers_jsonSTRING{}
source_pathoptSTRING
save_receiptoptSTRING

Outputs (3)

NameTypeDescription
imageIMAGE
validated_pathSTRING
manifest_jsonSTRING