@jobshimo/browser-link 0.43.0 → 0.44.1
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/README.md +26 -2
- package/dist/bridge/ws-bridge.d.ts +6 -2
- package/dist/bridge/ws-bridge.js +34 -27
- package/dist/bridge/ws-bridge.js.map +1 -1
- package/dist/cdp/inpage/observer.d.ts +2 -2
- package/dist/cdp/inpage/observer.js +11 -4
- package/dist/cdp/inpage/observer.js.map +1 -1
- package/dist/cli.d.ts +6 -0
- package/dist/cli.js +32 -7
- package/dist/cli.js.map +1 -1
- package/dist/commands/config.d.ts +15 -0
- package/dist/commands/config.js +55 -5
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/doctor.d.ts +20 -1
- package/dist/commands/doctor.js +41 -19
- package/dist/commands/doctor.js.map +1 -1
- package/dist/config.d.ts +20 -0
- package/dist/config.js +20 -0
- package/dist/config.js.map +1 -1
- package/dist/downloads.d.ts +10 -3
- package/dist/downloads.js +23 -4
- package/dist/downloads.js.map +1 -1
- package/dist/extension/activity.html +30 -4
- package/dist/extension/admin.d.ts +1 -0
- package/dist/extension/admin.html +290 -0
- package/dist/extension/admin.js +210 -0
- package/dist/extension/admin.js.map +1 -0
- package/dist/extension/background.js +41 -0
- package/dist/extension/background.js.map +1 -1
- package/dist/extension/inpage/observer.d.ts +2 -2
- package/dist/extension/inpage/observer.js +11 -4
- package/dist/extension/inpage/observer.js.map +1 -1
- package/dist/extension/manifest.json +1 -1
- package/dist/extension/popup.html +28 -119
- package/dist/extension/popup.js +12 -205
- package/dist/extension/popup.js.map +1 -1
- package/dist/lifecycle/election.d.ts +16 -5
- package/dist/lifecycle/election.js +21 -4
- package/dist/lifecycle/election.js.map +1 -1
- package/dist/lifecycle/processes.d.ts +18 -0
- package/dist/lifecycle/processes.js +40 -7
- package/dist/lifecycle/processes.js.map +1 -1
- package/dist/lifecycle/repair.d.ts +15 -3
- package/dist/lifecycle/repair.js +41 -8
- package/dist/lifecycle/repair.js.map +1 -1
- package/dist/lifecycle/version-endpoint.d.ts +8 -3
- package/dist/lifecycle/version-endpoint.js +19 -4
- package/dist/lifecycle/version-endpoint.js.map +1 -1
- package/dist/manual/refresh.js +6 -0
- package/dist/manual/refresh.js.map +1 -1
- package/dist/permissions.js +6 -0
- package/dist/permissions.js.map +1 -1
- package/dist/server.js +8 -4
- package/dist/server.js.map +1 -1
- package/dist/tools/browser-definitions.js +6 -1
- package/dist/tools/browser-definitions.js.map +1 -1
- package/dist/tools/browser-dispatch.js +28 -4
- package/dist/tools/browser-dispatch.js.map +1 -1
- package/package.json +1 -1
package/dist/commands/config.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MAX_CDP_DIRECT_PORT, MAX_GRANT_TTL_MINUTES, MAX_IDLE_TTL_MINUTES, MIN_CDP_DIRECT_PORT, MIN_GRANT_TTL_MINUTES, MIN_IDLE_TTL_MINUTES, clampCdpDirectPort, clampGrantTtlMinutes, clampIdleTtlMinutes, loadConfig, saveConfig, } from '../config.js';
|
|
1
|
+
import { DEFAULT_DOWNLOADS_MAX_MB, MAX_CDP_DIRECT_PORT, MAX_DOWNLOADS_MAX_MB, MAX_GRANT_TTL_MINUTES, MAX_IDLE_TTL_MINUTES, MIN_CDP_DIRECT_PORT, MIN_DOWNLOADS_MAX_MB, MIN_GRANT_TTL_MINUTES, MIN_IDLE_TTL_MINUTES, clampCdpDirectPort, clampGrantTtlMinutes, clampIdleTtlMinutes, loadConfig, sanitizeDownloadsMaxMb, saveConfig, } from '../config.js';
|
|
2
2
|
import { isAbsolute } from 'node:path';
|
|
3
3
|
import { HandshakeError, IpcClient } from '../bridge/ipc-client.js';
|
|
4
4
|
import { resolveDownloadsDir } from '../downloads.js';
|
|
@@ -21,8 +21,8 @@ export const CFG_I18N = {
|
|
|
21
21
|
pushedNone: ' No tabs are currently connected — it will apply the next time one connects.',
|
|
22
22
|
pushUnavailable: ' Could not reach a running browser-link primary (not running, or multi-agent mode is off) — it will apply the next time a tab connects.',
|
|
23
23
|
pushRejected: ' A running primary rejected the push (stale or mismatched multi-agent token — it may have just restarted). The value is saved and applies the next time a tab connects.',
|
|
24
|
-
usage: 'Usage: browser-link config get [idle-ttl|flow-recording|cdp-direct.enabled|cdp-direct.port|cdp-direct.grant-ttl|downloads.dir|map-learning] | browser-link config set idle-ttl <minutes|never> | browser-link config set flow-recording <on|off> | browser-link config set cdp-direct.enabled <true|false> | browser-link config set cdp-direct.port <port> | browser-link config set cdp-direct.grant-ttl <minutes|never> | browser-link config set downloads.dir <absolute-path|default> | browser-link config set map-learning <on|off>',
|
|
25
|
-
unknownKey: (key) => `Unknown config key: ${key}. Known keys: idle-ttl, flow-recording, cdp-direct.enabled, cdp-direct.port, cdp-direct.grant-ttl, downloads.dir, map-learning.`,
|
|
24
|
+
usage: 'Usage: browser-link config get [idle-ttl|flow-recording|cdp-direct.enabled|cdp-direct.port|cdp-direct.grant-ttl|downloads.dir|downloads.max-mb|map-learning] | browser-link config set idle-ttl <minutes|never> | browser-link config set flow-recording <on|off> | browser-link config set cdp-direct.enabled <true|false> | browser-link config set cdp-direct.port <port> | browser-link config set cdp-direct.grant-ttl <minutes|never> | browser-link config set downloads.dir <absolute-path|default> | browser-link config set downloads.max-mb <1..64|default> | browser-link config set map-learning <on|off>',
|
|
25
|
+
unknownKey: (key) => `Unknown config key: ${key}. Known keys: idle-ttl, flow-recording, cdp-direct.enabled, cdp-direct.port, cdp-direct.grant-ttl, downloads.dir, downloads.max-mb, map-learning.`,
|
|
26
26
|
unknownAction: (action) => `Unknown config action: ${action}. Use get or set.`,
|
|
27
27
|
flowRecordingLabel: 'flow-recording',
|
|
28
28
|
flowRecordingEnabled: 'enabled',
|
|
@@ -46,6 +46,11 @@ export const CFG_I18N = {
|
|
|
46
46
|
downloadsDirDefaultNote: ' (default)',
|
|
47
47
|
invalidDownloadsDirValue: (raw) => `Invalid downloads.dir value: "${raw}". Use an absolute path, or "default" for <data dir>/downloads.`,
|
|
48
48
|
downloadsDirSetSaved: (dir) => `downloads.dir set to ${dir}. browser.download writes files there.`,
|
|
49
|
+
downloadsMaxMbLabel: 'downloads.max-mb',
|
|
50
|
+
downloadsMaxMbValue: (mb) => `${mb} MiB`,
|
|
51
|
+
invalidDownloadsMaxMbValue: (raw) => `Invalid downloads.max-mb value: "${raw}". Use a whole number of MiB (${MIN_DOWNLOADS_MAX_MB}-${MAX_DOWNLOADS_MAX_MB}) or "default".`,
|
|
52
|
+
downloadsMaxMbSetSaved: (label) => `downloads.max-mb set to ${label}. Applies to the next browser.download, no restart needed.`,
|
|
53
|
+
downloadsMaxMbCeilingNote: ` ${MAX_DOWNLOADS_MAX_MB} MiB is the ceiling: the file crosses the extension socket base64-encoded in one message.`,
|
|
49
54
|
mapLearningLabel: 'map-learning',
|
|
50
55
|
mapLearningOn: 'on (default)',
|
|
51
56
|
mapLearningOff: 'off',
|
|
@@ -65,8 +70,8 @@ export const CFG_I18N = {
|
|
|
65
70
|
pushedNone: ' No hay pestañas conectadas actualmente — se aplicará la próxima vez que una se conecte.',
|
|
66
71
|
pushUnavailable: ' No se pudo contactar a un browser-link primary en ejecución (no está corriendo, o el modo multi-agente está apagado) — se aplicará la próxima vez que una pestaña se conecte.',
|
|
67
72
|
pushRejected: ' Un primary en ejecución rechazó el push (token multi-agente obsoleto o no coincidente — puede haberse reiniciado recién). El valor quedó guardado y se aplicará la próxima vez que una pestaña se conecte.',
|
|
68
|
-
usage: 'Uso: browser-link config get [idle-ttl|flow-recording|cdp-direct.enabled|cdp-direct.port|cdp-direct.grant-ttl|downloads.dir|map-learning] | browser-link config set idle-ttl <minutos|never> | browser-link config set flow-recording <on|off> | browser-link config set cdp-direct.enabled <true|false> | browser-link config set cdp-direct.port <puerto> | browser-link config set cdp-direct.grant-ttl <minutos|never> | browser-link config set downloads.dir <ruta-absoluta|default> | browser-link config set map-learning <on|off>',
|
|
69
|
-
unknownKey: (key) => `Clave de configuración desconocida: ${key}. Claves conocidas: idle-ttl, flow-recording, cdp-direct.enabled, cdp-direct.port, cdp-direct.grant-ttl, downloads.dir, map-learning.`,
|
|
73
|
+
usage: 'Uso: browser-link config get [idle-ttl|flow-recording|cdp-direct.enabled|cdp-direct.port|cdp-direct.grant-ttl|downloads.dir|downloads.max-mb|map-learning] | browser-link config set idle-ttl <minutos|never> | browser-link config set flow-recording <on|off> | browser-link config set cdp-direct.enabled <true|false> | browser-link config set cdp-direct.port <puerto> | browser-link config set cdp-direct.grant-ttl <minutos|never> | browser-link config set downloads.dir <ruta-absoluta|default> | browser-link config set downloads.max-mb <1..64|default> | browser-link config set map-learning <on|off>',
|
|
74
|
+
unknownKey: (key) => `Clave de configuración desconocida: ${key}. Claves conocidas: idle-ttl, flow-recording, cdp-direct.enabled, cdp-direct.port, cdp-direct.grant-ttl, downloads.dir, downloads.max-mb, map-learning.`,
|
|
70
75
|
unknownAction: (action) => `Acción de config desconocida: ${action}. Usá get o set.`,
|
|
71
76
|
flowRecordingLabel: 'flow-recording',
|
|
72
77
|
flowRecordingEnabled: 'habilitado',
|
|
@@ -90,6 +95,11 @@ export const CFG_I18N = {
|
|
|
90
95
|
downloadsDirDefaultNote: ' (por defecto)',
|
|
91
96
|
invalidDownloadsDirValue: (raw) => `Valor de downloads.dir inválido: "${raw}". Usá una ruta absoluta, o "default" para <directorio de datos>/downloads.`,
|
|
92
97
|
downloadsDirSetSaved: (dir) => `downloads.dir configurado a ${dir}. browser.download guarda los archivos ahí.`,
|
|
98
|
+
downloadsMaxMbLabel: 'downloads.max-mb',
|
|
99
|
+
downloadsMaxMbValue: (mb) => `${mb} MiB`,
|
|
100
|
+
invalidDownloadsMaxMbValue: (raw) => `Valor de downloads.max-mb inválido: "${raw}". Usá un número entero de MiB (${MIN_DOWNLOADS_MAX_MB}-${MAX_DOWNLOADS_MAX_MB}) o "default".`,
|
|
101
|
+
downloadsMaxMbSetSaved: (label) => `downloads.max-mb configurado a ${label}. Se aplica en la próxima browser.download, sin reiniciar.`,
|
|
102
|
+
downloadsMaxMbCeilingNote: ` ${MAX_DOWNLOADS_MAX_MB} MiB es el máximo: el archivo cruza el socket de la extensión codificado en base64 en un solo mensaje.`,
|
|
93
103
|
mapLearningLabel: 'map-learning',
|
|
94
104
|
mapLearningOn: 'activado (por defecto)',
|
|
95
105
|
mapLearningOff: 'desactivado',
|
|
@@ -159,6 +169,7 @@ export function listConfig(language = 'en') {
|
|
|
159
169
|
getCdpDirectPortLine(language),
|
|
160
170
|
getCdpDirectGrantTtlLine(language),
|
|
161
171
|
getDownloadsDirLine(language),
|
|
172
|
+
getDownloadsMaxMbLine(language),
|
|
162
173
|
getMapLearningLine(language),
|
|
163
174
|
].join('\n');
|
|
164
175
|
}
|
|
@@ -386,6 +397,38 @@ export function setDownloadsDir(rawValue, language = 'en') {
|
|
|
386
397
|
saveConfig({ downloadsDir: value });
|
|
387
398
|
return t.downloadsDirSetSaved(value);
|
|
388
399
|
}
|
|
400
|
+
/** One formatted line describing `browser.download`'s per-file size cap. */
|
|
401
|
+
export function getDownloadsMaxMbLine(language = 'en') {
|
|
402
|
+
const t = CFG_I18N[language];
|
|
403
|
+
const cfg = loadConfig();
|
|
404
|
+
const mb = sanitizeDownloadsMaxMb(cfg.downloadsMaxMb);
|
|
405
|
+
const note = cfg.downloadsMaxMb === undefined ? t.downloadsDirDefaultNote : '';
|
|
406
|
+
return ` ${t.downloadsMaxMbLabel} ${t.downloadsMaxMbValue(mb)}${note}`;
|
|
407
|
+
}
|
|
408
|
+
/**
|
|
409
|
+
* `config set downloads.max-mb <1..64|default>`. Same "tell the user,
|
|
410
|
+
* don't guess" rule as `parseIdleTtlArg`: a value that is not a whole
|
|
411
|
+
* number is refused, an out-of-range one is clamped to [1, 64] with a note
|
|
412
|
+
* (64 MiB is a hard ceiling, see MAX_DOWNLOADS_MAX_MB). `default` removes the key (25 MiB). No live
|
|
413
|
+
* push: the server reads config.json on every download.
|
|
414
|
+
*/
|
|
415
|
+
export function setDownloadsMaxMb(rawValue, language = 'en') {
|
|
416
|
+
const t = CFG_I18N[language];
|
|
417
|
+
const value = rawValue.trim();
|
|
418
|
+
if (value.toLowerCase() === 'default') {
|
|
419
|
+
saveConfig({ downloadsMaxMb: undefined });
|
|
420
|
+
return t.downloadsMaxMbSetSaved(t.downloadsMaxMbValue(DEFAULT_DOWNLOADS_MAX_MB) + t.downloadsDirDefaultNote);
|
|
421
|
+
}
|
|
422
|
+
const parsed = Number(value);
|
|
423
|
+
if (value.length === 0 || !Number.isInteger(parsed)) {
|
|
424
|
+
throw new Error(t.invalidDownloadsMaxMbValue(rawValue));
|
|
425
|
+
}
|
|
426
|
+
const mb = Math.min(Math.max(parsed, MIN_DOWNLOADS_MAX_MB), MAX_DOWNLOADS_MAX_MB);
|
|
427
|
+
const note = mb === parsed ? '' : t.clampedNote(parsed, mb);
|
|
428
|
+
saveConfig({ downloadsMaxMb: mb });
|
|
429
|
+
const ceiling = parsed > MAX_DOWNLOADS_MAX_MB ? t.downloadsMaxMbCeilingNote : '';
|
|
430
|
+
return t.downloadsMaxMbSetSaved(t.downloadsMaxMbValue(mb) + note) + ceiling;
|
|
431
|
+
}
|
|
389
432
|
/** One formatted line describing the `mapLearningEnabled` state. Only an
|
|
390
433
|
* explicit `false` is off, same rule the learner applies. */
|
|
391
434
|
export function getMapLearningLine(language = 'en') {
|
|
@@ -428,6 +471,8 @@ export async function runConfigCommand(argv, language = 'en') {
|
|
|
428
471
|
return getCdpDirectLine(key, language);
|
|
429
472
|
if (key === 'downloads.dir')
|
|
430
473
|
return getDownloadsDirLine(language);
|
|
474
|
+
if (key === 'downloads.max-mb')
|
|
475
|
+
return getDownloadsMaxMbLine(language);
|
|
431
476
|
if (key === 'map-learning')
|
|
432
477
|
return getMapLearningLine(language);
|
|
433
478
|
throw new Error(t.unknownKey(key));
|
|
@@ -450,6 +495,11 @@ export async function runConfigCommand(argv, language = 'en') {
|
|
|
450
495
|
throw new Error(t.usage);
|
|
451
496
|
return setDownloadsDir(value, language);
|
|
452
497
|
}
|
|
498
|
+
if (key === 'downloads.max-mb') {
|
|
499
|
+
if (value === undefined)
|
|
500
|
+
throw new Error(t.usage);
|
|
501
|
+
return setDownloadsMaxMb(value, language);
|
|
502
|
+
}
|
|
453
503
|
if (key === 'map-learning') {
|
|
454
504
|
if (value === undefined)
|
|
455
505
|
throw new Error(t.usage);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,13 @@
|
|
|
1
|
+
import { type SilentDebuggerDetection } from '../auth/silent-debugger.js';
|
|
1
2
|
import type { Language } from './welcome.js';
|
|
2
3
|
import { type InstructionsState } from '../agent-instructions/index.js';
|
|
3
4
|
import { type VersionProbe } from '../lifecycle/election.js';
|
|
5
|
+
import { type ProcessEntry } from '../lifecycle/processes.js';
|
|
6
|
+
interface PortStatus {
|
|
7
|
+
listening: boolean;
|
|
8
|
+
detail: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function checkPort(host: string, port: number, timeoutMs?: number): Promise<PortStatus>;
|
|
4
11
|
export interface DoctorReport {
|
|
5
12
|
ws: {
|
|
6
13
|
listening: boolean;
|
|
@@ -74,5 +81,17 @@ export interface DoctorProcess {
|
|
|
74
81
|
/** Running vs installed. Outdated only when both are known and the running
|
|
75
82
|
* version is lower. */
|
|
76
83
|
export declare function buildServerStatus(probe: VersionProbe, installed: string | null): DoctorServerStatus;
|
|
77
|
-
|
|
84
|
+
/** The part of the report read from local files: synchronous and cheap. */
|
|
85
|
+
type DoctorLocal = Pick<DoctorReport, 'multiAgent' | 'clients' | 'extension' | 'map' | 'security'>;
|
|
86
|
+
/** Injectable probes, so tests pin the concurrency without touching the OS. */
|
|
87
|
+
export interface DoctorDeps {
|
|
88
|
+
checkPort: (host: string, port: number) => Promise<PortStatus>;
|
|
89
|
+
detectSilentDebugger: () => Promise<SilentDebuggerDetection>;
|
|
90
|
+
probeVersion: (port: number) => Promise<VersionProbe>;
|
|
91
|
+
listBridgeProcesses: () => Promise<ProcessEntry[]>;
|
|
92
|
+
readInstalledVersion: () => string | null;
|
|
93
|
+
collectLocal: () => DoctorLocal;
|
|
94
|
+
}
|
|
95
|
+
export declare function runDoctor(overrides?: Partial<DoctorDeps>): Promise<DoctorReport>;
|
|
78
96
|
export declare function formatDoctor(r: DoctorReport, language?: Language): string;
|
|
97
|
+
export {};
|
package/dist/commands/doctor.js
CHANGED
|
@@ -10,12 +10,12 @@ import { loadConfig } from '../config.js';
|
|
|
10
10
|
import { IPC_HOST, IPC_PORT } from '../bridge/protocol.js';
|
|
11
11
|
import { getInstructionsInstaller } from '../agent-instructions/index.js';
|
|
12
12
|
import { probeVersion } from '../lifecycle/election.js';
|
|
13
|
-
import {
|
|
13
|
+
import { listBridgeProcessesAsync, shortCommand, } from '../lifecycle/processes.js';
|
|
14
14
|
import { readInstalledVersion } from '../version.js';
|
|
15
15
|
import { compareSemver } from '../utils/semver.js';
|
|
16
16
|
const WS_HOST = '127.0.0.1';
|
|
17
17
|
const WS_PORT = 17529;
|
|
18
|
-
function checkPort(host, port, timeoutMs = 500) {
|
|
18
|
+
export function checkPort(host, port, timeoutMs = 500) {
|
|
19
19
|
return new Promise((resolve) => {
|
|
20
20
|
const socket = createConnection({ host, port });
|
|
21
21
|
const settle = (listening, detail) => {
|
|
@@ -23,8 +23,15 @@ function checkPort(host, port, timeoutMs = 500) {
|
|
|
23
23
|
socket.destroy();
|
|
24
24
|
resolve({ listening, detail });
|
|
25
25
|
};
|
|
26
|
+
// The doctor runs this alongside process spawns and synchronous file
|
|
27
|
+
// reads, which can stall the event loop past the timeout. After a stall
|
|
28
|
+
// the timers phase runs before the I/O poll phase, so a connect that
|
|
29
|
+
// already completed would lose the race: decide on the next check phase
|
|
30
|
+
// (setImmediate), after pending I/O callbacks have run.
|
|
26
31
|
const timer = setTimeout(() => {
|
|
27
|
-
|
|
32
|
+
setImmediate(() => {
|
|
33
|
+
settle(false, `no response within ${timeoutMs}ms`);
|
|
34
|
+
});
|
|
28
35
|
}, timeoutMs);
|
|
29
36
|
socket.once('connect', () => {
|
|
30
37
|
clearTimeout(timer);
|
|
@@ -58,18 +65,7 @@ function toDoctorProcess(p) {
|
|
|
58
65
|
command: shortCommand(p.command),
|
|
59
66
|
};
|
|
60
67
|
}
|
|
61
|
-
|
|
62
|
-
// Independent probes — run them concurrently rather than serially so a
|
|
63
|
-
// slow process-listing scan (silentDebugger) does not add its full
|
|
64
|
-
// latency on top of the port checks.
|
|
65
|
-
const [ws, ipc, silentDebugger, versionProbe] = await Promise.all([
|
|
66
|
-
checkPort(WS_HOST, WS_PORT),
|
|
67
|
-
checkPort(IPC_HOST, IPC_PORT),
|
|
68
|
-
detectSilentDebuggerFlag(),
|
|
69
|
-
probeVersion(WS_PORT),
|
|
70
|
-
]);
|
|
71
|
-
const server = buildServerStatus(versionProbe, readInstalledVersion());
|
|
72
|
-
const processes = listBridgeProcesses().map(toDoctorProcess);
|
|
68
|
+
function collectLocal() {
|
|
73
69
|
const clients = INSTALLERS.map((i) => {
|
|
74
70
|
const d = i.detect();
|
|
75
71
|
const instructions = getInstructionsInstaller(i.id).detect();
|
|
@@ -95,16 +91,42 @@ export async function runDoctor() {
|
|
|
95
91
|
}
|
|
96
92
|
const cfg = loadConfig();
|
|
97
93
|
return {
|
|
98
|
-
ws: { ...ws, host: WS_HOST, port: WS_PORT },
|
|
99
|
-
ipc: { ...ipc, host: IPC_HOST, port: IPC_PORT },
|
|
100
94
|
multiAgent: { enabled: cfg.multiAgent === true, autoReelect: cfg.autoReelect === true },
|
|
101
95
|
clients,
|
|
102
96
|
extension: { path: extPath },
|
|
103
97
|
map: { dbPath, exists: dbExists, sizeBytes, apps },
|
|
104
98
|
security: { allowedBrowsers: getAllowedBrowsers() },
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
const DEFAULT_DEPS = {
|
|
102
|
+
checkPort: (host, port) => checkPort(host, port),
|
|
103
|
+
detectSilentDebugger: () => detectSilentDebuggerFlag(),
|
|
104
|
+
probeVersion: (port) => probeVersion(port),
|
|
105
|
+
listBridgeProcesses: () => listBridgeProcessesAsync(),
|
|
106
|
+
readInstalledVersion,
|
|
107
|
+
collectLocal,
|
|
108
|
+
};
|
|
109
|
+
export async function runDoctor(overrides = {}) {
|
|
110
|
+
const deps = { ...DEFAULT_DEPS, ...overrides };
|
|
111
|
+
// Every slow probe is independent: start them all before awaiting any, so
|
|
112
|
+
// the run lasts as long as the slowest one (the WMI/ps process scans),
|
|
113
|
+
// not their sum. The local file reads run while they are in flight.
|
|
114
|
+
const pending = Promise.all([
|
|
115
|
+
deps.checkPort(WS_HOST, WS_PORT),
|
|
116
|
+
deps.checkPort(IPC_HOST, IPC_PORT),
|
|
117
|
+
deps.detectSilentDebugger(),
|
|
118
|
+
deps.probeVersion(WS_PORT),
|
|
119
|
+
deps.listBridgeProcesses(),
|
|
120
|
+
]);
|
|
121
|
+
const local = deps.collectLocal();
|
|
122
|
+
const [ws, ipc, silentDebugger, versionProbe, bridgeProcesses] = await pending;
|
|
123
|
+
return {
|
|
124
|
+
ws: { ...ws, host: WS_HOST, port: WS_PORT },
|
|
125
|
+
ipc: { ...ipc, host: IPC_HOST, port: IPC_PORT },
|
|
126
|
+
...local,
|
|
105
127
|
silentDebugger,
|
|
106
|
-
server,
|
|
107
|
-
processes,
|
|
128
|
+
server: buildServerStatus(versionProbe, deps.readInstalledVersion()),
|
|
129
|
+
processes: bridgeProcesses.map(toDoctorProcess),
|
|
108
130
|
};
|
|
109
131
|
}
|
|
110
132
|
function symbol(ok) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -155,6 +155,14 @@ export interface BrowserLinkConfig {
|
|
|
155
155
|
* <path|default>` — the agent can name a file, never choose where it lands.
|
|
156
156
|
*/
|
|
157
157
|
downloadsDir?: string;
|
|
158
|
+
/**
|
|
159
|
+
* Per-file size cap of `browser.download`, in MiB. Undefined means the
|
|
160
|
+
* default, 25 MiB (`DEFAULT_DOWNLOADS_MAX_MB`). Only the human sets this,
|
|
161
|
+
* via `browser-link config set downloads.max-mb <1..64|default>`; the
|
|
162
|
+
* server reads it on every download through `sanitizeDownloadsMaxMb`, so
|
|
163
|
+
* a hand-edited value outside [1, 64] reads as the default.
|
|
164
|
+
*/
|
|
165
|
+
downloadsMaxMb?: number;
|
|
158
166
|
}
|
|
159
167
|
/** Safety-rail bounds mirrored from the extension's `idle-policy.ts` — kept
|
|
160
168
|
* as an independent copy (not a shared import) for the same reason
|
|
@@ -173,6 +181,18 @@ export declare const MAX_CDP_DIRECT_PORT = 65535;
|
|
|
173
181
|
export declare const MIN_GRANT_TTL_MINUTES = 1;
|
|
174
182
|
export declare const MAX_GRANT_TTL_MINUTES = 1440;
|
|
175
183
|
export declare const DEFAULT_GRANT_TTL_MINUTES = 60;
|
|
184
|
+
/** `browser.download` per-file cap bounds, in MiB. The default matches
|
|
185
|
+
* `downloads.ts`'s `MAX_DOWNLOAD_BYTES`; the maximum is a hard ceiling no
|
|
186
|
+
* configured value can pass: the file crosses the extension socket
|
|
187
|
+
* base64-encoded in one message, and 64 MiB (about 85 MiB of base64) stays
|
|
188
|
+
* under the 100 MiB message limit of the `ws` library. */
|
|
189
|
+
export declare const DEFAULT_DOWNLOADS_MAX_MB = 25;
|
|
190
|
+
export declare const MIN_DOWNLOADS_MAX_MB = 1;
|
|
191
|
+
export declare const MAX_DOWNLOADS_MAX_MB = 64;
|
|
192
|
+
/** Read-side sanitizer for `downloadsMaxMb` (config.json is untrusted): a
|
|
193
|
+
* whole number of MiB in [1, 64] passes, anything else (a string, a
|
|
194
|
+
* fraction, out of range, absent) is the 25 MiB default. */
|
|
195
|
+
export declare function sanitizeDownloadsMaxMb(raw: unknown): number;
|
|
176
196
|
/** Defensive safety net for a `cdp-direct.grant-ttl` value THE USER NEVER
|
|
177
197
|
* TYPED (a corrupted config.json, a hand-edited file) — mirrors
|
|
178
198
|
* `clampIdleTtlMinutes` exactly: `0` ("never expires") passes through
|
package/dist/config.js
CHANGED
|
@@ -19,6 +19,26 @@ export const MAX_CDP_DIRECT_PORT = 65535;
|
|
|
19
19
|
export const MIN_GRANT_TTL_MINUTES = 1;
|
|
20
20
|
export const MAX_GRANT_TTL_MINUTES = 1440;
|
|
21
21
|
export const DEFAULT_GRANT_TTL_MINUTES = 60;
|
|
22
|
+
/** `browser.download` per-file cap bounds, in MiB. The default matches
|
|
23
|
+
* `downloads.ts`'s `MAX_DOWNLOAD_BYTES`; the maximum is a hard ceiling no
|
|
24
|
+
* configured value can pass: the file crosses the extension socket
|
|
25
|
+
* base64-encoded in one message, and 64 MiB (about 85 MiB of base64) stays
|
|
26
|
+
* under the 100 MiB message limit of the `ws` library. */
|
|
27
|
+
export const DEFAULT_DOWNLOADS_MAX_MB = 25;
|
|
28
|
+
export const MIN_DOWNLOADS_MAX_MB = 1;
|
|
29
|
+
export const MAX_DOWNLOADS_MAX_MB = 64;
|
|
30
|
+
/** Read-side sanitizer for `downloadsMaxMb` (config.json is untrusted): a
|
|
31
|
+
* whole number of MiB in [1, 64] passes, anything else (a string, a
|
|
32
|
+
* fraction, out of range, absent) is the 25 MiB default. */
|
|
33
|
+
export function sanitizeDownloadsMaxMb(raw) {
|
|
34
|
+
if (typeof raw === 'number' &&
|
|
35
|
+
Number.isInteger(raw) &&
|
|
36
|
+
raw >= MIN_DOWNLOADS_MAX_MB &&
|
|
37
|
+
raw <= MAX_DOWNLOADS_MAX_MB) {
|
|
38
|
+
return raw;
|
|
39
|
+
}
|
|
40
|
+
return DEFAULT_DOWNLOADS_MAX_MB;
|
|
41
|
+
}
|
|
22
42
|
/** Defensive safety net for a `cdp-direct.grant-ttl` value THE USER NEVER
|
|
23
43
|
* TYPED (a corrupted config.json, a hand-edited file) — mirrors
|
|
24
44
|
* `clampIdleTtlMinutes` exactly: `0` ("never expires") passes through
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/downloads.d.ts
CHANGED
|
@@ -23,10 +23,17 @@
|
|
|
23
23
|
*/
|
|
24
24
|
export declare const DEFAULT_DOWNLOAD_TIMEOUT_MS = 30000;
|
|
25
25
|
export declare const MAX_DOWNLOAD_TIMEOUT_MS = 120000;
|
|
26
|
-
/**
|
|
27
|
-
* CDP `Runtime.evaluate` result and then a bridge frame, so
|
|
28
|
-
* the memory both hops can be asked to hold.
|
|
26
|
+
/** Default cap on one download's size. The bytes travel base64-encoded inside
|
|
27
|
+
* a CDP `Runtime.evaluate` result and then a bridge frame, so the cap also
|
|
28
|
+
* bounds the memory both hops can be asked to hold. The human can change it
|
|
29
|
+
* with `config set downloads.max-mb` (see `downloadMaxBytes`). */
|
|
29
30
|
export declare const MAX_DOWNLOAD_BYTES: number;
|
|
31
|
+
/** The per-file cap, in bytes, `browser.download` applies for this config:
|
|
32
|
+
* `downloadsMaxMb` when it is a whole number in [1, 64], else the 25 MiB
|
|
33
|
+
* default (`MAX_DOWNLOAD_BYTES`). */
|
|
34
|
+
export declare function downloadMaxBytes(cfg: {
|
|
35
|
+
downloadsMaxMb?: unknown;
|
|
36
|
+
}): number;
|
|
30
37
|
/** Extra bridge timeout on top of each hop's own budget (selector mode has
|
|
31
38
|
* two hops: capture, then fetch), for the round trip only — the capture and
|
|
32
39
|
* the in-page fetch enforce their budgets themselves and always answer, so
|
package/dist/downloads.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { mkdirSync, writeFileSync } from 'node:fs';
|
|
2
2
|
import { extname, isAbsolute, join } from 'node:path';
|
|
3
|
+
import { sanitizeDownloadsMaxMb } from './config.js';
|
|
3
4
|
/**
|
|
4
5
|
* `browser.download` support: everything the tool needs that is NOT talking
|
|
5
6
|
* to Chrome — filename policy, the download directory, the file write, the
|
|
@@ -25,10 +26,26 @@ import { extname, isAbsolute, join } from 'node:path';
|
|
|
25
26
|
*/
|
|
26
27
|
export const DEFAULT_DOWNLOAD_TIMEOUT_MS = 30_000;
|
|
27
28
|
export const MAX_DOWNLOAD_TIMEOUT_MS = 120_000;
|
|
28
|
-
/**
|
|
29
|
-
* CDP `Runtime.evaluate` result and then a bridge frame, so
|
|
30
|
-
* the memory both hops can be asked to hold.
|
|
29
|
+
/** Default cap on one download's size. The bytes travel base64-encoded inside
|
|
30
|
+
* a CDP `Runtime.evaluate` result and then a bridge frame, so the cap also
|
|
31
|
+
* bounds the memory both hops can be asked to hold. The human can change it
|
|
32
|
+
* with `config set downloads.max-mb` (see `downloadMaxBytes`). */
|
|
31
33
|
export const MAX_DOWNLOAD_BYTES = 25 * 1024 * 1024;
|
|
34
|
+
const BYTES_PER_MIB = 1024 * 1024;
|
|
35
|
+
/** The per-file cap, in bytes, `browser.download` applies for this config:
|
|
36
|
+
* `downloadsMaxMb` when it is a whole number in [1, 64], else the 25 MiB
|
|
37
|
+
* default (`MAX_DOWNLOAD_BYTES`). */
|
|
38
|
+
export function downloadMaxBytes(cfg) {
|
|
39
|
+
return sanitizeDownloadsMaxMb(cfg.downloadsMaxMb) * BYTES_PER_MIB;
|
|
40
|
+
}
|
|
41
|
+
/** The text the in-page fetch reports when a body passes the cap. */
|
|
42
|
+
function capExceededMessage(maxBytes) {
|
|
43
|
+
if (maxBytes > 0 && maxBytes % BYTES_PER_MIB === 0) {
|
|
44
|
+
return (`download exceeds the ${maxBytes / BYTES_PER_MIB} MiB cap (${maxBytes} bytes);` +
|
|
45
|
+
' the human can change it with: browser-link config set downloads.max-mb <1..64>');
|
|
46
|
+
}
|
|
47
|
+
return `download exceeds the ${maxBytes} bytes cap`;
|
|
48
|
+
}
|
|
32
49
|
/** Extra bridge timeout on top of each hop's own budget (selector mode has
|
|
33
50
|
* two hops: capture, then fetch), for the round trip only — the capture and
|
|
34
51
|
* the in-page fetch enforce their budgets themselves and always answer, so
|
|
@@ -203,10 +220,12 @@ export function buildFetchDownloadJs(opts) {
|
|
|
203
220
|
const url = JSON.stringify(opts.url);
|
|
204
221
|
const timeoutMs = Math.floor(opts.timeoutMs);
|
|
205
222
|
const maxBytes = Math.floor(opts.maxBytes);
|
|
223
|
+
const capError = JSON.stringify(capExceededMessage(maxBytes));
|
|
206
224
|
return `(async () => {
|
|
207
225
|
const url = ${url};
|
|
208
226
|
const timeoutMs = ${timeoutMs};
|
|
209
227
|
const maxBytes = ${maxBytes};
|
|
228
|
+
const capError = ${capError};
|
|
210
229
|
const ctrl = new AbortController();
|
|
211
230
|
let timedOut = false;
|
|
212
231
|
const timer = setTimeout(() => { timedOut = true; ctrl.abort(); }, timeoutMs);
|
|
@@ -230,7 +249,7 @@ export function buildFetchDownloadJs(opts) {
|
|
|
230
249
|
out.bytes += step.value.byteLength;
|
|
231
250
|
if (out.bytes > maxBytes) {
|
|
232
251
|
ctrl.abort();
|
|
233
|
-
out.error =
|
|
252
|
+
out.error = capError;
|
|
234
253
|
return out;
|
|
235
254
|
}
|
|
236
255
|
chunks.push(step.value);
|
package/dist/downloads.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"downloads.js","sourceRoot":"","sources":["../src/downloads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"downloads.js","sourceRoot":"","sources":["../src/downloads.ts"],"names":[],"mappings":"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"}
|