Nodes/comfyui-beeble-switchx/Beeble Wait Job Test
ComfyUI Node

Beeble Wait Job Test

Sit on a Beeble job until it's done — and hand you the render URI

By albert999-pixel·Created 2 months ago·Updated 2 months ago· 0
Beeble Wait Job Test
    • final_status_json
    • render_uri_or_url
    • alpha_uri_or_url
    job_id
    timeout_seconds600
    poll_interval_seconds2.0

    The Wait node is the "boring middle" of the Beeble flow, made visible. Give it a job_id from a Start test node and it polls Beeble in a loop until the job finishes - or until it gives up. When a job completes, it hands you the render URI (and the alpha URI, if there is one) ready for a download node. It's exactly the loop the production Beeble SwitchX nodes run internally, extracted as a test step.

    Why use it instead of the Poll node? Poll is a single manual check; Wait is the automatable version. In a manual debug chain - Start → Wait → Download - you queue once and the graph stops at Wait until Beeble is actually done, then proceeds. You can even run several Start nodes first and Wait on each, which is a crude way to fan out multiple jobs. That's genuinely the best use of this node: it's the manual build of the production pipeline, so when the pipeline misbehaves you can bisect by hand.

    How it works

    A loop that hits GET /v1/switchx/generations/{job_id} every poll_interval_seconds until the status is completed, failed, or cancelled. Completed returns the payload and extracts output.render and output.alpha into the two URI outputs. Failed and cancelled raise a BeeblePollingError; running past timeout_seconds raises a BeebleTimeoutError. One honest caveat: ComfyUI executes a queued workflow synchronously, so while this node waits, your graph (and that queue slot) is blocked - the UI won't do anything else until the job resolves or times out. That's normal, not a hang.

    Inputs and outputs

    • job_id (STRING) - required, from a Start test node.
    • timeout_seconds (INT, default 600, min 1) - how long before giving up. Video jobs can be slow; 600 is a reasonable default, raise it if you regularly hit timeouts.
    • poll_interval_seconds (FLOAT, default 2, min 0.1) - how often to ask. Leave it unless Beeble is throttling you.
    • final_status_json (STRING) - the completed job payload.
    • render_uri_or_url (STRING) - the render asset reference; this feeds the Download nodes.
    • alpha_uri_or_url (STRING) - the alpha result, if Beeble returned one; otherwise empty.

    Installing

    cd ComfyUI/custom_nodes
    git clone https://github.com/albert999-pixel/comfyui-beeble-switchx.git
    

    Or search Beeble in ComfyUI Manager, restart, and set BEEBLE_API_KEY. No extra dependencies, no model downloads - the compute is Beeble's, metered per job.

    Common issues

    • "Timed out waiting for Beeble job" - the job ran past your timeout_seconds. Check status_json from Poll for where it stalled, or raise the timeout.
    • "Beeble generation failed: …" - the job itself failed; the message carries Beeble's error.
    • render_uri_or_url is empty after completion - Beeble said completed but sent no output; inspect final_status_json. Rare, but it's why the debug output exists.
    • Feels frozen - that's the blocking behavior above, not a crash. Watch the console logs, which print each poll's status and progress.
    CategoryBeeble/SwitchX/Test

    Inputs (3)

    NameTypeDefaultDescription
    job_idSTRING
    timeout_secondsINT600
    poll_interval_secondsFLOAT2.0

    Outputs (3)

    NameTypeDescription
    final_status_jsonSTRING
    render_uri_or_urlSTRING
    alpha_uri_or_urlSTRING