Autonomous design iteration loop for LUSENA sections. Edits sections directly in the Shopify theme (worktree), pushes to the worktree's dedicated theme, validates with browser capture via lusena-preview-check, then scores with a 5-agent Sonnet review panel (2 customer personas + UX designer + CRO specialist + Polish copywriter). Iterates up to 5 rounds based on KPI scores. No migration step — the section is production-ready in the theme.
Redesign or create a LUSENA section through rapid iteration directly in the Shopify theme. Each iteration is pushed to the worktree's dedicated theme, visually captured via Playwright, and scored by a 5-agent review panel. The loop produces a final, production-ready section — no migration step needed.
Before starting, read:
memory-bank/doc/patterns/migration-lessons.md — accumulated CSS, copy, and process gotchasmemory-bank/doc/patterns/brand-tokens.md — design tokensmemory-bank/doc/patterns/spacing-system.md — spacing tiers and content-flow systemmemory-bank/doc/brand/LUSENA_BrandBook_v2.md — brand voice and positioninglusena-worktrees/lusena-N/) on a feature branchconfig/worktree-themes.json (key = your slot number N)sections/ and any related snippets/CSS/lusena-new-section to scaffold it firstlearn_shopify_api with api: "liquid" before editing Liquid filesCreate or edit the section directly in the Shopify theme:
assets/lusena-foundations.css classes, spacing tiers, brand tokens)lusena-icon.liquid, lusena-icon-animated.liquid, lusena-button-system.liquid, etc.)Push changes to the worktree theme:
shopify theme push --theme <THEME_ID> --store lusena-dev.myshopify.com --nodelete
Use /lusena-preview-check to capture the rendered result at desktop (1440px) and mobile (375px). The subagent should:
Prepare a section description for the review panel based on the captured data:
Verify every value against memory-bank/doc/patterns/brand-tokens.md:
--accent-cta, --accent-gold, --primary, --text-secondary, --surface-1/2, --brand-bg)var(--font-heading-family) (Source Serif 4) for headings, body font (Inter) for textvar(--lusena-radius-brand) (6px)Spawn 5 agents with model: "sonnet". Each receives the section description from step 3.
CRITICAL: Every reviewer prompt MUST include this line:
"DO NOT edit, write, or modify any files. Your job is to review and score only. Return your scores and commentary as text."
| # | Role | Evaluates |
|---|---|---|
| 1 | Customer: "Szuka jakosci na lata" (34, premium buyer) | Emotional pull, premium trust, skepticism |
| 2 | Customer: "Pielegnacja wlosow/skory" (26, skincare enthusiast) | Clarity, relevance, product desire |
| 3 | Senior UX designer (luxury e-commerce) | Visual hierarchy, whitespace, brand consistency, mobile layout |
| 4 | CRO specialist | Scan patterns, scroll momentum, conversion, information scent |
| 5 | Polish copywriter (premium brands) | Natural Polish, logical coherence, rhythm, brand voice |
Customers score (1-5):
UX designer and CRO specialist: Same 4 KPIs + specific actionable critique with concrete suggestions.
Polish copywriter scores (1-5):
Read all 5 responses. Identify:
Present a score comparison table showing improvement/regression across versions.
Stop iterating when:
After the review panel approves (or max iterations reached), present the final result to the owner:
Read memory-bank/doc/patterns/migration-lessons.md lessons 55-61 for specific gotchas discovered during the benefit bridge redesign (2026-03-29):
color-mix() for opacity variants, never raw RGBlusena-icon-circle + lusena-icon-* size classesdiv:empty trap on decorative elements