← Commit history

v2.0.713 (insiders): No more owner chip in the lower-left corner of pup pages: it covered the page's own controls there (a video player's buttons, a chat box), and the taskbar tile already names the thread. Off by default now; ownerChip:on in Settings brings it back (John, 2026-10-12). Includes 2.0.712: bot-wall detection and the pacing warning. Gates on arav-rog: smoke all pass (incl. no chip by default), parity 55/56; foreground and jump list refused (another thread's window on the box), and this change touches neither.

John Lauer ·a803e24024 ·29d ago ·parent 2575e2d
5 files changed +17−17
rust/Cargo.lock+12−12
@@ -10,7 +10,7 @@ checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"  [[package]] name = "adom-pup-bridge"-version = "2.0.712"+version = "2.0.713" dependencies = [  "pup-browser",  "pup-cdp",@@ -655,7 +655,7 @@ dependencies = [  [[package]] name = "pup-browser"-version = "2.0.712"+version = "2.0.713" dependencies = [  "pup-core",  "pup-host",@@ -667,7 +667,7 @@ dependencies = [  [[package]] name = "pup-cdp"-version = "2.0.712"+version = "2.0.713" dependencies = [  "serde_json",  "thiserror",@@ -677,7 +677,7 @@ dependencies = [  [[package]] name = "pup-core"-version = "2.0.712"+version = "2.0.713" dependencies = [  "serde",  "serde_json",@@ -687,7 +687,7 @@ dependencies = [  [[package]] name = "pup-dashboard"-version = "2.0.712"+version = "2.0.713" dependencies = [  "pup-cdp",  "pup-core",@@ -700,7 +700,7 @@ dependencies = [  [[package]] name = "pup-host"-version = "2.0.712"+version = "2.0.713" dependencies = [  "serde",  "serde_json",@@ -709,14 +709,14 @@ dependencies = [  [[package]] name = "pup-host-mac"-version = "2.0.712"+version = "2.0.713" dependencies = [  "pup-host", ]  [[package]] name = "pup-host-win"-version = "2.0.712"+version = "2.0.713" dependencies = [  "pup-core",  "pup-host",@@ -726,7 +726,7 @@ dependencies = [  [[package]] name = "pup-identity"-version = "2.0.712"+version = "2.0.713" dependencies = [  "fontdue",  "image",@@ -736,7 +736,7 @@ dependencies = [  [[package]] name = "pup-session"-version = "2.0.712"+version = "2.0.713" dependencies = [  "pup-core",  "serde",@@ -746,7 +746,7 @@ dependencies = [  [[package]] name = "pup-vault"-version = "2.0.712"+version = "2.0.713" dependencies = [  "pup-core",  "pup-host",@@ -757,7 +757,7 @@ dependencies = [  [[package]] name = "pup-verbs"-version = "2.0.712"+version = "2.0.713" dependencies = [  "base64",  "png 0.17.16",
rust/Cargo.toml+1−1
@@ -4,7 +4,7 @@ members = ["core", "host", "host-win", "host-mac", "cdp", "browser", "session",  # One version for the whole bridge, in lockstep with src/BRIDGE_VERSION (tools/ship.sh bumps both). [workspace.package]-version = "2.0.712"+version = "2.0.713" edition = "2021" license = "MIT" 
rust/dashboard/assets/dashboard.html+1−1
@@ -610,7 +610,7 @@ async function runImport(){ // One continuously scrolling pane: sections (h2) > cards (h3) > rows, a sidebar that jumps within it // and scroll-spies, every row a breadcrumb name + explanation + (real) screenshot + control + default. const SET_NAMES={winAttentionFlash:'Windows attention flash',taskbarMode:'Identity mode',overlayBadges:'Favicon overlay badges',overlaySize:'Badge size',taskbarGrouping:'Grouping',aumidIconStyle:'Icon style',jumpLists:'Jump lists',jlViewTasks:'Wiki view tasks',jlCloseAll:'Close all windows task',jlDashboard:'Open dashboard task',jlAnnotate:'Annotate this page task',aumidShortcut:'Start Menu anchor (first-click jump list)',annCaptionBar:'Caption bar on captures',toolbarExtension:'Adom toolbar in Chrome',tbSnipHotkey:'Snip hotkey',tbFloatyPencil:'Corner pencil',floatyHitPx:'Pencil hit area',taskbarActivity:'Activity signal',fgCaption:'Caption on AI foreground',fgCaptionMs:'Minimum caption time',notMineCaption:'Not-by-Adom caption',sleepRecovery:'Sleep and crash recovery',autoLogin:'Auto-fill saved logins',captureLogins:'Capture logins to the vault',reportIssues:'Issue-report hints',titleTag:'ai-thread tag in the title',titlePrefix:'Thread name prefixed to the title',ownerChip:'Floating owner chip',minimalTouch:'Minimal-touch mode'};-const SET_DEFAULTS={winAttentionFlash:'Off',taskbarMode:'Tiles',overlayBadges:'On',overlaySize:'75%, balanced',taskbarGrouping:'Split',aumidIconStyle:'Category',jumpLists:'On',jlViewTasks:'On',jlCloseAll:'On',jlDashboard:'On',jlAnnotate:'On',aumidShortcut:'Off',annCaptionBar:'On',toolbarExtension:'On',tbSnipHotkey:'On',tbFloatyPencil:'Off',floatyHitPx:'24px',taskbarActivity:'Progress bar',fgCaption:'On',fgCaptionMs:'3.5s',notMineCaption:'Off',sleepRecovery:'On',autoLogin:'On',captureLogins:'On',reportIssues:'On',titleTag:'Off',titlePrefix:'Off',ownerChip:'On',minimalTouch:'On'};+const SET_DEFAULTS={winAttentionFlash:'Off',taskbarMode:'Tiles',overlayBadges:'On',overlaySize:'75%, balanced',taskbarGrouping:'Split',aumidIconStyle:'Category',jumpLists:'On',jlViewTasks:'On',jlCloseAll:'On',jlDashboard:'On',jlAnnotate:'On',aumidShortcut:'Off',annCaptionBar:'On',toolbarExtension:'On',tbSnipHotkey:'On',tbFloatyPencil:'Off',floatyHitPx:'24px',taskbarActivity:'Progress bar',fgCaption:'On',fgCaptionMs:'3.5s',notMineCaption:'Off',sleepRecovery:'On',autoLogin:'On',captureLogins:'On',reportIssues:'On',titleTag:'Off',titlePrefix:'Off',ownerChip:'Off',minimalTouch:'On'}; // choice cards: the option name + the one-line tradeoff + the REAL screenshot per option const SET_CHOICES={  overlaySize:[{v:'50',n:'50%',d:'Smallest badge, maximum clearance for the tile text.',img:'obsize50',alt:'The pup tile with a small favicon badge in its corner'},
rust/verbs/src/lib.rs+2−2
@@ -1135,7 +1135,7 @@ pub fn inject_page_scripts(ctx: &Ctx, s: &Session, cdp: &Cdp, sid: &str) {     let floaty = annotate::floaty_script(ctx);     let _ = cdp.send(Some(sid), "Page.addScriptToEvaluateOnNewDocument", json!({ "source": floaty }), Duration::from_secs(5));     let _ = cdp.evaluate(sid, &floaty, Duration::from_secs(5));-    if ctx.settings.get("ownerChip", "on") != "off" {+    if ctx.settings.get("ownerChip", "off") == "on" {   // 2.0.713: OFF by default (John, 2026-10-12: it sits on the page's own controls, and he never asked for it)         let chip = OWNER_CHIP_JS.replace("__THREAD__", &serde_json::to_string(&s.owner.clone().unwrap_or_default()).unwrap()).replace("__PROFILE__", &serde_json::to_string(&s.profile).unwrap()).replace("__AVATAR__", &serde_json::to_string(&ctx.settings.get("identityAvatarB64", "")).unwrap()).replace("__IDENT__", &serde_json::to_string(&ctx.settings.get("identityName", "")).unwrap());         let _ = cdp.send(Some(sid), "Page.addScriptToEvaluateOnNewDocument", json!({ "source": chip }), Duration::from_secs(5));         let _ = cdp.evaluate(sid, &chip, Duration::from_secs(5));@@ -1148,7 +1148,7 @@ pub fn inject_page_scripts_ext(ctx: &Ctx, s: &Session, lane: &transport::Lane, t     if !transport::wait_ready(lane, tab, &tab.url, Duration::from_secs(10)) { pup_core::log(format!("[page] \"{}\" page scripts skipped: the document was not ready within 10 s", s.id)); return; }     let floaty = annotate::floaty_script(ctx);     let _ = transport::evaluate(lane, tab, &floaty);-    if ctx.settings.get("ownerChip", "on") != "off" {+    if ctx.settings.get("ownerChip", "off") == "on" {   // 2.0.713: OFF by default (John, 2026-10-12: it sits on the page's own controls, and he never asked for it)         let chip = OWNER_CHIP_JS.replace("__THREAD__", &serde_json::to_string(&s.owner.clone().unwrap_or_default()).unwrap()).replace("__PROFILE__", &serde_json::to_string(&s.profile).unwrap()).replace("__AVATAR__", &serde_json::to_string(&ctx.settings.get("identityAvatarB64", "")).unwrap()).replace("__IDENT__", &serde_json::to_string(&ctx.settings.get("identityName", "")).unwrap());         let _ = transport::evaluate(lane, tab, &chip);     }
rust/verbs/src/settings.rs+1−1
@@ -22,7 +22,7 @@ pub const KEYS: &[(&str, &str, &str)] = &[     ("consumerBrandsHeader", "", "str"),     ("fgWatch", "on", "on|off"), ("birthSettleMs", "400", "int"), ("aumidShortcut", "off", "on|off"), ("idleBrowserQuitMin", "10", "int"), ("winAttentionFlash", "off", "on|off"), ("prePermissions", "off", "on|off"), ("cdpQuiet", "off", "on|off"), ("stockFlags", "off", "on|off"), ("fgCaption", "on", "on|off"), ("fgCaptionMs", "3500", "int"), ("notMineCaption", "off", "on|off"),     ("captureLogins", "on", "on|off"), ("autoLogin", "on", "on|off"),-    ("ownerChip", "on", "on|off"), ("titleTag", "off", "on|off"), ("titlePrefix", "off", "on|off"),+    ("ownerChip", "off", "on|off"), ("titleTag", "off", "on|off"), ("titlePrefix", "off", "on|off"),     ("sleepRecovery", "on", "on|off"), ("reportIssues", "on", "on|off"), ("minimalTouch", "on", "on|off"), ];