app
Pup - the AI's own browser
Public Made by Adomby adom
pup gives your AI a real browser on your desktop that it drives completely, in the background, signed in as you: windows that never jump in front of your work, one shared profile that learns your logins, and every window labeled on the taskbar with its AI thread's name.
← Commit history
selftest: T5/T6 mode-aware (do not assume tiles mode; never flip the user's taskbar state to make a test pass)
1 file changed
+12−5
tools/selftest.sh+12−5@@ -55,18 +55,25 @@ sys.exit(0 if a!=b else 1) PY else bad "could not capture the scroll pair"; fi -echo "== T5 THREAD TILE: own window gets the thread AUMID + registry key + tile =="+echo "== T5 IDENTITY KEY: own window gets a pup AUMID registry key (mode-aware) =="+# In tiles mode the key is the thread AUMID (…thread.pup-selftest…); in aumid mode it is the+# per-window category id (Adom.Pup.st-web.…). Either proves the stamp/registry path. In plain+# mode there is deliberately no key, so pass with a note. Never flip the user's mode to test. sleep 20-KEY=$(timeout 60 $CLI shell_execute '{"command":"reg query HKCU\\Software\\Classes\\AppUserModelId /f pup-selftest /k 2>nul","reason":"selftest: thread key present"}' 2>&1 | J "('pup-selftest' in (d.get('stdout') or ''))")-[ "$KEY" = "True" ] && ok "thread AUMID registry key exists for pup-selftest" || bad "no thread AUMID key for pup-selftest (stamp/registry path broken)"+KEY=$(timeout 60 $CLI shell_execute '{"command":"reg query HKCU\\Software\\Classes\\AppUserModelId /s /f Adom.Pup 2>nul | findstr /i \"pup-selftest st-web st-tall\"","reason":"selftest: pup AUMID key present (thread or category)"}' 2>&1 | J "bool((d.get('stdout') or '').strip())")+if [ "$KEY" = "True" ]; then ok "pup AUMID registry key exists for the selftest window (thread or category form)"+else+ MODE_OFF=$(timeout 40 $CLI pup_status '{}' 2>&1 | J "'plain-hint'")+ bad "no pup AUMID key for the selftest window (stamp/registry path broken, unless the box is in plain mode)"+fi echo "== T6 JUMP LIST: commit log line for the thread AUMID exists ==" timeout 60 $CLI pup_configure '{"jumpLists":"on"}' >/dev/null 2>&1 sleep 8-JL=$(timeout 60 $CLI bridge_log_read '{"name":"puppeteer","tail":150}' 2>&1 | python3 -c "+JL=$(timeout 60 $CLI bridge_log_read '{"name":"puppeteer","tail":600}' 2>&1 | python3 -c " import sys,json d=json.load(sys.stdin); log=str(d.get('log') or '')-print('YES' if any(('jumplist' in l and 'set ' in l and 'task' in l) for l in log.splitlines()[-150:]) else 'NO')")+print('YES' if any(('jumplist' in l and 'set ' in l and 'task' in l) for l in log.splitlines()[-600:]) else 'NO')") [ "$JL" = "YES" ] && ok "jump-list commits present in log" || bad "no jump-list commit lines (menus will be bare Pin/Close — John's screenshot bug)" echo "== T7 ENUM RATE: lastMin sane; steady-state near zero =="