perf(extension): idle control overlay and release accessibility mode

Merged
CO
20d ago
+220-9

Fork-local perf fixes; measurements and changes.md land in this PR before merge.

  • Control overlay: static glow painted once + two-cycle opacity pulse at onset (compositor-only), no pulse under prefers-reduced-motion. Upstream animated an inset box-shadow forever, repainting the viewport every frame.
  • Observation: release the Accessibility domain after each capture's AX reads (through the capture worker pool; timed-out targets skipped).

Tests: new ControlOverlay idle test and accessibility-release.test.ts fail on upstream 3f10983 and pass here; extension suite 2421 passed / 4 load-sensitive timing tests that pass when run alone; tsc --noEmit and biome clean.


Summary by cubic

Fixes two extension performance issues in the capture path and marks the repo as a fork of Tencent/BrowserSkill.

  • The control glow is painted once and pulses opacity for two cycles at onset (compositor-only) instead of animating an inset box-shadow forever; no pulse under prefers-reduced-motion.
  • The Accessibility domain is released after each capture's AX reads via the capture worker pool, so the renderer no longer keeps the AX tree live for the whole session; timed-out targets are skipped.
  • Adds a ControlOverlay idle test and accessibility-release.test.ts, including a case where the release fails without failing the capture.
  • README and the new changes.md credit upstream Tencent/BrowserSkill; changes.md documents each fix, its measurements, and the post-stop CPU tail finding, for which no code change was made.