$ pnpm --filter @zoen/db test && pnpm site:e2e # cwd /Users/king/Desktop/Workspace/SRO/zoen # exit 0 > @zoen/db@0.1.0 test /Users/king/Desktop/Workspace/SRO/zoen/packages/db > node --experimental-strip-types --no-warnings=ExperimentalWarning --test "tests/*.test.mjs" TAP version 13 # Subtest: owner bootstrap ok 1 - owner bootstrap --- duration_ms: 654.7655 type: 'test' ... # Subtest: the game_demo seed is deterministic for its seed and changes with another seed ok 2 - the game_demo seed is deterministic for its seed and changes with another seed --- duration_ms: 126.769125 type: 'test' ... # Subtest: every demo record uses real game ids and valid shapes ok 3 - every demo record uses real game ids and valid shapes --- duration_ms: 27.214583 type: 'test' ... # Subtest: a signed publish webhook verifies; tampering, wrong secrets, old timestamps and bad tags are refused ok 4 - a signed publish webhook verifies; tampering, wrong secrets, old timestamps and bad tags are refused --- duration_ms: 1.15775 type: 'test' ... # Subtest: the outbox drains in batches, ≤ 50 tags per signed request, and stops when the site fails ok 5 - the outbox drains in batches, ≤ 50 tags per signed request, and stops when the site fails --- duration_ms: 0.77225 type: 'test' ... # Stopped services: [supabase_realtime_zoen supabase_imgproxy_zoen supabase_edge_runtime_zoen supabase_analytics_zoen supabase_vector_zoen supabase_pooler_zoen] # Subtest: anon key reaches api.health as anon ok 6 - anon key reaches api.health as anon --- duration_ms: 35.122959 type: 'test' ... # Subtest: site_server and job_worker JWTs run as those roles ok 7 - site_server and job_worker JWTs run as those roles --- duration_ms: 33.167041 type: 'test' ... # Subtest: a token signed with the wrong secret is rejected ok 8 - a token signed with the wrong secret is rejected --- duration_ms: 9.1105 type: 'test' ... # Subtest: site_server cannot read staff tables ok 9 - site_server cannot read staff tables --- duration_ms: 14.175792 type: 'test' ... # Subtest: pre-registration needs an e-mail, a platform and consent ok 10 - pre-registration needs an e-mail, a platform and consent --- duration_ms: 1.808625 type: 'test' ... # Subtest: ban reviews need the ban id; bug reports trim optional fields ok 11 - ban reviews need the ban id; bug reports trim optional fields --- duration_ms: 1.014292 type: 'test' ... # Subtest: site settings accept only https socials on known networks and a Steam url when enabled ok 12 - site settings accept only https socials on known networks and a Steam url when enabled --- duration_ms: 0.711542 type: 'test' ... # Subtest: credentials can never use the NEXT_PUBLIC_ prefix ok 13 - credentials can never use the NEXT_PUBLIC_ prefix --- duration_ms: 0.201875 type: 'test' ... # Subtest: config keys come from rulesets.json: one per multiplier, max = largest ruleset value, seed is fresh ok 14 - config keys come from rulesets.json: one per multiplier, max = largest ruleset value, seed is fresh --- duration_ms: 40.4705 type: 'test' ... # Subtest: public sign-up is closed ok 15 - public sign-up is closed --- duration_ms: 25.63725 type: 'test' ... # Subtest: every seeded role reaches AAL2 and sees exactly its own role ok 16 - every seeded role reaches AAL2 and sees exactly its own role --- duration_ms: 1476.166417 type: 'test' ... # Subtest: reset refuses while a non-test account exists ok 17 - reset refuses while a non-test account exists --- duration_ms: 471.425 type: 'test' ... 1..17 # tests 17 # suites 0 # pass 17 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 2450.337833 > zoen@0.1.0 site:e2e /Users/king/Desktop/Workspace/SRO/zoen > pnpm --filter @zoen/site e2e > @zoen/site@0.1.0 e2e /Users/king/Desktop/Workspace/SRO/zoen/apps/site > ZOEN_DEV_PAGES=1 next build && ZOEN_DEV_PAGES=1 playwright test ▲ Next.js 16.3.8 (Turbopack) - Environments: .env.local ✓ Running next.config.ts took 14ms - Cache Components enabled - Experiments (use with caution): · serverActions Creating an optimized production build ... ✓ Compiled successfully in 1045ms Running TypeScript ... Finished TypeScript in 2.2s ... Collecting page data using 7 workers ... Generating static pages using 7 workers (0/75) ... Generating static pages using 7 workers (18/75) Generating static pages using 7 workers (37/75) Generating static pages using 7 workers (56/75) ✓ Generating static pages using 7 workers (75/75) in 1237ms 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 ├ ○ /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 66 tests using 2 workers ✓ 2 [desktop] › tests/e2e/content.spec.ts:15:3 › content pages › @content every content page renders cleanly on every screen size (8.8s) ✓ 3 [desktop] › tests/e2e/content.spec.ts:29:3 › content pages › @publish a post and a FAQ published in the database appear after the signed refresh; search finds the FAQ (1.4s) ✓ 4 [desktop] › tests/e2e/game.spec.ts:5:3 › game pages › @game overview, builds index, a build page, world and how to play render cleanly (3.0s) ✓ 5 [desktop] › tests/e2e/game.spec.ts:18:3 › game pages › @game all 18 builds are listed; sealed skills show as Coming soon; share images exist (669ms) ✓ 6 [desktop] › tests/e2e/game.spec.ts:31:3 › game pages › @game the world lists every area with its creatures (374ms) ✓ 7 [desktop] › tests/e2e/home.spec.ts:11:3 › home › @home every section renders; the chain fires; paths switch; clips load on click (2.5s) ✓ 8 [desktop] › tests/e2e/home.spec.ts:39:3 › home › @signup the registry: double opt-in by e-mail, confirmed only by a button press (3.6s) - 9 [desktop] › tests/e2e/home.spec.ts:66:3 › home › @clip home screenshots and a 10 s scroll-through ✓ 10 [desktop] › tests/e2e/kit.spec.ts:6:1 › @kit sprites are bundled (fingerprinted) and utilities override kit layout (382ms) ✓ 11 [desktop] › tests/e2e/shell.spec.ts:9:1 › @shell header, footer and security headers; the site sets no cookies (359ms) ✓ 12 [desktop] › tests/e2e/shell.spec.ts:32:1 › @shell 404 page is themed and has a way home (651ms) ✓ 13 [desktop] › tests/e2e/shell.spec.ts:39:1 › @revalidate the publish webhook accepts only fresh, signed, unique requests (20ms) ✓ 14 [desktop] › tests/e2e/smoke.spec.ts:4:1 › @smoke home renders the game name without errors or sideways scroll (1.0s) ✓ 15 [desktop] › tests/e2e/smoke.spec.ts:15:1 › @smoke 360 px phones have no sideways scroll (348ms) ✓ 16 [desktop] › tests/e2e/support.spec.ts:11:3 › support center › @support a bug report with a screenshot is stored, and the stored image has no metadata (3.6s) ✓ 1 [desktop] › tests/e2e/directions.spec.ts:28:3 › @directions a: clean render, screenshots and a scroll clip (28.7s) ✓ 17 [desktop] › tests/e2e/support.spec.ts:40:3 › support center › @support a ban review needs the ban id, then gets a reference (3.3s) ✓ 19 [desktop] › tests/e2e/support.spec.ts:61:3 › support center › @analytics page views are counted without cookies; Do Not Track is respected (8.4s) ✓ 20 [desktop] › tests/e2e/support.spec.ts:87:3 › support center › @seo sitemap and robots (29ms) ✓ 21 [desktop] › tests/e2e/support.spec.ts:97:3 › support center › @support page is clean on every screen size (700ms) ✓ 22 [tablet] › tests/e2e/content.spec.ts:15:3 › content pages › @content every content page renders cleanly on every screen size (7.4s) - 23 [tablet] › tests/e2e/content.spec.ts:29:3 › content pages › @publish a post and a FAQ published in the database appear after the signed refresh; search finds the FAQ - 24 [tablet] › tests/e2e/directions.spec.ts:28:3 › @directions a: clean render, screenshots and a scroll clip - 25 [tablet] › tests/e2e/directions.spec.ts:28:3 › @directions b: clean render, screenshots and a scroll clip - 26 [tablet] › tests/e2e/directions.spec.ts:28:3 › @directions c: clean render, screenshots and a scroll clip ✓ 27 [tablet] › tests/e2e/game.spec.ts:5:3 › game pages › @game overview, builds index, a build page, world and how to play render cleanly (3.0s) - 28 [tablet] › tests/e2e/game.spec.ts:18:3 › game pages › @game all 18 builds are listed; sealed skills show as Coming soon; share images exist - 29 [tablet] › tests/e2e/game.spec.ts:31:3 › game pages › @game the world lists every area with its creatures ✓ 30 [tablet] › tests/e2e/home.spec.ts:11:3 › home › @home every section renders; the chain fires; paths switch; clips load on click (1.5s) - 31 [tablet] › tests/e2e/home.spec.ts:39:3 › home › @signup the registry: double opt-in by e-mail, confirmed only by a button press - 32 [tablet] › tests/e2e/home.spec.ts:66:3 › home › @clip home screenshots and a 10 s scroll-through ✓ 33 [tablet] › tests/e2e/kit.spec.ts:6:1 › @kit sprites are bundled (fingerprinted) and utilities override kit layout (353ms) ✓ 34 [tablet] › tests/e2e/shell.spec.ts:9:1 › @shell header, footer and security headers; the site sets no cookies (404ms) ✓ 35 [tablet] › tests/e2e/shell.spec.ts:32:1 › @shell 404 page is themed and has a way home (603ms) - 36 [tablet] › tests/e2e/shell.spec.ts:39:1 › @revalidate the publish webhook accepts only fresh, signed, unique requests ✓ 37 [tablet] › tests/e2e/smoke.spec.ts:4:1 › @smoke home renders the game name without errors or sideways scroll (1.2s) ✓ 38 [tablet] › tests/e2e/smoke.spec.ts:15:1 › @smoke 360 px phones have no sideways scroll (369ms) - 39 [tablet] › tests/e2e/support.spec.ts:11:3 › support center › @support a bug report with a screenshot is stored, and the stored image has no metadata - 40 [tablet] › tests/e2e/support.spec.ts:40:3 › support center › @support a ban review needs the ban id, then gets a reference - 41 [tablet] › tests/e2e/support.spec.ts:61:3 › support center › @analytics page views are counted without cookies; Do Not Track is respected - 42 [tablet] › tests/e2e/support.spec.ts:87:3 › support center › @seo sitemap and robots ✓ 18 [desktop] › tests/e2e/directions.spec.ts:28:3 › @directions b: clean render, screenshots and a scroll clip (28.4s) ✓ 43 [tablet] › tests/e2e/support.spec.ts:97:3 › support center › @support page is clean on every screen size (1.3s) ✓ 45 [mobile] › tests/e2e/content.spec.ts:15:3 › content pages › @content every content page renders cleanly on every screen size (8.2s) - 46 [mobile] › tests/e2e/content.spec.ts:29:3 › content pages › @publish a post and a FAQ published in the database appear after the signed refresh; search finds the FAQ - 47 [mobile] › tests/e2e/directions.spec.ts:28:3 › @directions a: clean render, screenshots and a scroll clip - 48 [mobile] › tests/e2e/directions.spec.ts:28:3 › @directions b: clean render, screenshots and a scroll clip - 49 [mobile] › tests/e2e/directions.spec.ts:28:3 › @directions c: clean render, screenshots and a scroll clip ✓ 50 [mobile] › tests/e2e/game.spec.ts:5:3 › game pages › @game overview, builds index, a build page, world and how to play render cleanly (2.9s) - 51 [mobile] › tests/e2e/game.spec.ts:18:3 › game pages › @game all 18 builds are listed; sealed skills show as Coming soon; share images exist - 52 [mobile] › tests/e2e/game.spec.ts:31:3 › game pages › @game the world lists every area with its creatures ✓ 53 [mobile] › tests/e2e/home.spec.ts:11:3 › home › @home every section renders; the chain fires; paths switch; clips load on click (1.6s) - 54 [mobile] › tests/e2e/home.spec.ts:39:3 › home › @signup the registry: double opt-in by e-mail, confirmed only by a button press - 55 [mobile] › tests/e2e/home.spec.ts:66:3 › home › @clip home screenshots and a 10 s scroll-through ✓ 56 [mobile] › tests/e2e/kit.spec.ts:6:1 › @kit sprites are bundled (fingerprinted) and utilities override kit layout (572ms) ✓ 57 [mobile] › tests/e2e/shell.spec.ts:9:1 › @shell header, footer and security headers; the site sets no cookies (997ms) ✓ 58 [mobile] › tests/e2e/shell.spec.ts:32:1 › @shell 404 page is themed and has a way home (830ms) - 59 [mobile] › tests/e2e/shell.spec.ts:39:1 › @revalidate the publish webhook accepts only fresh, signed, unique requests ✓ 60 [mobile] › tests/e2e/smoke.spec.ts:4:1 › @smoke home renders the game name without errors or sideways scroll (1.1s) ✓ 61 [mobile] › tests/e2e/smoke.spec.ts:15:1 › @smoke 360 px phones have no sideways scroll (613ms) - 62 [mobile] › tests/e2e/support.spec.ts:11:3 › support center › @support a bug report with a screenshot is stored, and the stored image has no metadata - 63 [mobile] › tests/e2e/support.spec.ts:40:3 › support center › @support a ban review needs the ban id, then gets a reference - 64 [mobile] › tests/e2e/support.spec.ts:61:3 › support center › @analytics page views are counted without cookies; Do Not Track is respected - 65 [mobile] › tests/e2e/support.spec.ts:87:3 › support center › @seo sitemap and robots ✓ 66 [mobile] › tests/e2e/support.spec.ts:97:3 › support center › @support page is clean on every screen size (1.1s) ✓ 44 [desktop] › tests/e2e/directions.spec.ts:28:3 › @directions c: clean render, screenshots and a scroll clip (29.2s) 27 skipped 39 passed (1.5m)