Dev AI Summit · DrupalCon Rotterdam · 28 September 2026
The companion page to the talk: the run it opens with, the numbers behind the cost slides, the tables that were too big for a projector, and one standing offer.
Atelier CMS by AIncient Labs, FlowDrop 2.5.1 on Drupal 11, 28 August 2026. Run 43 hands the request to a second workflow, run 44. 31 steps, 16 seconds. A yellow went in, a brown came out, and the reply said success. The cause was found in the record of the run.
Why brown: the prompt promised the model that relative changes are relative to the current values, then listed the saved primary with numbers, oklch(0.55 0.12 40), and the on-screen primary as the bare token var(--color-yellow-100), with nothing behind it. You cannot subtract ten percent from a name, so the model darkened the saved colour: oklch(0.45 0.12 40), #8A3819. No contrast check fired, because near-white text on dark brown passes. The fix resolves every token reference before the model sees it: var(--color-yellow-100) (= oklch(97.3% 0.071 103.193) ≈ #FEF9C2).
Export the workflow. It is Drupal configuration, so it goes into git with the rest of the site.
| Run mode | Built for | Queue |
|---|---|---|
| Synchronous | Fewer than ten steps, form handling, testing | No |
| Synchronous Pipeline | The same, with a record per step shown in the UI | No |
| Asynchronous | Long runs, many steps, calls to external APIs | Yes |
| StateGraph | Loops, human approval, chat, checkpoints | Yes |
A yes or no, a choice, a text or a form. The run is set to Paused and waits in the database for as long as the person takes.
300 seconds by default. A run that goes over it pauses, records the reason, and continues later instead of crashing on a PHP timeout.
Planned, not built: a run that starts inside the web request and moves itself to the queue when it pauses. Filed as flowdrop issue 3592458.
Eight ways to build the same task, same model (Claude Sonnet 5), three runs each. The agent that checks its own work (B9) costs about three times more per run, and it is the only one that was never quietly wrong. Per correct result it costs the same as the others.
| Variant | $ / correct | Correct | Quietly wrong |
|---|---|---|---|
| B2 · raw HTML to one prompt | 0.12 | 1 of 3 | 2 |
| B3 · markdown to one prompt | 0.14 | 1 of 3 | 0 |
| B4 · AI agent with one tool | — | 0 of 3 | 2 |
| B5 · agent that reasons, then acts | 0.13 | 1 of 3 | 0 |
| B6 · agent left to decide alone | — | 0 of 3 | 3 |
| B7 · same agent, tool takes a URL | 0.20 | 1 of 3 | 1 |
| B8 · same agent, tools in the parent | 0.14 | 1 of 3 | 2 |
| B9 · agent that checks its own work | 0.15 | 3 of 3 | 0 |
| Model | Runs | $ / run | Correct | $ / correct | Quietly wrong |
|---|---|---|---|---|---|
| Claude Opus 5 | 72 | 0.152 | 69 | 0.158 | 0 |
| Qwen 3.8 27B | 72 | 0.039 | 67 | 0.042 | 1 |
| Claude Sonnet 4.6 | 71 | 0.104 | 48 | 0.154 | 14 |
| Claude Haiku 4.5 | 69 | 0.033 | 46 | 0.050 | 10 |
| DeepSeek V4 Flash | 72 | 0.003 | 44 | 0.005 | 10 |
| Claude Sonnet 5 | 71 | 0.058 | 41 | 0.101 | 19 |
| Gemma 4 31B | 72 | 0.001 | 38 | 0.002 | 28 |
Source: flowdrop-ai-bench, current corpus, 499 graded runs, every cell n=3, list prices. Open-weight rows (216 runs) and the OpenRouter provider were contributed by George Kastanis, Pointblank, Greece. “Quietly wrong” means the run ended without an error and the result looked fine but was wrong.
The AI step has an output called tokens_used. Tokens for the prompt and the answer are saved in that step’s record, next to its input, output and time taken. So you can see which step spent the money.
Time: the 300 second limit pauses the run. Tokens: measured per step, not yet enforced. That is the next step, not a feature today.
Events, conditions and actions across the whole site. The right place to decide whether something should run at all.
One run, step by step. Typed inputs and outputs, visible connections, a record for every step.
Two different questions. Most sites will use both.
Bring one workflow
Thirty minutes, your workflow, a shared screen. Write to shibin@factorial.io with one line about what the flow does, and we will find a time.
Factorial is the partner for FlowDrop in enterprise use: support, consulting and the hosted backend.
At DrupalCon Rotterdam this ran in person, at the topic tables on Monday 28 September 2026, 16:00 to 17:00. The offer stands after the conference.