Nodes/saya-comfy-couple-plus/Saya Image Phase LOAD Previous Checkpoint
ComfyUI Node

Saya Image Phase LOAD Previous Checkpoint

How one pass of your pipeline hands the image to the next

By alphaziod·Created 3 months ago·Updated about 15 hours ago· 3
Saya Image Phase LOAD Previous Checkpoint
    • image
    • manifest_json
    • checkpoint_path
    • seed
    • positive_prompt
    • negative_prompt
    phase
    detailer
    checkpoint_rootimage/checkpoints

    Every pass of this pack's six-phase pipeline starts the same way: pick up where the previous pass left off. That's this node's entire job. It reads the validated checkpoint that the previous phase saved to disk - the image plus its JSON manifest - and hands you everything a phase needs to continue: the image, the manifest, the checkpoint path, the seed, and the positive/negative prompts that produced it.

    Where the fixed AUTO PASS N · LOAD nodes are locked to one phase, this is the manual, any-phase version: you get dropdowns for phase, detailer, and checkpoint_root. Select 2 - HIRES / USDU, for example, and it loads the validated output of phase 1 (base generation). Choose 5 - DETAILERS, it loads phase 4. The dropdown actually lists phase 1 as well, but leave it alone: phase 1 has no predecessor to load, and the loader throws if you ask it for one - base generation starts from a prompt and a blank latent, not from an earlier checkpoint.

    Outputs (the six things every phase needs)

    • image - the previous phase's validated PNG, loaded back as an IMAGE tensor for img2img or upscaling.
    • manifest_json - the full manifest as a string: phase, transaction UUID, source/result file paths, seed, prompts, and the models_used/vaes_used/samplers metadata the previous phase recorded.
    • checkpoint_path - the on-disk path to the validated image, if some node needs the raw file.
    • seed - the previous phase's seed, so you can keep it for continuity or chain it onward.
    • positive_prompt / negative_prompt - the prompts the previous phase ran, so the next phase can re-encode them or diff against them.

    The detailer dropdown is really only meaningful for phase 5 (DETAILERS), where the pack's checkpoint files can be tracked per detailer when you drive them one at a time; for other phases leave it on none. Either way, loading always reads the previous phase's validated checkpoint.

    The one gotcha that bites everyone

    This node only loads a checkpoint that has been validated - meaning a Stop or Review node in the previous phase promoted its candidate to the approved *.png/.json pair. If you run it fresh with nothing on disk, or the previous phase only produced a candidate that was never approved (say you hit Restart and it got discarded), the node throws a "previous phase not validated" style error. That's by design - the whole architecture refuses to build an expensive phase on top of an unapproved image. Run your passes in order and let each one validate before you start the next.

    Mechanically it's cheap and safe: it reads files from ComfyUI/output/image/checkpoints/ (relative to the output folder), and its change-detection watches the previous phase's validated manifest file's modification time. So if you regenerate and re-validate phase 3, a cached phase-4 graph automatically invalidates and picks up the new image when you run it - no manual cache clearing.

    This node is the load half of the pipeline's persistence layer. If you're not running the author's multi-phase system, you don't need it; a normal LoadImage covers img2img. It earns its keep specifically in workflows that must survive being split across separate runs or queued passes. WIP pack - expect occasional behavior changes, and back up workflows before updating.

    Install: ComfyUI Manager search saya-comfy-couple-plus, or git clone https://github.com/alphaziod/saya-comfy-couple-plus into custom_nodes and restart. Just numpy/Pillow as dependencies.

    CategorySaya/Image Phases

    Inputs (3)

    NameTypeDefaultDescription
    phaseCOMBO6 options: 1 — BASE GENERATION, 2 — HIRES / USDU, 3 — REFINER HIDREAM, 4 — PRE-DETAIL UPSCALE, 5 — DETAILERS, 6 — FINAL UPSCALE / COLOR / SAVE
    detailerCOMBO19 options: none, body, hair, face, full_eyes, eyes, +13
    checkpoint_rootSTRINGimage/checkpoints

    Outputs (6)

    NameTypeDescription
    imageIMAGE
    manifest_jsonSTRING
    checkpoint_pathSTRING
    seedINT
    positive_promptSTRING
    negative_promptSTRING