Verify WorldMonitor
WorldMonitor's primary surface is a browser dashboard: a Vite/TypeScript SPA served at /dashboard, with a map, a panel grid, a settings overlay, and a command palette. This skill launches one isolated instance of it, drives a feature the way a user does, and leaves evidence behind.
Other surfaces exist and are out of scope here: the Vercel Edge API (api/), the Tauri desktop app + Node sidecar (src-tauri/), Railway seeders (scripts/), the embed widget (embed.html), and the blog (blog-site/). Verify those with their own gates (npm run test:sidecar, npm run test:data, npm run typecheck:api).
Run everything from the repo root of the worktree under test.
Launch
One long-lived dev server per run; every drive gets a fresh browser context against it.
.agents/skills/verify-worldmonitor/scripts/wm-verify.sh launch
It picks the first free port in 4480-4487, starts VITE_E2E=1 VITE_VARIANT=full npm run dev, waits until /tests/map-harness.html answers 200 (the same readiness probe playwright.config.ts uses — it forces a real module transform, so 200 means "can serve the app", not just "socket open"), and writes `.claude/veri…