@agentdeck/bridge 1.0.24 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/openclaw.d.ts +74 -4
- package/dist/adapters/openclaw.d.ts.map +1 -1
- package/dist/adapters/openclaw.js +235 -43
- package/dist/adapters/openclaw.js.map +1 -1
- package/dist/apme/adapters/openclaw-hook.d.ts +38 -10
- package/dist/apme/adapters/openclaw-hook.d.ts.map +1 -1
- package/dist/apme/adapters/openclaw-hook.js +181 -37
- package/dist/apme/adapters/openclaw-hook.js.map +1 -1
- package/dist/apme/collector.d.ts +37 -1
- package/dist/apme/collector.d.ts.map +1 -1
- package/dist/apme/collector.js +277 -35
- package/dist/apme/collector.js.map +1 -1
- package/dist/apme/pareto.d.ts +2 -1
- package/dist/apme/pareto.d.ts.map +1 -1
- package/dist/apme/pareto.js +15 -4
- package/dist/apme/pareto.js.map +1 -1
- package/dist/apme/recommend.d.ts +24 -1
- package/dist/apme/recommend.d.ts.map +1 -1
- package/dist/apme/recommend.js +43 -7
- package/dist/apme/recommend.js.map +1 -1
- package/dist/apme/store.d.ts +6 -0
- package/dist/apme/store.d.ts.map +1 -1
- package/dist/apme/store.js +244 -72
- package/dist/apme/store.js.map +1 -1
- package/dist/bridge-core.d.ts +10 -1
- package/dist/bridge-core.d.ts.map +1 -1
- package/dist/bridge-core.js +20 -5
- package/dist/bridge-core.js.map +1 -1
- package/dist/card-feed.d.ts +46 -1
- package/dist/card-feed.d.ts.map +1 -1
- package/dist/card-feed.js +166 -6
- package/dist/card-feed.js.map +1 -1
- package/dist/cli.d.ts +45 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +388 -27
- package/dist/cli.js.map +1 -1
- package/dist/daemon-build-identity.d.ts +124 -0
- package/dist/daemon-build-identity.d.ts.map +1 -0
- package/dist/daemon-build-identity.js +310 -0
- package/dist/daemon-build-identity.js.map +1 -0
- package/dist/daemon-server.d.ts +34 -6
- package/dist/daemon-server.d.ts.map +1 -1
- package/dist/daemon-server.js +613 -108
- package/dist/daemon-server.js.map +1 -1
- package/dist/daemon-takeover.d.ts +11 -0
- package/dist/daemon-takeover.d.ts.map +1 -1
- package/dist/daemon-takeover.js +62 -17
- package/dist/daemon-takeover.js.map +1 -1
- package/dist/daemon.js +1 -1
- package/dist/daemon.js.map +1 -1
- package/dist/esp32-serial.d.ts +14 -0
- package/dist/esp32-serial.d.ts.map +1 -1
- package/dist/esp32-serial.js +19 -1
- package/dist/esp32-serial.js.map +1 -1
- package/dist/glance-frame.d.ts.map +1 -1
- package/dist/glance-frame.js +3 -1
- package/dist/glance-frame.js.map +1 -1
- package/dist/hook-codex-sessions.d.ts +3 -1
- package/dist/hook-codex-sessions.d.ts.map +1 -1
- package/dist/hook-codex-sessions.js +27 -7
- package/dist/hook-codex-sessions.js.map +1 -1
- package/dist/legacy-rearm-ledger.d.ts +56 -0
- package/dist/legacy-rearm-ledger.d.ts.map +1 -0
- package/dist/legacy-rearm-ledger.js +66 -0
- package/dist/legacy-rearm-ledger.js.map +1 -0
- package/dist/mdns.d.ts +33 -0
- package/dist/mdns.d.ts.map +1 -1
- package/dist/mdns.js +91 -2
- package/dist/mdns.js.map +1 -1
- package/dist/openclaw-session.d.ts.map +1 -1
- package/dist/openclaw-session.js +13 -0
- package/dist/openclaw-session.js.map +1 -1
- package/dist/openclaw-timeline-feed.d.ts +84 -0
- package/dist/openclaw-timeline-feed.d.ts.map +1 -0
- package/dist/openclaw-timeline-feed.js +162 -0
- package/dist/openclaw-timeline-feed.js.map +1 -0
- package/dist/openclaw-transcript-timeline.d.ts +103 -0
- package/dist/openclaw-transcript-timeline.d.ts.map +1 -0
- package/dist/openclaw-transcript-timeline.js +328 -0
- package/dist/openclaw-transcript-timeline.js.map +1 -0
- package/dist/passive-observer.d.ts +21 -1
- package/dist/passive-observer.d.ts.map +1 -1
- package/dist/passive-observer.js +37 -3
- package/dist/passive-observer.js.map +1 -1
- package/dist/relayed-usage.d.ts +68 -0
- package/dist/relayed-usage.d.ts.map +1 -0
- package/dist/relayed-usage.js +80 -0
- package/dist/relayed-usage.js.map +1 -0
- package/dist/session-aggregator.d.ts +3 -0
- package/dist/session-aggregator.d.ts.map +1 -1
- package/dist/session-aggregator.js.map +1 -1
- package/dist/session-registry.d.ts +1 -0
- package/dist/session-registry.d.ts.map +1 -1
- package/dist/surface-protocol.d.ts +84 -0
- package/dist/surface-protocol.d.ts.map +1 -0
- package/dist/surface-protocol.js +235 -0
- package/dist/surface-protocol.js.map +1 -0
- package/dist/timeline-store.d.ts +1 -1
- package/dist/timeline-store.d.ts.map +1 -1
- package/dist/timeline-store.js +16 -1
- package/dist/timeline-store.js.map +1 -1
- package/dist/tui/renderer.d.ts.map +1 -1
- package/dist/tui/renderer.js +35 -0
- package/dist/tui/renderer.js.map +1 -1
- package/dist/weather-config.d.ts +17 -0
- package/dist/weather-config.d.ts.map +1 -0
- package/dist/weather-config.js +54 -0
- package/dist/weather-config.js.map +1 -0
- package/dist/weather.d.ts +44 -4
- package/dist/weather.d.ts.map +1 -1
- package/dist/weather.js +223 -15
- package/dist/weather.js.map +1 -1
- package/dist/ws-server.d.ts.map +1 -1
- package/dist/ws-server.js +55 -5
- package/dist/ws-server.js.map +1 -1
- package/fm-helper/AgentDeckFMHelper.swift +51 -5
- package/package.json +3 -3
package/dist/glance-frame.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glance-frame.js","sourceRoot":"","sources":["../src/glance-frame.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"glance-frame.js","sourceRoot":"","sources":["../src/glance-frame.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type LocatedCodexRolloutSummary, type ObservedSession } from './passive-observer.js';
|
|
2
2
|
export interface HookCodexSession {
|
|
3
3
|
sessionId: string;
|
|
4
4
|
projectName: string;
|
|
@@ -21,6 +21,8 @@ export declare class HookCodexSessions {
|
|
|
21
21
|
private readonly terminated;
|
|
22
22
|
/** Fired when a hook changed something worth broadcasting. */
|
|
23
23
|
onChanged: (() => void) | undefined;
|
|
24
|
+
private readonly resolveRollout;
|
|
25
|
+
constructor(resolveRollout?: (sessionId: string) => LocatedCodexRolloutSummary | null);
|
|
24
26
|
/**
|
|
25
27
|
* Record a `codex_*` lifecycle hook. Returns true when the sessions list
|
|
26
28
|
* should be rebroadcast.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook-codex-sessions.d.ts","sourceRoot":"","sources":["../src/hook-codex-sessions.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"hook-codex-sessions.d.ts","sourceRoot":"","sources":["../src/hook-codex-sessions.ts"],"names":[],"mappings":"AAqBA,OAAO,EAEL,KAAK,0BAA0B,EAC/B,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAuB/B,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,YAAY,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;IAChE,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6B;IAExD,8DAA8D;IAC9D,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IAEpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA2D;gBAE9E,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,0BAA0B,GAAG,IAAI;IAQrF;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,SAAa,GAAG,OAAO;IA0DzE,gEAAgE;IAChE,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAI/B,QAAQ,IAAI,gBAAgB,EAAE;IAI9B,OAAO,CAAC,IAAI;IAWZ;;;;OAIG;IACH,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,EAAE,GAAG,SAAa,GAAG,eAAe,EAAE;CA0C1E"}
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
// counts, context %, and goal come from the rollout and stay the observer's
|
|
19
19
|
// job; a hook row that guessed them would flicker against the real values
|
|
20
20
|
// the moment the scan recovered.
|
|
21
|
+
import { codexRolloutSummaryForSession, } from './passive-observer.js';
|
|
21
22
|
import { resolveProjectNameFromCwdCached } from './utils/project-name.js';
|
|
22
23
|
/** Reaped this long after the turn-ending hook — Swift's `codexPostTerminalTTL`. */
|
|
23
24
|
const POST_TERMINAL_TTL_MS = 60_000;
|
|
@@ -43,6 +44,14 @@ export class HookCodexSessions {
|
|
|
43
44
|
terminated = new Map();
|
|
44
45
|
/** Fired when a hook changed something worth broadcasting. */
|
|
45
46
|
onChanged;
|
|
47
|
+
resolveRollout;
|
|
48
|
+
constructor(resolveRollout) {
|
|
49
|
+
// macOS/Linux already get richer rows from pid→open-fd observation. The
|
|
50
|
+
// id-keyed fallback is specifically the Windows bridge over that missing
|
|
51
|
+
// primitive; keeping it platform-scoped also avoids duplicate disk scans.
|
|
52
|
+
this.resolveRollout = resolveRollout
|
|
53
|
+
?? (process.platform === 'win32' ? codexRolloutSummaryForSession : () => null);
|
|
54
|
+
}
|
|
46
55
|
/**
|
|
47
56
|
* Record a `codex_*` lifecycle hook. Returns true when the sessions list
|
|
48
57
|
* should be rebroadcast.
|
|
@@ -149,19 +158,30 @@ export class HookCodexSessions {
|
|
|
149
158
|
for (const session of this.sessions.values()) {
|
|
150
159
|
if (seen.has(session.sessionId))
|
|
151
160
|
continue;
|
|
161
|
+
const located = this.resolveRollout(session.sessionId);
|
|
162
|
+
if (located?.summary.isSubagent)
|
|
163
|
+
continue;
|
|
164
|
+
const rollout = located?.summary;
|
|
165
|
+
const desktop = rollout?.originator?.toLowerCase().includes('desktop') === true;
|
|
166
|
+
const cwd = rollout?.cwd ?? session.cwd;
|
|
152
167
|
extra.push({
|
|
153
|
-
id: `observed:codex:${session.sessionId}`,
|
|
168
|
+
id: `observed:${desktop ? 'codex-app' : 'codex'}:${session.sessionId}`,
|
|
154
169
|
port: 0,
|
|
155
170
|
pid: 0,
|
|
156
|
-
projectName: session.projectName || 'Codex',
|
|
157
|
-
agentType: 'codex-cli',
|
|
171
|
+
projectName: cwd ? resolveProjectNameFromCwdCached(cwd) : (session.projectName || 'Codex'),
|
|
172
|
+
agentType: desktop ? 'codex-app' : 'codex-cli',
|
|
158
173
|
alive: true,
|
|
159
174
|
state: session.state,
|
|
160
175
|
controlMode: 'observed',
|
|
161
|
-
cwd
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
176
|
+
cwd,
|
|
177
|
+
appName: desktop ? 'ChatGPT' : undefined,
|
|
178
|
+
modelName: rollout?.modelName,
|
|
179
|
+
currentTask: rollout?.currentTask ?? session.currentTool,
|
|
180
|
+
goal: rollout?.goal,
|
|
181
|
+
contextPercent: rollout?.contextPercent,
|
|
182
|
+
totalTokens: rollout?.totalTokens,
|
|
183
|
+
startedAt: new Date(rollout?.startedAt ?? session.startedAt).toISOString(),
|
|
184
|
+
lastActivityAt: Math.max(session.lastHookAt, located?.mtimeMs ?? 0),
|
|
165
185
|
});
|
|
166
186
|
}
|
|
167
187
|
return extra.length > 0 ? [...observed, ...extra] : observed;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook-codex-sessions.js","sourceRoot":"","sources":["../src/hook-codex-sessions.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,EAAE;AACF,2EAA2E;AAC3E,0EAA0E;AAC1E,+EAA+E;AAC/E,+EAA+E;AAC/E,4EAA4E;AAC5E,+EAA+E;AAC/E,wEAAwE;AACxE,4DAA4D;AAC5D,+DAA+D;AAC/D,EAAE;AACF,mDAAmD;AACnD,iFAAiF;AACjF,4EAA4E;AAC5E,oBAAoB;AACpB,+EAA+E;AAC/E,gFAAgF;AAChF,8EAA8E;AAC9E,qCAAqC;
|
|
1
|
+
{"version":3,"file":"hook-codex-sessions.js","sourceRoot":"","sources":["../src/hook-codex-sessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Remembers which serial-attached boards have already been re-armed over the
|
|
3
|
+
* legacy WiFi-provision path, so that fallback fires once per board per token
|
|
4
|
+
* instead of forever.
|
|
5
|
+
*
|
|
6
|
+
* ## Why this is a module and not three lines inline
|
|
7
|
+
*
|
|
8
|
+
* The fallback exists for firmware that predates `auth_provision`: such a board
|
|
9
|
+
* silently drops the message, so the daemon cannot tell "understood" from
|
|
10
|
+
* "ignored" except by the ack not arriving. After a grace period it re-sends
|
|
11
|
+
* the one message that firmware does understand — `wifi_provision`, which
|
|
12
|
+
* carries the credential but **costs a WiFi re-associate**.
|
|
13
|
+
*
|
|
14
|
+
* The original implementation kept only the in-flight timers, keyed by port and
|
|
15
|
+
* deleted when the timer FIRED. Nothing recorded that the port had already been
|
|
16
|
+
* served. So the next `device_info` — one every 30s from the daemon's own poll,
|
|
17
|
+
* plus whatever the board sends unprompted — scheduled the same re-provision
|
|
18
|
+
* again, and for exactly the boards this path exists to serve (the ones that can
|
|
19
|
+
* never ack) it repeated for as long as the daemon ran.
|
|
20
|
+
*
|
|
21
|
+
* Measured on this repo's fleet before the fix (2026-08-23): **4,759** legacy
|
|
22
|
+
* re-provisions across 9 ports, 1,504 on a single board, at a steady 60-120s
|
|
23
|
+
* cadence. A board on old firmware was therefore dragged off its WiFi
|
|
24
|
+
* association about once a minute, indefinitely — it could never hold a
|
|
25
|
+
* WebSocket — and the churn burned 2.4GHz airtime that the WiFi-only boards on
|
|
26
|
+
* the same band depend on.
|
|
27
|
+
*
|
|
28
|
+
* ## The two properties worth keeping
|
|
29
|
+
*
|
|
30
|
+
* - **Keyed by token value, not by a boolean.** A rotation or a cross-daemon
|
|
31
|
+
* handover adoption is a real change that must reach the fleet, so a new
|
|
32
|
+
* token legitimately buys one more re-arm and then goes quiet again. A plain
|
|
33
|
+
* "already done" flag would strand every board on the superseded credential.
|
|
34
|
+
* - **An attempt counts even if the write failed.** Recording only successes
|
|
35
|
+
* turns an unreachable board back into the loop this ledger removes. A board
|
|
36
|
+
* that stays unreachable is retried when the token next changes or when the
|
|
37
|
+
* daemon restarts — both real events, unlike a 30-second poll.
|
|
38
|
+
*/
|
|
39
|
+
export declare class LegacyRearmLedger {
|
|
40
|
+
private readonly byPort;
|
|
41
|
+
/** True when this port still needs the legacy re-arm for this token. */
|
|
42
|
+
needsRearm(port: string, token: string): boolean;
|
|
43
|
+
/** Record that `port` has been served for `token` — attempted, not necessarily delivered. */
|
|
44
|
+
markRearmed(port: string, token: string): void;
|
|
45
|
+
/**
|
|
46
|
+
* The board answered `auth_provision`, so it never needs the legacy path for
|
|
47
|
+
* this token. Recorded the same way as an attempt: cancelling the in-flight
|
|
48
|
+
* timer alone would leave the next `device_info` free to schedule another.
|
|
49
|
+
*/
|
|
50
|
+
markUnderstood(port: string, token: string): void;
|
|
51
|
+
/** Board unplugged. Drop it so a replug re-evaluates from scratch. */
|
|
52
|
+
forget(port: string): void;
|
|
53
|
+
/** Test/diagnostic view: how many ports are recorded. */
|
|
54
|
+
get size(): number;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=legacy-rearm-ledger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legacy-rearm-ledger.d.ts","sourceRoot":"","sources":["../src/legacy-rearm-ledger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;IAEpD,wEAAwE;IACxE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAIhD,6FAA6F;IAC7F,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAI9C;;;;OAIG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIjD,sEAAsE;IACtE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI1B,yDAAyD;IACzD,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Remembers which serial-attached boards have already been re-armed over the
|
|
3
|
+
* legacy WiFi-provision path, so that fallback fires once per board per token
|
|
4
|
+
* instead of forever.
|
|
5
|
+
*
|
|
6
|
+
* ## Why this is a module and not three lines inline
|
|
7
|
+
*
|
|
8
|
+
* The fallback exists for firmware that predates `auth_provision`: such a board
|
|
9
|
+
* silently drops the message, so the daemon cannot tell "understood" from
|
|
10
|
+
* "ignored" except by the ack not arriving. After a grace period it re-sends
|
|
11
|
+
* the one message that firmware does understand — `wifi_provision`, which
|
|
12
|
+
* carries the credential but **costs a WiFi re-associate**.
|
|
13
|
+
*
|
|
14
|
+
* The original implementation kept only the in-flight timers, keyed by port and
|
|
15
|
+
* deleted when the timer FIRED. Nothing recorded that the port had already been
|
|
16
|
+
* served. So the next `device_info` — one every 30s from the daemon's own poll,
|
|
17
|
+
* plus whatever the board sends unprompted — scheduled the same re-provision
|
|
18
|
+
* again, and for exactly the boards this path exists to serve (the ones that can
|
|
19
|
+
* never ack) it repeated for as long as the daemon ran.
|
|
20
|
+
*
|
|
21
|
+
* Measured on this repo's fleet before the fix (2026-08-23): **4,759** legacy
|
|
22
|
+
* re-provisions across 9 ports, 1,504 on a single board, at a steady 60-120s
|
|
23
|
+
* cadence. A board on old firmware was therefore dragged off its WiFi
|
|
24
|
+
* association about once a minute, indefinitely — it could never hold a
|
|
25
|
+
* WebSocket — and the churn burned 2.4GHz airtime that the WiFi-only boards on
|
|
26
|
+
* the same band depend on.
|
|
27
|
+
*
|
|
28
|
+
* ## The two properties worth keeping
|
|
29
|
+
*
|
|
30
|
+
* - **Keyed by token value, not by a boolean.** A rotation or a cross-daemon
|
|
31
|
+
* handover adoption is a real change that must reach the fleet, so a new
|
|
32
|
+
* token legitimately buys one more re-arm and then goes quiet again. A plain
|
|
33
|
+
* "already done" flag would strand every board on the superseded credential.
|
|
34
|
+
* - **An attempt counts even if the write failed.** Recording only successes
|
|
35
|
+
* turns an unreachable board back into the loop this ledger removes. A board
|
|
36
|
+
* that stays unreachable is retried when the token next changes or when the
|
|
37
|
+
* daemon restarts — both real events, unlike a 30-second poll.
|
|
38
|
+
*/
|
|
39
|
+
export class LegacyRearmLedger {
|
|
40
|
+
byPort = new Map();
|
|
41
|
+
/** True when this port still needs the legacy re-arm for this token. */
|
|
42
|
+
needsRearm(port, token) {
|
|
43
|
+
return this.byPort.get(port) !== token;
|
|
44
|
+
}
|
|
45
|
+
/** Record that `port` has been served for `token` — attempted, not necessarily delivered. */
|
|
46
|
+
markRearmed(port, token) {
|
|
47
|
+
this.byPort.set(port, token);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* The board answered `auth_provision`, so it never needs the legacy path for
|
|
51
|
+
* this token. Recorded the same way as an attempt: cancelling the in-flight
|
|
52
|
+
* timer alone would leave the next `device_info` free to schedule another.
|
|
53
|
+
*/
|
|
54
|
+
markUnderstood(port, token) {
|
|
55
|
+
this.byPort.set(port, token);
|
|
56
|
+
}
|
|
57
|
+
/** Board unplugged. Drop it so a replug re-evaluates from scratch. */
|
|
58
|
+
forget(port) {
|
|
59
|
+
this.byPort.delete(port);
|
|
60
|
+
}
|
|
61
|
+
/** Test/diagnostic view: how many ports are recorded. */
|
|
62
|
+
get size() {
|
|
63
|
+
return this.byPort.size;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=legacy-rearm-ledger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legacy-rearm-ledger.js","sourceRoot":"","sources":["../src/legacy-rearm-ledger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,OAAO,iBAAiB;IACX,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEpD,wEAAwE;IACxE,UAAU,CAAC,IAAY,EAAE,KAAa;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC;IACzC,CAAC;IAED,6FAA6F;IAC7F,WAAW,CAAC,IAAY,EAAE,KAAa;QACrC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,IAAY,EAAE,KAAa;QACxC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,sEAAsE;IACtE,MAAM,CAAC,IAAY;QACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,yDAAyD;IACzD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC1B,CAAC;CACF"}
|
package/dist/mdns.d.ts
CHANGED
|
@@ -1,4 +1,37 @@
|
|
|
1
1
|
import type { AgentType } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* True when a LAN peer could actually route to this IPv4 address.
|
|
4
|
+
*
|
|
5
|
+
* `bonjour-service` publishes one A record per non-internal IPv4 address it
|
|
6
|
+
* finds, with no routability test (`service.js` -> `records()`). That set is
|
|
7
|
+
* captured at PUBLISH time, and the daemon publishes seconds after start — so a
|
|
8
|
+
* machine whose second interface is still negotiating DHCP advertises its
|
|
9
|
+
* transient `169.254/16` APIPA address as a way to reach the daemon. Nothing
|
|
10
|
+
* ever retracts it: the address disappears from `os.networkInterfaces()`, so no
|
|
11
|
+
* later announcement carries it and no goodbye is ever sent for it, while every
|
|
12
|
+
* resolver that heard it keeps handing it out.
|
|
13
|
+
*
|
|
14
|
+
* Measured on this repo's own fleet (2026-08-23): the advertised host resolved
|
|
15
|
+
* to `192.168.68.100`, `192.168.68.60` AND `169.254.213.161` while no interface
|
|
16
|
+
* on the machine held that third address. A board that picks it dials a dead
|
|
17
|
+
* address at max backoff forever, and — because it never reaches the daemon —
|
|
18
|
+
* leaves no trace in the daemon's log at all. That is the failure mode this
|
|
19
|
+
* predicate exists to prevent, and the reason the filter belongs on the
|
|
20
|
+
* PUBLISHING side: a client cannot tell a stale record from a live one.
|
|
21
|
+
*/
|
|
22
|
+
export declare function isRoutableIpv4(addr: string): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* The IPv4 addresses this host would advertise, after the routability filter.
|
|
25
|
+
*
|
|
26
|
+
* This is the value the republish trigger watches. It deliberately returns the
|
|
27
|
+
* whole SET rather than one address: the publisher emits an A record per
|
|
28
|
+
* interface while `getLanIp()` names only the default-route one, so watching
|
|
29
|
+
* `getLanIp()` alone cannot see an address appear or vanish on any OTHER
|
|
30
|
+
* interface — which is exactly how the stale APIPA record above survived for
|
|
31
|
+
* hours with the recovery timer running the whole time. A change detector must
|
|
32
|
+
* watch what actually varies.
|
|
33
|
+
*/
|
|
34
|
+
export declare function advertisedIpv4Addresses(): string[];
|
|
2
35
|
/**
|
|
3
36
|
* `bonjour-service` defaults SRV/A/AAAA records to `os.hostname()`. On macOS
|
|
4
37
|
* that makes its user-space responder claim the same `.local` hostname as the
|
package/dist/mdns.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mdns.d.ts","sourceRoot":"","sources":["../src/mdns.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"mdns.d.ts","sourceRoot":"","sources":["../src/mdns.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAU5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQpD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,EAAE,CAWlD;AAMD;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,QAAwD,CAAC;AAEvF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAcvE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAQ7C;AAKD;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,SAAS,GACnB,MAAM,IAAI,CA+KZ"}
|
package/dist/mdns.js
CHANGED
|
@@ -1,8 +1,66 @@
|
|
|
1
1
|
import Bonjour from 'bonjour-service';
|
|
2
2
|
import { randomUUID } from 'node:crypto';
|
|
3
|
-
import { hostname, userInfo } from 'node:os';
|
|
3
|
+
import { hostname, networkInterfaces, userInfo } from 'node:os';
|
|
4
4
|
import { debug, log } from './logger.js';
|
|
5
5
|
import { getLanIp, buildMdnsInstanceName, mdnsUserTag, sanitizeMdnsLabel, MDNS_TXT_SCHEMA_VERSION, } from '@agentdeck/shared';
|
|
6
|
+
/**
|
|
7
|
+
* True when a LAN peer could actually route to this IPv4 address.
|
|
8
|
+
*
|
|
9
|
+
* `bonjour-service` publishes one A record per non-internal IPv4 address it
|
|
10
|
+
* finds, with no routability test (`service.js` -> `records()`). That set is
|
|
11
|
+
* captured at PUBLISH time, and the daemon publishes seconds after start — so a
|
|
12
|
+
* machine whose second interface is still negotiating DHCP advertises its
|
|
13
|
+
* transient `169.254/16` APIPA address as a way to reach the daemon. Nothing
|
|
14
|
+
* ever retracts it: the address disappears from `os.networkInterfaces()`, so no
|
|
15
|
+
* later announcement carries it and no goodbye is ever sent for it, while every
|
|
16
|
+
* resolver that heard it keeps handing it out.
|
|
17
|
+
*
|
|
18
|
+
* Measured on this repo's own fleet (2026-08-23): the advertised host resolved
|
|
19
|
+
* to `192.168.68.100`, `192.168.68.60` AND `169.254.213.161` while no interface
|
|
20
|
+
* on the machine held that third address. A board that picks it dials a dead
|
|
21
|
+
* address at max backoff forever, and — because it never reaches the daemon —
|
|
22
|
+
* leaves no trace in the daemon's log at all. That is the failure mode this
|
|
23
|
+
* predicate exists to prevent, and the reason the filter belongs on the
|
|
24
|
+
* PUBLISHING side: a client cannot tell a stale record from a live one.
|
|
25
|
+
*/
|
|
26
|
+
export function isRoutableIpv4(addr) {
|
|
27
|
+
// Link-local / APIPA. Self-assigned; never reachable from another host.
|
|
28
|
+
if (addr.startsWith('169.254.'))
|
|
29
|
+
return false;
|
|
30
|
+
// Loopback. `internal` already covers 127.0.0.1, but an alias on a
|
|
31
|
+
// non-internal interface would not be caught by that flag.
|
|
32
|
+
if (addr.startsWith('127.'))
|
|
33
|
+
return false;
|
|
34
|
+
if (addr === '0.0.0.0')
|
|
35
|
+
return false;
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* The IPv4 addresses this host would advertise, after the routability filter.
|
|
40
|
+
*
|
|
41
|
+
* This is the value the republish trigger watches. It deliberately returns the
|
|
42
|
+
* whole SET rather than one address: the publisher emits an A record per
|
|
43
|
+
* interface while `getLanIp()` names only the default-route one, so watching
|
|
44
|
+
* `getLanIp()` alone cannot see an address appear or vanish on any OTHER
|
|
45
|
+
* interface — which is exactly how the stale APIPA record above survived for
|
|
46
|
+
* hours with the recovery timer running the whole time. A change detector must
|
|
47
|
+
* watch what actually varies.
|
|
48
|
+
*/
|
|
49
|
+
export function advertisedIpv4Addresses() {
|
|
50
|
+
const out = [];
|
|
51
|
+
for (const addrs of Object.values(networkInterfaces())) {
|
|
52
|
+
for (const addr of addrs ?? []) {
|
|
53
|
+
if (addr.family !== 'IPv4')
|
|
54
|
+
continue;
|
|
55
|
+
if (addr.internal || addr.mac === '00:00:00:00:00:00')
|
|
56
|
+
continue;
|
|
57
|
+
if (!isRoutableIpv4(addr.address))
|
|
58
|
+
continue;
|
|
59
|
+
out.push(addr.address);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return out.sort();
|
|
63
|
+
}
|
|
6
64
|
let instance = null;
|
|
7
65
|
const MDNS_RECOVERY_INTERVAL = 5_000; // 5s — tightens WiFi-change discovery gap (was 30s)
|
|
8
66
|
/**
|
|
@@ -147,6 +205,24 @@ export function advertiseBridge(port, projectName, agentType) {
|
|
|
147
205
|
port,
|
|
148
206
|
txt,
|
|
149
207
|
});
|
|
208
|
+
// Drop unroutable A records at the source. `records()` is recomputed on
|
|
209
|
+
// every announce AND on the goodbye, so wrapping the instance method
|
|
210
|
+
// covers both: what we never announce, we never have to retract.
|
|
211
|
+
//
|
|
212
|
+
// This is a wrap rather than a config flag because `bonjour-service`
|
|
213
|
+
// offers none — it hard-codes "every non-internal IPv4 address" — and
|
|
214
|
+
// the `interface` option below pins only the SOCKET, not the record set,
|
|
215
|
+
// so even the Windows egress pin ships the bogus addresses inside the
|
|
216
|
+
// packet it sends out the right adapter.
|
|
217
|
+
const svc = service;
|
|
218
|
+
const baseRecords = svc.records?.bind(service);
|
|
219
|
+
if (baseRecords) {
|
|
220
|
+
svc.records = () => baseRecords().filter((r) => {
|
|
221
|
+
if (r.type !== 'A')
|
|
222
|
+
return true;
|
|
223
|
+
return typeof r.data === 'string' && isRoutableIpv4(r.data);
|
|
224
|
+
});
|
|
225
|
+
}
|
|
150
226
|
// Catch async publish errors — mDNS is non-critical
|
|
151
227
|
service.on?.('error', (err) => {
|
|
152
228
|
debug('mDNS', `Service error (ignored): ${err.message}`);
|
|
@@ -172,10 +248,16 @@ export function advertiseBridge(port, projectName, agentType) {
|
|
|
172
248
|
return false;
|
|
173
249
|
}
|
|
174
250
|
}
|
|
175
|
-
// Track published
|
|
251
|
+
// Track the published ADDRESS SET, not just the default-route IP. A record
|
|
252
|
+
// per interface goes out, so an address appearing or vanishing on a
|
|
253
|
+
// non-default interface changes what we advertise while `getLanIp()` stays
|
|
254
|
+
// put — and that gap is what let a transient APIPA address stay advertised
|
|
255
|
+
// for hours with this very timer running. See `advertisedIpv4Addresses`.
|
|
176
256
|
let publishedIp;
|
|
257
|
+
let publishedAddrs = '';
|
|
177
258
|
function publishAndTrackIp() {
|
|
178
259
|
publishedIp = getLanIp();
|
|
260
|
+
publishedAddrs = advertisedIpv4Addresses().join(',');
|
|
179
261
|
return publish();
|
|
180
262
|
}
|
|
181
263
|
// Initial publish
|
|
@@ -208,6 +290,13 @@ export function advertiseBridge(port, projectName, agentType) {
|
|
|
208
290
|
log(`[mDNS] IP changed (${publishedIp} → ${lanIp}) — re-publishing service`);
|
|
209
291
|
publishAndTrackIp();
|
|
210
292
|
}
|
|
293
|
+
else {
|
|
294
|
+
const addrs = advertisedIpv4Addresses().join(',');
|
|
295
|
+
if (addrs !== publishedAddrs) {
|
|
296
|
+
log(`[mDNS] Advertised address set changed (${publishedAddrs || 'none'} → ${addrs || 'none'}) — re-publishing service`);
|
|
297
|
+
publishAndTrackIp();
|
|
298
|
+
}
|
|
299
|
+
}
|
|
211
300
|
}, MDNS_RECOVERY_INTERVAL);
|
|
212
301
|
return () => {
|
|
213
302
|
stopped = true;
|
package/dist/mdns.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mdns.js","sourceRoot":"","sources":["../src/mdns.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"mdns.js","sourceRoot":"","sources":["../src/mdns.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEhE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,QAAQ,EACR,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAE3B;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,wEAAwE;IACxE,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,mEAAmE;IACnE,2DAA2D;IAC3D,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACrC,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;QACvD,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;gBAAE,SAAS;YACrC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,KAAK,mBAAmB;gBAAE,SAAS;YAChE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,SAAS;YAC5C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;AACpB,CAAC;AAED,IAAI,QAAQ,GAAmB,IAAI,CAAC;AAEpC,MAAM,sBAAsB,GAAG,KAAK,CAAC,CAAC,oDAAoD;AAE1F;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,UAAU,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC;AAEvF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAW,EAAE,IAAa;IAC5D,IAAI,GAAG,CAAC,QAAQ,CAAC,+BAA+B,CAAC;QAAE,OAAO,IAAI,CAAC;IAE/D,0EAA0E;IAC1E,gEAAgE;IAChE,MAAM,WAAW,GACf,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAClF,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAE/B,MAAM,SAAS,GAAG;QAChB,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW;QAC3D,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ;KACtD,CAAC;IACF,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB;IACpC,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,QAAQ,CAAC,OAAO,EAAE,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QACxB,QAAQ,GAAG,IAAI,CAAC;QAChB,KAAK,CAAC,MAAM,EAAE,uDAAuD,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,IAAI,gBAAgB,GAAwB,IAAI,CAAC;AAEjD;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,gBAAgB,EAAE,EAAE,CAAC;AACvB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAY,EACZ,WAAmB,EACnB,SAAoB;IAEpB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,aAAa,GAA0C,IAAI,CAAC;IAChE,IAAI,cAAc,GAAwB,IAAI,CAAC;IAE/C,SAAS,OAAO;QACd,IAAI,CAAC;YACH,qCAAqC;YACrC,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC;oBACH,QAAQ,CAAC,YAAY,EAAE,CAAC;oBACxB,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,CAAC;gBAAC,MAAM,CAAC,CAAC,2BAA2B,CAAC,CAAC;gBACvC,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;YAED,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;YAEzB,sEAAsE;YACtE,sEAAsE;YACtE,uEAAuE;YACvE,0EAA0E;YAC1E,2EAA2E;YAC3E,uEAAuE;YACvE,0EAA0E;YAC1E,0EAA0E;YAC1E,yEAAyE;YACzE,sEAAsE;YACtE,0EAA0E;YAC1E,yEAAyE;YACzE,MAAM,WAAW,GACf,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,IAAI,KAAK,KAAK,WAAW;gBAC5D,CAAC,CAAE,EAAE,SAAS,EAAE,KAAK,EAA+C;gBACpE,CAAC,CAAC,SAAS,CAAC;YAChB,QAAQ,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;YAEpC,4EAA4E;YAC5E,sEAAsE;YACtE,uEAAuE;YACvE,sEAAsE;YACtE,6DAA6D;YAC7D,MAAM,aAAa,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;YACpD,MAAM,OAAO,GAAG,WAAW,CACzB,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAC3D,QAAQ,EAAE,CAAC,QAAQ,CACpB,CAAC;YACF,MAAM,GAAG,GAA2B;gBAClC,OAAO,EAAE,WAAW;gBACpB,KAAK,EAAE,SAAS;gBAChB,gEAAgE;gBAChE,qEAAqE;gBACrE,qEAAqE;gBACrE,CAAC,EAAE,uBAAuB;gBAC1B,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;gBAClB,kEAAkE;gBAClE,uEAAuE;gBACvE,uCAAuC;gBACvC,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,OAAO;aACd,CAAC;YACF,IAAI,KAAK;gBAAE,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC;YAE1B,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;gBAC/B,IAAI,EAAE,qBAAqB,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gBAC7F,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,WAAW;gBACjB,IAAI;gBACJ,GAAG;aACJ,CAAC,CAAC;YAEH,wEAAwE;YACxE,qEAAqE;YACrE,iEAAiE;YACjE,EAAE;YACF,qEAAqE;YACrE,sEAAsE;YACtE,yEAAyE;YACzE,sEAAsE;YACtE,yCAAyC;YACzC,MAAM,GAAG,GAAG,OAAkF,CAAC;YAC/F,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/C,IAAI,WAAW,EAAE,CAAC;gBAChB,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC7C,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG;wBAAE,OAAO,IAAI,CAAC;oBAChC,OAAO,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC9D,CAAC,CAAC,CAAC;YACL,CAAC;YAED,oDAAoD;YACpD,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;gBACnC,KAAK,CAAC,MAAM,EAAE,4BAA4B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,MAAM,EAAE,qCAAqC,IAAI,cAAc,WAAW,GAAG,CAAC,CAAC;YAErF,cAAc,GAAG,GAAG,EAAE;gBACpB,IAAI,CAAC;oBACH,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;oBACjB,QAAQ,EAAE,YAAY,EAAE,CAAC;oBACzB,QAAQ,EAAE,OAAO,EAAE,CAAC;oBACpB,QAAQ,GAAG,IAAI,CAAC;gBAClB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,KAAK,CAAC,MAAM,EAAE,kBAAkB,GAAG,EAAE,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC,CAAC;YAEF,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,MAAM,EAAE,wBAAwB,GAAG,EAAE,CAAC,CAAC;YAC7C,QAAQ,GAAG,IAAI,CAAC;YAChB,cAAc,GAAG,IAAI,CAAC;YACtB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,oEAAoE;IACpE,2EAA2E;IAC3E,2EAA2E;IAC3E,yEAAyE;IACzE,IAAI,WAA+B,CAAC;IACpC,IAAI,cAAc,GAAG,EAAE,CAAC;IAExB,SAAS,iBAAiB;QACxB,WAAW,GAAG,QAAQ,EAAE,CAAC;QACzB,cAAc,GAAG,uBAAuB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,OAAO,OAAO,EAAE,CAAC;IACnB,CAAC;IAED,kBAAkB;IAClB,iBAAiB,EAAE,CAAC;IAEpB,2CAA2C;IAC3C,gBAAgB,GAAG,GAAG,EAAE;QACtB,IAAI,OAAO;YAAE,OAAO;QACpB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,GAAG,CAAC,6CAA6C,CAAC,CAAC;QACnD,sBAAsB,EAAE,CAAC;QACzB,iBAAiB,EAAE,CAAC;IACtB,CAAC,CAAC;IAEF,+DAA+D;IAC/D,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,IAAI,OAAO;YAAE,OAAO;QACpB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,CAAC,MAAM,EAAE,qCAAqC,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,GAAG,CAAC,kDAAkD,CAAC,CAAC;YACxD,iBAAiB,EAAE,CAAC;QACtB,CAAC;aAAM,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;YACjC,GAAG,CAAC,sBAAsB,WAAW,MAAM,KAAK,2BAA2B,CAAC,CAAC;YAC7E,iBAAiB,EAAE,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,uBAAuB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClD,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;gBAC7B,GAAG,CAAC,0CAA0C,cAAc,IAAI,MAAM,MAAM,KAAK,IAAI,MAAM,2BAA2B,CAAC,CAAC;gBACxH,iBAAiB,EAAE,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC,EAAE,sBAAsB,CAAC,CAAC;IAE3B,OAAO,GAAG,EAAE;QACV,OAAO,GAAG,IAAI,CAAC;QACf,gBAAgB,GAAG,IAAI,CAAC;QACxB,IAAI,aAAa,EAAE,CAAC;YAClB,aAAa,CAAC,aAAa,CAAC,CAAC;YAC7B,aAAa,GAAG,IAAI,CAAC;QACvB,CAAC;QACD,cAAc,EAAE,EAAE,CAAC;QACnB,cAAc,GAAG,IAAI,CAAC;IACxB,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openclaw-session.d.ts","sourceRoot":"","sources":["../src/openclaw-session.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,iEAAiE;IACjE,gBAAgB,EAAE,OAAO,CAAC;IAC1B,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,eAAe,EAAE,EAC3B,IAAI,EAAE,qBAAqB,GAC1B,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"openclaw-session.d.ts","sourceRoot":"","sources":["../src/openclaw-session.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,iEAAiE;IACjE,gBAAgB,EAAE,OAAO,CAAC;IAC1B,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,eAAe,EAAE,EAC3B,IAAI,EAAE,qBAAqB,GAC1B,eAAe,EAAE,CAsCnB"}
|
package/dist/openclaw-session.js
CHANGED
|
@@ -37,6 +37,19 @@ export function injectOpenClawSession(sessions, opts) {
|
|
|
37
37
|
injected.controlMode = opts.controlMode;
|
|
38
38
|
if (opts.approval) {
|
|
39
39
|
injected.question = opts.approval.question;
|
|
40
|
+
// The question is the command; `questionDetail` is everything that makes it
|
|
41
|
+
// a decision — the policy reason approval was demanded, the cwd, and WHICH
|
|
42
|
+
// OpenClaw session asked. All three were parsed and then dropped here, so a
|
|
43
|
+
// deck asked the user to approve a bare `sed -n` with no reason and no way
|
|
44
|
+
// to tell a cron heartbeat apart from a model-eval run (measured
|
|
45
|
+
// 2026-08-23: every approval came from `agent:main:eval-…__r2`, while the
|
|
46
|
+
// row said only "OpenClaw").
|
|
47
|
+
const detailLines = [
|
|
48
|
+
...(opts.approval.detail ? opts.approval.detail.split('\n') : []),
|
|
49
|
+
...(opts.approval.sessionKey ? [`session: ${opts.approval.sessionKey}`] : []),
|
|
50
|
+
].map((l) => l.trim()).filter(Boolean);
|
|
51
|
+
if (detailLines.length > 0)
|
|
52
|
+
injected.questionDetail = detailLines.join('\n');
|
|
40
53
|
injected.options = opts.approval.options.map((o) => ({
|
|
41
54
|
index: o.index, label: o.label, shortcut: o.shortcut,
|
|
42
55
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openclaw-session.js","sourceRoot":"","sources":["../src/openclaw-session.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAIhF;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAqBtD;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAA2B,EAC3B,IAA2B;IAE3B,IAAI,CAAC,uBAAuB,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC3F,IAAI,kBAAkB,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAClD,MAAM,QAAQ,GAAoB;QAChC,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,UAAU;QAC3C,SAAS,EAAE,UAAU;QACrB,KAAK,EAAE,IAAI;KACZ,CAAC;IACF,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC1D,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;QAAE,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACtE,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;QAAE,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAC5E,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC3C,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnD,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrD,CAAC,CAAC,CAAC;QACJ,QAAQ,CAAC,UAAU,GAAG,eAAe,CAAC;QACtC,yEAAyE;QACzE,wEAAwE;QACxE,4EAA4E;QAC5E,sBAAsB;QACtB,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;IACjC,CAAC;IACD,OAAO,CAAC,GAAG,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACjC,CAAC"}
|
|
1
|
+
{"version":3,"file":"openclaw-session.js","sourceRoot":"","sources":["../src/openclaw-session.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAIhF;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAqBtD;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAA2B,EAC3B,IAA2B;IAE3B,IAAI,CAAC,uBAAuB,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC3F,IAAI,kBAAkB,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAClD,MAAM,QAAQ,GAAoB;QAChC,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,UAAU;QAC3C,SAAS,EAAE,UAAU;QACrB,KAAK,EAAE,IAAI;KACZ,CAAC;IACF,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC1D,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;QAAE,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACtE,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;QAAE,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAC5E,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC3C,4EAA4E;QAC5E,2EAA2E;QAC3E,4EAA4E;QAC5E,2EAA2E;QAC3E,iEAAiE;QACjE,0EAA0E;QAC1E,6BAA6B;QAC7B,MAAM,WAAW,GAAG;YAClB,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9E,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;YAAE,QAAQ,CAAC,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7E,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnD,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrD,CAAC,CAAC,CAAC;QACJ,QAAQ,CAAC,UAAU,GAAG,eAAe,CAAC;QACtC,yEAAyE;QACzE,wEAAwE;QACxE,4EAA4E;QAC5E,sBAAsB;QACtB,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;IACjC,CAAC;IACD,OAAO,CAAC,GAAG,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACjC,CAAC"}
|