$ cd apps/site && node ../../tools/web/sync-ui-assets.mjs && node scripts/build-media.mjs && ZOEN_DEV_PAGES=1 pnpm exec next build && ZOEN_DEV_PAGES=1 pnpm exec playwright test tests/e2e/home.spec.ts tests/e2e/chronicle.spec.ts tests/e2e/shell.spec.ts --grep-invert "@signup|@clip|@revalidate" # cwd /Users/king/Desktop/Workspace/SRO/zoen/.claude/worktrees/objective-austin-925a9c # exit 0 ✔ sync-ui-assets: 139 sprites + brand ready (0 copied) ✔ build-media: 72 images, 126 icons (0 built, 198 cached), 5 previz clips ▲ Next.js 16.3.8 (Turbopack) - Environments: .env.local ✓ Running next.config.ts took 15ms - Cache Components enabled - Experiments (use with caution): · serverActions Creating an optimized production build ... ✓ Compiled successfully in 263ms Running TypeScript ... Finished TypeScript in 1764ms ... Collecting page data using 7 workers ... Generating static pages using 7 workers (0/76) ... Generating static pages using 7 workers (19/76) Generating static pages using 7 workers (38/76) Generating static pages using 7 workers (57/76) ✓ Generating static pages using 7 workers (76/76) in 3.6s Finalizing page optimization ... Route (app) Revalidate Expire ┌ ○ / 2m 15m ├ ○ /_not-found 2m 15m ├ ○ /alpha 2m 15m ├ ƒ /api/e ├ ƒ /api/revalidate ├ ○ /apple-icon.png ├ ○ /community 2m 15m ├ ○ /cookies 2m 15m ├ ○ /dev/directions 2m 15m ├ ○ /dev/directions/a 2m 15m ├ ○ /dev/directions/b 2m 15m ├ ○ /dev/directions/c 2m 15m ├ ○ /dev/kit 2m 15m ├ ○ /download 2m 15m ├ ○ /faq 2m 15m ├ ○ /game 2m 15m ├ ○ /game/builds 2m 15m ├ /game/builds/[slug] 2m 15m │ ├ ◐ /game/builds/[slug] 2m 15m │ ├ ○ /game/builds/ravager 2m 15m │ ├ ○ /game/builds/warblade 2m 15m │ └ ◐ [+16 more paths] ├ ƒ /game/builds/[slug]/opengraph-image ├ ○ /game/world 2m 15m ├ ○ /how-to-play 2m 15m ├ ○ /icon.png ├ ○ /maintenance 2m 15m ├ ○ /manifest.webmanifest ├ ○ /media 2m 15m ├ ○ /news 2m 15m ├ /news/[slug] 2m 15m │ └ ◐ /news/[slug] 2m 15m ├ ƒ /opengraph-image ├ ○ /patch-notes 2m 15m ├ ○ /play 2m 15m ├ ◐ /preregister/confirm 2m 15m ├ ○ /privacy 2m 15m ├ ○ /roadmap 2m 15m ├ ○ /robots.txt ├ ○ /sitemap.xml 2m 15m ├ ◐ /status 2m 15m ├ ○ /support 2m 15m ├ ○ /terms 2m 15m └ ◐ /unsubscribe 2m 15m ƒ Proxy (Middleware) ○ (Static) prerendered as static content ◐ (Partial Prerender) prerendered as static HTML with dynamic server-streamed content ƒ (Dynamic) server-rendered on demand Running 42 tests using 2 workers ✓ 2 [desktop] › tests/e2e/chronicle.spec.ts:9:3 › chronicle › @fx the hero art is a real image; the WebGL layer joins it only on wide screens with WebGL 2 (5.3s) ✓ 3 [desktop] › tests/e2e/chronicle.spec.ts:23:3 › chronicle › @fx reduced motion gets the static site: no WebGL layers start (6.0s) ✓ 4 [desktop] › tests/e2e/chronicle.spec.ts:36:3 › chronicle › @stage choosing a path and a build changes the stage; the build link follows (8.1s) ✓ 1 [desktop] › tests/e2e/home.spec.ts:11:3 › home › @home every section renders; the chain fires; paths switch; clips load on click (20.0s) ✓ 6 [desktop] › tests/e2e/shell.spec.ts:9:1 › @shell header, footer and security headers; the site sets no cookies (3.7s) ✓ 5 [desktop] › tests/e2e/chronicle.spec.ts:49:3 › chronicle › @world the basin card follows the chosen area; wide screens with WebGL 2 get the 3D diorama (5.8s) ✓ 7 [desktop] › tests/e2e/shell.spec.ts:32:1 › @shell 404 page is themed and has a way home (3.2s) ✓ 8 [desktop] › tests/e2e/chronicle.spec.ts:66:3 › chronicle › @loot rolling a drop changes the item or its rarity; the popup names both (2.4s) ✓ 9 [desktop] › tests/e2e/chronicle.spec.ts:79:3 › chronicle › @cards companions, mounts, bosses and build skills open the wiki cards (1.9s) ✓ 11 [desktop] › tests/e2e/chronicle.spec.ts:99:3 › chronicle › @shelf the field guide pages with its buttons, which disable at the ends (2.0s) ✓ 12 [desktop] › tests/e2e/chronicle.spec.ts:109:3 › chronicle › @media the gallery opens a viewer that steps with the arrow keys and closes with Escape (2.2s) ✓ 10 [tablet] › tests/e2e/chronicle.spec.ts:9:3 › chronicle › @fx the hero art is a real image; the WebGL layer joins it only on wide screens with WebGL 2 (2.9s) - 14 [tablet] › tests/e2e/chronicle.spec.ts:23:3 › chronicle › @fx reduced motion gets the static site: no WebGL layers start ✓ 13 [desktop] › tests/e2e/chronicle.spec.ts:124:3 › chronicle › @rail the scroll rail replaces the native bar on every screen and marks the chapter on screen (3.7s) ✓ 15 [tablet] › tests/e2e/chronicle.spec.ts:36:3 › chronicle › @stage choosing a path and a build changes the stage; the build link follows (5.1s) ✓ 17 [tablet] › tests/e2e/chronicle.spec.ts:49:3 › chronicle › @world the basin card follows the chosen area; wide screens with WebGL 2 get the 3D diorama (3.0s) ✓ 16 [desktop] › tests/e2e/chronicle.spec.ts:138:3 › chronicle › @seo the home page has its own share card (5.1s) ✓ 18 [tablet] › tests/e2e/chronicle.spec.ts:66:3 › chronicle › @loot rolling a drop changes the item or its rarity; the popup names both (2.5s) ✓ 20 [tablet] › tests/e2e/chronicle.spec.ts:79:3 › chronicle › @cards companions, mounts, bosses and build skills open the wiki cards (2.5s) ✓ 21 [tablet] › tests/e2e/chronicle.spec.ts:99:3 › chronicle › @shelf the field guide pages with its buttons, which disable at the ends (4.5s) ✓ 22 [tablet] › tests/e2e/chronicle.spec.ts:109:3 › chronicle › @media the gallery opens a viewer that steps with the arrow keys and closes with Escape (3.3s) ✓ 23 [tablet] › tests/e2e/chronicle.spec.ts:124:3 › chronicle › @rail the scroll rail replaces the native bar on every screen and marks the chapter on screen (3.5s) - 24 [tablet] › tests/e2e/chronicle.spec.ts:138:3 › chronicle › @seo the home page has its own share card ✓ 19 [desktop] › tests/e2e/chronicle.spec.ts:147:3 › chronicle › @pages the new chronicle pages are clean on every screen size (19.0s) ✓ 25 [tablet] › tests/e2e/chronicle.spec.ts:147:3 › chronicle › @pages the new chronicle pages are clean on every screen size (11.6s) ✓ 27 [tablet] › tests/e2e/shell.spec.ts:9:1 › @shell header, footer and security headers; the site sets no cookies (4.8s) ✓ 26 [tablet] › tests/e2e/home.spec.ts:11:3 › home › @home every section renders; the chain fires; paths switch; clips load on click (14.3s) ✓ 28 [tablet] › tests/e2e/shell.spec.ts:32:1 › @shell 404 page is themed and has a way home (4.2s) ✓ 29 [mobile] › tests/e2e/chronicle.spec.ts:9:3 › chronicle › @fx the hero art is a real image; the WebGL layer joins it only on wide screens with WebGL 2 (1.8s) - 31 [mobile] › tests/e2e/chronicle.spec.ts:23:3 › chronicle › @fx reduced motion gets the static site: no WebGL layers start ✓ 32 [mobile] › tests/e2e/chronicle.spec.ts:36:3 › chronicle › @stage choosing a path and a build changes the stage; the build link follows (5.2s) ✓ 33 [mobile] › tests/e2e/chronicle.spec.ts:49:3 › chronicle › @world the basin card follows the chosen area; wide screens with WebGL 2 get the 3D diorama (2.6s) ✓ 30 [mobile] › tests/e2e/home.spec.ts:11:3 › home › @home every section renders; the chain fires; paths switch; clips load on click (11.3s) ✓ 34 [mobile] › tests/e2e/chronicle.spec.ts:66:3 › chronicle › @loot rolling a drop changes the item or its rarity; the popup names both (1.6s) ✓ 35 [mobile] › tests/e2e/shell.spec.ts:9:1 › @shell header, footer and security headers; the site sets no cookies (2.6s) ✓ 36 [mobile] › tests/e2e/chronicle.spec.ts:79:3 › chronicle › @cards companions, mounts, bosses and build skills open the wiki cards (2.9s) ✓ 37 [mobile] › tests/e2e/shell.spec.ts:32:1 › @shell 404 page is themed and has a way home (1.9s) ✓ 38 [mobile] › tests/e2e/chronicle.spec.ts:99:3 › chronicle › @shelf the field guide pages with its buttons, which disable at the ends (1.5s) ✓ 39 [mobile] › tests/e2e/chronicle.spec.ts:109:3 › chronicle › @media the gallery opens a viewer that steps with the arrow keys and closes with Escape (1.3s) ✓ 40 [mobile] › tests/e2e/chronicle.spec.ts:124:3 › chronicle › @rail the scroll rail replaces the native bar on every screen and marks the chapter on screen (2.4s) - 41 [mobile] › tests/e2e/chronicle.spec.ts:138:3 › chronicle › @seo the home page has its own share card ✓ 42 [mobile] › tests/e2e/chronicle.spec.ts:147:3 › chronicle › @pages the new chronicle pages are clean on every screen size (4.6s) 4 skipped 38 passed (1.8m)