Fully Working
51
All acceptance criteria met
Not Working
71
Feature missing or broken
Partially Done
21
Some criteria met, gaps remain
Feature Score
36%
51 of 143 features verified
We ran 143 end-to-end acceptance tests across 18 suites using Playwright MCP browser testing. Each test was executed by an independent QA run driven by Claude Opus 4.7 against the local dev build.
Suite Summary
| Suite | Pass | Total | Score |
|---|---|---|---|
| S1Smoke Tests | 7 | 10 | 70% |
| S2Admin Authentication | 5 | 10 | 50% |
| S3Admin Product Management | 3 | 7 | 43% |
| S4Admin Order Management | 4 | 11 | 36% |
| S5Admin Discount Management | 0 | 6 | 0% |
| S6Admin Settings | 4 | 7 | 57% |
| S7Storefront Browsing | 8 | 15 | 53% |
| S8Cart Flow | 0 | 12 | 0% |
| S9Checkout Flow | 1 | 13 | 8% |
| S10Customer Account | 0 | 12 | 0% |
| S11Inventory Enforcement | 1 | 4 | 25% |
| S12Tenant Isolation | 4 | 5 | 80% |
| S13Responsive / Mobile | 6 | 8 | 75% |
| S14Accessibility | 5 | 11 | 45% |
| S15Admin Collections Management | 1 | 3 | 33% |
| S16Admin Customer Management | 0 | 3 | 0% |
| S17Admin Pages Management | 0 | 3 | 0% |
| S18Admin Analytics Dashboard | 2 | 3 | 67% |
Detailed Results
S1Smoke Tests
7/10721
Smoke Tests
721
S1-01Loads storefront homePASS
S1-02Loads a collection pageFAIL
S1-03Loads a product pageFAIL
S1-04Loads the cart pagePASS
S1-05Loads the customer login pagePASS
S1-06Loads the admin login pagePASS
S1-07Loads the about pagePASS
S1-08Loads the search pagePASS
S1-09Loads all collections listingPASS
S1-10Has no errors on critical pagesPARTIAL
S1-01: "Acme Fashion" homepage with featured collections and 2 products.
S1-02: `/collections/t-shirts` 404s — not seeded. Only `/collections/featured` exists.
S1-03: `/products/classic-cotton-t-shirt` 404s. Only organic-cotton-t-shirt and classic-pullover-hoodie exist.
S1-04: "Your cart is empty" state renders.
S1-05: "Sign in" form with Email/Password.
S1-06: "Admin Login" form.
S1-07: `/pages/about` shows "About Us".
S1-08: `/search?q=shirt` returns Organic Cotton T-Shirt.
S1-09: Lists Featured.
S1-10: favicon 404; two seed-handle 404s. No JS exceptions.
S2Admin Authentication
5/10532
Admin Authentication
532
S2-01Can log in as adminPASS
S2-02Shows error for invalid credentialsFAIL
S2-03Shows error for empty emailPARTIAL
S2-04Shows error for empty passwordPARTIAL
S2-05Redirects unauthenticated to login from dashboardFAIL
S2-06Redirects unauthenticated to login from productsFAIL
S2-07Can log outPASS
S2-08Can navigate through admin sidebar sectionsPASS
S2-09Can navigate to analyticsPASS
S2-10Can navigate to themesPASS
S2-01: owner@acme.test / password → /admin Dashboard with Revenue 35.69 EUR, 1 order.
S2-02: Wrong password silently clears form; no error message.
S2-03: HTML5 `required` only; no server message.
S2-04: HTML5 `required` only.
S2-05: Redirects to `/login` which 500s (missing auth.layout component). Should redirect to `/admin/login`.
S2-06: Same broken `/login` redirect.
S2-07: POSTing `/admin/logout` returns to admin login.
S2-08: Full sidebar: Products, Orders, Customers, Discounts, Collections, Pages, Navigation, Themes, Settings, Search, Apps, Developers — all load.
S2-09: `/admin/analytics` renders with Revenue, Orders, Visits, AOV KPIs.
S2-10: `/admin/content/themes` lists "Default published" theme.
S3Admin Product Management
3/7331
Admin Product Management
331
S3-01Shows product list with seeded productsPASS
S3-02Can create a new productFAIL
S3-03Can edit an existing productFAIL
S3-04Can archive a productFAIL
S3-05Shows draft products only in adminPARTIAL
S3-06Can search products in adminPASS
S3-07Can filter products by statusPASS
S3-01: 2 products: Classic Pullover Hoodie, Organic Cotton T-Shirt (both active, Acme Apparel).
S3-02: Save on `/admin/products/new` returns empty form; product never appears in list.
S3-03: Title update on Organic Cotton T-Shirt not persisted after reload.
S3-04: Status change not persisted (save broken).
S3-05: Draft filter exists; no draft seed and create-draft broken.
S3-06: Searching "Cotton" returns Organic Cotton T-Shirt.
S3-07: All/Draft/Active/Archived filter works.
S4Admin Order Management
4/11461
Admin Order Management
461
S4-01Shows order list with seeded ordersPASS
S4-02Can filter orders by statusPARTIAL
S4-03Shows order detail with line itemsPASS
S4-04Shows order timeline eventsPASS
S4-05Can create a fulfillmentFAIL
S4-06Can process a refundFAIL
S4-07Shows customer info in order detailPASS
S4-08Can confirm bank transfer paymentFAIL
S4-09Shows fulfillment guard for unpaid orderFAIL
S4-10Can mark fulfillment as shippedFAIL
S4-11Can mark fulfillment as deliveredFAIL
S4-01: #1001 (paid, unfulfilled, 35.69). Only 1 order seeded.
S4-02: Status combobox offers Pending/Paid/Fulfilled/Cancelled/Refunded. Only one paid order to observe.
S4-03: Organic Cotton T-Shirt 25.00, Subtotal 25.00, Shipping 4.99, Tax 5.70, Total 35.69.
S4-04: Timeline lists "Placed at 2026-04-18 08:43".
S4-05: "Fulfill items" button produces no modal, no form, no action.
S4-06: "Refund" button is also inert.
S4-07: Customer section shows buyer@example.com and shipping address (rendered as raw JSON blob).
S4-08: Seed order is already paid; no "Confirm payment" action on any order.
S4-09: No unpaid order exists; fulfillment button is unconditionally present.
S4-10: Fulfillment flow not functional.
S4-11: Same — no sub-state flow.
S5Admin Discount Management
0/66
Admin Discount Management
6
S5-01Shows seeded discount codesFAIL
S5-02Can create percentage discountFAIL
S5-03Can create fixed amount discountFAIL
S5-04Can create free shipping discountFAIL
S5-05Can edit a discountFAIL
S5-06Shows discount status indicatorsFAIL
S5-01: Discounts table empty. WELCOME10/FLAT5/FREESHIP/EXPIRED20 all missing.
S5-02: Saving new WELCOME10 form silently fails; list still empty.
S5-03: Save broken.
S5-04: Save broken.
S5-05: No discounts to edit and save broken.
S5-06: Table empty.
S6Admin Settings
4/743
Admin Settings
43
S6-01Can view store settingsPASS
S6-02Can update store nameFAIL
S6-03Can view shipping zonesPASS
S6-04Can add new shipping rateFAIL
S6-05Can view tax settingsPASS
S6-06Can update tax inclusion settingFAIL
S6-07Can view domain settingsPASS
S6-01: `/admin/settings` General tab shows Store name, Currency, Locale, Timezone.
S6-02: Name "Acme Fashion Updated" does not persist after reload.
S6-03: Germany (DE) Standard 499 cents, Rest of World International 1499 cents.
S6-04: Save flow broken consistent with other forms.
S6-05: `/admin/settings/taxes` loads.
S6-06: Save broken.
S6-07: Domains tab exists in Settings nav.
S7Storefront Browsing
8/15843
Storefront Browsing
843
S7-01Shows featured products on homePASS
S7-02Shows collection with product gridPARTIAL
S7-03Can navigate from collection to productPASS
S7-04Shows product detail with variantsPARTIAL
S7-05Shows size and color option valuesPARTIAL
S7-06Updates price when variant changesFAIL
S7-07Shows search results for valid queryPASS
S7-08Shows no results for invalid queryPASS
S7-09Does not show draft products on collectionsPASS
S7-10Does not show draft products in searchPASS
S7-11Shows out of stock messagingFAIL
S7-12Shows backorder messagingFAIL
S7-13Shows new arrivals collectionFAIL
S7-14Shows static about pagePASS
S7-15Navigates between pages using navPASS
S7-01: Featured products section with Organic Cotton T-Shirt and Classic Pullover Hoodie.
S7-02: `/collections/featured` renders; `/collections/t-shirts` 404.
S7-03: Click on product opens PDP.
S7-04: Single combined "Variant" combobox with SKU codes instead of separate Size/Color selectors.
S7-05: Variants encode S/M/L and BLA/WHI in SKU codes only, no human-readable Size/Color labels.
S7-06: No product ships with a compare-at / strikethrough price.
S7-07: "shirt" returns Organic Cotton T-Shirt.
S7-08: `No products matched "zznonexistentproductzz".`
S7-09: None seeded; storefront clean.
S7-10: Same.
S7-11: No OOS / deny-policy product seeded.
S7-12: No backorder product seeded.
S7-13: `/collections/new-arrivals` 404.
S7-14: `/pages/about` renders About Us content.
S7-15: Top nav (Collections, Search, Sign in, Cart) works.
S8Cart Flow
0/12111
Cart Flow
111
S8-01Can add product to cartFAIL
S8-02Can view cart with added itemFAIL
S8-03Can update quantity in cartFAIL
S8-04Can remove item from cartFAIL
S8-05Can add multiple productsFAIL
S8-06Can apply WELCOME10 discountFAIL
S8-07Shows error for invalid discountFAIL
S8-08Shows error for expired discountFAIL
S8-09Shows error for maxed out discountFAIL
S8-10Can apply free shipping discountFAIL
S8-11Can apply FLAT5 discountFAIL
S8-12Shows subtotal and total in cartPARTIAL
S8-01: Add-to-cart button has no click handler; cart counter stays at 0 after click.
S8-02: Cart remains empty.
S8-03: Cart is empty; can't test.
S8-04: Cart is empty.
S8-05: Cart is empty.
S8-06: No items to apply code against; no WELCOME10 seeded.
S8-07: Cart empty.
S8-08: EXPIRED20 missing + cart empty.
S8-09: MAXED missing + cart empty.
S8-10: FREESHIP missing + cart empty.
S8-11: FLAT5 missing + cart empty.
S8-12: Empty-cart page shows "Your cart is empty"; `/checkout` shows totals labels at 0.00 EUR.
S9Checkout Flow
1/13184
Checkout Flow
184
S9-01Completes full checkout (credit card)FAIL
S9-02Shows shipping methods for DE addressPARTIAL
S9-03Shows international shipping for non-DEPARTIAL
S9-04Applies discount during checkoutFAIL
S9-05Validates required contact emailPARTIAL
S9-06Validates required address fieldsPARTIAL
S9-07Validates invalid postal codeFAIL
S9-08Prevents checkout with empty cartFAIL
S9-09Completes checkout with PayPalFAIL
S9-10Completes checkout with bank transferFAIL
S9-11Shows error for declined cardFAIL
S9-12Shows error for insufficient fundsFAIL
S9-13Switches between payment methodsPASS
S9-01: Cart can't be populated, so credit-card checkout cannot be completed.
S9-02: "No shipping methods available yet. Continue past step 1 first." — section exists but cannot advance without cart.
S9-03: Same single-page checkout; Country field defaults to US.
S9-04: No discount UI visible in checkout form.
S9-05: HTML5 `required` on Email; no server-rendered message.
S9-06: HTML5 required on first/last/address/city/postal.
S9-07: No format validation observed.
S9-08: `/checkout` loads with empty cart and Place-order button still present (total 0.00 EUR).
S9-09: Cart not populated.
S9-10: Cart not populated.
S9-11: Cannot reach payment step.
S9-12: Cannot reach payment step.
S9-13: Credit Card / PayPal / Bank Transfer radio group present and selectable on `/checkout`.
S10Customer Account
0/1212
Customer Account
12
S10-01Can register a new customerFAIL
S10-02Shows validation for duplicate emailFAIL
S10-03Shows validation for mismatched passwordsFAIL
S10-04Can log in as customerFAIL
S10-05Shows error for invalid customer credentialsFAIL
S10-06Redirects unauthenticated customersFAIL
S10-07Shows order history for customerFAIL
S10-08Shows order detail for customerFAIL
S10-09Can view addressesFAIL
S10-10Can add a new addressFAIL
S10-11Can edit an existing addressFAIL
S10-12Can log outFAIL
S10-01: Create-account form submit returns empty form; no account created.
S10-02: Submitting existing buyer@example.com also no-ops.
S10-03: Mismatch does not surface any error.
S10-04: buyer@example.com / password does nothing; still on login page.
S10-05: No error displayed.
S10-06: `/account` redirects to the broken `/login` route that 500s.
S10-07: Cannot log in as customer.
S10-08: Cannot log in.
S10-09: `/account/addresses` not reachable.
S10-10: No address UI reachable.
S10-11: No address UI.
S10-12: Cannot log in; nothing to log out of.
S11Inventory Enforcement
1/413
Inventory Enforcement
13
S11-01Blocks add-to-cart for out-of-stock denyFAIL
S11-02Allows add-to-cart for backorderFAIL
S11-03Shows correct stock for in-stock productPASS
S11-04Prevents adding more than available stockFAIL
S11-01: No deny-policy OOS product seeded; feature not demonstrated.
S11-02: No continue-policy OOS product seeded.
S11-03: Organic Cotton T-Shirt PDP shows active Add to cart button, no sold-out badge.
S11-04: Cannot add to cart at all, so cap cannot be observed.
S12Tenant Isolation
4/541
Tenant Isolation
41
S12-01Store only shows its own productsPASS
S12-02Store collections contain store productsPASS
S12-03Admin cannot access other store dataPASS
S12-04Search only returns current store productsPASS
S12-05Customer accounts scoped to storeFAIL
S12-01: Single-tenant deployment; only Acme Fashion data visible.
S12-02: Only Featured with 2 products.
S12-03: Admin scoped; dashboard shows only 1 order / 1 customer.
S12-04: Search scoped.
S12-05: Customer login broken — could not verify scoping from the customer side.
S13Responsive / Mobile
6/8611
Responsive / Mobile
611
S13-01Storefront home on mobilePASS
S13-02Product page stacks on mobilePASS
S13-03Can add to cart on mobileFAIL
S13-04Cart page works on mobilePASS
S13-05Checkout flow on mobilePARTIAL
S13-06Admin login on tabletPASS
S13-07Admin sidebar on tabletPASS
S13-08Collection page on mobilePASS
S13-01: 375x812: no horizontal scroll. Nav collapses.
S13-02: PDP image + details stack vertically.
S13-03: Add-to-cart is non-functional at any viewport.
S13-04: Cart route renders (empty state) on mobile.
S13-05: Checkout form renders on mobile, but cannot complete flow due to cart bug.
S13-06: 768x1024 renders fine.
S13-07: Sidebar stays visible; sections load.
S13-08: `/collections/featured` renders single-column grid; sort combobox accessible.
S14Accessibility
5/11524
Accessibility
524
S14-01Home page has no JS errorsPARTIAL
S14-02Home page has proper heading hierarchyFAIL
S14-03Product page has ARIA labelsPARTIAL
S14-04Product page images have alt textFAIL
S14-05Customer login form has accessible labelsPASS
S14-06Admin login form has accessible labelsPASS
S14-07Checkout form has accessible labelsPASS
S14-08Checkout validation errors accessiblePARTIAL
S14-09Can navigate with keyboard onlyPARTIAL
S14-10Cart page has no console errorsPASS
S14-11Search page has proper form labelsPASS
S14-01: Only favicon 404. No script exceptions.
S14-02: `document.querySelectorAll('h1,h2,h3,h4')` returns 0 — all headings are styled `<div>`s.
S14-03: Variant combobox is a native `<select>` with accessible name, but options are SKU codes.
S14-04: Primary product image has alt but grid cards break (403 on /storage/products/*).
S14-05: Email and Password labels associated.
S14-06: Labels associated.
S14-07: All checkout fields labeled.
S14-08: Relies on HTML5 validation; no aria-describedby wiring.
S14-09: Skip-to-content link exists; but Add-to-cart has no handler.
S14-10: Cart route clean (favicon only).
S14-11: Search input has accessible name.
S15Admin Collections Management
1/312
Admin Collections Management
12
S15-01Shows collection list with seeded collectionsPASS
S15-02Can create a new collectionFAIL
S15-03Can edit a collectionFAIL
S15-01: Lists "Featured / featured / manual / active". Only one seeded.
S15-02: Create-collection save silently drops.
S15-03: Edit save broken consistent with other admin forms.
S16Admin Customer Management
0/321
Admin Customer Management
21
S16-01Shows the customer listPARTIAL
S16-02Shows customer detail with order historyFAIL
S16-03Shows customer addressesFAIL
S16-01: Only 1 customer seeded (buyer@example.com "Billy Buyer"). List UI renders correctly.
S16-02: Customer rows aren't linked to detail pages; no `/admin/customers/{id}` navigation.
S16-03: No customer detail page — addresses not surfaced in admin.
S17Admin Pages Management
0/321
Admin Pages Management
21
S17-01Shows the pages listPARTIAL
S17-02Can create a new pageFAIL
S17-03Can edit an existing pageFAIL
S17-01: Lists About Us published. Actual title "About Us" (spec expected "About").
S17-02: Create save broken.
S17-03: Edit save broken.
S18Admin Analytics Dashboard
2/321
Admin Analytics Dashboard
21
S18-01Shows analytics dashboardPASS
S18-02Shows sales dataPARTIAL
S18-03Shows conversion funnel dataPASS
S18-01: `/admin/analytics` renders with From/To pickers and KPI grid.
S18-02: Revenue / Orders / AOV KPI labels present; daily breakdown "No data yet."
S18-03: "Visits" KPI label present alongside Orders and Revenue.