teamshare-bridge 0.26.20 → 0.26.22
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/bridge/daemon.js +60 -0
- package/dist/bridge/daemon.js.map +1 -1
- package/dist/bridge/local-server.d.ts +29 -0
- package/dist/bridge/local-server.js +231 -23
- package/dist/bridge/local-server.js.map +1 -1
- package/dist/bridge/session-relay.d.ts +14 -0
- package/dist/bridge/session-relay.js +53 -2
- package/dist/bridge/session-relay.js.map +1 -1
- package/dist/cli/commands/research.d.ts +7 -3
- package/dist/cli/commands/research.js +67 -15
- package/dist/cli/commands/research.js.map +1 -1
- package/dist/cli/commands/usage.js +85 -32
- package/dist/cli/commands/usage.js.map +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/lib/brief.js +3 -2
- package/dist/lib/brief.js.map +1 -1
- package/dist/lib/browser/batch.d.ts +23 -0
- package/dist/lib/browser/batch.js +33 -0
- package/dist/lib/browser/batch.js.map +1 -1
- package/dist/lib/browser/manager.d.ts +1 -0
- package/dist/lib/browser/manager.js +1 -0
- package/dist/lib/browser/manager.js.map +1 -1
- package/dist/lib/browser/network-log.d.ts +28 -3
- package/dist/lib/browser/network-log.js +74 -2
- package/dist/lib/browser/network-log.js.map +1 -1
- package/dist/lib/browser/profile-sweep.d.ts +15 -0
- package/dist/lib/browser/profile-sweep.js +69 -0
- package/dist/lib/browser/profile-sweep.js.map +1 -0
- package/dist/lib/browser/screen-change.d.ts +5 -0
- package/dist/lib/browser/screen-change.js +22 -1
- package/dist/lib/browser/screen-change.js.map +1 -1
- package/dist/lib/browser/session-pool.d.ts +40 -0
- package/dist/lib/browser/session-pool.js +62 -1
- package/dist/lib/browser/session-pool.js.map +1 -1
- package/dist/lib/browser/session.d.ts +51 -8
- package/dist/lib/browser/session.js +144 -15
- package/dist/lib/browser/session.js.map +1 -1
- package/dist/lib/harness/activity.d.ts +95 -0
- package/dist/lib/harness/activity.js +110 -0
- package/dist/lib/harness/activity.js.map +1 -0
- package/dist/lib/harness/opencode-control.d.ts +22 -0
- package/dist/lib/harness/opencode-control.js +47 -2
- package/dist/lib/harness/opencode-control.js.map +1 -1
- package/dist/lib/harness/spawn.js +237 -12
- package/dist/lib/harness/spawn.js.map +1 -1
- package/dist/lib/llm/usage-reader.d.ts +91 -4
- package/dist/lib/llm/usage-reader.js +750 -111
- package/dist/lib/llm/usage-reader.js.map +1 -1
- package/dist/lib/llm/usage.d.ts +9 -9
- package/dist/lib/llm/usage.js +9 -8
- package/dist/lib/llm/usage.js.map +1 -1
- package/dist/lib/orchestrator/handlers/browser.js +342 -56
- package/dist/lib/orchestrator/handlers/browser.js.map +1 -1
- package/dist/lib/workspace/bus.d.ts +9 -0
- package/dist/lib/workspace/bus.js +25 -0
- package/dist/lib/workspace/bus.js.map +1 -1
- package/package.json +1 -1
|
@@ -79,6 +79,20 @@ export declare const SNAPSHOT_BODY_BUDGET_CHARS = 1500000;
|
|
|
79
79
|
* everything that is not a page load or a static asset.
|
|
80
80
|
*/
|
|
81
81
|
export declare function isStaticAssetUrl(url: string, resourceType?: string): boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Preserve a finished redirect hop (2026-10).
|
|
84
|
+
*
|
|
85
|
+
* CDP reuses one request id across a whole redirect chain: every hop after
|
|
86
|
+
* the first arrives as `requestWillBeSent` carrying `redirectResponse`, and a
|
|
87
|
+
* naive `requests.set(id, entry)` overwrites the original POST (method + URL
|
|
88
|
+
* + request body) with the follow-up GET. For login/signup flows (POST →
|
|
89
|
+
* 302 → GET) that deletes exactly the request the test made, so the evidence
|
|
90
|
+
* shows what the server returned but never what the agent sent.
|
|
91
|
+
*
|
|
92
|
+
* Pure (maps in, maps mutated) so the policy is pinned by a unit test rather
|
|
93
|
+
* than discovered behind a live browser.
|
|
94
|
+
*/
|
|
95
|
+
export declare function preserveRedirectHop(requests: Map<string, NetworkEntry>, order: string[], id: string): void;
|
|
82
96
|
/**
|
|
83
97
|
* Fit a snapshot's bodies into ONE frame (2026-10-25).
|
|
84
98
|
*
|
|
@@ -117,8 +131,10 @@ export declare class NetworkLog {
|
|
|
117
131
|
/**
|
|
118
132
|
* Read the collected evidence. Bodies are fetched on demand (CDP keeps them
|
|
119
133
|
* only until navigation), so the caller gets real request/response excerpts
|
|
120
|
-
* instead of just URLs.
|
|
121
|
-
* `loadingFinished
|
|
134
|
+
* instead of just URLs. Response bodies were already captured eagerly on
|
|
135
|
+
* `loadingFinished`; request bodies get the same second chance here when the
|
|
136
|
+
* event-time read raced or was never inline — otherwise the evidence shows
|
|
137
|
+
* what the server returned but not what the agent sent.
|
|
122
138
|
*/
|
|
123
139
|
snapshot(page: CdpPage | null, opts?: {
|
|
124
140
|
limit?: number;
|
|
@@ -145,7 +161,16 @@ export declare class NetworkLog {
|
|
|
145
161
|
/** Collector health + counts, written into every network read/evidence doc. */
|
|
146
162
|
status(): NetworkLogStatus;
|
|
147
163
|
/** `Network.getResponseBody` wired through the pending-map CDP client. */
|
|
148
|
-
|
|
164
|
+
protected getResponseBody(page: CdpPage, requestId: string): Promise<{
|
|
165
|
+
body?: string;
|
|
166
|
+
base64?: boolean;
|
|
167
|
+
} | null>;
|
|
168
|
+
/**
|
|
169
|
+
* `Network.getRequestPostData` wired through the pending-map CDP client.
|
|
170
|
+
* Unlike the response call there is no base64 flag — CDP returns post data
|
|
171
|
+
* as text (form/JSON/multipart); binary uploads simply come back absent.
|
|
172
|
+
*/
|
|
173
|
+
protected getRequestPostData(page: CdpPage, requestId: string): Promise<string | undefined>;
|
|
149
174
|
reset(): void;
|
|
150
175
|
/**
|
|
151
176
|
* Requests still in flight (no response and no failure yet), used by the
|
|
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.NetworkLog = exports.SNAPSHOT_BODY_BUDGET_CHARS = void 0;
|
|
37
37
|
exports.isStaticAssetUrl = isStaticAssetUrl;
|
|
38
|
+
exports.preserveRedirectHop = preserveRedirectHop;
|
|
38
39
|
exports.capSnapshotBodies = capSnapshotBodies;
|
|
39
40
|
/**
|
|
40
41
|
* Network + console evidence for QA (2026-10).
|
|
@@ -122,6 +123,38 @@ function isApiRequest(entry) {
|
|
|
122
123
|
// Default: treat unknown navigations/scripts as non-API, everything else as API.
|
|
123
124
|
return type !== 'document' && type !== 'script';
|
|
124
125
|
}
|
|
126
|
+
/**
|
|
127
|
+
* Preserve a finished redirect hop (2026-10).
|
|
128
|
+
*
|
|
129
|
+
* CDP reuses one request id across a whole redirect chain: every hop after
|
|
130
|
+
* the first arrives as `requestWillBeSent` carrying `redirectResponse`, and a
|
|
131
|
+
* naive `requests.set(id, entry)` overwrites the original POST (method + URL
|
|
132
|
+
* + request body) with the follow-up GET. For login/signup flows (POST →
|
|
133
|
+
* 302 → GET) that deletes exactly the request the test made, so the evidence
|
|
134
|
+
* shows what the server returned but never what the agent sent.
|
|
135
|
+
*
|
|
136
|
+
* Pure (maps in, maps mutated) so the policy is pinned by a unit test rather
|
|
137
|
+
* than discovered behind a live browser.
|
|
138
|
+
*/
|
|
139
|
+
function preserveRedirectHop(requests, order, id) {
|
|
140
|
+
const prev = requests.get(id);
|
|
141
|
+
if (!prev)
|
|
142
|
+
return;
|
|
143
|
+
let n = 1;
|
|
144
|
+
while (requests.has(`${id}#redirect-${n}`))
|
|
145
|
+
n++;
|
|
146
|
+
const hopId = `${id}#redirect-${n}`;
|
|
147
|
+
if (prev.durationMs === undefined) {
|
|
148
|
+
prev.durationMs = Math.max(0, Date.now() - prev.startedAt);
|
|
149
|
+
}
|
|
150
|
+
prev.id = hopId;
|
|
151
|
+
requests.set(hopId, prev);
|
|
152
|
+
const idx = order.indexOf(id);
|
|
153
|
+
if (idx >= 0)
|
|
154
|
+
order[idx] = hopId;
|
|
155
|
+
else
|
|
156
|
+
order.push(hopId);
|
|
157
|
+
}
|
|
125
158
|
/**
|
|
126
159
|
* Fit a snapshot's bodies into ONE frame (2026-10-25).
|
|
127
160
|
*
|
|
@@ -184,6 +217,12 @@ class NetworkLog {
|
|
|
184
217
|
if (!id)
|
|
185
218
|
return;
|
|
186
219
|
this.lastEventAt = Date.now();
|
|
220
|
+
// A hop carrying `redirectResponse` finishes the entry already stored
|
|
221
|
+
// under this id — seal it first (method + URL + request body intact)
|
|
222
|
+
// instead of overwriting the original request with its redirect.
|
|
223
|
+
if (params?.redirectResponse) {
|
|
224
|
+
preserveRedirectHop(this.requests, this.order, id);
|
|
225
|
+
}
|
|
187
226
|
const req = params?.request ?? {};
|
|
188
227
|
const entry = {
|
|
189
228
|
id,
|
|
@@ -402,8 +441,10 @@ class NetworkLog {
|
|
|
402
441
|
/**
|
|
403
442
|
* Read the collected evidence. Bodies are fetched on demand (CDP keeps them
|
|
404
443
|
* only until navigation), so the caller gets real request/response excerpts
|
|
405
|
-
* instead of just URLs.
|
|
406
|
-
* `loadingFinished
|
|
444
|
+
* instead of just URLs. Response bodies were already captured eagerly on
|
|
445
|
+
* `loadingFinished`; request bodies get the same second chance here when the
|
|
446
|
+
* event-time read raced or was never inline — otherwise the evidence shows
|
|
447
|
+
* what the server returned but not what the agent sent.
|
|
407
448
|
*/
|
|
408
449
|
async snapshot(page, opts) {
|
|
409
450
|
const limit = Math.min(Math.max(opts?.limit ?? 100, 1), 1000);
|
|
@@ -454,6 +495,23 @@ class NetworkLog {
|
|
|
454
495
|
catch {
|
|
455
496
|
/* body already evicted (navigation) — URL/status stay useful */
|
|
456
497
|
}
|
|
498
|
+
// Request bodies get the same on-demand second chance as responses:
|
|
499
|
+
// a POST whose postData was not inline (or whose eager hasPostData
|
|
500
|
+
// fetch raced) would otherwise be recorded with no body forever.
|
|
501
|
+
// GET/HEAD never carry one, so they are not probed.
|
|
502
|
+
if (!entry.requestBody &&
|
|
503
|
+
entry.method !== 'GET' &&
|
|
504
|
+
entry.method !== 'HEAD') {
|
|
505
|
+
try {
|
|
506
|
+
const post = await this.getRequestPostData(page, entry.id);
|
|
507
|
+
if (post) {
|
|
508
|
+
entry.requestBody = excerpt(post, MAX_BODY_CHARS);
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
catch {
|
|
512
|
+
/* evicted — method/URL stay useful */
|
|
513
|
+
}
|
|
514
|
+
}
|
|
457
515
|
}));
|
|
458
516
|
}
|
|
459
517
|
// Apply the CALLER's cap to a copy: a 4 KB agent read must not truncate the
|
|
@@ -502,6 +560,20 @@ class NetworkLog {
|
|
|
502
560
|
base64: result.base64Encoded === true,
|
|
503
561
|
};
|
|
504
562
|
}
|
|
563
|
+
/**
|
|
564
|
+
* `Network.getRequestPostData` wired through the pending-map CDP client.
|
|
565
|
+
* Unlike the response call there is no base64 flag — CDP returns post data
|
|
566
|
+
* as text (form/JSON/multipart); binary uploads simply come back absent.
|
|
567
|
+
*/
|
|
568
|
+
async getRequestPostData(page, requestId) {
|
|
569
|
+
const { cdpSend } = await Promise.resolve().then(() => __importStar(require('./cdp')));
|
|
570
|
+
const result = await cdpSend(page, 'Network.getRequestPostData', {
|
|
571
|
+
requestId,
|
|
572
|
+
});
|
|
573
|
+
return typeof result?.postData === 'string' && result.postData
|
|
574
|
+
? result.postData
|
|
575
|
+
: undefined;
|
|
576
|
+
}
|
|
505
577
|
reset() {
|
|
506
578
|
this.requests.clear();
|
|
507
579
|
this.order = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-log.js","sourceRoot":"","sources":["../../../src/lib/browser/network-log.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"network-log.js","sourceRoot":"","sources":["../../../src/lib/browser/network-log.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const QA_PROFILE_TTL_MS: number;
|
|
2
|
+
export declare function sweepStaleQaProfiles(opts: {
|
|
3
|
+
baseDir: string;
|
|
4
|
+
liveDirs: string[];
|
|
5
|
+
now?: number;
|
|
6
|
+
fs?: {
|
|
7
|
+
exists: (p: string) => boolean;
|
|
8
|
+
list: (p: string) => string[];
|
|
9
|
+
mtimeMs: (p: string) => number;
|
|
10
|
+
remove: (p: string) => void;
|
|
11
|
+
};
|
|
12
|
+
}): {
|
|
13
|
+
removed: string[];
|
|
14
|
+
kept: string[];
|
|
15
|
+
};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QA_PROFILE_TTL_MS = void 0;
|
|
4
|
+
exports.sweepStaleQaProfiles = sweepStaleQaProfiles;
|
|
5
|
+
/**
|
|
6
|
+
* Profile hygiene for per-window QA browsers (2026-11).
|
|
7
|
+
*
|
|
8
|
+
* One window per identity means run-scoped isolated profiles accumulate under
|
|
9
|
+
* `<debug-profile>-sessions/`. This sweep deletes dirs older than 7 days that
|
|
10
|
+
* NO live session owns. It never touches the shared debug profile or a named
|
|
11
|
+
* `chrome-profiles/` dir. The daemon runs it at boot, after reclaiming browsers
|
|
12
|
+
* a previous instance left open (so their profiles are not in use), and again
|
|
13
|
+
* every 24 h.
|
|
14
|
+
*
|
|
15
|
+
* Pure-ish: the filesystem walk is injectable for tests.
|
|
16
|
+
*/
|
|
17
|
+
const node_fs_1 = require("node:fs");
|
|
18
|
+
const node_path_1 = require("node:path");
|
|
19
|
+
exports.QA_PROFILE_TTL_MS = 7 * 24 * 60 * 60 * 1000;
|
|
20
|
+
function sweepStaleQaProfiles(opts) {
|
|
21
|
+
const now = opts.now ?? Date.now();
|
|
22
|
+
const fs = opts.fs ?? {
|
|
23
|
+
exists: (p) => (0, node_fs_1.existsSync)(p),
|
|
24
|
+
list: (p) => (0, node_fs_1.readdirSync)(p),
|
|
25
|
+
mtimeMs: (p) => (0, node_fs_1.statSync)(p).mtimeMs,
|
|
26
|
+
remove: (p) => (0, node_fs_1.rmSync)(p, { recursive: true, force: true }),
|
|
27
|
+
};
|
|
28
|
+
const sessionsDir = (0, node_path_1.join)((0, node_path_1.dirname)(opts.baseDir), `${(0, node_path_1.basename)(opts.baseDir)}-sessions`);
|
|
29
|
+
const removed = [];
|
|
30
|
+
const kept = [];
|
|
31
|
+
if (!fs.exists(sessionsDir))
|
|
32
|
+
return { removed, kept };
|
|
33
|
+
const live = new Set((opts.liveDirs ?? []).map((d) => d.toLowerCase()));
|
|
34
|
+
let entries;
|
|
35
|
+
try {
|
|
36
|
+
entries = fs.list(sessionsDir);
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
return { removed, kept };
|
|
40
|
+
}
|
|
41
|
+
for (const entry of entries) {
|
|
42
|
+
const dir = (0, node_path_1.join)(sessionsDir, entry);
|
|
43
|
+
if (live.has(dir.toLowerCase())) {
|
|
44
|
+
kept.push(dir);
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
let age = 0;
|
|
48
|
+
try {
|
|
49
|
+
age = now - fs.mtimeMs(dir);
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
kept.push(dir);
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
if (age < exports.QA_PROFILE_TTL_MS) {
|
|
56
|
+
kept.push(dir);
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
fs.remove(dir);
|
|
61
|
+
removed.push(dir);
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
kept.push(dir);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return { removed, kept };
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=profile-sweep.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile-sweep.js","sourceRoot":"","sources":["../../../src/lib/browser/profile-sweep.ts"],"names":[],"mappings":";;;AAiBA,oDAyDC;AA1ED;;;;;;;;;;;GAWG;AACH,qCAAoE;AACpE,yCAAoD;AAEvC,QAAA,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEzD,SAAgB,oBAAoB,CAAC,IAUpC;IACC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IACnC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI;QACpB,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,IAAA,oBAAU,EAAC,CAAC,CAAC;QACpC,IAAI,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,IAAA,qBAAW,EAAC,CAAC,CAAC;QACnC,OAAO,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,IAAA,kBAAQ,EAAC,CAAC,CAAC,CAAC,OAAO;QAC3C,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,IAAA,gBAAM,EAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;KACnE,CAAC;IACF,MAAM,WAAW,GAAG,IAAA,gBAAI,EACtB,IAAA,mBAAO,EAAC,IAAI,CAAC,OAAO,CAAC,EACrB,GAAG,IAAA,oBAAQ,EAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CACrC,CAAC;IACF,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACtD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACxE,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,IAAA,gBAAI,EAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACf,SAAS;QACX,CAAC;QACD,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,IAAI,CAAC;YACH,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACf,SAAS;QACX,CAAC;QACD,IAAI,GAAG,GAAG,yBAAiB,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACf,SAAS;QACX,CAAC;QACD,IAAI,CAAC;YACH,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -39,5 +39,10 @@ export declare function isMainFrameNavigation(params: {
|
|
|
39
39
|
* from its own source so the unit-tested function is the one that runs in-page.
|
|
40
40
|
* The script is idempotent: it early-returns when its Symbol key already exists
|
|
41
41
|
* on the current document.
|
|
42
|
+
*
|
|
43
|
+
* 2026-11: SPA-awareness for the QA browser. `pushState`/`replaceState`/
|
|
44
|
+
* `popstate` store `url` + `urlAt` on the same record, so a client-side route
|
|
45
|
+
* change (no `Page.frameNavigated`, no DOM swap yet) is visible as a navigation
|
|
46
|
+
* signal exactly like a full load. The debug browser's settle waits on it.
|
|
42
47
|
*/
|
|
43
48
|
export declare function buildObserverScript(): string;
|
|
@@ -60,6 +60,11 @@ function isMainFrameNavigation(params) {
|
|
|
60
60
|
* from its own source so the unit-tested function is the one that runs in-page.
|
|
61
61
|
* The script is idempotent: it early-returns when its Symbol key already exists
|
|
62
62
|
* on the current document.
|
|
63
|
+
*
|
|
64
|
+
* 2026-11: SPA-awareness for the QA browser. `pushState`/`replaceState`/
|
|
65
|
+
* `popstate` store `url` + `urlAt` on the same record, so a client-side route
|
|
66
|
+
* change (no `Page.frameNavigated`, no DOM swap yet) is visible as a navigation
|
|
67
|
+
* signal exactly like a full load. The debug browser's settle waits on it.
|
|
63
68
|
*/
|
|
64
69
|
function buildObserverScript() {
|
|
65
70
|
return `
|
|
@@ -88,6 +93,15 @@ function buildObserverScript() {
|
|
|
88
93
|
}
|
|
89
94
|
} catch {}
|
|
90
95
|
}
|
|
96
|
+
function stampUrl() {
|
|
97
|
+
try {
|
|
98
|
+
const href = location.href;
|
|
99
|
+
if (window[KEY].url !== href) {
|
|
100
|
+
window[KEY].url = href;
|
|
101
|
+
window[KEY].urlAt = Date.now();
|
|
102
|
+
}
|
|
103
|
+
} catch {}
|
|
104
|
+
}
|
|
91
105
|
const obs = new MutationObserver((mutations) => {
|
|
92
106
|
let hasRelevant = false;
|
|
93
107
|
for (const m of mutations) {
|
|
@@ -116,10 +130,17 @@ function buildObserverScript() {
|
|
|
116
130
|
}
|
|
117
131
|
});
|
|
118
132
|
lastText = getText();
|
|
119
|
-
window[KEY] = { observer: obs, changed: 0, mutated: 0 };
|
|
133
|
+
window[KEY] = { observer: obs, changed: 0, mutated: 0, url: location.href, urlAt: 0, navAt: 0 };
|
|
120
134
|
// String-addressable alias for OTHER injected scripts (the debug
|
|
121
135
|
// browser's waitFor reads it; a Symbol is not reachable by name).
|
|
122
136
|
window.__tsScreenObs = window[KEY];
|
|
137
|
+
try {
|
|
138
|
+
const origPush = history.pushState.bind(history);
|
|
139
|
+
const origReplace = history.replaceState.bind(history);
|
|
140
|
+
history.pushState = function () { const r = origPush(...arguments); stampUrl(); return r; };
|
|
141
|
+
history.replaceState = function () { const r = origReplace(...arguments); stampUrl(); return r; };
|
|
142
|
+
window.addEventListener('popstate', stampUrl);
|
|
143
|
+
} catch {}
|
|
123
144
|
obs.observe(document.body || document.documentElement, {
|
|
124
145
|
childList: true, subtree: true, characterData: true
|
|
125
146
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screen-change.js","sourceRoot":"","sources":["../../../src/lib/browser/screen-change.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAcH,kDAkBC;AAOD,sDAIC;
|
|
1
|
+
{"version":3,"file":"screen-change.js","sourceRoot":"","sources":["../../../src/lib/browser/screen-change.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAcH,kDAkBC;AAOD,sDAIC;AAaD,kDAiFC;AAvID,0EAA0E;AAC7D,QAAA,uBAAuB,GAAG,EAAE,CAAC;AAE1C;;;;;;;;GAQG;AACH,SAAgB,mBAAmB,CACjC,QAAgB,EAChB,QAAgB;IAEhB,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACpB,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM;gBAAE,OAAO,EAAE,CAAC;;gBACpD,OAAO,EAAE,CAAC;QACjB,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC/D,OAAO,KAAK,GAAG,EAAE,GAAG,OAAO,GAAG,EAAE,GAAG,OAAO,GAAG,CAAC,CAAC;AACjD,CAAC;AAED;;;;GAIG;AACH,SAAgB,qBAAqB,CACnC,MAA4D;IAE5D,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;AACnD,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,mBAAmB;IACjC,OAAO;;;;;sCAK6B,mBAAmB,CAAC,QAAQ,EAAE;;;;;;;;;;;;;;;;qDAgBf,+BAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA0DvE,CAAC;AACN,CAAC"}
|
|
@@ -41,4 +41,44 @@ export declare function pickDebugProfileDir(opts: {
|
|
|
41
41
|
sessionKey: string;
|
|
42
42
|
usedDirs: Iterable<string>;
|
|
43
43
|
namedDir?: string;
|
|
44
|
+
/** Force an isolated per-session profile, never the shared one (2026-11). */
|
|
45
|
+
forceIsolated?: boolean;
|
|
44
46
|
}): ProfileChoice;
|
|
47
|
+
/** Normalize a test-account label for comparison (2026-11). */
|
|
48
|
+
export declare function normalizeActor(raw: unknown): string | null;
|
|
49
|
+
/**
|
|
50
|
+
* Resolve the session a no-sessionId command runs against (2026-11).
|
|
51
|
+
*
|
|
52
|
+
* Explicit > the caller's remembered names > the derived identity default.
|
|
53
|
+
* Only the CALLER's windows count: another agent's Chrome on the same machine
|
|
54
|
+
* must never make my action ambiguous. With two or more of MY live windows
|
|
55
|
+
* and no name, the command is AMBIGUOUS — acting on "whichever was touched
|
|
56
|
+
* last" would drive the wrong Chrome.
|
|
57
|
+
*/
|
|
58
|
+
export declare function resolveSessionForCommand(input: {
|
|
59
|
+
explicit?: string | null;
|
|
60
|
+
remembered: string[];
|
|
61
|
+
derived: string;
|
|
62
|
+
live: Array<{
|
|
63
|
+
id: string;
|
|
64
|
+
actor?: string | null;
|
|
65
|
+
}>;
|
|
66
|
+
}): {
|
|
67
|
+
sessionId: string;
|
|
68
|
+
} | {
|
|
69
|
+
ambiguous: Array<{
|
|
70
|
+
id: string;
|
|
71
|
+
actor?: string | null;
|
|
72
|
+
}>;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Actor gate for tagged windows (2026-11). A window never changes hands:
|
|
76
|
+
* a login in the Admin window can only be the Admin.
|
|
77
|
+
*/
|
|
78
|
+
export declare function assertActorForLogin(input: {
|
|
79
|
+
sessionActor?: string | null;
|
|
80
|
+
callActor?: string | null;
|
|
81
|
+
}): null | {
|
|
82
|
+
code: 'ACTOR_REQUIRED' | 'WRONG_SESSION_ACTOR';
|
|
83
|
+
message: string;
|
|
84
|
+
};
|
|
@@ -6,6 +6,9 @@ exports.deriveSessionKey = deriveSessionKey;
|
|
|
6
6
|
exports.sessionSlug = sessionSlug;
|
|
7
7
|
exports.pickDebugPort = pickDebugPort;
|
|
8
8
|
exports.pickDebugProfileDir = pickDebugProfileDir;
|
|
9
|
+
exports.normalizeActor = normalizeActor;
|
|
10
|
+
exports.resolveSessionForCommand = resolveSessionForCommand;
|
|
11
|
+
exports.assertActorForLogin = assertActorForLogin;
|
|
9
12
|
/**
|
|
10
13
|
* Browser session identity + port/profile allocation (2026-10).
|
|
11
14
|
*
|
|
@@ -116,7 +119,7 @@ function pickDebugProfileDir(opts) {
|
|
|
116
119
|
}
|
|
117
120
|
return { dir: opts.namedDir, shared: false };
|
|
118
121
|
}
|
|
119
|
-
if (!used.has(key(opts.baseDir))) {
|
|
122
|
+
if (!used.has(key(opts.baseDir)) && !opts.forceIsolated) {
|
|
120
123
|
return { dir: opts.baseDir, shared: true };
|
|
121
124
|
}
|
|
122
125
|
const dir = (0, node_path_1.join)((0, node_path_1.dirname)(opts.baseDir), `${(0, node_path_1.basename)(opts.baseDir)}-sessions`, sessionSlug(opts.sessionKey));
|
|
@@ -125,4 +128,62 @@ function pickDebugProfileDir(opts) {
|
|
|
125
128
|
}
|
|
126
129
|
return { dir, shared: false };
|
|
127
130
|
}
|
|
131
|
+
/** Normalize a test-account label for comparison (2026-11). */
|
|
132
|
+
function normalizeActor(raw) {
|
|
133
|
+
if (typeof raw !== 'string')
|
|
134
|
+
return null;
|
|
135
|
+
const trimmed = raw.trim();
|
|
136
|
+
return trimmed ? trimmed.toLowerCase() : null;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Resolve the session a no-sessionId command runs against (2026-11).
|
|
140
|
+
*
|
|
141
|
+
* Explicit > the caller's remembered names > the derived identity default.
|
|
142
|
+
* Only the CALLER's windows count: another agent's Chrome on the same machine
|
|
143
|
+
* must never make my action ambiguous. With two or more of MY live windows
|
|
144
|
+
* and no name, the command is AMBIGUOUS — acting on "whichever was touched
|
|
145
|
+
* last" would drive the wrong Chrome.
|
|
146
|
+
*/
|
|
147
|
+
function resolveSessionForCommand(input) {
|
|
148
|
+
if (input.explicit)
|
|
149
|
+
return { sessionId: input.explicit };
|
|
150
|
+
const liveById = new Map(input.live.map((s) => [s.id, s]));
|
|
151
|
+
const owned = input.remembered.filter((id) => liveById.has(id));
|
|
152
|
+
if (owned.length >= 2) {
|
|
153
|
+
return { ambiguous: owned.map((id) => liveById.get(id)) };
|
|
154
|
+
}
|
|
155
|
+
if (owned.length === 1)
|
|
156
|
+
return { sessionId: owned[0] };
|
|
157
|
+
// None of my remembered windows is live: fall back to my derived default.
|
|
158
|
+
// When it is not live either, the action fails with "No active browser
|
|
159
|
+
// session <derived>" — which is the correct answer, never another agent's
|
|
160
|
+
// window and never a guess.
|
|
161
|
+
return { sessionId: input.derived };
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Actor gate for tagged windows (2026-11). A window never changes hands:
|
|
165
|
+
* a login in the Admin window can only be the Admin.
|
|
166
|
+
*/
|
|
167
|
+
function assertActorForLogin(input) {
|
|
168
|
+
const session = normalizeActor(input.sessionActor);
|
|
169
|
+
const call = normalizeActor(input.callActor);
|
|
170
|
+
if (!session)
|
|
171
|
+
return null;
|
|
172
|
+
if (!call) {
|
|
173
|
+
return {
|
|
174
|
+
code: 'ACTOR_REQUIRED',
|
|
175
|
+
message: `ACTOR_REQUIRED: this browser window is tagged for "${input.sessionActor}". ` +
|
|
176
|
+
`Pass actor:"${input.sessionActor}" on login (and sessionId on every action).`,
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
if (session !== call) {
|
|
180
|
+
return {
|
|
181
|
+
code: 'WRONG_SESSION_ACTOR',
|
|
182
|
+
message: `WRONG_SESSION_ACTOR: this window belongs to "${input.sessionActor}" — ` +
|
|
183
|
+
`it cannot sign in as "${input.callActor}". Open that account's own window ` +
|
|
184
|
+
`with browser_open({ sessionId, actor:"${input.callActor}" }) instead.`,
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
return null;
|
|
188
|
+
}
|
|
128
189
|
//# sourceMappingURL=session-pool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-pool.js","sourceRoot":"","sources":["../../../src/lib/browser/session-pool.ts"],"names":[],"mappings":";;;AAoCA,kDAUC;AASD,4CAQC;AAGD,kCAQC;AAQD,sCAcC;AAoBD,
|
|
1
|
+
{"version":3,"file":"session-pool.js","sourceRoot":"","sources":["../../../src/lib/browser/session-pool.ts"],"names":[],"mappings":"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"}
|