text:
### Ran Playwright code
```js
await page.getByRole('button', { name: 'Pay Now - 54.97 EUR' }).click();
```
### Page
- Page URL: http://shop.test/checkout/confirmation/1016
- Page Title: Shop
### Snapshot
```yaml
- generic [active] [ref=e1]:
  - banner [ref=e2]:
    - generic [ref=e3]:
      - link "Acme Fashion" [ref=e4] [cursor=pointer]:
        - /url: http://shop.test
      - navigation [ref=e5]:
        - link "Collections" [ref=e6] [cursor=pointer]:
          - /url: http://shop.test/collections
      - generic [ref=e7]:
        - link "Search" [ref=e8] [cursor=pointer]:
          - /url: http://shop.test/search
          - img [ref=e9]
        - link "Cart" [ref=e11] [cursor=pointer]:
          - /url: http://shop.test/cart
          - img [ref=e12]
        - link "Account" [ref=e14] [cursor=pointer]:
          - /url: http://shop.test/account/login
          - img [ref=e15]
  - main [ref=e17]:
    - generic [ref=e19]:
      - generic [ref=e20]:
        - img [ref=e22]
        - heading "Thank you for your order!" [level=1] [ref=e24]
        - paragraph [ref=e25]: "Order #1016"
        - paragraph [ref=e26]: A confirmation email has been sent to customer@acme.test
      - generic [ref=e27]:
        - heading "Order Items" [level=2] [ref=e29]
        - generic [ref=e31]:
          - generic [ref=e32]:
            - paragraph [ref=e33]: Classic Cotton T-Shirt
            - paragraph [ref=e34]: "Qty: 2"
          - paragraph [ref=e35]: 49.98 EUR
      - generic [ref=e36]:
        - generic [ref=e37]:
          - heading "Shipping Address" [level=3] [ref=e38]
          - generic [ref=e39]:
            - paragraph [ref=e40]: Max Mustermann
            - paragraph [ref=e41]: Musterstrasse 1
            - paragraph [ref=e42]: 10115 Berlin
            - paragraph [ref=e43]: DE
        - generic [ref=e44]:
          - heading "Payment" [level=3] [ref=e45]
          - paragraph [ref=e47]: Credit Card
          - generic [ref=e48]:
            - generic [ref=e49]:
              - generic [ref=e50]: Subtotal
              - generic [ref=e51]: 49.98 EUR
            - generic [ref=e52]:
              - generic [ref=e53]: Shipping
              - generic [ref=e54]: 4.99 EUR
            - generic [ref=e55]:
              - generic [ref=e56]: Tax
              - generic [ref=e57]: 8.92 EUR
            - generic [ref=e58]:
              - generic [ref=e59]: Total
              - generic [ref=e60]: 54.97 EUR
      - link "Continue Shopping" [ref=e62] [cursor=pointer]:
        - /url: http://shop.test/collections
  - contentinfo [ref=e63]:
    - generic [ref=e64]:
      - generic [ref=e65]:
        - generic [ref=e66]:
          - heading "Shop" [level=3] [ref=e67]
          - list [ref=e68]:
            - listitem [ref=e69]:
              - link "Collections" [ref=e70] [cursor=pointer]:
                - /url: http://shop.test/collections
        - generic [ref=e71]:
          - heading "Account" [level=3] [ref=e72]
          - list [ref=e73]:
            - listitem [ref=e74]:
              - link "Sign In" [ref=e75] [cursor=pointer]:
                - /url: http://shop.test/account/login
            - listitem [ref=e76]:
              - link "Create Account" [ref=e77] [cursor=pointer]:
                - /url: http://shop.test/account/register
        - generic [ref=e78]:
          - heading "Help" [level=3] [ref=e79]
          - list [ref=e80]:
            - listitem [ref=e81]:
              - link "Search" [ref=e82] [cursor=pointer]:
                - /url: http://shop.test/search
      - generic [ref=e83]: © 2026 Acme Fashion. All rights reserved.
```
### Events
- [LOG] 🔍 Browser logger active (MCP server detecte...logs @ http://shop.test/checkout/confirmation/1016:19


teamName: wild-sleeping-shell

userType: external

slug: iterative-seeking-pine

type: message

role: assistant

type: text

text:
Full checkout flow verified with correct tax. Confirmation page shows:
- Subtotal: 49.98 EUR
- Shipping: 4.99 EUR
- **Tax: 8.92 EUR** (correctly calculated)
- Total: 54.97 EUR

All three bugs are fixed:
1. `current_store` not available during Livewire AJAX (session fallback)
2. `#` in order number breaking URL (ltrim fix)
3. Tax showing 0.00 (seeder key mismatch + template key mismatch)

Now let me run all tests and then commit everything.

service_tier: standard

type: assistant


Bash

description: Run full test suite

type: direct


type: progress

output:
   PASS  Tests\Feature\Admin\DashboardTest
  ✓ it renders the admin dashboard                                       0.05s
  ✓ it shows KPI tiles with correct data                                 0.02s
  ✓ it restricts dashboard to authenticated admins                       0.02s
  ✓ it filters metrics by date range                                     0.04s

fullOutput:
   PASS  Tests\Unit\CartVersionTest
  ✓ it starts at version 1                                               0.39s
  ✓ it increments version on add line                                    0.02s
  ✓ it increments version on update quantity                             0.02s
  ✓ it increments version on remove line                                 0.09s
  ✓ it detects version mismatch                                          0.02s
   PASS  Tests\Unit\DiscountCalculatorTest
  ✓ it validates an active discount code                                 0.02s
  ✓ it rejects an expired discount code                                  0.01s
  ✓ it rejects a not-yet-active discount code                            0.01s
  ✓ it rejects a discount that has reached its usage limit               0.02s
  ✓ it rejects an unknown discount code                                  0.01s
  ✓ it performs case-insensitive code lookup                             0.01s
  ✓ it enforces minimum purchase amount rule                             0.01s
  ✓ it passes minimum purchase when cart meets threshold                 0.01s
  ✓ it calculates percent discount amount                                0.01s
  ✓ it calculates fixed discount amount                                  0.01s
  ✓ it handles free shipping discount type                               0.01s
  ✓ it allocates discount proportionally across multiple lines           0.01s
  ✓ it distributes rounding remainder to the last qualifying line        0.01s
   PASS  Tests\Unit\ExampleTest
  ✓ that true is true
   PASS  Tests\Unit\HandleGeneratorTest
  ✓ it generates a slug from title                                       0.01s
  ✓ it appends suffix on collision                                       0.01s
  ✓ it increments suffix on multiple collisions                          0.01s
  ✓ it handles special characters                                        0.01s
  ✓ it excludes current record when updating                             0.02s
  ✓ it scopes handle uniqueness to store                                 0.01s
   PASS  Tests\Unit\PricingEngineTest
  ✓ it calculates subtotal from line items                               0.02s
  ✓ it calculates subtotal for a single line                             0.01s
  ✓ it returns zero subtotal for empty cart                              0.01s
  ✓ it applies percent discount correctly                                0.01s
  ✓ it applies fixed discount correctly                                  0.01s
  ✓ it caps fixed discount at subtotal so it never goes negative         0.01s
  ✓ it applies free shipping discount by zeroing shipping                0.01s
  ✓ it calculates tax exclusive correctly                                0.01s
  ✓ it extracts tax from inclusive price correctly                       0.01s
  ✓ it returns zero tax when rate is zero                                0.01s
  ✓ it calculates shipping flat rate                                     0.01s
  ✓ it calculates full checkout totals end to end                        0.02s
  ✓ it handles rounding correctly with odd cent amounts                  0.01s
  ✓ it produces identical results for identical inputs                   0.02s
   PASS  Tests\Unit\ShippingCalculatorTest
  ✓ it matches a zone by country code                                    0.01s
  ✓ it matches a zone by region code                                     0.01s
  ✓ it returns empty when no zone matches                                0.01s
  ✓ it calculates a flat rate                                            0.01s
  ✓ it calculates a weight-based rate                                    0.01s
  ✓ it calculates a price-based rate                                     0.01s
  ✓ it returns zero shipping when no items require shipping              0.01s
  ✓ it returns correct rates when multiple zones match                   0.01s
  ✓ it skips inactive rates                                              0.01s
   PASS  Tests\Unit\TaxCalculatorTest
  ✓ it calculates manual tax exclusive
  ✓ it extracts manual tax from inclusive amount
  ✓ it returns zero tax when no rate configured
  ✓ it handles zero amount lines
  ✓ it calculates tax with non-standard rate
  ✓ it extracts tax correctly for small amounts
  ✓ it handles high tax rates
   PASS  Tests\Feature\Admin\DashboardTest
  ✓ it renders the admin dashboard                                       0.05s
  ✓ it shows KPI tiles with correct data                                 0.02s
  ✓ it restricts dashboard to authenticated admins                       0.02s
  ✓ it filters metrics by date range                                     0.04s


output:
  ✓ it bulk archives selected products                                   0.04s
  ✓ it uploads media from the product form                               0.12s
  ✓ it manages variants from the product form                            0.12s
  ✓ it restricts product management to authorized roles                  0.01s
  ✓ it staff can create but not delete products                          0.05s

fullOutput:
   PASS  Tests\Unit\CartVersionTest
  ✓ it starts at version 1                                               0.39s
  ✓ it increments version on add line                                    0.02s
  ✓ it increments version on update quantity                             0.02s
  ✓ it increments version on remove line                                 0.09s
  ✓ it detects version mismatch                                          0.02s
   PASS  Tests\Unit\DiscountCalculatorTest
  ✓ it validates an active discount code                                 0.02s
  ✓ it rejects an expired discount code                                  0.01s
  ✓ it rejects a not-yet-active discount code                            0.01s
  ✓ it rejects a discount that has reached its usage limit               0.02s
  ✓ it rejects an unknown discount code                                  0.01s
  ✓ it performs case-insensitive code lookup                             0.01s
  ✓ it enforces minimum purchase amount rule                             0.01s
  ✓ it passes minimum purchase when cart meets threshold                 0.01s
  ✓ it calculates percent discount amount                                0.01s
  ✓ it calculates fixed discount amount                                  0.01s
  ✓ it handles free shipping discount type                               0.01s
  ✓ it allocates discount proportionally across multiple lines           0.01s
  ✓ it distributes rounding remainder to the last qualifying line        0.01s
   PASS  Tests\Unit\ExampleTest
  ✓ that true is true
   PASS  Tests\Unit\HandleGeneratorTest
  ✓ it generates a slug from title                                       0.01s
  ✓ it appends suffix on collision                                       0.01s
  ✓ it increments suffix on multiple collisions                          0.01s
  ✓ it handles special characters                                        0.01s
  ✓ it excludes current record when updating                             0.02s
  ✓ it scopes handle uniqueness to store                                 0.01s
   PASS  Tests\Unit\PricingEngineTest
  ✓ it calculates subtotal from line items                               0.02s
  ✓ it calculates subtotal for a single line                             0.01s
  ✓ it returns zero subtotal for empty cart                              0.01s
  ✓ it applies percent discount correctly                                0.01s
  ✓ it applies fixed discount correctly                                  0.01s
  ✓ it caps fixed discount at subtotal so it never goes negative         0.01s
  ✓ it applies free shipping discount by zeroing shipping                0.01s
  ✓ it calculates tax exclusive correctly                                0.01s
  ✓ it extracts tax from inclusive price correctly                       0.01s
  ✓ it returns zero tax when rate is zero                                0.01s
  ✓ it calculates shipping flat rate                                     0.01s
  ✓ it calculates full checkout totals end to end                        0.02s
  ✓ it handles rounding correctly with odd cent amounts                  0.01s
  ✓ it produces identical results for identical inputs                   0.02s
   PASS  Tests\Unit\ShippingCalculatorTest
  ✓ it matches a zone by country code                                    0.01s
  ✓ it matches a zone by region code                                     0.01s
  ✓ it returns empty when no zone matches                                0.01s
  ✓ it calculates a flat rate                                            0.01s
  ✓ it calculates a weight-based rate                                    0.01s
  ✓ it calculates a price-based rate                                     0.01s
  ✓ it returns zero shipping when no items require shipping              0.01s
  ✓ it returns correct rates when multiple zones match                   0.01s
  ✓ it skips inactive rates                                              0.01s
   PASS  Tests\Unit\TaxCalculatorTest
  ✓ it calculates manual tax exclusive
  ✓ it extracts manual tax from inclusive amount
  ✓ it returns zero tax when no rate configured
  ✓ it handles zero amount lines
  ✓ it calculates tax with non-standard rate
  ✓ it extracts tax correctly for small amounts
  ✓ it handles high tax rates
   PASS  Tests\Feature\Admin\DashboardTest
  ✓ it renders the admin dashboard                                       0.05s
  ✓ it shows KPI tiles with correct data                                 0.02s
  ✓ it restricts dashboard to authenticated admins                       0.02s
  ✓ it filters metrics by date range                                     0.04s
   PASS  Tests\Feature\Admin\DiscountManagementTest
  ✓ it lists discounts                                                   0.02s
  ✓ it creates a percent discount                                        0.08s
  ✓ it creates a fixed discount                                          0.07s
  ✓ it validates discount code uniqueness within store                   0.08s
  ✓ it edits a discount                                                  0.04s
  ✓ it disables a discount                                               0.03s
   PASS  Tests\Feature\Admin\OrderManagementTest
  ✓ it lists orders with status filter                                   0.03s
  ✓ it shows order detail page                                           0.04s
  ✓ it creates a fulfillment from order detail                           0.09s
  ✓ it processes a refund from order detail                              0.08s
  ✓ it restricts order management by role                                0.01s
   PASS  Tests\Feature\Admin\ProductManagementTest
  ✓ it lists products with pagination                                    0.03s
  ✓ it creates a product via admin form                                  0.07s
  ✓ it edits a product via admin form                                    0.05s
  ✓ it bulk archives selected products                                   0.04s
  ✓ it uploads media from the product form                               0.12s
  ✓ it manages variants from the product form                            0.12s
  ✓ it restricts product management to authorized roles                  0.01s
  ✓ it staff can create but not delete products                          0.05s


output:
  ✓ it tracks a page view event                                          0.01s
  ✓ it tracks an add to cart event                                       0.01s
  ✓ it scopes events to current store                                    0.02s
  ✓ it includes session ID when available                                0.01s
  ✓ it includes customer ID when authenticated                           0.01s

fullOutput:
   PASS  Tests\Unit\DiscountCalculatorTest
  ✓ it validates an active discount code                                 0.02s
  ✓ it rejects an expired discount code                                  0.01s
  ✓ it rejects a not-yet-active discount code                            0.01s
  ✓ it rejects a discount that has reached its usage limit               0.02s
  ✓ it rejects an unknown discount code                                  0.01s
  ✓ it performs case-insensitive code lookup                             0.01s
  ✓ it enforces minimum purchase amount rule                             0.01s
  ✓ it passes minimum purchase when cart meets threshold                 0.01s
  ✓ it calculates percent discount amount                                0.01s
  ✓ it calculates fixed discount amount                                  0.01s
  ✓ it handles free shipping discount type                               0.01s
  ✓ it allocates discount proportionally across multiple lines           0.01s
  ✓ it distributes rounding remainder to the last qualifying line        0.01s
   PASS  Tests\Unit\ExampleTest
  ✓ that true is true
   PASS  Tests\Unit\HandleGeneratorTest
  ✓ it generates a slug from title                                       0.01s
  ✓ it appends suffix on collision                                       0.01s
  ✓ it increments suffix on multiple collisions                          0.01s
  ✓ it handles special characters                                        0.01s
  ✓ it excludes current record when updating                             0.02s
  ✓ it scopes handle uniqueness to store                                 0.01s
   PASS  Tests\Unit\PricingEngineTest
  ✓ it calculates subtotal from line items                               0.02s
  ✓ it calculates subtotal for a single line                             0.01s
  ✓ it returns zero subtotal for empty cart                              0.01s
  ✓ it applies percent discount correctly                                0.01s
  ✓ it applies fixed discount correctly                                  0.01s
  ✓ it caps fixed discount at subtotal so it never goes negative         0.01s
  ✓ it applies free shipping discount by zeroing shipping                0.01s
  ✓ it calculates tax exclusive correctly                                0.01s
  ✓ it extracts tax from inclusive price correctly                       0.01s
  ✓ it returns zero tax when rate is zero                                0.01s
  ✓ it calculates shipping flat rate                                     0.01s
  ✓ it calculates full checkout totals end to end                        0.02s
  ✓ it handles rounding correctly with odd cent amounts                  0.01s
  ✓ it produces identical results for identical inputs                   0.02s
   PASS  Tests\Unit\ShippingCalculatorTest
  ✓ it matches a zone by country code                                    0.01s
  ✓ it matches a zone by region code                                     0.01s
  ✓ it returns empty when no zone matches                                0.01s
  ✓ it calculates a flat rate                                            0.01s
  ✓ it calculates a weight-based rate                                    0.01s
  ✓ it calculates a price-based rate                                     0.01s
  ✓ it returns zero shipping when no items require shipping              0.01s
  ✓ it returns correct rates when multiple zones match                   0.01s
  ✓ it skips inactive rates                                              0.01s
   PASS  Tests\Unit\TaxCalculatorTest
  ✓ it calculates manual tax exclusive
  ✓ it extracts manual tax from inclusive amount
  ✓ it returns zero tax when no rate configured
  ✓ it handles zero amount lines
  ✓ it calculates tax with non-standard rate
  ✓ it extracts tax correctly for small amounts
  ✓ it handles high tax rates
   PASS  Tests\Feature\Admin\DashboardTest
  ✓ it renders the admin dashboard                                       0.05s
  ✓ it shows KPI tiles with correct data                                 0.02s
  ✓ it restricts dashboard to authenticated admins                       0.02s
  ✓ it filters metrics by date range                                     0.04s
   PASS  Tests\Feature\Admin\DiscountManagementTest
  ✓ it lists discounts                                                   0.02s
  ✓ it creates a percent discount                                        0.08s
  ✓ it creates a fixed discount                                          0.07s
  ✓ it validates discount code uniqueness within store                   0.08s
  ✓ it edits a discount                                                  0.04s
  ✓ it disables a discount                                               0.03s
   PASS  Tests\Feature\Admin\OrderManagementTest
  ✓ it lists orders with status filter                                   0.03s
  ✓ it shows order detail page                                           0.04s
  ✓ it creates a fulfillment from order detail                           0.09s
  ✓ it processes a refund from order detail                              0.08s
  ✓ it restricts order management by role                                0.01s
   PASS  Tests\Feature\Admin\ProductManagementTest
  ✓ it lists products with pagination                                    0.03s
  ✓ it creates a product via admin form                                  0.07s
  ✓ it edits a product via admin form                                    0.05s
  ✓ it bulk archives selected products                                   0.04s
  ✓ it uploads media from the product form                               0.12s
  ✓ it manages variants from the product form                            0.12s
  ✓ it restricts product management to authorized roles                  0.01s
  ✓ it staff can create but not delete products                          0.05s
   PASS  Tests\Feature\Admin\SettingsTest
  ✓ it renders the settings page                                         0.02s
  ✓ it updates general store settings                                    0.04s
  ✓ it configures shipping zones                                         0.04s
  ✓ it configures tax settings                                           0.04s
  ✓ it restricts settings to owner and admin roles                       0.02s
  ✓ it manages store domains                                             0.03s
   PASS  Tests\Feature\Analytics\AggregationTest
  ✓ it aggregates daily metrics from raw events                          0.02s
  ✓ it calculates revenue and AOV correctly                              0.02s
  ✓ it runs idempotently                                                 0.02s
   PASS  Tests\Feature\Analytics\EventIngestionTest
  ✓ it tracks a page view event                                          0.01s
  ✓ it tracks an add to cart event                                       0.01s
  ✓ it scopes events to current store                                    0.02s
  ✓ it includes session ID when available                                0.01s
  ✓ it includes customer ID when authenticated                           0.01s


output:
  ✓ login screen can be rendered                                         0.02s
  ✓ users can authenticate using the login screen                        0.02s
  ✓ users can not authenticate with invalid password                     0.01s
  ✓ users with two factor enabled are redirected to two factor challeng… 0.02s
  ✓ users can logout                                                     0.01s

fullOutput:
  ✓ it distributes rounding remainder to the last qualifying line        0.01s
   PASS  Tests\Unit\ExampleTest
  ✓ that true is true
   PASS  Tests\Unit\HandleGeneratorTest
  ✓ it generates a slug from title                                       0.01s
  ✓ it appends suffix on collision                                       0.01s
  ✓ it increments suffix on multiple collisions                          0.01s
  ✓ it handles special characters                                        0.01s
  ✓ it excludes current record when updating                             0.02s
  ✓ it scopes handle uniqueness to store                                 0.01s
   PASS  Tests\Unit\PricingEngineTest
  ✓ it calculates subtotal from line items                               0.02s
  ✓ it calculates subtotal for a single line                             0.01s
  ✓ it returns zero subtotal for empty cart                              0.01s
  ✓ it applies percent discount correctly                                0.01s
  ✓ it applies fixed discount correctly                                  0.01s
  ✓ it caps fixed discount at subtotal so it never goes negative         0.01s
  ✓ it applies free shipping discount by zeroing shipping                0.01s
  ✓ it calculates tax exclusive correctly                                0.01s
  ✓ it extracts tax from inclusive price correctly                       0.01s
  ✓ it returns zero tax when rate is zero                                0.01s
  ✓ it calculates shipping flat rate                                     0.01s
  ✓ it calculates full checkout totals end to end                        0.02s
  ✓ it handles rounding correctly with odd cent amounts                  0.01s
  ✓ it produces identical results for identical inputs                   0.02s
   PASS  Tests\Unit\ShippingCalculatorTest
  ✓ it matches a zone by country code                                    0.01s
  ✓ it matches a zone by region code                                     0.01s
  ✓ it returns empty when no zone matches                                0.01s
  ✓ it calculates a flat rate                                            0.01s
  ✓ it calculates a weight-based rate                                    0.01s
  ✓ it calculates a price-based rate                                     0.01s
  ✓ it returns zero shipping when no items require shipping              0.01s
  ✓ it returns correct rates when multiple zones match                   0.01s
  ✓ it skips inactive rates                                              0.01s
   PASS  Tests\Unit\TaxCalculatorTest
  ✓ it calculates manual tax exclusive
  ✓ it extracts manual tax from inclusive amount
  ✓ it returns zero tax when no rate configured
  ✓ it handles zero amount lines
  ✓ it calculates tax with non-standard rate
  ✓ it extracts tax correctly for small amounts
  ✓ it handles high tax rates
   PASS  Tests\Feature\Admin\DashboardTest
  ✓ it renders the admin dashboard                                       0.05s
  ✓ it shows KPI tiles with correct data                                 0.02s
  ✓ it restricts dashboard to authenticated admins                       0.02s
  ✓ it filters metrics by date range                                     0.04s
   PASS  Tests\Feature\Admin\DiscountManagementTest
  ✓ it lists discounts                                                   0.02s
  ✓ it creates a percent discount                                        0.08s
  ✓ it creates a fixed discount                                          0.07s
  ✓ it validates discount code uniqueness within store                   0.08s
  ✓ it edits a discount                                                  0.04s
  ✓ it disables a discount                                               0.03s
   PASS  Tests\Feature\Admin\OrderManagementTest
  ✓ it lists orders with status filter                                   0.03s
  ✓ it shows order detail page                                           0.04s
  ✓ it creates a fulfillment from order detail                           0.09s
  ✓ it processes a refund from order detail                              0.08s
  ✓ it restricts order management by role                                0.01s
   PASS  Tests\Feature\Admin\ProductManagementTest
  ✓ it lists products with pagination                                    0.03s
  ✓ it creates a product via admin form                                  0.07s
  ✓ it edits a product via admin form                                    0.05s
  ✓ it bulk archives selected products                                   0.04s
  ✓ it uploads media from the product form                               0.12s
  ✓ it manages variants from the product form                            0.12s
  ✓ it restricts product management to authorized roles                  0.01s
  ✓ it staff can create but not delete products                          0.05s
   PASS  Tests\Feature\Admin\SettingsTest
  ✓ it renders the settings page                                         0.02s
  ✓ it updates general store settings                                    0.04s
  ✓ it configures shipping zones                                         0.04s
  ✓ it configures tax settings                                           0.04s
  ✓ it restricts settings to owner and admin roles                       0.02s
  ✓ it manages store domains                                             0.03s
   PASS  Tests\Feature\Analytics\AggregationTest
  ✓ it aggregates daily metrics from raw events                          0.02s
  ✓ it calculates revenue and AOV correctly                              0.02s
  ✓ it runs idempotently                                                 0.02s
   PASS  Tests\Feature\Analytics\EventIngestionTest
  ✓ it tracks a page view event                                          0.01s
  ✓ it tracks an add to cart event                                       0.01s
  ✓ it scopes events to current store                                    0.02s
  ✓ it includes session ID when available                                0.01s
  ✓ it includes customer ID when authenticated                           0.01s
   PASS  Tests\Feature\Auth\AdminAuthTest
  ✓ it shows admin login page                                            0.02s
  ✓ it authenticates admin user with valid credentials                   0.04s
  ✓ it fails authentication with invalid credentials                     0.23s
  ✓ it validates email is required                                       0.03s
  ✓ it validates password is required                                    0.03s
  ✓ it rate limits login attempts                                        1.17s
   PASS  Tests\Feature\Auth\AuthenticationTest
  ✓ login screen can be rendered                                         0.02s
  ✓ users can authenticate using the login screen                        0.02s
  ✓ users can not authenticate with invalid password                     0.01s
  ✓ users with two factor enabled are redirected to two factor challeng… 0.02s
  ✓ users can logout                                                     0.01s


output:
  ✓ registration screen can be rendered                                  0.02s
  ✓ new users can register                                               0.01s
   PASS  Tests\Feature\Auth\TwoFactorChallengeTest
  ✓ two factor challenge redirects to login when not authenticated       0.01s
  ✓ two factor challenge can be rendered                                 0.01s

fullOutput:
   PASS  Tests\Unit\ShippingCalculatorTest
  ✓ it matches a zone by country code                                    0.01s
  ✓ it matches a zone by region code                                     0.01s
  ✓ it returns empty when no zone matches                                0.01s
  ✓ it calculates a flat rate                                            0.01s
  ✓ it calculates a weight-based rate                                    0.01s
  ✓ it calculates a price-based rate                                     0.01s
  ✓ it returns zero shipping when no items require shipping              0.01s
  ✓ it returns correct rates when multiple zones match                   0.01s
  ✓ it skips inactive rates                                              0.01s
   PASS  Tests\Unit\TaxCalculatorTest
  ✓ it calculates manual tax exclusive
  ✓ it extracts manual tax from inclusive amount
  ✓ it returns zero tax when no rate configured
  ✓ it handles zero amount lines
  ✓ it calculates tax with non-standard rate
  ✓ it extracts tax correctly for small amounts
  ✓ it handles high tax rates
   PASS  Tests\Feature\Admin\DashboardTest
  ✓ it renders the admin dashboard                                       0.05s
  ✓ it shows KPI tiles with correct data                                 0.02s
  ✓ it restricts dashboard to authenticated admins                       0.02s
  ✓ it filters metrics by date range                                     0.04s
   PASS  Tests\Feature\Admin\DiscountManagementTest
  ✓ it lists discounts                                                   0.02s
  ✓ it creates a percent discount                                        0.08s
  ✓ it creates a fixed discount                                          0.07s
  ✓ it validates discount code uniqueness within store                   0.08s
  ✓ it edits a discount                                                  0.04s
  ✓ it disables a discount                                               0.03s
   PASS  Tests\Feature\Admin\OrderManagementTest
  ✓ it lists orders with status filter                                   0.03s
  ✓ it shows order detail page                                           0.04s
  ✓ it creates a fulfillment from order detail                           0.09s
  ✓ it processes a refund from order detail                              0.08s
  ✓ it restricts order management by role                                0.01s
   PASS  Tests\Feature\Admin\ProductManagementTest
  ✓ it lists products with pagination                                    0.03s
  ✓ it creates a product via admin form                                  0.07s
  ✓ it edits a product via admin form                                    0.05s
  ✓ it bulk archives selected products                                   0.04s
  ✓ it uploads media from the product form                               0.12s
  ✓ it manages variants from the product form                            0.12s
  ✓ it restricts product management to authorized roles                  0.01s
  ✓ it staff can create but not delete products                          0.05s
   PASS  Tests\Feature\Admin\SettingsTest
  ✓ it renders the settings page                                         0.02s
  ✓ it updates general store settings                                    0.04s
  ✓ it configures shipping zones                                         0.04s
  ✓ it configures tax settings                                           0.04s
  ✓ it restricts settings to owner and admin roles                       0.02s
  ✓ it manages store domains                                             0.03s
   PASS  Tests\Feature\Analytics\AggregationTest
  ✓ it aggregates daily metrics from raw events                          0.02s
  ✓ it calculates revenue and AOV correctly                              0.02s
  ✓ it runs idempotently                                                 0.02s
   PASS  Tests\Feature\Analytics\EventIngestionTest
  ✓ it tracks a page view event                                          0.01s
  ✓ it tracks an add to cart event                                       0.01s
  ✓ it scopes events to current store                                    0.02s
  ✓ it includes session ID when available                                0.01s
  ✓ it includes customer ID when authenticated                           0.01s
   PASS  Tests\Feature\Auth\AdminAuthTest
  ✓ it shows admin login page                                            0.02s
  ✓ it authenticates admin user with valid credentials                   0.04s
  ✓ it fails authentication with invalid credentials                     0.23s
  ✓ it validates email is required                                       0.03s
  ✓ it validates password is required                                    0.03s
  ✓ it rate limits login attempts                                        1.17s
   PASS  Tests\Feature\Auth\AuthenticationTest
  ✓ login screen can be rendered                                         0.02s
  ✓ users can authenticate using the login screen                        0.02s
  ✓ users can not authenticate with invalid password                     0.01s
  ✓ users with two factor enabled are redirected to two factor challeng… 0.02s
  ✓ users can logout                                                     0.01s
   PASS  Tests\Feature\Auth\CustomerAuthTest
  ✓ it shows customer login page                                         0.02s
  ✓ it shows customer register page                                      0.02s
  ✓ it validates login email is required                                 0.03s
  ✓ it validates login password is required                              0.03s
  ✓ it validates registration fields are required                        0.06s
  ✓ it validates registration password confirmation                      0.06s
   PASS  Tests\Feature\Auth\EmailVerificationTest
  ✓ email verification screen can be rendered                            0.02s
  ✓ email can be verified                                                0.01s
  ✓ email is not verified with invalid hash                              0.01s
  ✓ already verified user visiting verification link is redirected with… 0.01s
   PASS  Tests\Feature\Auth\PasswordConfirmationTest
  ✓ confirm password screen can be rendered                              0.02s
   PASS  Tests\Feature\Auth\PasswordResetTest
  ✓ reset password link screen can be rendered                           0.01s
  ✓ reset password link can be requested                                 0.21s
  ✓ reset password screen can be rendered                                0.22s
  ✓ password can be reset with valid token                               0.22s
   PASS  Tests\Feature\Auth\RegistrationTest
  ✓ registration screen can be rendered                                  0.02s
  ✓ new users can register                                               0.01s
   PASS  Tests\Feature\Auth\TwoFactorChallengeTest
  ✓ two factor challenge redirects to login when not authenticated       0.01s
  ✓ two factor challenge can be rendered                                 0.01s


output:
   PASS  Tests\Feature\Checkout\TaxTest
  ✓ it calculates exclusive tax correctly at checkout                    0.03s
  ✓ it extracts inclusive tax correctly at checkout                      0.02s
  ✓ it applies zero tax when no tax settings exist                       0.02s
  ✓ it stores tax lines in totals_json                                   0.01s

fullOutput:
  ✓ it aggregates daily metrics from raw events                          0.02s
  ✓ it calculates revenue and AOV correctly                              0.02s
  ✓ it runs idempotently                                                 0.02s
   PASS  Tests\Feature\Analytics\EventIngestionTest
  ✓ it tracks a page view event                                          0.01s
  ✓ it tracks an add to cart event                                       0.01s
  ✓ it scopes events to current store                                    0.02s
  ✓ it includes session ID when available                                0.01s
  ✓ it includes customer ID when authenticated                           0.01s
   PASS  Tests\Feature\Auth\AdminAuthTest
  ✓ it shows admin login page                                            0.02s
  ✓ it authenticates admin user with valid credentials                   0.04s
  ✓ it fails authentication with invalid credentials                     0.23s
  ✓ it validates email is required                                       0.03s
  ✓ it validates password is required                                    0.03s
  ✓ it rate limits login attempts                                        1.17s
   PASS  Tests\Feature\Auth\AuthenticationTest
  ✓ login screen can be rendered                                         0.02s
  ✓ users can authenticate using the login screen                        0.02s
  ✓ users can not authenticate with invalid password                     0.01s
  ✓ users with two factor enabled are redirected to two factor challeng… 0.02s
  ✓ users can logout                                                     0.01s
   PASS  Tests\Feature\Auth\CustomerAuthTest
  ✓ it shows customer login page                                         0.02s
  ✓ it shows customer register page                                      0.02s
  ✓ it validates login email is required                                 0.03s
  ✓ it validates login password is required                              0.03s
  ✓ it validates registration fields are required                        0.06s
  ✓ it validates registration password confirmation                      0.06s
   PASS  Tests\Feature\Auth\EmailVerificationTest
  ✓ email verification screen can be rendered                            0.02s
  ✓ email can be verified                                                0.01s
  ✓ email is not verified with invalid hash                              0.01s
  ✓ already verified user visiting verification link is redirected with… 0.01s
   PASS  Tests\Feature\Auth\PasswordConfirmationTest
  ✓ confirm password screen can be rendered                              0.02s
   PASS  Tests\Feature\Auth\PasswordResetTest
  ✓ reset password link screen can be rendered                           0.01s
  ✓ reset password link can be requested                                 0.21s
  ✓ reset password screen can be rendered                                0.22s
  ✓ password can be reset with valid token                               0.22s
   PASS  Tests\Feature\Auth\RegistrationTest
  ✓ registration screen can be rendered                                  0.02s
  ✓ new users can register                                               0.01s
   PASS  Tests\Feature\Auth\TwoFactorChallengeTest
  ✓ two factor challenge redirects to login when not authenticated       0.01s
  ✓ two factor challenge can be rendered                                 0.01s
   PASS  Tests\Feature\Cart\CartServiceTest
  ✓ it creates a cart for the current store                              0.01s
  ✓ it adds a line item to the cart                                      0.01s
  ✓ it increments quantity when adding an existing variant               0.01s
  ✓ it rejects add when product is not active                            0.02s
  ✓ it rejects add when inventory is insufficient and policy is deny     0.01s
  ✓ it allows add when inventory is insufficient but policy is continue  0.01s
  ✓ it updates line quantity                                             0.01s
  ✓ it removes a line when quantity set to zero                          0.07s
  ✓ it removes a specific line item                                      0.02s
  ✓ it increments cart version on every mutation                         0.02s
  ✓ it returns cart via session for guest users                          0.01s
  ✓ it merges guest cart into customer cart on login                     0.02s
   PASS  Tests\Feature\Checkout\CheckoutFlowTest
  ✓ it creates a checkout from a cart                                    0.02s
  ✓ it completes full checkout happy path                                0.02s
  ✓ it rejects checkout for empty cart                                   0.01s
  ✓ it expires checkout after timeout                                    0.01s
  ✓ it prevents duplicate checkouts from same cart                       0.02s
   PASS  Tests\Feature\Checkout\CheckoutStateTest
  ✓ it transitions from started to addressed with valid address          0.02s
  ✓ it rejects address transition with missing required fields           0.01s
  ✓ it transitions from addressed to shipping_selected                   0.02s
  ✓ it rejects shipping selection with rate from wrong zone              0.01s
  ✓ it skips shipping selection when no items require shipping           0.02s
  ✓ it transitions from shipping_selected to payment_selected            0.02s
  ✓ it transitions from payment_selected to completed                    0.02s
  ✓ it rejects invalid state transitions                                 0.01s
  ✓ it recalculates pricing on address change                            0.01s
   PASS  Tests\Feature\Checkout\DiscountTest
  ✓ it applies a valid percent discount code at checkout                 0.02s
  ✓ it applies a valid fixed discount code at checkout                   0.01s
  ✓ it removes discount when code is cleared                             0.02s
  ✓ it rejects expired discount at checkout                              0.01s
  ✓ it increments usage count on checkout completion                     0.02s
  ✓ it handles free shipping discount at checkout                        0.02s
   PASS  Tests\Feature\Checkout\PricingIntegrationTest
  ✓ it calculates correct totals for a simple checkout                   0.02s
  ✓ it applies discount code and recalculates                            0.01s
  ✓ it stores pricing snapshot in totals_json                            0.02s
  ✓ it recalculates on shipping method change                            0.02s
  ✓ it handles prices-include-tax correctly                              0.02s
   PASS  Tests\Feature\Checkout\ShippingTest
  ✓ it returns available shipping rates for address                      0.02s
  ✓ it returns empty when no zone matches address                        0.02s
  ✓ it calculates flat rate correctly                                    0.01s
  ✓ it calculates weight-based rate correctly                            0.02s
  ✓ it returns zero shipping when all items are digital                  0.04s
   PASS  Tests\Feature\Checkout\TaxTest
  ✓ it calculates exclusive tax correctly at checkout                    0.03s
  ✓ it extracts inclusive tax correctly at checkout                      0.02s
  ✓ it applies zero tax when no tax settings exist                       0.02s
  ✓ it stores tax lines in totals_json                                   0.01s


output:
  ✓ it displays order confirmation for a valid order number              0.03s
  ✓ it returns 404 for non-existent order number                         0.01s
  ✓ it shows bank transfer details for bank transfer orders              0.01s
  ✓ it displays order totals with discount                               0.01s
  ✓ it displays shipping address on confirmation page                    0.02s

fullOutput:
  ✓ it validates login password is required                              0.03s
  ✓ it validates registration fields are required                        0.06s
  ✓ it validates registration password confirmation                      0.06s
   PASS  Tests\Feature\Auth\EmailVerificationTest
  ✓ email verification screen can be rendered                            0.02s
  ✓ email can be verified                                                0.01s
  ✓ email is not verified with invalid hash                              0.01s
  ✓ already verified user visiting verification link is redirected with… 0.01s
   PASS  Tests\Feature\Auth\PasswordConfirmationTest
  ✓ confirm password screen can be rendered                              0.02s
   PASS  Tests\Feature\Auth\PasswordResetTest
  ✓ reset password link screen can be rendered                           0.01s
  ✓ reset password link can be requested                                 0.21s
  ✓ reset password screen can be rendered                                0.22s
  ✓ password can be reset with valid token                               0.22s
   PASS  Tests\Feature\Auth\RegistrationTest
  ✓ registration screen can be rendered                                  0.02s
  ✓ new users can register                                               0.01s
   PASS  Tests\Feature\Auth\TwoFactorChallengeTest
  ✓ two factor challenge redirects to login when not authenticated       0.01s
  ✓ two factor challenge can be rendered                                 0.01s
   PASS  Tests\Feature\Cart\CartServiceTest
  ✓ it creates a cart for the current store                              0.01s
  ✓ it adds a line item to the cart                                      0.01s
  ✓ it increments quantity when adding an existing variant               0.01s
  ✓ it rejects add when product is not active                            0.02s
  ✓ it rejects add when inventory is insufficient and policy is deny     0.01s
  ✓ it allows add when inventory is insufficient but policy is continue  0.01s
  ✓ it updates line quantity                                             0.01s
  ✓ it removes a line when quantity set to zero                          0.07s
  ✓ it removes a specific line item                                      0.02s
  ✓ it increments cart version on every mutation                         0.02s
  ✓ it returns cart via session for guest users                          0.01s
  ✓ it merges guest cart into customer cart on login                     0.02s
   PASS  Tests\Feature\Checkout\CheckoutFlowTest
  ✓ it creates a checkout from a cart                                    0.02s
  ✓ it completes full checkout happy path                                0.02s
  ✓ it rejects checkout for empty cart                                   0.01s
  ✓ it expires checkout after timeout                                    0.01s
  ✓ it prevents duplicate checkouts from same cart                       0.02s
   PASS  Tests\Feature\Checkout\CheckoutStateTest
  ✓ it transitions from started to addressed with valid address          0.02s
  ✓ it rejects address transition with missing required fields           0.01s
  ✓ it transitions from addressed to shipping_selected                   0.02s
  ✓ it rejects shipping selection with rate from wrong zone              0.01s
  ✓ it skips shipping selection when no items require shipping           0.02s
  ✓ it transitions from shipping_selected to payment_selected            0.02s
  ✓ it transitions from payment_selected to completed                    0.02s
  ✓ it rejects invalid state transitions                                 0.01s
  ✓ it recalculates pricing on address change                            0.01s
   PASS  Tests\Feature\Checkout\DiscountTest
  ✓ it applies a valid percent discount code at checkout                 0.02s
  ✓ it applies a valid fixed discount code at checkout                   0.01s
  ✓ it removes discount when code is cleared                             0.02s
  ✓ it rejects expired discount at checkout                              0.01s
  ✓ it increments usage count on checkout completion                     0.02s
  ✓ it handles free shipping discount at checkout                        0.02s
   PASS  Tests\Feature\Checkout\PricingIntegrationTest
  ✓ it calculates correct totals for a simple checkout                   0.02s
  ✓ it applies discount code and recalculates                            0.01s
  ✓ it stores pricing snapshot in totals_json                            0.02s
  ✓ it recalculates on shipping method change                            0.02s
  ✓ it handles prices-include-tax correctly                              0.02s
   PASS  Tests\Feature\Checkout\ShippingTest
  ✓ it returns available shipping rates for address                      0.02s
  ✓ it returns empty when no zone matches address                        0.02s
  ✓ it calculates flat rate correctly                                    0.01s
  ✓ it calculates weight-based rate correctly                            0.02s
  ✓ it returns zero shipping when all items are digital                  0.04s
   PASS  Tests\Feature\Checkout\TaxTest
  ✓ it calculates exclusive tax correctly at checkout                    0.03s
  ✓ it extracts inclusive tax correctly at checkout                      0.02s
  ✓ it applies zero tax when no tax settings exist                       0.02s
  ✓ it stores tax lines in totals_json                                   0.01s
   PASS  Tests\Feature\Customers\AddressManagementTest
  ✓ it lists saved addresses                                             0.02s
  ✓ it creates a new address                                             0.14s
  ✓ it updates an existing address                                       0.18s
  ✓ it deletes an address                                                0.02s
  ✓ it sets a default address                                            0.03s
  ✓ it validates required address fields                                 0.16s
  ✓ it prevents managing another customers addresses                     0.06s
   PASS  Tests\Feature\Customers\CustomerAccountTest
  ✓ it renders the customer dashboard                                    0.04s
  ✓ it lists customer orders                                             0.03s
  ✓ it shows order detail                                                0.02s
  ✓ it prevents accessing another customers orders                       0.02s
  ✓ it redirects unauthenticated requests to login                       0.01s
  ✓ it updates customer profile                                          0.04s
   PASS  Tests\Feature\DashboardTest
  ✓ guests are redirected to the login page                              0.01s
  ✓ authenticated users can visit the dashboard                          0.05s
   PASS  Tests\Feature\ExampleTest
  ✓ it returns a successful response                                     0.02s
   PASS  Tests\Feature\Livewire\Storefront\Checkout\CheckoutConfirmationTest
  ✓ it displays order confirmation for a valid order number              0.03s
  ✓ it returns 404 for non-existent order number                         0.01s
  ✓ it shows bank transfer details for bank transfer orders              0.01s
  ✓ it displays order totals with discount                               0.01s
  ✓ it displays shipping address on confirmation page                    0.02s


output:
  ✓ it allows navigating back to previous steps                          0.05s
  ✓ it prevents navigating forward via goToStep                          0.03s
  ✓ it completes checkout with credit card payment                       0.19s
  ✓ it validates credit card fields when payment method is credit card   0.19s
  ✓ it stores discount code from session on checkout creation            0.05s

fullOutput:
  ✓ password can be reset with valid token                               0.22s
   PASS  Tests\Feature\Auth\RegistrationTest
  ✓ registration screen can be rendered                                  0.02s
  ✓ new users can register                                               0.01s
   PASS  Tests\Feature\Auth\TwoFactorChallengeTest
  ✓ two factor challenge redirects to login when not authenticated       0.01s
  ✓ two factor challenge can be rendered                                 0.01s
   PASS  Tests\Feature\Cart\CartServiceTest
  ✓ it creates a cart for the current store                              0.01s
  ✓ it adds a line item to the cart                                      0.01s
  ✓ it increments quantity when adding an existing variant               0.01s
  ✓ it rejects add when product is not active                            0.02s
  ✓ it rejects add when inventory is insufficient and policy is deny     0.01s
  ✓ it allows add when inventory is insufficient but policy is continue  0.01s
  ✓ it updates line quantity                                             0.01s
  ✓ it removes a line when quantity set to zero                          0.07s
  ✓ it removes a specific line item                                      0.02s
  ✓ it increments cart version on every mutation                         0.02s
  ✓ it returns cart via session for guest users                          0.01s
  ✓ it merges guest cart into customer cart on login                     0.02s
   PASS  Tests\Feature\Checkout\CheckoutFlowTest
  ✓ it creates a checkout from a cart                                    0.02s
  ✓ it completes full checkout happy path                                0.02s
  ✓ it rejects checkout for empty cart                                   0.01s
  ✓ it expires checkout after timeout                                    0.01s
  ✓ it prevents duplicate checkouts from same cart                       0.02s
   PASS  Tests\Feature\Checkout\CheckoutStateTest
  ✓ it transitions from started to addressed with valid address          0.02s
  ✓ it rejects address transition with missing required fields           0.01s
  ✓ it transitions from addressed to shipping_selected                   0.02s
  ✓ it rejects shipping selection with rate from wrong zone              0.01s
  ✓ it skips shipping selection when no items require shipping           0.02s
  ✓ it transitions from shipping_selected to payment_selected            0.02s
  ✓ it transitions from payment_selected to completed                    0.02s
  ✓ it rejects invalid state transitions                                 0.01s
  ✓ it recalculates pricing on address change                            0.01s
   PASS  Tests\Feature\Checkout\DiscountTest
  ✓ it applies a valid percent discount code at checkout                 0.02s
  ✓ it applies a valid fixed discount code at checkout                   0.01s
  ✓ it removes discount when code is cleared                             0.02s
  ✓ it rejects expired discount at checkout                              0.01s
  ✓ it increments usage count on checkout completion                     0.02s
  ✓ it handles free shipping discount at checkout                        0.02s
   PASS  Tests\Feature\Checkout\PricingIntegrationTest
  ✓ it calculates correct totals for a simple checkout                   0.02s
  ✓ it applies discount code and recalculates                            0.01s
  ✓ it stores pricing snapshot in totals_json                            0.02s
  ✓ it recalculates on shipping method change                            0.02s
  ✓ it handles prices-include-tax correctly                              0.02s
   PASS  Tests\Feature\Checkout\ShippingTest
  ✓ it returns available shipping rates for address                      0.02s
  ✓ it returns empty when no zone matches address                        0.02s
  ✓ it calculates flat rate correctly                                    0.01s
  ✓ it calculates weight-based rate correctly                            0.02s
  ✓ it returns zero shipping when all items are digital                  0.04s
   PASS  Tests\Feature\Checkout\TaxTest
  ✓ it calculates exclusive tax correctly at checkout                    0.03s
  ✓ it extracts inclusive tax correctly at checkout                      0.02s
  ✓ it applies zero tax when no tax settings exist                       0.02s
  ✓ it stores tax lines in totals_json                                   0.01s
   PASS  Tests\Feature\Customers\AddressManagementTest
  ✓ it lists saved addresses                                             0.02s
  ✓ it creates a new address                                             0.14s
  ✓ it updates an existing address                                       0.18s
  ✓ it deletes an address                                                0.02s
  ✓ it sets a default address                                            0.03s
  ✓ it validates required address fields                                 0.16s
  ✓ it prevents managing another customers addresses                     0.06s
   PASS  Tests\Feature\Customers\CustomerAccountTest
  ✓ it renders the customer dashboard                                    0.04s
  ✓ it lists customer orders                                             0.03s
  ✓ it shows order detail                                                0.02s
  ✓ it prevents accessing another customers orders                       0.02s
  ✓ it redirects unauthenticated requests to login                       0.01s
  ✓ it updates customer profile                                          0.04s
   PASS  Tests\Feature\DashboardTest
  ✓ guests are redirected to the login page                              0.01s
  ✓ authenticated users can visit the dashboard                          0.05s
   PASS  Tests\Feature\ExampleTest
  ✓ it returns a successful response                                     0.02s
   PASS  Tests\Feature\Livewire\Storefront\Checkout\CheckoutConfirmationTest
  ✓ it displays order confirmation for a valid order number              0.03s
  ✓ it returns 404 for non-existent order number                         0.01s
  ✓ it shows bank transfer details for bank transfer orders              0.01s
  ✓ it displays order totals with discount                               0.01s
  ✓ it displays shipping address on confirmation page                    0.02s
   PASS  Tests\Feature\Livewire\Storefront\Checkout\CheckoutIndexTest
  ✓ it redirects to cart when cart is empty                              0.01s
  ✓ it mounts with step 1 when cart has items                            0.03s
  ✓ it submits contact email and advances to step 2                      0.05s
  ✓ it validates email on contact step                                   0.05s
  ✓ it submits address and advances to step 3                            0.13s
  ✓ it validates required address fields                                 0.08s
  ✓ it submits shipping and advances to step 4                           0.13s
  ✓ it validates shipping rate selection                                 0.13s
  ✓ it allows navigating back to previous steps                          0.05s
  ✓ it prevents navigating forward via goToStep                          0.03s
  ✓ it completes checkout with credit card payment                       0.19s
  ✓ it validates credit card fields when payment method is credit card   0.19s
  ✓ it stores discount code from session on checkout creation            0.05s


output:
  ✓ it removes products from a collection                                0.01s
  ✓ it reorders products in a collection                                 0.01s
  ✓ it transitions collection from draft to active                       0.01s
  ✓ it lists collections with product count                              0.01s
  ✓ it scopes collections to store                                       0.01s

fullOutput:
  ✓ it applies zero tax when no tax settings exist                       0.02s
  ✓ it stores tax lines in totals_json                                   0.01s
   PASS  Tests\Feature\Customers\AddressManagementTest
  ✓ it lists saved addresses                                             0.02s
  ✓ it creates a new address                                             0.14s
  ✓ it updates an existing address                                       0.18s
  ✓ it deletes an address                                                0.02s
  ✓ it sets a default address                                            0.03s
  ✓ it validates required address fields                                 0.16s
  ✓ it prevents managing another customers addresses                     0.06s
   PASS  Tests\Feature\Customers\CustomerAccountTest
  ✓ it renders the customer dashboard                                    0.04s
  ✓ it lists customer orders                                             0.03s
  ✓ it shows order detail                                                0.02s
  ✓ it prevents accessing another customers orders                       0.02s
  ✓ it redirects unauthenticated requests to login                       0.01s
  ✓ it updates customer profile                                          0.04s
   PASS  Tests\Feature\DashboardTest
  ✓ guests are redirected to the login page                              0.01s
  ✓ authenticated users can visit the dashboard                          0.05s
   PASS  Tests\Feature\ExampleTest
  ✓ it returns a successful response                                     0.02s
   PASS  Tests\Feature\Livewire\Storefront\Checkout\CheckoutConfirmationTest
  ✓ it displays order confirmation for a valid order number              0.03s
  ✓ it returns 404 for non-existent order number                         0.01s
  ✓ it shows bank transfer details for bank transfer orders              0.01s
  ✓ it displays order totals with discount                               0.01s
  ✓ it displays shipping address on confirmation page                    0.02s
   PASS  Tests\Feature\Livewire\Storefront\Checkout\CheckoutIndexTest
  ✓ it redirects to cart when cart is empty                              0.01s
  ✓ it mounts with step 1 when cart has items                            0.03s
  ✓ it submits contact email and advances to step 2                      0.05s
  ✓ it validates email on contact step                                   0.05s
  ✓ it submits address and advances to step 3                            0.13s
  ✓ it validates required address fields                                 0.08s
  ✓ it submits shipping and advances to step 4                           0.13s
  ✓ it validates shipping rate selection                                 0.13s
  ✓ it allows navigating back to previous steps                          0.05s
  ✓ it prevents navigating forward via goToStep                          0.03s
  ✓ it completes checkout with credit card payment                       0.19s
  ✓ it validates credit card fields when payment method is credit card   0.19s
  ✓ it stores discount code from session on checkout creation            0.05s
   PASS  Tests\Feature\Orders\FulfillmentTest
  ✓ it creates a fulfillment for specific order lines                    0.03s
  ✓ it updates order fulfillment status to partial                       0.03s
  ✓ it updates order fulfillment status to fulfilled when all lines don… 0.04s
  ✓ it adds tracking information                                         0.03s
  ✓ it transitions fulfillment from pending to shipped                   0.02s
  ✓ it transitions fulfillment from shipped to delivered                 0.03s
  ✓ it prevents fulfilling more than ordered quantity                    0.04s
  ✓ it fulfillment guard blocks fulfillment when financial_status is pe… 0.02s
  ✓ it fulfillment guard allows fulfillment when financial_status is pa… 0.04s
  ✓ it fulfillment guard allows fulfillment when financial_status is pa… 0.05s
  ✓ it auto-fulfills digital products on payment confirmation            0.03s
  ✓ it dispatches OrderFulfilled event when all lines fulfilled          0.04s
   PASS  Tests\Feature\Orders\OrderCreationTest
  ✓ it creates an order from a completed checkout                        0.06s
  ✓ it generates sequential order numbers per store                      0.02s
  ✓ it creates order lines with snapshots                                0.02s
  ✓ it commits inventory on order creation for credit card               0.03s
  ✓ it marks cart as converted                                           0.02s
  ✓ it dispatches OrderCreated event                                     0.03s
  ✓ it preserves order data when product is deleted                      0.02s
  ✓ it links order to customer when authenticated                        0.03s
   PASS  Tests\Feature\Orders\RefundTest
  ✓ it creates a full refund                                             0.02s
  ✓ it creates a partial refund                                          0.02s
  ✓ it rejects refund exceeding payment amount                           0.04s
  ✓ it restocks inventory when restock flag is true                      0.03s
  ✓ it does not restock when restock flag is false                       0.03s
  ✓ it records refund reason                                             0.02s
  ✓ it dispatches OrderRefunded event                                    0.02s
   PASS  Tests\Feature\Payments\BankTransferConfirmationTest
  ✓ it admin can confirm bank transfer payment                           0.05s
  ✓ it cannot confirm payment for non-bank-transfer orders               0.02s
  ✓ it cannot confirm already confirmed payment                          0.03s
  ✓ it auto-cancel job cancels unpaid bank transfer orders after 7 days  0.02s
  ✓ it auto-cancel job does not cancel orders within 7 days              0.03s
  ✓ it auto-fulfills digital products on payment confirmation            0.02s
   PASS  Tests\Feature\Payments\MockPaymentProviderTest
  ✓ it charges credit card with success card number                      0.01s
  ✓ it declines credit card with decline card number                     0.01s
  ✓ it returns insufficient funds for that card number                   0.01s
  ✓ it charges PayPal successfully                                       0.01s
  ✓ it creates pending payment for bank transfer                         0.01s
  ✓ it generates mock reference ID                                       0.01s
   PASS  Tests\Feature\Payments\PaymentServiceTest
  ✓ it processes credit card payment and creates order as paid           0.02s
  ✓ it processes PayPal payment and creates order as paid                0.02s
  ✓ it processes bank transfer and creates order as pending              0.02s
  ✓ it resolves MockPaymentProvider from container                       0.01s
  ✓ it creates a payment record with correct method                      0.02s
   PASS  Tests\Feature\Products\CollectionTest
  ✓ it creates a collection with a unique handle                         0.01s
  ✓ it adds products to a collection                                     0.01s
  ✓ it removes products from a collection                                0.01s
  ✓ it reorders products in a collection                                 0.01s
  ✓ it transitions collection from draft to active                       0.01s
  ✓ it lists collections with product count                              0.01s
  ✓ it scopes collections to store                                       0.01s


output:
  ✓ it resolves URLs for link type items                                 0.02s
   PASS  Tests\Feature\Storefront\PageTest
  ✓ it renders a published page                                          0.02s
  ✓ it returns 404 for draft page                                        0.01s
  ✓ it returns 404 for nonexistent page                                  0.01s

fullOutput:
   PASS  Tests\Feature\Payments\BankTransferConfirmationTest
  ✓ it admin can confirm bank transfer payment                           0.05s
  ✓ it cannot confirm payment for non-bank-transfer orders               0.02s
  ✓ it cannot confirm already confirmed payment                          0.03s
  ✓ it auto-cancel job cancels unpaid bank transfer orders after 7 days  0.02s
  ✓ it auto-cancel job does not cancel orders within 7 days              0.03s
  ✓ it auto-fulfills digital products on payment confirmation            0.02s
   PASS  Tests\Feature\Payments\MockPaymentProviderTest
  ✓ it charges credit card with success card number                      0.01s
  ✓ it declines credit card with decline card number                     0.01s
  ✓ it returns insufficient funds for that card number                   0.01s
  ✓ it charges PayPal successfully                                       0.01s
  ✓ it creates pending payment for bank transfer                         0.01s
  ✓ it generates mock reference ID                                       0.01s
   PASS  Tests\Feature\Payments\PaymentServiceTest
  ✓ it processes credit card payment and creates order as paid           0.02s
  ✓ it processes PayPal payment and creates order as paid                0.02s
  ✓ it processes bank transfer and creates order as pending              0.02s
  ✓ it resolves MockPaymentProvider from container                       0.01s
  ✓ it creates a payment record with correct method                      0.02s
   PASS  Tests\Feature\Products\CollectionTest
  ✓ it creates a collection with a unique handle                         0.01s
  ✓ it adds products to a collection                                     0.01s
  ✓ it removes products from a collection                                0.01s
  ✓ it reorders products in a collection                                 0.01s
  ✓ it transitions collection from draft to active                       0.01s
  ✓ it lists collections with product count                              0.01s
  ✓ it scopes collections to store                                       0.01s
   PASS  Tests\Feature\Products\InventoryTest
  ✓ it creates inventory with variant                                    0.01s
  ✓ it checks availability                                               0.01s
  ✓ it reserves inventory                                                0.01s
  ✓ it throws on insufficient inventory with deny policy                 0.01s
  ✓ it allows overselling with continue policy                           0.01s
  ✓ it releases reserved inventory                                       0.02s
  ✓ it commits inventory                                                 0.01s
  ✓ it restocks inventory                                                0.01s
   PASS  Tests\Feature\Products\MediaUploadTest
  ✓ it uploads an image                                                  0.01s
  ✓ it processes an uploaded image                                       0.01s
  ✓ it rejects non-image types for image upload                          0.01s
  ✓ it sets alt text on media                                            0.01s
  ✓ it reorders media positions                                          0.01s
  ✓ it deletes media                                                     0.01s
   PASS  Tests\Feature\Products\ProductCrudTest
  ✓ it lists products for a store                                        0.01s
  ✓ it creates a product with a default variant                          0.01s
  ✓ it generates a unique handle from the title                          0.01s
  ✓ it appends suffix on handle collision                                0.01s
  ✓ it updates a product                                                 0.01s
  ✓ it transitions from draft to active                                  0.01s
  ✓ it rejects draft to active without priced variant                    0.02s
  ✓ it transitions from active to archived                               0.01s
  ✓ it prevents active to draft transition                               0.01s
  ✓ it hard deletes a draft product                                      0.01s
  ✓ it prevents deletion of non-draft product                            0.01s
  ✓ it filters products by status                                        0.01s
  ✓ it searches products by title                                        0.01s
   PASS  Tests\Feature\Products\VariantTest
  ✓ it creates variants from option matrix                               0.02s
  ✓ it preserves existing variants when adding an option                 0.02s
  ✓ it archives orphaned variants with orders                            0.02s
  ✓ it deletes orphaned variants without orders                          0.02s
  ✓ it auto-creates a default variant for product without options        0.01s
  ✓ it validates SKU uniqueness within a store                           0.01s
  ✓ it allows duplicate SKU across stores                                0.01s
  ✓ it allows null SKUs                                                  0.02s
   PASS  Tests\Feature\Search\AutocompleteTest
  ✓ it returns suggestions matching prefix                               0.01s
  ✓ it limits results to configured count                                0.02s
  ✓ it returns empty for very short prefix                               0.01s
   PASS  Tests\Feature\Search\SearchTest
  ✓ it returns products matching search query                            0.01s
  ✓ it scopes search to current store                                    0.01s
  ✓ it returns empty for no matches                                      0.01s
  ✓ it logs search query for analytics                                   0.01s
  ✓ it paginates search results                                          0.02s
   PASS  Tests\Feature\Settings\PasswordUpdateTest
  ✓ password can be updated                                              0.06s
  ✓ correct password must be provided to update password                 0.05s
   PASS  Tests\Feature\Settings\ProfileUpdateTest
  ✓ profile page is displayed                                            0.05s
  ✓ profile information can be updated                                   0.06s
  ✓ email verification status is unchanged when email address is unchan… 0.04s
  ✓ user can delete their account                                        0.02s
  ✓ correct password must be provided to delete account                  0.03s
   PASS  Tests\Feature\Settings\TwoFactorAuthenticationTest
  ✓ two factor settings page can be rendered                             0.03s
  ✓ two factor settings page requires password confirmation when enable… 0.01s
  ✓ two factor settings page returns forbidden response when two factor… 0.01s
  ✓ two factor authentication disabled when confirmation abandoned betw… 0.02s
   PASS  Tests\Feature\Storefront\NavigationTest
  ✓ it builds navigation tree from menu items                            0.01s
  ✓ it resolves URLs for page type items                                 0.01s
  ✓ it resolves URLs for collection type items                           0.01s
  ✓ it resolves URLs for link type items                                 0.02s
   PASS  Tests\Feature\Storefront\PageTest
  ✓ it renders a published page                                          0.02s
  ✓ it returns 404 for draft page                                        0.01s
  ✓ it returns 404 for nonexistent page                                  0.01s