{
  "checker": {
    "details": {
      "argv": [
        "<host-path>",
        "--html",
        "<h1>Craft smoke test</h1>",
        "--title",
        "SmokeTest",
        "--quit-on-close"
      ],
      "kind": "cli",
      "needs_browser": false,
      "needs_credentials": false,
      "returncode": 0,
      "scope": "product operation",
      "stderr": "",
      "stdout": "\n\u26a1 Loading HTML content in native window\n   Title: SmokeTest\n   Size: 1200x800\n",
      "working": true
    },
    "status": "PASS"
  },
  "deviations": [
    "`pantry install` (README 'Build from Source' / docs/GETTING_STARTED.md): no pantry CLI available. pantry.sh/install.sh returns an HTML page, pantry.dev/install 404s, npm/bun package 'pantry' is a library with no bin. Substituted zig from PyPI ziglang==0.17.0 (release, not the pinned dev build 0.17.0-dev.1963_e00c6c439; ziglang.org dev tarball 404). Used CRAFT_ZIG and CRAFT_ALLOW_UNPINNED_ZIG=1.",
    "`bun run build:core` failed: 'failed to open ../../../../Libraries/zig-js: FileNotFound' (packages/zig/build.zig.zon declares zig_js as a sibling path dependency outside the repo, not present in the guest). Built with `zig build -Doptimize=ReleaseSafe -Djs-runtime=false` instead, which disables Craft's JS runtime (zig-js) option. Build output: packages/zig/zig-out/bin/craft.",
    "`bun add -g pantry` initially failed building node-expat (missing make/libexpat); fixed by installing build-essential and libexpat1-dev.",
    "README CLI example `craft http://localhost:3000` not used because it needs a server on localhost:3000; probe uses the product's --html flag (from `craft --help`) instead.",
    "Set DISPLAY via Xvfb (:99) for manual testing; stopped it afterward. Checker uses xvfb-run automatically."
  ],
  "main_blocker": null,
  "operation": "Build craft from source (packages/zig, ReleaseSafe) and launch a native window rendering HTML via the craft CLI (`craft --html ... --title SmokeTest`); probe waits for 'Loading HTML content in native window' and the process is stopped by the checker.",
  "operation_scope": "Launch-and-render check only (window opens, page loads, process stopped by checker). Not exercised: README's `craft http://localhost:3000` URL flow (needs a server), TypeScript SDK, mobile, or interactive behavior. Runs under xvfb-run (no DISPLAY in checker env). Pantry-managed Zig toolchain was not available; built with unpinned Zig 0.17.0 release.",
  "outcome": "working",
  "steps": [
    "apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev git unzip curl xvfb build-essential libexpat1-dev (README: Platform-Specific Dependencies)",
    "curl -fsSL https://bun.sh/install | bash (bun 1.4.3)",
    "bun install (repo root)",
    "bun add -g pantry (npm package pantry@0.7.6; this is an unrelated HTTP cache library, not the Pantry CLI)",
    "pip install ziglang==0.17.0 into <host-path>; wrapper <host-path>",
    "CRAFT_ZIG=<host-path> CRAFT_ALLOW_UNPINNED_ZIG=1 bun run build:core -> failed (see deviations)",
    "cd packages/zig && zig build -Doptimize=ReleaseSafe -Djs-runtime=false -> success, produced packages/zig/zig-out/bin/craft",
    "craft --help (verified flags)",
    "craft --html '<h1>Craft smoke test</h1>' --title SmokeTest --quit-on-close under Xvfb -> window launched, printed expected text",
    "<env-var>=<host-path> python3 -I <host-path> --validate -> valid; --probe -> PASS working"
  ],
  "stuck_step": null,
  "suggested_fix": null
}
