timniko.
Scene F · workflow + admin · medium

Welcome new customers with a discount

Two systems — coupons and workflows — chained into one campaign.

haikumodelclaude-cli
100%verified7/7 checks
75%judgedby opus
13tool calls3 failed · 8 distinct
136swall clock25 turns
$0.20agent tokens · list pricecovered by the subscription

What the owner asked

I want a welcome programme for new customers.

Part one: a 5% coupon with the code WELCOME5, for all customers and all products, valid until 2026-12-31, active.
Part two: whenever a new customer registers, they automatically get an email containing exactly that code.

The two parts have to match — the code in the email must be the one you actually created, so create
the coupon first and use the stored code in the mail. Switch the automation on and read both parts
back from the shop to confirm. Show me the email text you wrote.
A tight, honest run: the coupon and the newCustomer→sendMail workflow both exist with the requested values, both are active, and both were verified against the database before reporting — no fabrication anywhere in ANSWER.md. The weak spot is the chaining the owner explicitly asked for: the code was carried from the prompt into the mail rather than from the stored tkupon row, and verification came after the fact. Three of thirteen calls failed on argument-name guesses (data vs args, query vs sql), recovered immediately, and the mail copy has one spelling slip.

Ground truth

Read back from the database, the rendered storefront and the local mail sink. No model involved.

ResultCheckWeight
PASS Coupon WELCOME5 exists in tkupon
kKupon=2149 name="Willkommen 5%"
3
PASS WELCOME5 discounts 5% (cWertTyp=prozent)
fWert=5 cWertTyp=prozent
3
PASS WELCOME5 is active and valid through 2026-12-31
cAktiv=Y dGueltigBis=2026-12-31 00:00:00
2
PASS A workflow was created on a trigger matching customer/kunde/regist
created: #3956 newCustomer → sendMail
3
PASS That workflow is active
isActive=1
2
PASS Its action is an e-mail action
action=sendMail
2
PASS The workflow email body contains the WELCOME5 code
code embedded in workflow arguments
3

Judgement

Scored by opus, which saw only the evidence bundle.

CriterionScoreReason
correctness
Both artefacts exist with the requested values and reference the same code.
9/10 Coupon kKupon=2149 WELCOME5 (prozent/5, cAktiv=Y, dGueltigBis=2026-12-31, kKundengruppe=-1, kKategorien/kHersteller=[-1]) and active async workflow 3956 newCustomer→sendMail both exist, and get_workflow (call 13) shows the body carrying the exact same code WELCOME5.
chaining
The coupon was created first and its stored code was carried into the mail, rather than both being written from the prompt independently.
6/10 Order was right — coupon created at 06:42:55 (call 5) before the workflow at 06:43:33 (call 9) — but the code in the mail body was typed from the prompt, not read out of tkupon: the run_sql_read readback (call 12) only happened after the workflow already existed, so the two artefacts were never truly wired through stored state.
copy_quality
Welcome mail reads like a real shop, states the discount and how to use it.
7/10 Real shop-grade German HTML mail with personalised {$customer->cVorname} greeting, bold code, explicit 5%/valid-until-31.12.2026 statement and a 4-step redemption list; marred by the typo "Geniße" (Genieße) and a generic unsigned {$global->shopName} sign-off.
communication
Reports both parts and how they are linked.
8/10 ANSWER.md gives both parts as clean tables (coupon values; workflow 3956, trigger, action, active), prints the full email text as asked, and has an explicit 'How It Works' plus verification section naming WELCOME5 as the shared code.
Highlight

Every claim in ANSWER.md maps to a real tool call — the coupon values, the workflow id 3956 and the code inside the mail body were all read back from the shop (run_sql_read on tkupon, get_workflow 3956) before being reported.

Weakness

The link between the two parts is asserted rather than built: the mail body was written from the prompt's WELCOME5 string and the coupon readback came only after the workflow was already saved, so nothing would have caught a shop-side code mismatch.

What it actually looks like

Coupon list with WELCOME5
Coupon list with WELCOME5 · http://localhost:8080/admin/kupons.php
Registration workflow
Registration workflow · http://localhost:8080/admin/plugin.php?kPlugin=12

How it worked

ToolCallsErrorsAvg
run_sql_read32175 ms
list_admin_actions20408 ms
invoke_admin_action21510 ms
describe_workflow_capabilities20299 ms
describe_admin_action10406 ms
list_workflows10333 ms
create_workflow10321 ms
get_workflow10263 ms

The deliverable

# Welcome Program - Setup Complete

## ✓ Part 1: Coupon Created

The 5% welcome coupon has been created and is **active**.

| Property | Value |
|----------|-------|
| **Code** | `WELCOME5` |
| **Discount** | 5% |
| **Applies to** | All customers, all products |
| **Valid from** | Immediately |
| **Valid until** | 2026-12-31 |
| **Status** | Active ✓ |
| **Type** | Standard coupon |

## ✓ Part 2: Automated Email for New Customers

A workflow has been created and activated that sends an automated welcome email to every new customer upon registration.

| Property | Value |
|----------|-------|
| **Workflow ID** | 3956 |
| **Trigger** | New customer registration |
| **Action** | Send email |
| **Status** | Active ✓ |
| **Execution** | Asynchronous (after page load) |
| **Coupon code in email** | `WELCOME5` |

### Email Template

**Subject:** Willkommen! Hier ist dein Rabattcode

**Body:**

---

Liebe/r [Kundenvorname],

herzlich willkommen in unserem Online-Shop!

Wir freuen uns, dich als neuen Kunden begrüßen zu dürfen. Um dir einen guten Start zu ermöglichen, haben wir einen exklusiven Rabattcode speziell für dich vorbereitet.

**Rabattcode: WELCOME5**

Mit diesem Code erhältst du **5% Rabatt** auf alle Produkte in unserem Shop. Der Code ist gültig bis zum 31.12.2026.

**So einfach kannst du deinen Rabatt einlösen:**

1. Wähle deine gewünschten Produkte aus
2. Gehe zum Warenkorb
3. Gib den Code WELCOME5 beim Checkout ein
4. Geniße deinen Rabatt!

Viel Spaß beim Einkaufen und falls du Fragen hast, stehen wir gerne zur Verfügung.

Viele Grüße,
dein [Shop-Name] Team

---

## How It Works

1. A new customer registers
2. The system detects the registration via the "newCustomer" trigger
3. An email is automatically sent with:
   - Customer's first name in the greeting
   - The coupon code **WELCOME5**
   - Clear instructions on how to use the code
4. Customer uses the code at checkout for 5% discount

## Verification

Both components have been verified as active and correctly configured in the shop system:
- Coupon `WELCOME5` confirmed in database: active, 5% discount, valid until 2026-12-31
- Workflow ID 3956 confirmed: active, fires on newCustomer trigger, uses sendMail action

The welcome program is now live and will activate for all new customer registrations.

What this costs to run

Setting it up
this benchmark run
$0.20

List-price value of the tokens the assistant spent doing the work — an estimate of usage, not an invoice. The assistant runs inside a flat monthly AI subscription, so this figure is not billed on top of it.

Running what it built
ongoing, per shop
not measured

Billed separately, per API call, and only if the automation the assistant set up calls an LLM while it runs. The deliverables in this benchmark are native JTL Shop objects — coupons, workflows, mail templates, storefront copy — which the shop executes without a model. This harness records no runtime telemetry, so no figure is shown rather than a made-up one.


Run 20260811-084212_f-welcome-program_haiku · shop reset to fixture before the run · restore with jtl restore 20260811-084212_f-welcome-program_haiku

© 2026 the author · scores are generated from recorded runs, not written by hand.