Decay timeline: representative ads per phase

Why the statics fall off: review of the CHL, Wonder and RAW threads (2026-09-23 → 09-24)

Read-only review. No images generated, no Meta or Shopify changes, no skill edits. Author: Claude, AdMaker thread, 2026-09-24. The ratings are my own judgement from viewing every ad; they are not blind-judge scores or Meta results.

Update 2026-09-24 22:40Z: the fix is built. The proof ads are not generated yet. - Skill: make-printing-format-statics is rewritten around one verified printing source ad per concept. CONCEPT is the only per-concept prompt section. The furniture follows the source, and lessons stay scoped. - Gate: tools/gate_concept_sources.py is calibrated on all 24 past batches (gate-calibration.txt). It passes every round that was fully built from source ads and fails every collapsed one. - Ledgers: each brand has a ledger of the source ads it has already used. - Proof run: 3 concepts per brand, each built A and B, from 9 new sources (proof-plan/PROOF-PLAN.md, proof-plan/proof-sources.jpg). - Proof run done (2026-09-25 00:05Z): 18 ads across Wonder, CHL and RAW, each concept built from its own verified printing ad, A and B, all gates passing. Board: https://vps-327b7201.vps.ovh.us/ADS/source-locked-2026-09-24/

Ratings

what rating one line
Early work: origin thread r1–r4, Wonder v56, RAW r6 7–7.5 / 10 Each ad has its own idea, scene and layout. Built from one printing ad per concept.
Latest work: CHL r4–r8 5–6 / 10 Each ad looks clean on its own, but the set is one template.
Latest work: Wonder v57–v62 3–5.5 / 10 Photo-grid collages with the same furniture. v61 is literally one layout ×20.
Wonder v63 (3 ads, today) 7 / 10 Recovered by going back to one source ad per concept.
find-printing-ads skill 7 / 10 The research method is sound, but it hands off words, not designs.
make-printing-format-statics skill 4 / 10 Good product-fidelity hygiene, no creative method, and rules pile up on every round.
The system as a sellable service today 4 / 10 The decline is built into the pipeline and will repeat for every client.

Root cause in one sentence: the pipeline learns by adding rules, and it applies every rule to every ad. After enough rounds, the only layout that satisfies all the rules is a single one:

The early rounds were good because each concept was hand-built from one specific printing ad's design. The later rounds replaced "build it like this ad" with "obey these 40 rules". They generated prompts from shared blocks by script, and they iterated toward a judge's score.

What I looked at

The four Claude threads, with operator messages and agent replies read end to end:

thread session span ads
Origin ("going back and forth on ads…"), where the two skills were built 378c3d0e 09-23 05:36 → 09-24 07:08 56 (r1–r4, all three brands, A+B)
🧲 RAW Chemistry — AdMaker d8e91e71 09-23 20:06 → 09-24 07:51 39 (R17–R36, A+B)
💊 CHL — AdMaker c3dd73a9 09-23 17:42 → 09-24 20:50 72 (C7–C68)
🌿 Wonder Serum — AdMaker ff89de1c 09-23 20:06 → 09-24 21:36 153 (W7–W56, P/X pairs, V1–V3)

The Meta thread (1b5fe995) supplied your Wonder critique and the fix that added today's two HARD RULE sections.

I viewed all 320 ads round by round in sheets/ (numbered in date order). I also read:

Round by round

round when ads rating what it looks like
Origin r1–r2 09-23 am 36 7.5 Split bedroom, native tweet, designer-vs-RAW, fridge whiteboard, days-since counter, Google autocomplete, toddler "yeller", iMessage. Every concept has a different camera, palette and structure. The shared part is only the brand footer.
Origin r3–r4 (RAW) 09-23 20 7.5 Silhouette hero, guarantee seal, same-box/condoms, casting call, NOT VIAGRA pills, POV hold. Still distinct.
RAW r5 09-24 00:04 19 6.5 Varied scenes. The offer lockup is fixed along the bottom edge and a red roundel repeats. You said the apology and comparison ads were better.
RAW r6 09-24 00:52 20 7 PR statement, newspaper notice, twins, split, shirts. The best of the RAW thread. Same offer furniture.
CHL r3 (C7–C16) 09-23 18:56 20 6.5 Varied formats; route A type was weak ("all the Bs are better"). C13-B was your favourite.
CHL r4 (C17–C26) 09-23 19:06 10 5 "Each ad follows the C13-B pattern" (agent's words). The same layout 10 times, with iridescent/neon glow on all of them. A route dropped.
CHL r5 (C27–C36) 09-23 22:54 10 6 AG1/IM8 realism with more varied devices. The CTA pill and stars line repeat.
CHL r6–r7 (C37–C56) 09-23 23:35 → 09-24 00:19 20 6 Clean realistic photos, but the same skeleton on all 20: bottle at lower right, CTA at lower left, stars under it, and the same tired-woman-hand-on-face pose. You liked them individually; as a set they are a template.
CHL r8 (C57–C68) 09-24 07:42 12 5 The most templated CHL round. 11 of 12 carry the identical ✗ FOLIC ACID / ✓ L-METHYLFOLATE module, navy-and-coral type and offer block. You replaced its three picks with C1-B, C24 and C41, two of them from earlier rounds.
Wonder v56 (W7–W16) 09-23 23:03 10 7 One-pass progressions, each with its own palette and grid. You called them "great before-and-afters".
Wonder v57 (W17–W26 ×2) 09-24 05:00–05:40 40 4.5 Photo tiles on a page with a big $14. One skeleton; round 2 re-ran the same 10.
Wonder v58 (W27–W36) 09-24 06:20 20 4.5 The same skeleton, brighter. Duplicate poses between before and after.
Wonder v59 (W37–W46) 09-24 08:00 20 5.5 Better ideas (doorbell, chemo text, wedding prints). The footer is identical on all 20.
Wonder v60 (W47–W56) 09-24 16:30 20 5 Obvi's system copied on purpose: roundel plus spec row on all 20. Claim-led, not pain-first.
Wonder v61 (P pairs) 09-24 19:50 20 3 Judge coach notes applied to all 10: one layout, 20 times. Rejected.
Wonder v62 (X pairs) 09-24 20:46 20 4 Layouts varied, but it reused the same women and poses and the same tiny furniture. Rejected as "genuinely visually awful".
Wonder v63 (V1–V3) 09-24 21:31 3 7 Sticky notes on a mirror, They said/I said, camera roll. Built from three different printing ads. V2 sits very close to the GLOV layout it came from.

What I measured

For every round I compared each concept's prompt with every other concept's prompt. The measure is the share of 6-word phrases they have in common, where 0 means every prompt is unique. I also re-ran the layout-similarity score from tools/gate_distinct_layouts.py on the finished ads. Script: tools/metrics.py. Data: prompt-and-layout-metrics.json.

"Layout-text overlap" is the same measure after deleting the text any prompt is allowed to share: the product-identity paragraph, the size line and the realism block. What remains is the concept's own scene, layout, type and offer instructions (tools/metrics2.py).

round own source ad drives the layout? avg prompt words prompt overlap layout-text overlap layout gate median
Origin r1–r4 (all brands) yes, every concept 214–371 0.00–0.22 0.000–0.009 0.55–0.70
RAW r5 / r6 yes, every concept 306–335 0.06–0.09 0.009–0.013 0.60–0.62
CHL r3 yes ("reference for its … layout") 300 0.24 0.003 0.61
CHL r4 "loose reference", layout written the same 454 0.46 0.25 0.62
CHL r5 / r6 / r7 "loose reference" 553–615 0.41–0.56 0.18–0.27 0.68–0.72
CHL r8 "copy nothing from it" (34/34 prompts) 630 0.58 0.33 0.68 (passed)
Wonder v56 yes, every concept 641 0.45 0.26 0.64
Wonder v57 / v58 no, 0 of 120 jobs 1,084–1,151 0.37–0.54 0.14–0.42 0.68–0.81
Wonder v59 / v60 no 516–721 0.42–0.46 0.28–0.29 0.56–0.75
Wonder v61 no 882 0.65 0.56 0.88
Wonder v62 no 872 0.48 0.16 0.68 (passed)
Wonder v63 yes, every concept 770 0.28 0.18* 0.77

* Wonder v56 and v63 still read 0.18–0.26 even though they looked good. Their shared identity and people-realism paragraphs are hard-wrapped over many lines, and my filter only removes the first line of each. I checked v63 by hand: every sentence its prompts share is product identity or "the people must not look AI-generated". So this measure cleanly separates the early, RAW and CHL-r3 rounds (≤0.013) from the CHL template rounds (0.18–0.33), but it does not separate Wonder's good rounds from its bad ones. For Wonder, the separator is the source ad.

What the numbers show:

Why it fell off, in order of impact

  1. The source ad stopped driving the design. In r1–r4, Wonder v56 and v63, every concept was one specific printing ad attached to the generation as its layout. Those are all the good rounds. Then the instruction weakened:

    • Round 1: "format reference (split photo with BEFORE/AFTER labels under a bold headline)".
    • CHL r4–r7: "loose reference".
    • CHL r8: "copy nothing from it … loose reference for layout rhythm", on all 34 prompts.
    • Wonder v57–v62: no competitor ad was attached to any of the 120 generation jobs, and none of the 143 prompts mentions one.

    Research kept happening, but it no longer reached the pixels.

  2. Prompts were built from shared blocks by script. Wonder had 7 make_prompts*.py generators and 6 typesetters (layout_a*.py, layout_pairs.py, layout_x.py). Each generator combined HEAD, REAL and TAIL blocks with fixed PROOF and MECH strings. That is a template engine by construction. CHL did the same by hand with copy-pasted paragraphs. The skill already said "one shared prompt block = one picture N times", but nothing enforced it.

  3. One liked ad became the rule for all.

    • C13-B became the layout for all of CHL r4.
    • The v56 week grid became v57–v62.
    • The judge's coach notes became v61 ×10.
    • "All the Bs are better" became dropping route A.

    Praise for one ad should become one concept family to test, not a law for the batch.

  4. Research averages became universal rules. The Wonder craft teardown was excellent research: 50 competitor ads, measured to a 5% grid. But it ended as "23 rules for a 9+ Wonder static" plus a realism block marked "paste verbatim". Winning ads are distinctive one at a time. Their average is generic, and forcing every ad to hit the median gives you median ads.

  5. The loop optimised toward a judge. "9+ only" led to four or five judge rounds per brand, each pulling every ad toward the judge's taste. The judges are weak predictors:

    • RAW blind judges agreed at only 0.34 and ranked GODA5H, your proven winner, #438 of 584.
    • The judges scored Obvi's 246–273-day winners 5.5–6.9.

    Even the better survival-trained judge (0.75 on 36 held-out ads) produced v61, the worst round, once it was used as a coach. Scores also misled. RAW r1–r6 board scores were "pre-spend producer judgment" that crept from 8.6 to 9.1. All of CHL r7 carried an identical typed-in 8.6.

  6. Rules pile up and never expire. make-printing-format-statics is now:

    • 3,159 words, with 670 of them added in the last two hours
    • 9 "Lessons from round N" logs
    • about 80 never/must/always/no directives

    Almost every rule is a prohibition, and each new session reads all of them as law. The design space shrinks every round.

  7. Volume went up. The origin thread made 3–5 concepts per brand per round with a hand-written prompt for each. The Wonder thread made 153 ads in about 22 hours, which is only possible with scripts.

  8. Route A became a caption layer. Type was set last into the same four zones, and the plate prompt told the model to keep those zones empty. The Wonder agent's own diagnosis: "I built pages as slots." The craft that makes set type look designed (type on real surfaces, type behind the subject using masks) lives in the carousel skill, not in this one.

What is working (keep)

The two skills

find-printing-ads — 7/10. Strong:

Gaps:

make-printing-format-statics — 4/10. Strong:

Gaps:

The fix (proposal, not implemented; needs your go)

  1. One printing ad per concept, always attached. The prompt names what to inherit: the layout grid, where the type goes, and the form of the offer and proof (roundel, sticker, note, price tag, review card). Only the brand, people, words and colours change. No two concepts in a batch share a source or a layout type.

  2. Hand-write each prompt. Shared text may cover only product identity, exact facts and strings, and safety. It never covers layout, type, offer or proof treatment. Ban scripts that loop a prompt or typesetter over concepts. Write every prompt in labelled sections (IDENTITY / REALISM / SAFETY / CONCEPT), then add a gate that checks two things:

    • every concept has its own attached source ad, named as its layout
    • the CONCEPT sections overlap less than about 0.05 between concepts (every early and RAW round scored ≤0.013; the collapsed rounds scored 0.14–0.56)

    Keep the pixel gate as a third check.

  3. Separate invariants from style. Invariants apply everywhere: product identity, prices and facts as sold, no edits, a legibility floor and the brand locks. Style lessons apply to their own concept family only and get tested on Meta, never pasted into every prompt.

  4. Let the furniture follow the source. The offer and proof take whatever form the source ad uses. No offer-plus- proof treatment appears more than twice in a batch.

  5. Show 3 before 10, and reset from research. Cap a round at 10 new concepts. When a round disappoints, pull new printing ads instead of iterating the same concepts toward a judge. Keep a per-brand ledger of formats already used.

  6. Judges are a floor, not a target. Use them for pass/fail craft checks (label, text, legibility) and as a tie-breaker. No "9+" loops, and never show producer-typed numbers as scores.

  7. Rebuild the skill as a short method (≤1,000 words). Step one is art direction per concept from its source. Technical gotchas move to a references file, brand lessons move to each brand's NOTES, and the round logs leave the skill.

  8. Route A must earn its place. It stays, per your rule, but as integrated typography: type in the scene, on surfaces or behind the subject using masks. It must not be a caption strip. If A can only produce captions for a concept, it ships marked FAIL next to B.

What this means for selling it

The version that survives many rounds and many clients has to carry no style forward. Only facts, invariants and a used-formats ledger carry from batch to batch, and each batch takes its style from printing ads harvested that week. That is also the pitch: "every ad is built from an ad that is printing right now". Without that change, any client account ends up where Wonder is now, one template repeated, within about three rounds.

Evidence

Every ad, round by round (tap to open full size)

01-r1.jpg
01-r1.jpg
02-r2.jpg
02-r2.jpg
03-r3r4.jpg
03-r3r4.jpg
04-raw-r5.jpg
04-raw-r5.jpg
05-raw-r6.jpg
05-raw-r6.jpg
06-chl-r3.jpg
06-chl-r3.jpg
07-chl-r4r5.jpg
07-chl-r4r5.jpg
08-chl-r6r7.jpg
08-chl-r6r7.jpg
09-chl-r8.jpg
09-chl-r8.jpg
10-wonder-v56.jpg
10-wonder-v56.jpg
11-wonder-v57-round1.jpg
11-wonder-v57-round1.jpg
11-wonder-v57-round2.jpg
11-wonder-v57-round2.jpg
11-wonder-v58.jpg
11-wonder-v58.jpg
11-wonder-v59.jpg
11-wonder-v59.jpg
11-wonder-v60.jpg
11-wonder-v60.jpg
12-wonder-v61.jpg
12-wonder-v61.jpg
13-wonder-v62.jpg
13-wonder-v62.jpg
14-wonder-v63.jpg
14-wonder-v63.jpg