← Commit history

Publish 1.9.174

John Lauer ·12eefa59e7 ·3mo ago ·parent 6f1853d
3 files changed +26−2
SKILL.md+24
@@ -75,6 +75,30 @@ issue #14 did. Renew a still-needed lease with `browser_highfps_extend {sessionI keep rendering while unfocused, and the lease makes that self-limiting. Do NOT reach for `highFps` to "fix" a window that merely LOOKS frozen — just focus it (or tell the user to click it). +## Under heavy load or a crash, pup self-heals — do NOT panic-kill or declare it dead++pup is built to stay usable when the shared Chrome is under heavy load, and to recover on its own if+Chrome ever crashes. Read these signals correctly instead of assuming the worst:++- **`_degraded` on `browser_list_windows` / `browser_status`.** These verbs ALWAYS return the full+  window list, fast, even when a window is too busy (Chrome under heavy load on a heavy SPA) to answer+  a live read. A busy window comes back marked `degraded` with its LAST-KNOWN url/title. `_degraded`+  means "that window is busy, NOT crashed — retry shortly for live values." It does NOT mean pup is+  broken. (Before v1.9.172 these verbs could hang and return null under load, which read as "pup is+  frozen" — that can no longer happen.)+- **A window vanished / a `_cleanupReport` says a window crashed.** If the shared Chrome crashes, pup's+  health loop (15s) detects it and RELAUNCHES every affected window on its own — signed in, in the+  background, at its last URL — then reports it via `_cleanupReport` ("pup auto-recovered your …+  window after a Chrome crash"). You do NOT need to kill Chrome, clean the profile, or reopen windows+  by hand. Wait ~15-30s and re-list; the windows come back. Only if a page crashes Chrome REPEATEDLY+  does pup stop retrying it (after 2 attempts) and tell the user the page itself looks unstable.+- **One window times out but others work = a per-window jam, not a dead bridge.** Verbs are+  concurrent; a slow/jammed window does not block operations on OTHER windows, and never blocks+  list/status. If `browser_eval` on window A times out, window B still works and the bridge is fine.+- **Genuinely frozen vs throttled vs busy:** a background window that looks static is almost always+  just THROTTLED (see Power & rendering above) — focus it and it wakes. A window that is BUSY shows up+  as `degraded`. A window that CRASHED gets auto-relaunched. None of these is "pup is dead."+ ## Standing rule: TOAST THE USER before foregrounding (John, repeatedly)  NEVER put a window on the user's screen silently. Any time you FOREGROUND a pup window — a demo, a
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-desktop-puppeteer-bridge",-  "version": "1.9.173",+  "version": "1.9.174",   "type": "app",   "description": "The pup SKILL PACK \u2014 the AI skills that teach a cloud/container AI how to drive the Adom Desktop Puppeteer (pup) bridge (browser_* verbs): the everyday `pup` skill plus focused sub-skills for windows/sessions/tabs, screenshots+recording, browsers+Chrome install, and driving the Adom wiki. Installs into ~/.claude/skills + ~/.codex/skills. DOCS ONLY \u2014 this is NOT the bridge runtime. The bridge itself (the Node program that drives the browser) runs on the DESKTOP: Adom Desktop bundles it and auto-installs/updates it, and it's published separately on the Releases tab as adom-bridge-puppeteer-v<ver>.zip. So the pkg version (skills, bumps often) and the Release version (runtime, bumps rarely) differ on purpose. TL;DR: pkg install = the skills for your AI; the bridge = the Release zip, which Adom Desktop manages for you.",   "keywords": [
page.json+1−1
@@ -4,7 +4,7 @@   "slug": "adom-desktop-puppeteer-bridge",   "title": "Adom Desktop - Puppeteer Bridge",   "brief": "The Adom Desktop Puppeteer (pup) bridge — drive a real headful browser on the user's desktop from the cloud: open/screenshot/eval/record. Cold-start drives the browser ALREADY on the machine (installed Chrome, else Microsoft Edge — every Windows PC ships with Edge) with a fresh isolated profile, so the common case needs NO download; Chrome for Testing is fetched only as a last resort. Two artifacts: the Releases zip is the bridge runtime (also bundled in Adom Desktop); the pkg installs the container-side Claude skills.",-  "version": "1.9.173",+  "version": "1.9.174",   "tags": [     "skills",     "pup",