Desktop app quits entirely when the Browser pane loads a page with a production Cloudflare Turnstile widget

Status Closed — duplicate
Reported on v2.1.219
Maintainer reply None cached
Activity 1 comment · opened Jul 25, 2026 · closed Aug 20, 2026

Summary

Opening a page that renders a production Cloudflare Turnstile widget in the Browser pane closes the entire desktop app — not just the pane. No crash dialog, no crash report is written. It reproduces both from the toolbar globe icon and from a link card's "Open" button.

Environment

  • Claude desktop (Microsoft Store / MSIX): Claude_1.24012.9.0_x64__pzs8sxrjxfjjc
  • Claude Code component: 2.1.219
  • Windows 11 Pro 26200, 48 GB RAM
  • Display adapters, all enabled: Parsec Virtual Display Adapter (driver 0.45.0.0, 2024-01), Intel UHD Graphics (31.0.101.2141), NVIDIA GeForce GTX 1650 Ti (32.0.15.9282)
  • Local console session, 2 monitors. Parsec and RustDesk host processes running in the background.

Minimal reproduction

Serve this single static page over http://localhost and open it in the Browser pane:

<div id="ts"></div>
<script>
  const s = document.createElement('script');
  s.src = 'https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit';
  s.async = true; s.defer = true;
  s.onload = () => window.turnstile.render(document.getElementById('ts'), {
    sitekey: 'YOUR_PRODUCTION_TURNSTILE_SITEKEY',
    callback: () => {},
    theme: 'auto',
    language: 'tr',
  });
  document.head.appendChild(s);
</script>

With a real production sitekey the app closes while the challenge runs. With any Cloudflare test sitekey the same page behaves normally, so the trigger looks like the real challenge payload (WASM / workers / fingerprinting), not the widget markup or the script host.

Already ruled out (each loaded in the pane, no crash)

  1. Plain HTML page with no scripts
  2. External HTTPS site (https://example.com)
  3. A Cloudflare Pages site of ours with no Turnstile
  4. A static file served from the same origin as the crashing page
  5. Service worker registration + Notification.requestPermission() + pushManager.subscribe() + PWA manifest
  6. Turnstile with Cloudflare test sitekeys in all three modes: visible pass (1x00000000000000000000AA), forced interactive (3x00000000000000000000FF), invisible (1x00000000000000000000BB) — all rendered and issued tokens

Expected vs actual

  • Expected: a web page cannot terminate the desktop application. Worst case the pane's renderer or GPU process dies and recovers.
  • Actual: every claude process exits. The app restarts normally afterwards.

Diagnostics collected

  • %APPDATA%\Claude\Crashpad holds no report files (only settings.dat) — nothing is captured
  • Windows Application log has no Application Error (1000) or hang entry for the app around the crash
  • No display-driver TDR (System log 4101), no Resource-Exhaustion-Detector event, no memory pressure (29 GB free)
  • Only trace is the restart itself: CoworkVMService stopped, then a fresh activation of the packaged app a couple of minutes later
  • The same page opens fine in regular Chrome on the same machine

I can share the exact sitekey that reproduces this privately, or run an instrumented build if that helps.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗