Creative Queue Workflow / Creative automation / 2026
Preparing creative work with enough state to recover.
An n8n worker carries source-image context into prompts and records which stage failed, so recovery can distinguish a failed save from unfinished generation.
Confidential work. Names and identifying business details have been changed.
- ROLE
- Software engineering
- STATE OF THE BUILD
- In progress
- RECORD UPDATED
THE WORK
The project.
Creative Queue Workflow connects source images, visual context and prompt preparation while keeping track of what each job has actually completed. The exported n8n worker checks existing package content before selecting work, then records stage results through context preparation, generation, review and saving. If saving fails after a description is complete, the failure result can preserve that distinction for the next decision.
Work ownership is checked too: the worker writes a run-specific token to the job and reads it back before preparing context. That detects an overwritten claim at the check, although the separate upsert and readback aren't an atomic reservation. This anonymized case study describes the exported implementation. Prompt preparation is the default; image generation remains a separate, explicit handoff that also needs configuration.
IMPLEMENTATION
Design choices.
- Context work requires a matching claim readback. Writing an owner field alone doesn't establish that the worker still owns the row; matching state and token make that a checked condition at this point in the workflow.
- The upsert matches the job ID, not its previous owner or state, so it isn't compare-and-swap. Stronger reservation needs an atomic operation or an enforced single-worker setup.
- Content state is tracked separately from queue state. A retry decision can account for content already produced, while a revision request can intentionally reopen work that otherwise looks complete.
- The error category and attempt count determine what happens next. Validation, permission, authentication and schema problems can become terminal review work instead of taking the same retry path as every transient failure.
- Image generation stays opt-in and missing configuration fails the request. The current exports retain that path, so the older README statement that it was retired needs correcting.
HOW IT FITS TOGETHER
Architecture.
- Intake preserves original image references and per-image visual context before creating prompt jobs. Those references give later preparation a specific source to describe instead of relying only on a general product summary.
- The worker sets run identity, batch limits, retry limits and claim timeout, then checks both job state and existing package content. Finished jobs and active claims are excluded; an explicit revision can make existing content eligible again.
- For each selected job, the worker upserts an owner token derived from owner, run and job IDs. Context preparation starts only after a readback matches that token and the in-progress state. A mismatch takes the failure path.
- Visual context, audience context, prompt preparation, review and saving return distinct stage results. Completed-content status travels with the failure step, code and retry flags, allowing later routing to distinguish unfinished generation from an unsuccessful save.
- Review actions resolve retry, hold, close or revision decisions. The normal path prepares prompts; a separate branch calls the optional image workflow only for an explicit request with a configured reference.
Explore the architecture map9 components · 12 connections
Source preservation, queued generation and human review
The workflow family separates original media, queued work, model-generated packages and review outcomes.
Intake and review
n8n orchestration
Storage and model services
Scroll or drag the background to move. Use the zoom buttons to resize.Arrow keys move between components. Enter selects.
Choose a component to explore
Select a numbered component on the map or use the component menu. Its details and connections will appear here.
No component selected.
All connections (12)
- 01 · Telegram source intake → 02 · Registration and source savesource input · Async task
- 02 · Registration and source save → 03 · Google Drive originalssave originals · Direct call
- 02 · Registration and source save → 04 · Job and review tablesregistered prompt job · Direct call
- 04 · Job and review tables → 05 · Claimed-job workereligible work · Response / return
- 03 · Google Drive originals → 06 · Context and package subworkflowssource image references · Response / return
- 05 · Claimed-job worker → 06 · Context and package subworkflowsverified observed claim · Direct call
- 06 · Context and package subworkflows → 07 · Language-model callsstructured requests · Async task
- 07 · Language-model calls → 06 · Context and package subworkflowsoutput to validate · Response / return
- 06 · Context and package subworkflows → 08 · Telegram review actionreviewable package · Async task
- 05 · Claimed-job worker → 08 · Telegram review actionterminal failure · Response / return
- 08 · Telegram review action → 04 · Job and review tablesrevision or retry · Response / return
- 08 · Telegram review action → 09 · Saved prompt packageapproved save path · Direct call
MADE WITH
n8n · JavaScript · Data Tables · Telegram · Google Drive · OpenAI · LangChain
CHECKS & RESULTS
What was checked.
A source review shows what the code does. It is not a fresh test of the running app.
Code and development records reviewedReviewed
The code, tests and available development records were checked. Reported test results keep their original scope. No fresh app or live deployment check was run for this write-up.
- Scope of this check
- Code review, not a fresh run of the app
NEXT
Still to work through.
The stage results make recovery decisions more informed, but they don't establish exactly-once execution. Another worker can act between the claim write and readback, and external effects need their own replay checks. Concurrent execution wasn't tested in this review. The current source also needs to be reconciled with the README's outdated image-workflow description.