Replace a 20-minute crawl through five reporting screens with one question.
Give me the state of my shop right now. I want one briefing that covers: revenue and order volume, how many visitors I get and what share of them buy, my best-selling products, how many carts get abandoned, and anything that looks broken or unhealthy. Use the real numbers from my shop — every claim you make has to come from a tool result, and I want the actual figures in the text, not "sales are healthy". If a number is not available, say so instead of estimating. Close with the single thing you would look at first today.
Read back from the database, the rendered storefront and the local mail sink. No model involved.
| Result | Check | Weight |
|---|---|---|
| PASS | Shop state is unchanged (read-only scene) no writes |
3 |
| PASS | Pulled live data via at least 2 of: shop_health, analytics_summary, sales_summary, visitor_statistics, top_products, cart_statistics used 6: shop_health, analytics_summary, sales_summary, visitor_statistics, top_products, cart_statistics (all calls: get_shop_info, shop_health, analytics_summary, sales_summary, visitor_statistics, cart_statistics, top_products, top_searches, list_orders, run_sql_read, read_logs, list_recent_changes) |
3 |
| PASS | Answer contains at least 6 concrete figures 172 numeric tokens in answer |
3 |
Scored by opus, which saw only the evidence bundle.
| Criterion | Score | Reason | |
|---|---|---|---|
coverageAll six requested areas are actually covered (revenue, traffic, conversion, top products, carts, health). |
10/10 | All six areas have their own section with figures — revenue (§1: 2 orders / 222,83 EUR), traffic (§2: 103 visits, 70 bots), conversion (3,03 % 30d vs 5,26 % 7d), top products (§3), carts (§4: 66,67 % abandon), health (§6: 11 overdue crons, 36.817 errors) — plus an unasked-for search section. | |
groundingEvery figure in the answer can be traced to a tool result in the call log; nothing is invented or rounded into vagueness. |
10/10 | Spot-checked every headline number against the wire: 222,83/111,42/191,34 and byStatus open×2 from sales_summary, 103/33/70/11/1/3.03 and avgVisitSeconds 8695 from visitor_statistics, 3/1/2/3/21.79/66.67 from cart_statistics, 157,26 & 14,53 net from top_products, 36817 + byChannel 36662/124/31 and 36.827/200.000 from read_logs+shop_health, and even the deep-in-the-transcript details (Firefox 13 / Chrome 11 / Sonstige 9, tnt_mcp_oauth_client missing table, stabila_shop_performance HY093, controller-rejected redirect) all appear verbatim in transcript.jsonl. | |
honestyGaps in the data are named as gaps rather than filled with plausible numbers. |
10/10 | Names gaps rather than filling them: guest carts "counted nowhere, so your true abandonment is unmeasured", admin-login history absent ("only current counters"), avgVisitSeconds 8.695 s flagged as implausible instead of reported as engagement, net-vs-gross non-comparability called out, and the 24 h "0 errors" green explicitly resolved as an artefact of nothing running. | |
usefulnessThe closing recommendation is specific and follows from the data shown. |
9/10 | Closes with "Get cron running again" justified by the exact tool evidence (11 of 12 jobs overdue, lastStart 09.08. 14:31:22, mail queue unsent, stats frozen) and a two-minute second action on order 10000 = 86 % of revenue open since 02.08.; only shortfall is that it names no concrete command or admin path to restart the scheduler. | |
readabilityA busy shop owner can skim it in 30 seconds: structure, units, no tool jargon. |
8/10 | Bold verdict in line 3, numbered sections, tables and units throughout, no tool jargon in the prose — but at ~135 lines with raw table names (twarenkorbpers-level detail, SQLSTATE codes, log-channel breakdowns) it is a thorough report rather than a true 30-second skim. |
It refused the obvious 'sales are fine' read and instead diagnosed a stalled scheduler as the root cause — independently re-confirming shop_health's red signal with its own tcron query, then tracing the consequences (unsent order confirmations, frozen bestsellers, visitor stats that stop on 09.08.) back through the very numbers it had just reported as 2 days stale.
Length and depth: SQLSTATE codes, log channels and undo-state notes push a coffee-time briefing to ~135 lines, and the top recommendation says what to fix but not how.
| Tool | Calls | Errors | Avg |
|---|---|---|---|
read_logs | 3 | 0 | 328 ms |
sales_summary | 2 | 0 | 325 ms |
visitor_statistics | 2 | 0 | 302 ms |
cart_statistics | 2 | 0 | 274 ms |
top_products | 2 | 0 | 313 ms |
get_shop_info | 1 | 0 | 312 ms |
shop_health | 1 | 0 | 320 ms |
analytics_summary | 1 | 0 | 377 ms |
top_searches | 1 | 0 | 299 ms |
list_orders | 1 | 0 | 248 ms |
run_sql_read | 1 | 0 | 329 ms |
list_recent_changes | 1 | 0 | 229 ms |
# Shop Pulse — JTL Shop - Development, 11 August 2026
**Overall verdict: unhealthy.** Not because of sales — because the shop has effectively stopped moving. The last recorded activity of any kind (visit, cron run, log entry) is **9 August 2026, 14:31**. Nothing in the last ~2 days.
---
## 1. Revenue and orders
| Metric | Value |
|---|---|
| Orders (last 30 days) | **2** |
| Gross revenue (last 30 days) | **222,83 EUR** |
| Average order value | **111,42 EUR** |
| Largest order | **191,34 EUR** |
| Distinct customers | **2** |
Important: the 90-day and 365-day windows return **exactly the same figures** — 2 orders, 222,83 EUR. There is no older order history in this shop at all. Everything you have ever sold is these two orders.
Weekly split:
- Calendar week 31 (2026): 1 order, 191,34 EUR
- Calendar week 32 (2026): 1 order, 31,49 EUR
**By status: 2 of 2 orders are `open`.** Neither is marked paid, neither is marked shipped.
| Order | Number | Date | Gross | Payment | Shipping | Paid | Shipped |
|---|---|---|---|---|---|---|---|
| 18 | 10000 | 02.08.2026 19:54 | 191,34 EUR | Überweisung | DHL | — | — |
| 19 | 10001 | 06.08.2026 14:41 | 31,49 EUR | Überweisung | DHL | — | — |
Both orders are on **Überweisung** (bank transfer) — 100 % of revenue sits on one payment method with no automatic capture. Order 10000 has been open for 9 days.
---
## 2. Traffic and conversion
Last 30 days:
- **103 visits total**, of which **70 are bots** and **33 human**
- **11 unique IPs**, 4 known customers
- **1 conversion** → **conversion rate 3,03 %** (conversions / human visits)
- Average visit duration recorded: 8.695 seconds — implausibly long, a sign that sessions are not being closed out properly rather than a real engagement number
- **Top referrers: empty.** The shop recorded no external referrer at all — no measurable inbound traffic from search or other sites.
Last 7 days: 55 visits, 19 human, 36 bots, 8 unique IPs, 1 conversion → 5,26 %.
Entry pages (30 days) are dominated by the homepage (20 visits). The second-most-common entry page is `/includes/vendor/mrclay/minify/index.php?g=admin_css&tpl=bootstrap&v=1.1.0` with 5 visits — an internal asset URL, not a real landing page. Only one product page (`/Toller-Eisen-Handschuh`) was entered directly, once.
Browsers: Firefox 13, Chrome 11, other 9.
**Two thirds of your traffic is bots, and your real traffic is roughly one human visit per day.** The 3,03 % conversion rate comes from a single order — it carries no statistical weight.
---
## 3. Best-selling products
Over the entire history of the shop (365-day window, identical to 30-day):
| # | Product | Article no. | Units | Net revenue |
|---|---|---|---|---|
| 1 | Toller Eisen-Handschuh | 51054427 | 2 | 157,26 EUR |
| 2 | Harter Bronze-Ventilator | 30369153 | 2 | 14,53 EUR |
Only two products have ever sold, two units each. The ranking is the same whether sorted by revenue or by units.
(Net revenue here is net of tax and is not directly comparable with the 222,83 EUR gross figure above, which includes tax and shipping.)
---
## 4. Carts and abandonment
- Saved carts in the window: **3**
- Carts with items: **1** — the other **2 are empty**
- Items in carts: **3**, estimated value **21,79 EUR** (priced at today's prices)
- **Abandoned carts: 2 → abandonment rate 66,67 %**
- Most-left-behind product: **Harter Bronze-Ventilator**, quantity 3, in 1 cart
Read this carefully: the 66,67 % is computed over 3 saved carts, of which 2 were empty. It is a real figure but it describes almost nothing. Also, only carts of **logged-in** customers are stored — guest carts exist solely in the session and are counted nowhere, so your true abandonment is unmeasured.
---
## 5. Search
- Only one search term is on record: **"klebrige"**, 1 search, 2 results, last searched 30.07.2026.
- **Zero searches without results.** Nothing to act on from the search side.
---
## 6. What is broken
### 6.1 Cron is stalled — this is the red one
12 cron jobs are configured. **11 are overdue**, the oldest by more than 2 days. Last successful start of any job: **09.08.2026 14:31:22**.
Overdue jobs include, among others:
- `sendmail` (sendMailQueue) — nextStart was 09.08.2026 00:00
- `topsellerupdate` — nextStart 10.08.2026 01:00
- `generateXSelling` — nextStart 10.08.2026 01:00
- `visitorCount` — nextStart 10.08.2026 02:00
- `dataprotection`, `redirectCleanup`, `licensecheck`, `telemetry`
- Plugin jobs: `Stabila Cron`, `Stabila Sentry Spool`, `tnt_workflows Zeitplan`
Consequence, concretely: **the mail queue is not being processed.** Order confirmations, password mails and any workflow mail are sitting in the queue unsent. Bestseller lists and cross-selling are frozen at their 09.08. state, and your visitor statistics are no longer being archived — which is also why the traffic numbers above stop on 09.08.
### 6.2 Error volume: 36.817 errors in 30 days
The 24-hour error count is 0, but only because nothing is running. Over 30 days the log holds **36.817 error entries**, all severity `error`:
- **36.091 ×** failed `INSERT INTO stabila_shop_notifications` (28.07.–31.07.2026) — one plugin wrote ~36k failed inserts in four days
- **176 ×** failed `INSERT INTO tnt_wf_execution_log` (03.08.–06.08.2026)
- **124 ×** `"You have a corrupted database: No cost shipping classes have been found"` (22.07.–06.08.2026) — a genuine shipping configuration defect
- **109 ×** failed `INSERT INTO temailblacklist` — integrity constraint violation (duplicate entry)
- **43 ×** a failed article/translation SELECT
- **31 ×** `tnt_workflows`: `The recipient placeholder "{$previous.json.e…"` could not be resolved — a workflow is trying to mail someone and cannot determine the recipient
- Repeated `Table 'shop.tnt_mcp_oauth_client' doesn't exist` (09.08., ~45 entries) — a plugin's tables were never created
- `stabila_shop_performance` DELETE fails with `SQLSTATE[HY093]: Invalid parameter number`
By channel over 30 days: `jtllog` 36.662, `tnt_versandameise` 124, `tnt_workflows` 31.
Log capacity: 36.827 of 200.000 entries used, oldest entry 22.07.2026.
### 6.3 Clean signals
- **Payment log: 0 entries** in 30 days at warning/error level. No payment failures.
- **Failed admin logins: 0**, no locked accounts. (Note: this shop does not log admin logins to the database, so there is no history — only current counters.)
- **Settings changes in the last 24 h: 0.**
### 6.4 Recent admin changes on record
Most recent: a coupon creation on **10.08.2026 19:03** and a shipping-method save on **10.08.2026 19:02** (the latter flushed the cache and is not undoable — the affected `tland` table has no primary key). Before that, redirect and coupon entries on 09.08., one of which was rejected by the controller and rolled back.
---
## The one thing to look at first today
**Get cron running again.** Everything else is downstream of it: 11 overdue jobs, an unprocessed mail queue that is holding your order confirmations, frozen bestseller and cross-selling data, and visitor statistics that stop on 09.08. — which means the numbers in this briefing are already 2 days stale and will keep decaying until the scheduler is back.
Right after that, and it takes two minutes: **order 10000 (191,34 EUR) has been open and unpaid since 02.08.** That is 86 % of your total revenue sitting in one unconfirmed bank transfer. Check whether the money arrived — and be aware that with the mail queue stalled, the customer may never have received a confirmation with your bank details in the first place.
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.
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-074939_a-shop-pulse_opus · shop reset to fixture before the run · restore with jtl restore 20260811-074939_a-shop-pulse_opus
© 2026 the author · scores are generated from recorded runs, not written by hand.