← Commit history
v0.16.37 (insiders): the identity in a reply and in the profile_required refusal carries the label the user sees in their browser (John Personal, adom.inc), not just the email
6 files changed
+11−10
bin/nb-dashboard+1−1@@ -20,7 +20,7 @@ const { execFile, spawn } = require('child_process'); const fs = require('fs'); const crypto = require('crypto'); -const VERSION = '0.16.36'; // keep in lockstep with package.json (pkg version)+const VERSION = '0.16.37'; // keep in lockstep with package.json (pkg version) // SEND TO AI IS UN-PARKED (John: "yeah, we are re-enabling the send to ai. it seems to be good now"). // The ah build thread certified the crash family dead on the gate-fixed build and the delivery leg is // proven end to end. The park const is DELETED rather than flipped, so no dead branch can resurrect it.
bridge/BRIDGE_VERSION+1−1@@ -1 +1 @@-0.16.36+0.16.37
bridge/bridge.json+1−1@@ -2,7 +2,7 @@ "manifest_version": 1, "name": "native-browser", "displayName": "Adom Native Browser",- "version": "0.16.36",+ "version": "0.16.37", "expectedExtensionVersion": "0.2.16", "description": "Drives the user's REAL signed-in Chrome/Edge, in two layers. Layer 1 (nb) needs NOTHING installed and works on any machine: nbrowser_open_os_window (open a URL in the user's real profile, background+flashing, the OAuth/consent path), nbrowser_os_windows, nbrowser_profiles, nbrowser_wake_profile, nbrowser_force_close. Layer 2 (nbe, the Adom Native Browser Extension) unlocks the rest: CDP driving (navigate/click/read/screenshot) inside their logged-in profile. The bridge binds an ephemeral loopback port and the native-messaging host pumps stdio <-> bridge.", "homepage": "https://wiki.adom.inc/adom/nb-bridge",
bridge/package.json+1−1@@ -1,6 +1,6 @@ { "name": "adom-native-browser-bridge",- "version": "0.16.36",+ "version": "0.16.37", "private": true, "description": "Native-browser bridge for Bridge (ab): layer 1 (nb) plus layer 2 via nbe, the Adom Native Browser Extension (Chrome + Edge).", "main": "server.js",
bridge/server.js+6−5@@ -2991,10 +2991,7 @@ function dispatch(verb, args) { && !(args && args.sessionId && sessionProfile.get(args.sessionId))) { const ids = userConns(); if (ids.length > 1) {- const choices = ids.map(([k, c]) => {- const av = avatarForProfile(k) || {};- return { profile: k, email: (c.profile && c.profile.email) || '', displayName: profileLabel(c.profile) || null, profileDir: av.profileDir || null };- });+ const choices = ids.map(([k]) => identityOf(k) || { profile: k }); return resolve({ success: false, errorCode: 'profile_required', error: `${ids.length} signed-in identities are connected, so '${verb}' will not guess which one to act as: ${choices.map((x) => x.profile).join(', ')}. Pass profile:"<one of these>".`, profiles: choices,@@ -3051,7 +3048,11 @@ function downscalePng(src, dst, max) { function identityOf(key) { const c = conns.get(key); if (!c) return null; const av = avatarForProfile(key) || {};- return { profile: key, email: (c.profile && c.profile.email) || '', displayName: profileLabel(c.profile) || null, profileDir: av.profileDir || null, browser: (c.profile && c.profile.browser) || 'chrome' };+ // Prefer the label the USER sees in their browser ("John Personal", "adom.inc") over the bare email:+ // that is how they tell work from personal (nb-bridge#53).+ const kp = knownProfiles().find((x) => x.key === key);+ return { profile: key, email: (c.profile && c.profile.email) || '', displayName: (kp && kp.displayName) || profileLabel(c.profile) || null,+ profileDir: (kp && kp.profileDir) || av.profileDir || null, browser: (c.profile && c.profile.browser) || 'chrome' }; } async function decorateReply(p, frame, payloadIn, setPayload) { let payload = payloadIn;
package.json+1−1@@ -1,6 +1,6 @@ { "slug": "nb-bridge",- "version": "0.16.36",+ "version": "0.16.37", "type": "app", "title": "NB - Native Browser Bridge", "description": "This package installs the SKILLS into your container so your AI knows how to drive your real signed-in Chrome and Edge; Bridge loads the bridge runtime itself from the release zip.",