github jo-inc/camofox-browser v1.9.0
v1.9.0 — Viewport Testing, Tab Leak Fix, Session Robustness

latest releases: v1.11.2, v1.11.1, v1.11.0...
one month ago

Responsive Viewport Testing

POST /tabs/:tabId/viewport — set any viewport size on a live tab for responsive testing. Pass { width, height } and the page re-renders at that size. Useful for testing mobile breakpoints, tablet layouts, or unusual screen dimensions without creating a new session.

Tab Leak Fix

Two fixes for pages that survive normal cleanup:

  • safePageClose force-kill: If page.close() hangs (e.g., stuck unload handler), the page is force-closed after timeout instead of leaked. Previously a single stuck page would starve Firefox of DOM threads.
  • Orphan page reaper: Background interval detects Playwright pages that escaped tabGroups tracking and force-closes them.

Session Lifecycle Robustness

  • Navigation timeout → session destroy: A poisoned proxy (Cloudflare holding a connection for 30s) used to kill all subsequent navigations in that context. Now click/navigate/open_url timeouts destroy the session so the next request gets a fresh proxy.
  • Drain locks before close: Queued tab operations get clean 410 Tab destroyed instead of cascading 500 Target page closed errors.
  • Dead-context → 503: Cascade errors return session_expired with retry semantics instead of generic 500.
  • Transparent proxy retry: Navigation failures from proxy blocks or timeouts automatically retry once with a fresh session.
  • goBack timeout 10s → 20s: Back navigation uses browser cache; 10s was too short for complex SPA re-renders.

Install Hardening

  • Ship compiled plugin.js so install works even when TypeScript compilation is skipped — by @Yeraze (#2140)
  • Cross-platform postinstall script with cache validation — by @gustavosmendes (#2149)
  • Graceful handling of PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 (warns + skips warm-up instead of crash loop) — by @gustavosmendes (#2149)

Fixes & Improvements

  • Native memory pressure: restart browser when idle if heap exceeds threshold
  • Memory leak false-positive reduction (3 safeguards for watchdog stall detection)
  • Crash reporter renamed to telemetry, credentials moved to Cloudflare Worker relay
  • OpenClaw plugin metadata + ClawHub publish workflow

Thank You

Don't miss a new camofox-browser release

NewReleases is sending notifications on new releases.