Format run failed with incomplete_assembly: continue it, do not re-run

incomplete_assembly means a Sume Format run hit its time limit mid-generation. Continue with previous_run_id; finished clips are not regenerated.

4 min readSume
All posts

incomplete_assembly is a Sume Format error that means the run reached its time limit while generation jobs were still unfinished, so the delivered media is not everything it paid for. The documented fix is to continue the run with previous_run_id. The finished clips are on the thread and are not regenerated.

What the error carries

details.pending_job_count and details.pending_jobs[] name what was left. The partial ledger is on output when your output_schema allows it. A failure never has a primary_output_url; it is null, so a check for it means a deliverable exists.

Facts from docs.sume.com/formats/errors, checked 2026-10-01
Error codeDocumented action
incomplete_assemblyContinue the run with previous_run_id
primary_output_missingContinue the run to fill the gap, or retry
agent_reported_failureRead details.reason; continue or re-fire with a new key
provider_unavailableRetry with a new Idempotency-Key; finished clips are not regenerated
format_run_failedCompare billable amount with the cap on the receipt

A handling loop

On a failed receipt, read error.code. For incomplete_assembly, post a new run with the old run id, an instruction such as finishing the pending items, the same output_schema and primary_output_key, and a fresh cap. Wait for previous_run_id to be terminal, which it is, since the first run failed. If the second turn fails the same way, look at pending_jobs[] for a specific job that stalls rather than looping.

A continuation shares the thread but gets its own receipt, cap and webhook, so alert on each one separately.

  • Cap the number of continuations per order, so a stuck job does not drain a budget.
  • Keep the first run id in your record; the second turn lists all artifacts.
  • Distinguish transient provider_unavailable from this code.

What to tell your users

Show a partial state, not an error screen: the finished clips are real, and a continuation is under way. Because the first run's artifacts stay on the thread, a status page can list them while the second turn completes. If the continuation also fails, hand the case to a person with both run receipts attached.

Limits

A continuation can fail again, and each one can spend up to its own cap. The docs do not promise an outcome, only that finished clips are kept. If a specific job keeps stalling, change the input or the brief rather than repeating.

Related posts

More in Formats

All Formats posts

Written by Sume