← Commit history

Correct pup-vendor-login: a fresh vendor login is NOT persisted until Chrome flushes it. Reaching the dashboard is not enough; a crash before flush destroys the sign-in (verified live: Autodesk came up signed OUT in a later window while Gmail survived). Mandate close+reopen+verify before claiming persistence; the admin-SPA crash makes this critical.

John Lauer ·a01a6bc2a1 ·3mo ago ·parent 096b9c3
2 files changed +20−4
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-desktop-puppeteer-bridge",-  "version": "1.9.160",+  "version": "1.9.161",   "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": [
skills/pup-vendor-login/SKILL.md+19−3
@@ -51,8 +51,19 @@ persists on disk. Email+password works too but needs a credential you do not hav    redirect completes and reports the stale chooser URL while the screenshot already shows the    signed-in dashboard ("Hi, <name>"). Trust the picture. -6. **Done. The login persists.** The vendor cookie is now in the durable profile and survives window-   close, Chrome kill, and bridge restart — same as the Google/Gmail session.+6. **FLUSH THE COOKIE BEFORE DOING ANYTHING ELSE — persistence is NOT automatic.** Reaching the+   dashboard does NOT mean the login is saved. Chrome writes new cookies to disk lazily (on idle /+   graceful shutdown), and a fresh vendor cookie can be LOST if the Chrome crashes before it flushes.+   Measured live 2026-07-28: sign-in reached the Autodesk dashboard, the very next navigation crashed+   the Chrome, and the login was gone — a later window opened SIGNED OUT (while Gmail, whose cookie was+   flushed days earlier, survived). So after the dashboard appears:+     a. Do nothing heavy for ~10-15s (let Chrome flush), OR better, `browser_close_window` the login+        window — a graceful close flushes cookies to disk.+     b. Reopen the vendor site in the durable profile and CONFIRM it is signed in (screenshot) BEFORE+        promising the user anything. Only a verified reopen proves persistence.+   Once flushed and confirmed, the cookie survives close, Chrome kill, and bridge restart like any+   other durable-profile login. Do NOT tell the user "you're logged in and it'll stick" until the+   reopen check passes — that claim was made falsely once and the window came up logged out.  ## Which profile — and why NOT the shared one for a crashy portal @@ -78,7 +89,10 @@ a license seat, editing users). Do not promise to click through it. Options, in    the seat assignment by hand. This is the honest, reliable answer today. 2. **Use the vendor's API** instead of the web UI where one exists (Autodesk has account-management    APIs) — no CDP, no jam.-3. Never deep-link straight to the admin URL right after login; even navigating there is what jams it.+3. Never deep-link straight to the admin URL right after login — it JAMS and can CRASH the Chrome,+      and if the login cookie has not flushed yet (step 6) that crash DESTROYS the fresh login. Flush+      first (close+reopen+verify), THEN, in a SEPARATE dedicated-profile window, hand the admin page+      to the user — so a portal crash can never cost the sign-in again.  ## Pitfalls recap (each paid for on 2026-07-28) - Rapid ops crash the Chrome → pace slowly, one op + settle.@@ -87,3 +101,5 @@ a license seat, editing users). Do not promise to click through it. Options, in - Button text has hidden whitespace → regex match, not `===`. - Eval reads stale mid-redirect → confirm with a screenshot. - The account-admin SPA jams CDP → hand off to the user or the API; do not fight it.+- A fresh login is NOT persisted until Chrome flushes it → close+reopen+verify BEFORE claiming it+  stuck; a portal crash before flush silently destroys the just-completed sign-in (happened once).