concept-collection / mesh-studio
mesh-studio / .claude / skills / verify / SKILL.md
1.6 KBPreviewCodeBlameHistoryRaw

name: verify description: Build, launch, and drive mesh-studio headlessly to verify a change at the browser surface (WebGL renders fine under headless Chrome + SwiftShader).#

Verifying mesh-studio#

npm run build only gates TS + bundling. The real surface is the browser (OCCT WASM + three.js WebGL), and it works headlessly:

  1. npm run dev -- --port 5199 --strictPort (background).

  2. Drive with playwright-core (install it in the scratchpad, not the repo) using system Chrome — WebGL needs the SwiftShader flags:

    chromium.launch({
      executablePath: '/usr/bin/google-chrome',
      headless: true,
      args: ['--use-angle=swiftshader', '--enable-unsafe-swiftshader'],
    })
    
  3. Cheapest end-to-end flow (no network): click the "Box" primitive button. That triggers the ~50 MB OCCT WASM load (local, a few seconds) — wait for .view-overlay to appear and .busy to disappear, then screenshot. "Random CAD model" additionally exercises the network import path.

Gotchas#