v1.12.0

ssrajadh/sentrysearchv1.12.0Jul 19, 2026by skyfallsin

AI Summary

This release focuses on reliability improvements and compatibility fixes derived from production usage at askjo.ai. It includes major updates to browser process management, Docker support, and persistence handling. Additionally, it addresses various stability issues and dependency updates.

Key Highlights

  • Enhanced browser reliability with process cleanup, race prevention, and improved health checks.
  • Linux and Docker compatibility improvements, including awaiting VirtualDisplay and defaulting Xvfb resolution.
  • New environment variable `CAMOFOX_DISABLE_DEFAULT_ADDONS` to skip UBO.
  • Restoration of the disabled reporter contract and generated `plugin.js` runtime artifact.

New Features

  • New environment variable `CAMOFOX_DISABLE_DEFAULT_ADDONS` to skip UBO.
  • Restoration of the disabled reporter contract.
  • Restoration of the generated `plugin.js` runtime artifact.
  • Updated dependencies: `qs` to 6.15.2 and `ua-parser-js` to 2.0.10.

Full Release Notes

This release upstreams reliability work from running Camofox in production at [Jo](https://askjo.ai), alongside community fixes.

## What changed

### Browser reliability
Substantial changes as a result of broad production-usage on residential proxies from askjo.ai
- Scope process cleanup to browsers owned by the current server.
- Prevent close/relaunch races and clean up orphaned browser processes.
- Improve idle-shutdown health checks and memory-pressure recovery.
- Harden popup, stale-tab, and concurrent tab lifecycle handling.
- Improve multi-instance tab routing, proxy rotation, and Google prewarming.
- Bound click fallback lookups and return an actionable 422 instead of a 30-second 500.
- Skip unstable captcha and bot-detection iframes during ref construction.
- Normalize browser failures into stable status codes and recovery hints.

### Linux and Docker

- Await `VirtualDisplay.get()` so launches no longer receive `DISPLAY=[object Promise]`.
- Remove the fixed context viewport that triggered `viewport.isMobile` Juggler errors.
- Default Xvfb to 1280×720×24.
- Pin `camoufox-js` to `0.10.2` for reproducible installs.
- Improve Docker build and dependency installation.

Fixes #6807 and related reports #8043, #8042, #5916, #5812, #5643, #5408, and #5166.

### Persistence and startup

- Await shutdown listeners before closing contexts so storage checkpoints complete. Fixes #7162.
- Add `CAMOFOX_DISABLE_DEFAULT_ADDONS=1` to skip UBO when addon downloads or cache state are unreliable. Fixes #5067.
- Restore the disabled reporter contract. Fixes #5434.

### OpenClaw and dependencies

- Fix factory tool registration so newer OpenClaw versions expose all `camofox_*` tools. Fixes #5437.
- Restore the generated `plugin.js` runtime artifact.
- Fix the E2E test command and test teardown.
- Update `qs` to 6.15.2 and `ua-parser-js` to 2.0.10, including its Client Hints ReDoS fix.

## Community PRs
Thank you!
- #7266 — Linux display and viewport compatibility — @mvanhorn
- #5078 — optional UBO exclusion — @mvanhorn
- #5960 — disabled reporter contract — @mrzlab630
- #7163 — shutdown persistence — @joyjit
- #7879 — process ownership cleanup — @leomercer-dev
- #5663 — bounded click fallback — @leoneparise
- #5591 — unstable iframe handling — @leoneparise
- #7534 — OpenClaw tool registration — @xenek
- #5909 — dependency security updates — @dependabot