$ pnpm --filter @zoen/wiki typecheck && test -f apps/wiki/out/tech/web-platform/index.html && test -f apps/wiki/out/staff-console/index.html && grep -q 'data-testid="web-apps"' apps/wiki/out/ledger/index.html && pnpm --filter @zoen/wiki exec playwright test tests/site.spec.ts tests/mobile.spec.ts tests/components.spec.ts --reporter=line # cwd /Users/king/Desktop/Workspace/SRO/zoen # exit 0 > @zoen/wiki@0.1.0 typecheck /Users/king/Desktop/Workspace/SRO/zoen/apps/wiki > tsc --noEmit Running 210 tests using 1 worker [1/210] [desktop] › tests/components.spec.ts:9:1 › components page shows all 11 popup header families [2/210] [desktop] › tests/components.spec.ts:17:1 › button variants are all artwork, disabled uses the disabled sprite [3/210] [desktop] › tests/components.spec.ts:26:1 › dropdown: glass menu, keyboard selection, closes on pick [4/210] [desktop] › tests/components.spec.ts:41:1 › modal opens over a scrim and closes [5/210] [desktop] › tests/components.spec.ts:50:1 › window headers: plain windows keep the rail (ring only with a close button); custom windows carry the crest [6/210] [desktop] › tests/components.spec.ts:68:1 › popups: glass behind the header, ornamental dividers, placeholder art, gems fill their sockets [7/210] [desktop] › tests/components.spec.ts:80:1 › header menu button collapses the sidebar on desktop and opens the drawer on mobile [8/210] [desktop] › tests/components.spec.ts:95:1 › controls are code-drawn (no forced sprites); dropdown list = glass + corner art only; toasts have tones [9/210] [desktop] › tests/components.spec.ts:116:1 › round 5 kit: gold plaque button, one-row tabs with gold underline + badges, single-rim fields, gem slider, crown tag [10/210] [desktop] › tests/components.spec.ts:158:1 › no native select anywhere on pages that filter or pick [11/210] [desktop] › tests/components.spec.ts:166:1 › Zoe coin: the sun coin shows on the premium button and in the inventory purse [12/210] [desktop] › tests/components.spec.ts:175:1 › round 7: gold button has its own end caps, tabs sit on the content, close hover is the same button, rail is one material [13/210] [desktop] › tests/mobile.spec.ts:11:1 › phone type scale is compact and no page scrolls sideways [14/210] [desktop] › tests/mobile.spec.ts:27:1 › phone tabs stay on one swipeable row; the last tab is reachable [15/210] [desktop] › tests/mobile.spec.ts:40:1 › phone topbar: wide search, drawer with 40 px tap targets [16/210] [desktop] › tests/mobile.spec.ts:57:1 › header and sidebar stay fixed while the page scrolls [17/210] [desktop] › tests/site.spec.ts:26:1 › static export has every expected route [18/210] [desktop] › tests/site.spec.ts:32:1 › no broken internal links or missing assets in the built HTML [19/210] [desktop] › tests/site.spec.ts:48:3 › renders / [20/210] [desktop] › tests/site.spec.ts:48:3 › renders /404/ [21/210] [desktop] › tests/site.spec.ts:48:3 › renders /_not-found/ [22/210] [desktop] › tests/site.spec.ts:48:3 › renders /alpha/ [23/210] [desktop] › tests/site.spec.ts:48:3 › renders /art-requests/ [24/210] [desktop] › tests/site.spec.ts:48:3 › renders /audio-requests/ [25/210] [desktop] › tests/site.spec.ts:48:3 › renders /automation/ [26/210] [desktop] › tests/site.spec.ts:48:3 › renders /bestiary/ [27/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/ [28/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/ashwarden/ [29/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/boltwright/ [30/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/earthshaker/ [31/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/frostweaver/ [32/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/lanternbinder/ [33/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/nightblade/ [34/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/oathkeeper/ [35/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/pyromancer/ [36/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/ravager/ [37/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/ringdancer/ [38/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/songweaver/ [39/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/stormcaller/ [40/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/talon/ [41/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/twinblade/ [42/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/vanguard/ [43/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/warblade/ [44/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/windarcher/ [45/210] [desktop] › tests/site.spec.ts:48:3 › renders /builds/windmender/ [46/210] [desktop] › tests/site.spec.ts:48:3 › renders /combat/ [47/210] [desktop] › tests/site.spec.ts:48:3 › renders /components/ [48/210] [desktop] › tests/site.spec.ts:48:3 › renders /data/ [49/210] [desktop] › tests/site.spec.ts:48:3 › renders /decisions/ [50/210] [desktop] › tests/site.spec.ts:48:3 › renders /docs-index/ [51/210] [desktop] › tests/site.spec.ts:48:3 › renders /economy/ [52/210] [desktop] › tests/site.spec.ts:48:3 › renders /glossary/ [53/210] [desktop] › tests/site.spec.ts:48:3 › renders /hud/ [54/210] [desktop] › tests/site.spec.ts:48:3 › renders /items/ [55/210] [desktop] › tests/site.spec.ts:48:3 › renders /kickoff/ [56/210] [desktop] › tests/site.spec.ts:48:3 › renders /ledger/ [57/210] [desktop] › tests/site.spec.ts:48:3 › renders /leveling/ [58/210] [desktop] › tests/site.spec.ts:48:3 › renders /licenses/ [59/210] [desktop] › tests/site.spec.ts:48:3 › renders /online/ [60/210] [desktop] › tests/site.spec.ts:48:3 › renders /process/ [61/210] [desktop] › tests/site.spec.ts:48:3 › renders /process/task-template/ [62/210] [desktop] › tests/site.spec.ts:48:3 › renders /process/testing/ [63/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/animation/ [64/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/art-pipeline/ [65/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/audio/ [66/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/characters/ [67/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/environment/ [68/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/gm-room/ [69/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/local-sfx/ [70/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/npcs-monsters/ [71/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/skill-gate/ [72/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/tripo/ [73/210] [desktop] › tests/site.spec.ts:48:3 › renders /production/vfx/ [74/210] [desktop] › tests/site.spec.ts:48:3 › renders /public-site/ [75/210] [desktop] › tests/site.spec.ts:48:3 › renders /quests/ [76/210] [desktop] › tests/site.spec.ts:48:3 › renders /roadmap/ [77/210] [desktop] › tests/site.spec.ts:48:3 › renders /setup/ [78/210] [desktop] › tests/site.spec.ts:48:3 › renders /showcase/ [79/210] [desktop] › tests/site.spec.ts:48:3 › renders /skills/ [80/210] [desktop] › tests/site.spec.ts:48:3 › renders /skills/atlas/ [81/210] [desktop] › tests/site.spec.ts:48:3 › renders /skills/codex/ [82/210] [desktop] › tests/site.spec.ts:48:3 › renders /staff-console/ [83/210] [desktop] › tests/site.spec.ts:48:3 › renders /tech/accounts/ [84/210] [desktop] › tests/site.spec.ts:48:3 › renders /tech/architecture/ [85/210] [desktop] › tests/site.spec.ts:48:3 › renders /tech/engine/ [86/210] [desktop] › tests/site.spec.ts:48:3 › renders /tech/netcode/ [87/210] [desktop] › tests/site.spec.ts:48:3 › renders /tech/patching/ [88/210] [desktop] › tests/site.spec.ts:48:3 › renders /tech/performance/ [89/210] [desktop] › tests/site.spec.ts:48:3 › renders /tech/security/ [90/210] [desktop] › tests/site.spec.ts:48:3 › renders /tech/unity/ [91/210] [desktop] › tests/site.spec.ts:48:3 › renders /tech/web-platform/ [92/210] [desktop] › tests/site.spec.ts:48:3 › renders /vision/ [93/210] [desktop] › tests/site.spec.ts:48:3 › renders /windows/ [94/210] [desktop] › tests/site.spec.ts:48:3 › renders /world/ [95/210] [desktop] › tests/site.spec.ts:66:1 › skill codex shows a styled description for every skill [96/210] [desktop] › tests/site.spec.ts:77:1 › click-to-travel preview: route + auto-mount, travel, unreachable point [97/210] [desktop] › tests/site.spec.ts:101:1 › glossary: every term links to an existing page and section [98/210] [desktop] › tests/site.spec.ts:114:1 › glossary: search, click-through to the screen, boss popup [99/210] [desktop] › tests/site.spec.ts:134:1 › bestiary art is shown whole (contain, no frame, no crop) [100/210] [desktop] › tests/site.spec.ts:143:1 › team position events: comparison + one tab per proposal with positions; version in the sidebar [101/210] [desktop] › tests/site.spec.ts:152:1 › cosmetic side quests: costume, weapon-effect and aura questlines with boss-only steps [102/210] [desktop] › tests/site.spec.ts:162:1 › GM room: 18 preset builds with a 45-point Atlas link and hoverable gear; item forge previews a custom item [103/210] [desktop] › tests/site.spec.ts:184:1 › logos are sharp: the browser picks a cut close to the rendered size (no upscaling, little downscaling) [104/210] [desktop] › tests/site.spec.ts:199:1 › mounts are showcased with their artwork (no hover needed) and companions too [105/210] [desktop] › tests/site.spec.ts:212:1 › items: orbs/gems economy pages mention random drop quantities and the Caravan Market [106/210] [mobile] › tests/components.spec.ts:9:1 › components page shows all 11 popup header families [107/210] [mobile] › tests/components.spec.ts:17:1 › button variants are all artwork, disabled uses the disabled sprite [108/210] [mobile] › tests/components.spec.ts:26:1 › dropdown: glass menu, keyboard selection, closes on pick [109/210] [mobile] › tests/components.spec.ts:41:1 › modal opens over a scrim and closes [110/210] [mobile] › tests/components.spec.ts:50:1 › window headers: plain windows keep the rail (ring only with a close button); custom windows carry the crest [111/210] [mobile] › tests/components.spec.ts:68:1 › popups: glass behind the header, ornamental dividers, placeholder art, gems fill their sockets [112/210] [mobile] › tests/components.spec.ts:80:1 › header menu button collapses the sidebar on desktop and opens the drawer on mobile [113/210] [mobile] › tests/components.spec.ts:95:1 › controls are code-drawn (no forced sprites); dropdown list = glass + corner art only; toasts have tones [114/210] [mobile] › tests/components.spec.ts:116:1 › round 5 kit: gold plaque button, one-row tabs with gold underline + badges, single-rim fields, gem slider, crown tag [115/210] [mobile] › tests/components.spec.ts:158:1 › no native select anywhere on pages that filter or pick [116/210] [mobile] › tests/components.spec.ts:166:1 › Zoe coin: the sun coin shows on the premium button and in the inventory purse [117/210] [mobile] › tests/components.spec.ts:175:1 › round 7: gold button has its own end caps, tabs sit on the content, close hover is the same button, rail is one material [118/210] [mobile] › tests/mobile.spec.ts:11:1 › phone type scale is compact and no page scrolls sideways [119/210] [mobile] › tests/mobile.spec.ts:27:1 › phone tabs stay on one swipeable row; the last tab is reachable [120/210] [mobile] › tests/mobile.spec.ts:40:1 › phone topbar: wide search, drawer with 40 px tap targets [121/210] [mobile] › tests/mobile.spec.ts:57:1 › header and sidebar stay fixed while the page scrolls [122/210] [mobile] › tests/site.spec.ts:26:1 › static export has every expected route [123/210] [mobile] › tests/site.spec.ts:32:1 › no broken internal links or missing assets in the built HTML [124/210] [mobile] › tests/site.spec.ts:48:3 › renders / [125/210] [mobile] › tests/site.spec.ts:48:3 › renders /404/ [126/210] [mobile] › tests/site.spec.ts:48:3 › renders /_not-found/ [127/210] [mobile] › tests/site.spec.ts:48:3 › renders /alpha/ [128/210] [mobile] › tests/site.spec.ts:48:3 › renders /art-requests/ [129/210] [mobile] › tests/site.spec.ts:48:3 › renders /audio-requests/ [130/210] [mobile] › tests/site.spec.ts:48:3 › renders /automation/ [131/210] [mobile] › tests/site.spec.ts:48:3 › renders /bestiary/ [132/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/ [133/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/ashwarden/ [134/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/boltwright/ [135/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/earthshaker/ [136/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/frostweaver/ [137/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/lanternbinder/ [138/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/nightblade/ [139/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/oathkeeper/ [140/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/pyromancer/ [141/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/ravager/ [142/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/ringdancer/ [143/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/songweaver/ [144/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/stormcaller/ [145/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/talon/ [146/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/twinblade/ [147/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/vanguard/ [148/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/warblade/ [149/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/windarcher/ [150/210] [mobile] › tests/site.spec.ts:48:3 › renders /builds/windmender/ [151/210] [mobile] › tests/site.spec.ts:48:3 › renders /combat/ [152/210] [mobile] › tests/site.spec.ts:48:3 › renders /components/ [153/210] [mobile] › tests/site.spec.ts:48:3 › renders /data/ [154/210] [mobile] › tests/site.spec.ts:48:3 › renders /decisions/ [155/210] [mobile] › tests/site.spec.ts:48:3 › renders /docs-index/ [156/210] [mobile] › tests/site.spec.ts:48:3 › renders /economy/ [157/210] [mobile] › tests/site.spec.ts:48:3 › renders /glossary/ [158/210] [mobile] › tests/site.spec.ts:48:3 › renders /hud/ [159/210] [mobile] › tests/site.spec.ts:48:3 › renders /items/ [160/210] [mobile] › tests/site.spec.ts:48:3 › renders /kickoff/ [161/210] [mobile] › tests/site.spec.ts:48:3 › renders /ledger/ [162/210] [mobile] › tests/site.spec.ts:48:3 › renders /leveling/ [163/210] [mobile] › tests/site.spec.ts:48:3 › renders /licenses/ [164/210] [mobile] › tests/site.spec.ts:48:3 › renders /online/ [165/210] [mobile] › tests/site.spec.ts:48:3 › renders /process/ [166/210] [mobile] › tests/site.spec.ts:48:3 › renders /process/task-template/ [167/210] [mobile] › tests/site.spec.ts:48:3 › renders /process/testing/ [168/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/animation/ [169/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/art-pipeline/ [170/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/audio/ [171/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/characters/ [172/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/environment/ [173/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/gm-room/ [174/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/local-sfx/ [175/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/npcs-monsters/ [176/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/skill-gate/ [177/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/tripo/ [178/210] [mobile] › tests/site.spec.ts:48:3 › renders /production/vfx/ [179/210] [mobile] › tests/site.spec.ts:48:3 › renders /public-site/ [180/210] [mobile] › tests/site.spec.ts:48:3 › renders /quests/ [181/210] [mobile] › tests/site.spec.ts:48:3 › renders /roadmap/ [182/210] [mobile] › tests/site.spec.ts:48:3 › renders /setup/ [183/210] [mobile] › tests/site.spec.ts:48:3 › renders /showcase/ [184/210] [mobile] › tests/site.spec.ts:48:3 › renders /skills/ [185/210] [mobile] › tests/site.spec.ts:48:3 › renders /skills/atlas/ [186/210] [mobile] › tests/site.spec.ts:48:3 › renders /skills/codex/ [187/210] [mobile] › tests/site.spec.ts:48:3 › renders /staff-console/ [188/210] [mobile] › tests/site.spec.ts:48:3 › renders /tech/accounts/ [189/210] [mobile] › tests/site.spec.ts:48:3 › renders /tech/architecture/ [190/210] [mobile] › tests/site.spec.ts:48:3 › renders /tech/engine/ [191/210] [mobile] › tests/site.spec.ts:48:3 › renders /tech/netcode/ [192/210] [mobile] › tests/site.spec.ts:48:3 › renders /tech/patching/ [193/210] [mobile] › tests/site.spec.ts:48:3 › renders /tech/performance/ [194/210] [mobile] › tests/site.spec.ts:48:3 › renders /tech/security/ [195/210] [mobile] › tests/site.spec.ts:48:3 › renders /tech/unity/ [196/210] [mobile] › tests/site.spec.ts:48:3 › renders /tech/web-platform/ [197/210] [mobile] › tests/site.spec.ts:48:3 › renders /vision/ [198/210] [mobile] › tests/site.spec.ts:48:3 › renders /windows/ [199/210] [mobile] › tests/site.spec.ts:48:3 › renders /world/ [200/210] [mobile] › tests/site.spec.ts:66:1 › skill codex shows a styled description for every skill [201/210] [mobile] › tests/site.spec.ts:77:1 › click-to-travel preview: route + auto-mount, travel, unreachable point [202/210] [mobile] › tests/site.spec.ts:101:1 › glossary: every term links to an existing page and section [203/210] [mobile] › tests/site.spec.ts:114:1 › glossary: search, click-through to the screen, boss popup [204/210] [mobile] › tests/site.spec.ts:134:1 › bestiary art is shown whole (contain, no frame, no crop) [205/210] [mobile] › tests/site.spec.ts:143:1 › team position events: comparison + one tab per proposal with positions; version in the sidebar [206/210] [mobile] › tests/site.spec.ts:152:1 › cosmetic side quests: costume, weapon-effect and aura questlines with boss-only steps [207/210] [mobile] › tests/site.spec.ts:162:1 › GM room: 18 preset builds with a 45-point Atlas link and hoverable gear; item forge previews a custom item [208/210] [mobile] › tests/site.spec.ts:184:1 › logos are sharp: the browser picks a cut close to the rendered size (no upscaling, little downscaling) [209/210] [mobile] › tests/site.spec.ts:199:1 › mounts are showcased with their artwork (no hover needed) and companions too [210/210] [mobile] › tests/site.spec.ts:212:1 › items: orbs/gems economy pages mention random drop quantities and the Caravan Market 3 skipped 207 passed (1.8m)