browser-debugger-cli 0.6.1 → 0.6.4
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 +64 -3
- package/dist/__tests__/smoke/error-handling.smoke.test.js +9 -4
- package/dist/__tests__/smoke/error-handling.smoke.test.js.map +1 -1
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.js +27 -24
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.js.map +1 -1
- package/dist/__testutils__/daemonHelpers.d.ts +13 -1
- package/dist/__testutils__/daemonHelpers.d.ts.map +1 -1
- package/dist/__testutils__/daemonHelpers.js +54 -5
- package/dist/__testutils__/daemonHelpers.js.map +1 -1
- package/dist/cdp/protocol.d.ts.map +1 -1
- package/dist/cdp/protocol.js +6 -10
- package/dist/cdp/protocol.js.map +1 -1
- package/dist/cdp/schema.d.ts.map +1 -1
- package/dist/cdp/schema.js +0 -2
- package/dist/cdp/schema.js.map +1 -1
- package/dist/commands/cdp.d.ts.map +1 -1
- package/dist/commands/cdp.js +1 -20
- package/dist/commands/cdp.js.map +1 -1
- package/dist/commands/cleanup.d.ts.map +1 -1
- package/dist/commands/cleanup.js +17 -15
- package/dist/commands/cleanup.js.map +1 -1
- package/dist/commands/console.d.ts.map +1 -1
- package/dist/commands/console.js +0 -5
- package/dist/commands/console.js.map +1 -1
- package/dist/commands/details.d.ts.map +1 -1
- package/dist/commands/details.js +0 -5
- package/dist/commands/details.js.map +1 -1
- package/dist/commands/dom/a11y.d.ts +18 -0
- package/dist/commands/dom/a11y.d.ts.map +1 -0
- package/dist/commands/dom/a11y.js +134 -0
- package/dist/commands/dom/a11y.js.map +1 -0
- package/dist/commands/dom/evalHelpers.d.ts.map +1 -1
- package/dist/commands/dom/evalHelpers.js +1 -6
- package/dist/commands/dom/evalHelpers.js.map +1 -1
- package/dist/commands/dom/formFillHelpers.d.ts.map +1 -1
- package/dist/commands/dom/formFillHelpers.js +0 -9
- package/dist/commands/dom/formFillHelpers.js.map +1 -1
- package/dist/commands/dom/formInteraction.d.ts.map +1 -1
- package/dist/commands/dom/formInteraction.js +0 -5
- package/dist/commands/dom/formInteraction.js.map +1 -1
- package/dist/commands/dom/formSubmitHelpers.d.ts.map +1 -1
- package/dist/commands/dom/formSubmitHelpers.js +0 -13
- package/dist/commands/dom/formSubmitHelpers.js.map +1 -1
- package/dist/commands/dom/helpers.d.ts.map +1 -1
- package/dist/commands/dom/helpers.js +0 -22
- package/dist/commands/dom/helpers.js.map +1 -1
- package/dist/commands/dom/index.d.ts.map +1 -1
- package/dist/commands/dom/index.js +41 -26
- package/dist/commands/dom/index.js.map +1 -1
- package/dist/commands/dom/reactEventHelpers.d.ts +3 -3
- package/dist/commands/dom/reactEventHelpers.d.ts.map +1 -1
- package/dist/commands/dom/reactEventHelpers.js +0 -28
- package/dist/commands/dom/reactEventHelpers.js.map +1 -1
- package/dist/commands/network.d.ts.map +1 -1
- package/dist/commands/network.js +159 -10
- package/dist/commands/network.js.map +1 -1
- package/dist/commands/peek.d.ts.map +1 -1
- package/dist/commands/peek.js +17 -12
- package/dist/commands/peek.js.map +1 -1
- package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
- package/dist/commands/shared/CommandRunner.js +0 -8
- package/dist/commands/shared/CommandRunner.js.map +1 -1
- package/dist/commands/shared/__tests__/validation.unit.test.d.ts +7 -0
- package/dist/commands/shared/__tests__/validation.unit.test.d.ts.map +1 -0
- package/dist/commands/shared/__tests__/validation.unit.test.js +141 -0
- package/dist/commands/shared/__tests__/validation.unit.test.js.map +1 -0
- package/dist/commands/shared/startHelpers.d.ts.map +1 -1
- package/dist/commands/shared/startHelpers.js +0 -10
- package/dist/commands/shared/startHelpers.js.map +1 -1
- package/dist/commands/shared/validation.d.ts +17 -0
- package/dist/commands/shared/validation.d.ts.map +1 -1
- package/dist/commands/shared/validation.js +105 -5
- package/dist/commands/shared/validation.js.map +1 -1
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +0 -6
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +0 -2
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/stop.d.ts.map +1 -1
- package/dist/commands/stop.js +11 -13
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/tail.d.ts.map +1 -1
- package/dist/commands/tail.js +0 -7
- package/dist/commands/tail.js.map +1 -1
- package/dist/commands/types.d.ts +3 -0
- package/dist/commands/types.d.ts.map +1 -1
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +0 -5
- package/dist/commands.js.map +1 -1
- package/dist/connection/cdp.d.ts.map +1 -1
- package/dist/connection/cdp.js +0 -3
- package/dist/connection/cdp.js.map +1 -1
- package/dist/connection/diagnostics.d.ts.map +1 -1
- package/dist/connection/diagnostics.js +7 -4
- package/dist/connection/diagnostics.js.map +1 -1
- package/dist/connection/pageReadiness.d.ts.map +1 -1
- package/dist/connection/pageReadiness.js +0 -1
- package/dist/connection/pageReadiness.js.map +1 -1
- package/dist/constants.d.ts +6 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +6 -0
- package/dist/constants.js.map +1 -1
- package/dist/daemon/__tests__/commandRegistry.contract.test.js +259 -0
- package/dist/daemon/__tests__/commandRegistry.contract.test.js.map +1 -1
- package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts +19 -0
- package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts.map +1 -0
- package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js +212 -0
- package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js.map +1 -0
- package/dist/daemon/handlers/BaseHandler.d.ts +75 -0
- package/dist/daemon/handlers/BaseHandler.d.ts.map +1 -0
- package/dist/daemon/handlers/BaseHandler.js +103 -0
- package/dist/daemon/handlers/BaseHandler.js.map +1 -0
- package/dist/daemon/handlers/CommandHandlers.d.ts +3 -4
- package/dist/daemon/handlers/CommandHandlers.d.ts.map +1 -1
- package/dist/daemon/handlers/CommandHandlers.js +14 -52
- package/dist/daemon/handlers/CommandHandlers.js.map +1 -1
- package/dist/daemon/handlers/QueryHandlers.d.ts +8 -6
- package/dist/daemon/handlers/QueryHandlers.d.ts.map +1 -1
- package/dist/daemon/handlers/QueryHandlers.js +42 -94
- package/dist/daemon/handlers/QueryHandlers.js.map +1 -1
- package/dist/daemon/handlers/SessionHandlers.d.ts.map +1 -1
- package/dist/daemon/handlers/SessionHandlers.js +0 -15
- package/dist/daemon/handlers/SessionHandlers.js.map +1 -1
- package/dist/daemon/handlers/requestHandlers.d.ts +5 -1
- package/dist/daemon/handlers/requestHandlers.d.ts.map +1 -1
- package/dist/daemon/handlers/requestHandlers.js +7 -2
- package/dist/daemon/handlers/requestHandlers.js.map +1 -1
- package/dist/daemon/handlers/responseHandler.d.ts.map +1 -1
- package/dist/daemon/handlers/responseHandler.js +19 -8
- package/dist/daemon/handlers/responseHandler.js.map +1 -1
- package/dist/daemon/ipcServer.d.ts.map +1 -1
- package/dist/daemon/ipcServer.js +4 -11
- package/dist/daemon/ipcServer.js.map +1 -1
- package/dist/daemon/launcher.d.ts.map +1 -1
- package/dist/daemon/launcher.js +2 -19
- package/dist/daemon/launcher.js.map +1 -1
- package/dist/daemon/lifecycle/cdpSetup.d.ts.map +1 -1
- package/dist/daemon/lifecycle/cdpSetup.js +0 -4
- package/dist/daemon/lifecycle/cdpSetup.js.map +1 -1
- package/dist/daemon/lifecycle/chromeConnection.js +0 -1
- package/dist/daemon/lifecycle/chromeConnection.js.map +1 -1
- package/dist/daemon/lifecycle/signalHandlers.d.ts.map +1 -1
- package/dist/daemon/lifecycle/signalHandlers.js +0 -3
- package/dist/daemon/lifecycle/signalHandlers.js.map +1 -1
- package/dist/daemon/lifecycle/workerCleanup.d.ts.map +1 -1
- package/dist/daemon/lifecycle/workerCleanup.js +1 -8
- package/dist/daemon/lifecycle/workerCleanup.js.map +1 -1
- package/dist/daemon/lifecycle/workerIpc.d.ts.map +1 -1
- package/dist/daemon/lifecycle/workerIpc.js +0 -1
- package/dist/daemon/lifecycle/workerIpc.js.map +1 -1
- package/dist/daemon/server/JsonlParser.d.ts.map +1 -1
- package/dist/daemon/server/JsonlParser.js +0 -2
- package/dist/daemon/server/JsonlParser.js.map +1 -1
- package/dist/daemon/services/SessionService.js +1 -1
- package/dist/daemon/services/SessionService.js.map +1 -1
- package/dist/daemon/startSession.d.ts.map +1 -1
- package/dist/daemon/startSession.js +0 -15
- package/dist/daemon/startSession.js.map +1 -1
- package/dist/daemon/worker/commandRegistry.d.ts.map +1 -1
- package/dist/daemon/worker/commandRegistry.js +34 -1
- package/dist/daemon/worker/commandRegistry.js.map +1 -1
- package/dist/daemon/worker/plugins.d.ts.map +1 -1
- package/dist/daemon/worker/plugins.js +0 -3
- package/dist/daemon/worker/plugins.js.map +1 -1
- package/dist/daemon/worker.js +0 -9
- package/dist/daemon/worker.js.map +1 -1
- package/dist/daemon.js +0 -2
- package/dist/daemon.js.map +1 -1
- package/dist/index.js +0 -14
- package/dist/index.js.map +1 -1
- package/dist/ipc/__tests__/client.contract.test.js +251 -19
- package/dist/ipc/__tests__/client.contract.test.js.map +1 -1
- package/dist/ipc/__tests__/jsonl.unit.test.js +19 -1
- package/dist/ipc/__tests__/jsonl.unit.test.js.map +1 -1
- package/dist/ipc/client.d.ts +47 -1
- package/dist/ipc/client.d.ts.map +1 -1
- package/dist/ipc/client.js +51 -0
- package/dist/ipc/client.js.map +1 -1
- package/dist/ipc/index.d.ts.map +1 -1
- package/dist/ipc/index.js +0 -6
- package/dist/ipc/index.js.map +1 -1
- package/dist/ipc/protocol/commands.d.ts +44 -0
- package/dist/ipc/protocol/commands.d.ts.map +1 -1
- package/dist/ipc/protocol/commands.js +8 -0
- package/dist/ipc/protocol/commands.js.map +1 -1
- package/dist/ipc/session/queries.d.ts +26 -2
- package/dist/ipc/session/queries.d.ts.map +1 -1
- package/dist/ipc/transport/index.d.ts.map +1 -1
- package/dist/ipc/transport/index.js +0 -1
- package/dist/ipc/transport/index.js.map +1 -1
- package/dist/ipc/transport/jsonl.d.ts +16 -0
- package/dist/ipc/transport/jsonl.d.ts.map +1 -1
- package/dist/ipc/transport/jsonl.js +24 -0
- package/dist/ipc/transport/jsonl.js.map +1 -1
- package/dist/session/chrome.js +2 -2
- package/dist/session/chrome.js.map +1 -1
- package/dist/session/cleanup.d.ts +21 -0
- package/dist/session/cleanup.d.ts.map +1 -1
- package/dist/session/cleanup.js +92 -12
- package/dist/session/cleanup.js.map +1 -1
- package/dist/session/lock.js +1 -1
- package/dist/session/lock.js.map +1 -1
- package/dist/telemetry/__tests__/a11y.unit.test.d.ts +10 -0
- package/dist/telemetry/__tests__/a11y.unit.test.d.ts.map +1 -0
- package/dist/telemetry/__tests__/a11y.unit.test.js +265 -0
- package/dist/telemetry/__tests__/a11y.unit.test.js.map +1 -0
- package/dist/telemetry/__tests__/filters.unit.test.js +119 -1
- package/dist/telemetry/__tests__/filters.unit.test.js.map +1 -1
- package/dist/telemetry/__tests__/network.contract.test.js +114 -0
- package/dist/telemetry/__tests__/network.contract.test.js.map +1 -1
- package/dist/telemetry/a11y.d.ts +78 -0
- package/dist/telemetry/a11y.d.ts.map +1 -0
- package/dist/telemetry/a11y.js +280 -0
- package/dist/telemetry/a11y.js.map +1 -0
- package/dist/telemetry/dom.d.ts +1 -1
- package/dist/telemetry/dom.d.ts.map +1 -1
- package/dist/telemetry/dom.js +36 -5
- package/dist/telemetry/dom.js.map +1 -1
- package/dist/telemetry/filters.d.ts +17 -0
- package/dist/telemetry/filters.d.ts.map +1 -1
- package/dist/telemetry/filters.js +25 -0
- package/dist/telemetry/filters.js.map +1 -1
- package/dist/telemetry/har/__tests__/builder.unit.test.d.ts +8 -0
- package/dist/telemetry/har/__tests__/builder.unit.test.d.ts.map +1 -0
- package/dist/telemetry/har/__tests__/builder.unit.test.js +694 -0
- package/dist/telemetry/har/__tests__/builder.unit.test.js.map +1 -0
- package/dist/telemetry/har/builder.d.ts +43 -0
- package/dist/telemetry/har/builder.d.ts.map +1 -0
- package/dist/telemetry/har/builder.js +440 -0
- package/dist/telemetry/har/builder.js.map +1 -0
- package/dist/telemetry/har/types.d.ts +290 -0
- package/dist/telemetry/har/types.d.ts.map +1 -0
- package/dist/telemetry/har/types.js +7 -0
- package/dist/telemetry/har/types.js.map +1 -0
- package/dist/telemetry/network.d.ts.map +1 -1
- package/dist/telemetry/network.js +37 -4
- package/dist/telemetry/network.js.map +1 -1
- package/dist/types.d.ts +108 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/OutputBuilder.d.ts.map +1 -1
- package/dist/ui/OutputBuilder.js +0 -8
- package/dist/ui/OutputBuilder.js.map +1 -1
- package/dist/ui/errors/CommandError.d.ts.map +1 -1
- package/dist/ui/errors/CommandError.js +0 -1
- package/dist/ui/errors/CommandError.js.map +1 -1
- package/dist/ui/errors/index.d.ts.map +1 -1
- package/dist/ui/errors/index.js +0 -2
- package/dist/ui/errors/index.js.map +1 -1
- package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts +2 -0
- package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts.map +1 -0
- package/dist/ui/formatters/__tests__/semantic.unit.test.js +111 -0
- package/dist/ui/formatters/__tests__/semantic.unit.test.js.map +1 -0
- package/dist/ui/formatters/a11y.d.ts +30 -0
- package/dist/ui/formatters/a11y.d.ts.map +1 -0
- package/dist/ui/formatters/a11y.js +178 -0
- package/dist/ui/formatters/a11y.js.map +1 -0
- package/dist/ui/formatters/details.d.ts.map +1 -1
- package/dist/ui/formatters/details.js +1 -0
- package/dist/ui/formatters/details.js.map +1 -1
- package/dist/ui/formatters/dom.d.ts.map +1 -1
- package/dist/ui/formatters/dom.js +0 -3
- package/dist/ui/formatters/dom.js.map +1 -1
- package/dist/ui/formatters/index.d.ts +1 -0
- package/dist/ui/formatters/index.d.ts.map +1 -1
- package/dist/ui/formatters/index.js +1 -0
- package/dist/ui/formatters/index.js.map +1 -1
- package/dist/ui/formatters/networkHeaders.d.ts +14 -0
- package/dist/ui/formatters/networkHeaders.d.ts.map +1 -0
- package/dist/ui/formatters/networkHeaders.js +47 -0
- package/dist/ui/formatters/networkHeaders.js.map +1 -0
- package/dist/ui/formatters/preview.d.ts +2 -0
- package/dist/ui/formatters/preview.d.ts.map +1 -1
- package/dist/ui/formatters/preview.js +67 -23
- package/dist/ui/formatters/preview.js.map +1 -1
- package/dist/ui/formatters/semantic.d.ts +36 -0
- package/dist/ui/formatters/semantic.d.ts.map +1 -0
- package/dist/ui/formatters/semantic.js +98 -0
- package/dist/ui/formatters/semantic.js.map +1 -0
- package/dist/ui/formatters/status.d.ts.map +1 -1
- package/dist/ui/formatters/status.js +1 -12
- package/dist/ui/formatters/status.js.map +1 -1
- package/dist/ui/formatting.d.ts.map +1 -1
- package/dist/ui/formatting.js +0 -6
- package/dist/ui/formatting.js.map +1 -1
- package/dist/ui/logging/logger.d.ts +1 -1
- package/dist/ui/logging/logger.d.ts.map +1 -1
- package/dist/ui/logging/logger.js.map +1 -1
- package/dist/ui/messages/chrome.d.ts.map +1 -1
- package/dist/ui/messages/chrome.js +0 -6
- package/dist/ui/messages/chrome.js.map +1 -1
- package/dist/ui/messages/commands.d.ts +7 -0
- package/dist/ui/messages/commands.d.ts.map +1 -1
- package/dist/ui/messages/commands.js +9 -12
- package/dist/ui/messages/commands.js.map +1 -1
- package/dist/ui/messages/debug.d.ts.map +1 -1
- package/dist/ui/messages/debug.js +0 -6
- package/dist/ui/messages/debug.js.map +1 -1
- package/dist/ui/messages/internal.d.ts.map +1 -1
- package/dist/ui/messages/internal.js +0 -3
- package/dist/ui/messages/internal.js.map +1 -1
- package/dist/ui/messages/preview.d.ts.map +1 -1
- package/dist/ui/messages/preview.js +0 -12
- package/dist/ui/messages/preview.js.map +1 -1
- package/dist/ui/messages/session.d.ts.map +1 -1
- package/dist/ui/messages/session.js +0 -3
- package/dist/ui/messages/session.js.map +1 -1
- package/dist/utils/__tests__/errors.unit.test.d.ts +12 -0
- package/dist/utils/__tests__/errors.unit.test.d.ts.map +1 -0
- package/dist/utils/__tests__/errors.unit.test.js +255 -0
- package/dist/utils/__tests__/errors.unit.test.js.map +1 -0
- package/dist/utils/__tests__/http.unit.test.d.ts +12 -0
- package/dist/utils/__tests__/http.unit.test.d.ts.map +1 -0
- package/dist/utils/__tests__/http.unit.test.js +218 -0
- package/dist/utils/__tests__/http.unit.test.js.map +1 -0
- package/dist/utils/__tests__/process.unit.test.d.ts +14 -0
- package/dist/utils/__tests__/process.unit.test.d.ts.map +1 -0
- package/dist/utils/__tests__/process.unit.test.js +124 -0
- package/dist/utils/__tests__/process.unit.test.js.map +1 -0
- package/dist/utils/__tests__/session.contract.test.js +1 -1
- package/dist/utils/__tests__/session.contract.test.js.map +1 -1
- package/dist/utils/atomicFile.d.ts.map +1 -1
- package/dist/utils/atomicFile.js +9 -6
- package/dist/utils/atomicFile.js.map +1 -1
- package/dist/utils/exitCodes.d.ts.map +1 -1
- package/dist/utils/exitCodes.js +0 -2
- package/dist/utils/exitCodes.js.map +1 -1
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +0 -3
- package/dist/utils/validation.js.map +1 -1
- package/dist/utils/version.d.ts.map +1 -1
- package/dist/utils/version.js +0 -1
- package/dist/utils/version.js.map +1 -1
- package/package.json +22 -1
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Handler
|
|
3
|
+
*
|
|
4
|
+
* Shared functionality for forwarding requests to worker process.
|
|
5
|
+
* Provides consistent error handling, timeouts, and pending request tracking.
|
|
6
|
+
*/
|
|
7
|
+
import type { PendingRequestManager } from './pendingRequests.js';
|
|
8
|
+
import type { Socket } from 'net';
|
|
9
|
+
import type { WorkerManager } from '../../daemon/server/WorkerManager.js';
|
|
10
|
+
import type { WorkerRequestUnion } from '../../ipc/index.js';
|
|
11
|
+
import type { StatusResponseData } from '../../ipc/session/index.js';
|
|
12
|
+
/**
|
|
13
|
+
* Response sender function type.
|
|
14
|
+
*/
|
|
15
|
+
type SendResponseFn = (socket: Socket, response: unknown) => void;
|
|
16
|
+
/**
|
|
17
|
+
* Configuration for worker request forwarding.
|
|
18
|
+
*/
|
|
19
|
+
export interface ForwardToWorkerConfig {
|
|
20
|
+
socket: Socket;
|
|
21
|
+
sessionId: string;
|
|
22
|
+
commandName: string;
|
|
23
|
+
workerRequest: WorkerRequestUnion;
|
|
24
|
+
timeoutMs?: number;
|
|
25
|
+
statusData?: StatusResponseData;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Base handler with shared worker forwarding logic.
|
|
29
|
+
*/
|
|
30
|
+
export declare class BaseHandler {
|
|
31
|
+
protected readonly workerManager: WorkerManager;
|
|
32
|
+
protected readonly pendingRequests: PendingRequestManager;
|
|
33
|
+
protected readonly sendResponse: SendResponseFn;
|
|
34
|
+
protected static readonly DEFAULT_WORKER_TIMEOUT = 5000;
|
|
35
|
+
constructor(workerManager: WorkerManager, pendingRequests: PendingRequestManager, sendResponse: SendResponseFn);
|
|
36
|
+
/**
|
|
37
|
+
* Check if worker is available.
|
|
38
|
+
*
|
|
39
|
+
* @returns True if active worker exists
|
|
40
|
+
*/
|
|
41
|
+
protected hasActiveWorker(): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Send error response when no worker is available.
|
|
44
|
+
*
|
|
45
|
+
* @param socket - Client socket
|
|
46
|
+
* @param sessionId - Session identifier
|
|
47
|
+
* @param commandName - Command name for response type
|
|
48
|
+
* @param errorMessage - Error message (defaults to "No active worker process")
|
|
49
|
+
*/
|
|
50
|
+
protected sendNoWorkerResponse(socket: Socket, sessionId: string, commandName: string, errorMessage?: string): void;
|
|
51
|
+
/**
|
|
52
|
+
* Helper to send standardized error responses.
|
|
53
|
+
*
|
|
54
|
+
* @param socket - Client socket
|
|
55
|
+
* @param sessionId - Session identifier
|
|
56
|
+
* @param commandName - Command name for response type
|
|
57
|
+
* @param error - Error message
|
|
58
|
+
* @param statusData - Optional status data to include in response
|
|
59
|
+
*/
|
|
60
|
+
private sendErrorResponse;
|
|
61
|
+
/**
|
|
62
|
+
* Generic worker request forwarder with timeout and error handling.
|
|
63
|
+
*
|
|
64
|
+
* Encapsulates the common pattern of:
|
|
65
|
+
* 1. Setting a timeout
|
|
66
|
+
* 2. Tracking the pending request
|
|
67
|
+
* 3. Sending the message to worker
|
|
68
|
+
* 4. Handling immediate send errors
|
|
69
|
+
*
|
|
70
|
+
* @param config - Forwarding configuration
|
|
71
|
+
*/
|
|
72
|
+
protected forwardToWorker(config: ForwardToWorkerConfig): void;
|
|
73
|
+
}
|
|
74
|
+
export {};
|
|
75
|
+
//# sourceMappingURL=BaseHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseHandler.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/BaseHandler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAGlC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,KAAK,EAAe,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE;;GAEG;AACH,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,kBAAkB,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,kBAAkB,CAAC;CACjC;AAED;;GAEG;AACH,qBAAa,WAAW;IAIpB,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAC/C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,qBAAqB;IACzD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,cAAc;IALjD,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,QAAQ;gBAGnC,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,qBAAqB,EACtC,YAAY,EAAE,cAAc;IAGjD;;;;OAIG;IACH,SAAS,CAAC,eAAe,IAAI,OAAO;IAIpC;;;;;;;OAOG;IACH,SAAS,CAAC,oBAAoB,CAC5B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,YAAY,SAA6B,GACxC,IAAI;IAWP;;;;;;;;OAQG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,IAAI;CAgC/D"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Handler
|
|
3
|
+
*
|
|
4
|
+
* Shared functionality for forwarding requests to worker process.
|
|
5
|
+
* Provides consistent error handling, timeouts, and pending request tracking.
|
|
6
|
+
*/
|
|
7
|
+
import { getErrorMessage } from '../../connection/errors.js';
|
|
8
|
+
/**
|
|
9
|
+
* Base handler with shared worker forwarding logic.
|
|
10
|
+
*/
|
|
11
|
+
export class BaseHandler {
|
|
12
|
+
workerManager;
|
|
13
|
+
pendingRequests;
|
|
14
|
+
sendResponse;
|
|
15
|
+
static DEFAULT_WORKER_TIMEOUT = 5000;
|
|
16
|
+
constructor(workerManager, pendingRequests, sendResponse) {
|
|
17
|
+
this.workerManager = workerManager;
|
|
18
|
+
this.pendingRequests = pendingRequests;
|
|
19
|
+
this.sendResponse = sendResponse;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Check if worker is available.
|
|
23
|
+
*
|
|
24
|
+
* @returns True if active worker exists
|
|
25
|
+
*/
|
|
26
|
+
hasActiveWorker() {
|
|
27
|
+
return this.workerManager.hasActiveWorker();
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Send error response when no worker is available.
|
|
31
|
+
*
|
|
32
|
+
* @param socket - Client socket
|
|
33
|
+
* @param sessionId - Session identifier
|
|
34
|
+
* @param commandName - Command name for response type
|
|
35
|
+
* @param errorMessage - Error message (defaults to "No active worker process")
|
|
36
|
+
*/
|
|
37
|
+
sendNoWorkerResponse(socket, sessionId, commandName, errorMessage = 'No active worker process') {
|
|
38
|
+
const response = {
|
|
39
|
+
type: `${commandName}_response`,
|
|
40
|
+
sessionId,
|
|
41
|
+
status: 'error',
|
|
42
|
+
error: errorMessage,
|
|
43
|
+
};
|
|
44
|
+
this.sendResponse(socket, response);
|
|
45
|
+
console.error(`[daemon] ${commandName} error response sent (no worker)`);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Helper to send standardized error responses.
|
|
49
|
+
*
|
|
50
|
+
* @param socket - Client socket
|
|
51
|
+
* @param sessionId - Session identifier
|
|
52
|
+
* @param commandName - Command name for response type
|
|
53
|
+
* @param error - Error message
|
|
54
|
+
* @param statusData - Optional status data to include in response
|
|
55
|
+
*/
|
|
56
|
+
sendErrorResponse(socket, sessionId, commandName, error, statusData) {
|
|
57
|
+
const response = {
|
|
58
|
+
type: `${commandName}_response`,
|
|
59
|
+
sessionId,
|
|
60
|
+
status: 'error',
|
|
61
|
+
error,
|
|
62
|
+
...(statusData && { data: statusData }),
|
|
63
|
+
};
|
|
64
|
+
this.sendResponse(socket, response);
|
|
65
|
+
console.error(`[daemon] ${commandName} error response sent: ${error}`);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Generic worker request forwarder with timeout and error handling.
|
|
69
|
+
*
|
|
70
|
+
* Encapsulates the common pattern of:
|
|
71
|
+
* 1. Setting a timeout
|
|
72
|
+
* 2. Tracking the pending request
|
|
73
|
+
* 3. Sending the message to worker
|
|
74
|
+
* 4. Handling immediate send errors
|
|
75
|
+
*
|
|
76
|
+
* @param config - Forwarding configuration
|
|
77
|
+
*/
|
|
78
|
+
forwardToWorker(config) {
|
|
79
|
+
const { socket, sessionId, commandName, workerRequest, statusData } = config;
|
|
80
|
+
const timeoutMs = config.timeoutMs ?? BaseHandler.DEFAULT_WORKER_TIMEOUT;
|
|
81
|
+
const requestId = workerRequest.requestId;
|
|
82
|
+
const timeout = setTimeout(() => {
|
|
83
|
+
this.pendingRequests.remove(requestId);
|
|
84
|
+
this.sendErrorResponse(socket, sessionId, commandName, `Worker response timeout (${timeoutMs / 1000}s)`, statusData);
|
|
85
|
+
}, timeoutMs);
|
|
86
|
+
this.pendingRequests.add(requestId, {
|
|
87
|
+
socket,
|
|
88
|
+
sessionId,
|
|
89
|
+
timeout,
|
|
90
|
+
commandName: commandName,
|
|
91
|
+
...(statusData && { statusData }),
|
|
92
|
+
});
|
|
93
|
+
try {
|
|
94
|
+
this.workerManager.send(workerRequest);
|
|
95
|
+
console.error(`[daemon] Forwarded ${workerRequest.type} to worker (requestId: ${requestId})`);
|
|
96
|
+
}
|
|
97
|
+
catch (error) {
|
|
98
|
+
this.pendingRequests.remove(requestId);
|
|
99
|
+
this.sendErrorResponse(socket, sessionId, commandName, getErrorMessage(error), statusData);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=BaseHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseHandler.js","sourceRoot":"","sources":["../../../src/daemon/handlers/BaseHandler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAsBzD;;GAEG;AACH,MAAM,OAAO,WAAW;IAID;IACA;IACA;IALX,MAAM,CAAU,sBAAsB,GAAG,IAAI,CAAC;IAExD,YACqB,aAA4B,EAC5B,eAAsC,EACtC,YAA4B;QAF5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,oBAAe,GAAf,eAAe,CAAuB;QACtC,iBAAY,GAAZ,YAAY,CAAgB;IAC9C,CAAC;IAEJ;;;;OAIG;IACO,eAAe;QACvB,OAAO,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC;IAC9C,CAAC;IAED;;;;;;;OAOG;IACO,oBAAoB,CAC5B,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,YAAY,GAAG,0BAA0B;QAEzC,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,GAAG,WAAW,WAAoB;YACxC,SAAS;YACT,MAAM,EAAE,OAAgB;YACxB,KAAK,EAAE,YAAY;SACpB,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,CAAC,KAAK,CAAC,YAAY,WAAW,kCAAkC,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;;;;OAQG;IACK,iBAAiB,CACvB,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,KAAa,EACb,UAA+B;QAE/B,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,GAAG,WAAW,WAAoB;YACxC,SAAS;YACT,MAAM,EAAE,OAAgB;YACxB,KAAK;YACL,GAAG,CAAC,UAAU,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;SACxC,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,CAAC,KAAK,CAAC,YAAY,WAAW,yBAAyB,KAAK,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;;;;;;;;;OAUG;IACO,eAAe,CAAC,MAA6B;QACrD,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAC7E,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,WAAW,CAAC,sBAAsB,CAAC;QACzE,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC;QAE1C,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACvC,IAAI,CAAC,iBAAiB,CACpB,MAAM,EACN,SAAS,EACT,WAAW,EACX,4BAA4B,SAAS,GAAG,IAAI,IAAI,EAChD,UAAU,CACX,CAAC;QACJ,CAAC,EAAE,SAAS,CAAC,CAAC;QAEd,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE;YAClC,MAAM;YACN,SAAS;YACT,OAAO;YACP,WAAW,EAAE,WAA0B;YACvC,GAAG,CAAC,UAAU,IAAI,EAAE,UAAU,EAAE,CAAC;SAClC,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACvC,OAAO,CAAC,KAAK,CAAC,sBAAsB,aAAa,CAAC,IAAI,0BAA0B,SAAS,GAAG,CAAC,CAAC;QAChG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACvC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC"}
|
|
@@ -7,6 +7,7 @@ import type { PendingRequestManager } from './pendingRequests.js';
|
|
|
7
7
|
import type { Socket } from 'net';
|
|
8
8
|
import type { WorkerManager } from '../../daemon/server/WorkerManager.js';
|
|
9
9
|
import { type ClientRequestUnion, type HandshakeRequest } from '../../ipc/index.js';
|
|
10
|
+
import { BaseHandler } from './BaseHandler.js';
|
|
10
11
|
/**
|
|
11
12
|
* Response sender function type.
|
|
12
13
|
*/
|
|
@@ -14,10 +15,8 @@ type SendResponseFn = (socket: Socket, response: unknown) => void;
|
|
|
14
15
|
/**
|
|
15
16
|
* Handles handshake and generic command forwarding.
|
|
16
17
|
*/
|
|
17
|
-
export declare class CommandHandlers {
|
|
18
|
-
private readonly
|
|
19
|
-
private readonly pendingRequests;
|
|
20
|
-
private readonly sendResponse;
|
|
18
|
+
export declare class CommandHandlers extends BaseHandler {
|
|
19
|
+
private static readonly COMMAND_TIMEOUT;
|
|
21
20
|
constructor(workerManager: WorkerManager, pendingRequests: PendingRequestManager, sendResponse: SendResponseFn);
|
|
22
21
|
/**
|
|
23
22
|
* Handle handshake request.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandHandlers.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/CommandHandlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"CommandHandlers.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/CommandHandlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAElC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EACL,KAAK,kBAAkB,EAEvB,KAAK,gBAAgB,EAItB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;GAEG;AACH,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;AAElE;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAS;gBAG9C,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,qBAAqB,EACtC,YAAY,EAAE,cAAc;IAK9B;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAchE;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,IAAI;CAyBjE"}
|
|
@@ -3,19 +3,15 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Handles generic CDP command forwarding and handshake.
|
|
5
5
|
*/
|
|
6
|
-
import { getErrorMessage } from '../../connection/errors.js';
|
|
7
6
|
import { generateRequestId } from '../../ipc/utils/requestId.js';
|
|
7
|
+
import { BaseHandler } from './BaseHandler.js';
|
|
8
8
|
/**
|
|
9
9
|
* Handles handshake and generic command forwarding.
|
|
10
10
|
*/
|
|
11
|
-
export class CommandHandlers {
|
|
12
|
-
|
|
13
|
-
pendingRequests;
|
|
14
|
-
sendResponse;
|
|
11
|
+
export class CommandHandlers extends BaseHandler {
|
|
12
|
+
static COMMAND_TIMEOUT = 10000;
|
|
15
13
|
constructor(workerManager, pendingRequests, sendResponse) {
|
|
16
|
-
|
|
17
|
-
this.pendingRequests = pendingRequests;
|
|
18
|
-
this.sendResponse = sendResponse;
|
|
14
|
+
super(workerManager, pendingRequests, sendResponse);
|
|
19
15
|
}
|
|
20
16
|
/**
|
|
21
17
|
* Handle handshake request.
|
|
@@ -37,57 +33,23 @@ export class CommandHandlers {
|
|
|
37
33
|
handleCommand(socket, request) {
|
|
38
34
|
const commandName = request.type.replace('_request', '');
|
|
39
35
|
console.error(`[daemon] ${commandName} request received (sessionId: ${request.sessionId})`);
|
|
40
|
-
if (!this.
|
|
41
|
-
|
|
42
|
-
type: `${commandName}_response`,
|
|
43
|
-
sessionId: request.sessionId,
|
|
44
|
-
status: 'error',
|
|
45
|
-
error: 'No active worker process',
|
|
46
|
-
};
|
|
47
|
-
this.sendResponse(socket, response);
|
|
48
|
-
console.error(`[daemon] ${commandName} error response sent (no worker)`);
|
|
36
|
+
if (!this.hasActiveWorker()) {
|
|
37
|
+
this.sendNoWorkerResponse(socket, request.sessionId, commandName);
|
|
49
38
|
return;
|
|
50
39
|
}
|
|
51
|
-
const requestId = generateRequestId(commandName);
|
|
52
|
-
const timeout = setTimeout(() => {
|
|
53
|
-
this.pendingRequests.remove(requestId);
|
|
54
|
-
const response = {
|
|
55
|
-
type: `${commandName}_response`,
|
|
56
|
-
sessionId: request.sessionId,
|
|
57
|
-
status: 'error',
|
|
58
|
-
error: 'Worker response timeout (10s)',
|
|
59
|
-
};
|
|
60
|
-
this.sendResponse(socket, response);
|
|
61
|
-
console.error(`[daemon] ${commandName} timeout response sent`);
|
|
62
|
-
}, 10000);
|
|
63
|
-
this.pendingRequests.add(requestId, {
|
|
64
|
-
socket,
|
|
65
|
-
sessionId: request.sessionId,
|
|
66
|
-
timeout,
|
|
67
|
-
commandName,
|
|
68
|
-
});
|
|
69
|
-
// Extract only sessionId, keep all other fields including 'type' param if it exists
|
|
70
40
|
const { sessionId: _sessionId, type: _ipcType, ...params } = request;
|
|
71
41
|
const workerRequest = {
|
|
72
42
|
type: `${commandName}_request`,
|
|
73
|
-
requestId,
|
|
43
|
+
requestId: generateRequestId(commandName),
|
|
74
44
|
...params,
|
|
75
45
|
};
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
type: `${commandName}_response`,
|
|
84
|
-
sessionId: request.sessionId,
|
|
85
|
-
status: 'error',
|
|
86
|
-
error: getErrorMessage(error),
|
|
87
|
-
};
|
|
88
|
-
this.sendResponse(socket, response);
|
|
89
|
-
console.error(`[daemon] Failed to forward ${commandName}_request to worker: ${getErrorMessage(error)}`);
|
|
90
|
-
}
|
|
46
|
+
this.forwardToWorker({
|
|
47
|
+
socket,
|
|
48
|
+
sessionId: request.sessionId,
|
|
49
|
+
commandName,
|
|
50
|
+
workerRequest: workerRequest,
|
|
51
|
+
timeoutMs: CommandHandlers.COMMAND_TIMEOUT,
|
|
52
|
+
});
|
|
91
53
|
}
|
|
92
54
|
}
|
|
93
55
|
//# sourceMappingURL=CommandHandlers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandHandlers.js","sourceRoot":"","sources":["../../../src/daemon/handlers/CommandHandlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"CommandHandlers.js","sourceRoot":"","sources":["../../../src/daemon/handlers/CommandHandlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAcH,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAO/C;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,WAAW;IACtC,MAAM,CAAU,eAAe,GAAG,KAAK,CAAC;IAEhD,YACE,aAA4B,EAC5B,eAAsC,EACtC,YAA4B;QAE5B,KAAK,CAAC,aAAa,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,MAAc,EAAE,OAAyB;QACvD,OAAO,CAAC,KAAK,CAAC,mDAAmD,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QAEvF,MAAM,QAAQ,GAAsB;YAClC,IAAI,EAAE,oBAAoB;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,sBAAsB;SAChC,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,MAAc,EAAE,OAA2B;QACvD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAgB,CAAC;QAExE,OAAO,CAAC,KAAK,CAAC,YAAY,WAAW,iCAAiC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QAE5F,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;YAC5B,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAClE,OAAO;QACT,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC;QACrE,MAAM,aAAa,GAAsC;YACvD,IAAI,EAAE,GAAG,WAAW,UAAmB;YACvC,SAAS,EAAE,iBAAiB,CAAC,WAAW,CAAC;YACzC,GAAG,MAAM;SAC2B,CAAC;QAEvC,IAAI,CAAC,eAAe,CAAC;YACnB,MAAM;YACN,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW;YACX,aAAa,EAAE,aAAmC;YAClD,SAAS,EAAE,eAAe,CAAC,eAAe;SAC3C,CAAC,CAAC;IACL,CAAC"}
|
|
@@ -7,7 +7,8 @@ import type { PendingRequestManager } from './pendingRequests.js';
|
|
|
7
7
|
import type { Socket } from 'net';
|
|
8
8
|
import type { WorkerManager } from '../../daemon/server/WorkerManager.js';
|
|
9
9
|
import type { ISessionService } from '../../daemon/services/SessionService.js';
|
|
10
|
-
import { type PeekRequest, type StatusRequest } from '../../ipc/index.js';
|
|
10
|
+
import { type HARDataRequest, type PeekRequest, type StatusRequest } from '../../ipc/index.js';
|
|
11
|
+
import { BaseHandler } from './BaseHandler.js';
|
|
11
12
|
/**
|
|
12
13
|
* Response sender function type.
|
|
13
14
|
*/
|
|
@@ -15,17 +16,18 @@ type SendResponseFn = (socket: Socket, response: unknown) => void;
|
|
|
15
16
|
/**
|
|
16
17
|
* Handles status and peek queries.
|
|
17
18
|
*/
|
|
18
|
-
export declare class QueryHandlers {
|
|
19
|
-
private readonly workerManager;
|
|
20
|
-
private readonly pendingRequests;
|
|
19
|
+
export declare class QueryHandlers extends BaseHandler {
|
|
21
20
|
private readonly sessionService;
|
|
22
|
-
private readonly sendResponse;
|
|
23
21
|
private readonly daemonStartTime;
|
|
24
|
-
constructor(workerManager: WorkerManager, pendingRequests: PendingRequestManager,
|
|
22
|
+
constructor(workerManager: WorkerManager, pendingRequests: PendingRequestManager, sendResponse: SendResponseFn, sessionService: ISessionService, daemonStartTime: number);
|
|
25
23
|
/**
|
|
26
24
|
* Handle status request.
|
|
27
25
|
*/
|
|
28
26
|
handleStatus(socket: Socket, request: StatusRequest): void;
|
|
27
|
+
/**
|
|
28
|
+
* Handle HAR data request - forward to worker via IPC.
|
|
29
|
+
*/
|
|
30
|
+
handleHARData(socket: Socket, request: HARDataRequest): void;
|
|
29
31
|
/**
|
|
30
32
|
* Handle peek request - forward to worker via IPC.
|
|
31
33
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryHandlers.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/QueryHandlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAGlC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EACL,KAAK,WAAW,
|
|
1
|
+
{"version":3,"file":"QueryHandlers.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/QueryHandlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAGlC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,aAAa,EAKnB,MAAM,gBAAgB,CAAC;AAIxB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;GAEG;AACH,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;AAElE;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAK1C,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAJhC,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,qBAAqB,EACtC,YAAY,EAAE,cAAc,EACX,cAAc,EAAE,eAAe,EAC/B,eAAe,EAAE,MAAM;IAK1C;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI;IAkE1D;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI;IAqB5D;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI;CAqBvD"}
|
|
@@ -6,20 +6,16 @@
|
|
|
6
6
|
import { getErrorMessage } from '../../connection/errors.js';
|
|
7
7
|
import { generateRequestId } from '../../ipc/utils/requestId.js';
|
|
8
8
|
import { filterDefined } from '../../utils/objects.js';
|
|
9
|
+
import { BaseHandler } from './BaseHandler.js';
|
|
9
10
|
/**
|
|
10
11
|
* Handles status and peek queries.
|
|
11
12
|
*/
|
|
12
|
-
export class QueryHandlers {
|
|
13
|
-
workerManager;
|
|
14
|
-
pendingRequests;
|
|
13
|
+
export class QueryHandlers extends BaseHandler {
|
|
15
14
|
sessionService;
|
|
16
|
-
sendResponse;
|
|
17
15
|
daemonStartTime;
|
|
18
|
-
constructor(workerManager, pendingRequests,
|
|
19
|
-
|
|
20
|
-
this.pendingRequests = pendingRequests;
|
|
16
|
+
constructor(workerManager, pendingRequests, sendResponse, sessionService, daemonStartTime) {
|
|
17
|
+
super(workerManager, pendingRequests, sendResponse);
|
|
21
18
|
this.sessionService = sessionService;
|
|
22
|
-
this.sendResponse = sendResponse;
|
|
23
19
|
this.daemonStartTime = daemonStartTime;
|
|
24
20
|
}
|
|
25
21
|
/**
|
|
@@ -28,17 +24,14 @@ export class QueryHandlers {
|
|
|
28
24
|
handleStatus(socket, request) {
|
|
29
25
|
console.error(`[daemon] Status request received (sessionId: ${request.sessionId})`);
|
|
30
26
|
try {
|
|
31
|
-
// Gather daemon metadata
|
|
32
27
|
const data = {
|
|
33
28
|
daemonPid: process.pid,
|
|
34
29
|
daemonStartTime: this.daemonStartTime,
|
|
35
30
|
socketPath: this.sessionService.getFilePath('DAEMON_SOCKET'),
|
|
36
31
|
};
|
|
37
|
-
// Check for active session
|
|
38
32
|
const sessionPid = this.sessionService.readPid();
|
|
39
33
|
if (sessionPid && this.sessionService.isProcessAlive(sessionPid)) {
|
|
40
34
|
data.sessionPid = sessionPid;
|
|
41
|
-
// Try to read session metadata
|
|
42
35
|
const metadata = this.sessionService.readMetadata({ warnOnCorruption: true });
|
|
43
36
|
if (metadata) {
|
|
44
37
|
data.sessionMetadata = filterDefined({
|
|
@@ -51,47 +44,21 @@ export class QueryHandlers {
|
|
|
51
44
|
activeTelemetry: metadata.activeTelemetry,
|
|
52
45
|
});
|
|
53
46
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
// Send response without activity data if worker times out
|
|
61
|
-
const response = {
|
|
62
|
-
type: 'status_response',
|
|
63
|
-
sessionId: request.sessionId,
|
|
64
|
-
status: 'ok',
|
|
65
|
-
data,
|
|
66
|
-
};
|
|
67
|
-
this.sendResponse(socket, response);
|
|
68
|
-
console.error('[daemon] Status response sent (worker timeout)');
|
|
69
|
-
}, 5000);
|
|
70
|
-
// Track pending request with special handling for status
|
|
71
|
-
this.pendingRequests.add(requestId, {
|
|
47
|
+
if (this.hasActiveWorker()) {
|
|
48
|
+
const workerRequest = {
|
|
49
|
+
type: 'worker_status_request',
|
|
50
|
+
requestId: generateRequestId('worker_status'),
|
|
51
|
+
};
|
|
52
|
+
this.forwardToWorker({
|
|
72
53
|
socket,
|
|
73
54
|
sessionId: request.sessionId,
|
|
74
|
-
timeout,
|
|
75
|
-
statusData: data, // Store base status data
|
|
76
55
|
commandName: 'worker_status',
|
|
56
|
+
workerRequest: workerRequest,
|
|
57
|
+
statusData: data,
|
|
77
58
|
});
|
|
78
|
-
//
|
|
79
|
-
const workerRequest = {
|
|
80
|
-
type: 'worker_status_request',
|
|
81
|
-
requestId,
|
|
82
|
-
};
|
|
83
|
-
try {
|
|
84
|
-
this.workerManager.send(workerRequest);
|
|
85
|
-
console.error(`[daemon] Forwarded worker_status_request to worker (requestId: ${requestId})`);
|
|
86
|
-
return; // Will send response when worker responds
|
|
87
|
-
}
|
|
88
|
-
catch (error) {
|
|
89
|
-
this.pendingRequests.remove(requestId);
|
|
90
|
-
console.error(`[daemon] Failed to forward worker_status_request: ${getErrorMessage(error)}`);
|
|
91
|
-
}
|
|
59
|
+
return; // Will send response when worker responds
|
|
92
60
|
}
|
|
93
61
|
}
|
|
94
|
-
// Send response immediately if no worker
|
|
95
62
|
const response = {
|
|
96
63
|
type: 'status_response',
|
|
97
64
|
sessionId: request.sessionId,
|
|
@@ -113,64 +80,45 @@ export class QueryHandlers {
|
|
|
113
80
|
}
|
|
114
81
|
}
|
|
115
82
|
/**
|
|
116
|
-
* Handle
|
|
83
|
+
* Handle HAR data request - forward to worker via IPC.
|
|
117
84
|
*/
|
|
118
|
-
|
|
119
|
-
console.error(`[daemon]
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
const response = {
|
|
123
|
-
type: 'peek_response',
|
|
124
|
-
sessionId: request.sessionId,
|
|
125
|
-
status: 'error',
|
|
126
|
-
error: 'No active session',
|
|
127
|
-
};
|
|
128
|
-
this.sendResponse(socket, response);
|
|
129
|
-
console.error('[daemon] Peek error response sent (no worker)');
|
|
85
|
+
handleHARData(socket, request) {
|
|
86
|
+
console.error(`[daemon] HAR data request received (sessionId: ${request.sessionId})`);
|
|
87
|
+
if (!this.hasActiveWorker()) {
|
|
88
|
+
this.sendNoWorkerResponse(socket, request.sessionId, 'har_data', 'No active session');
|
|
130
89
|
return;
|
|
131
90
|
}
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
const response = {
|
|
138
|
-
type: 'peek_response',
|
|
139
|
-
sessionId: request.sessionId,
|
|
140
|
-
status: 'error',
|
|
141
|
-
error: 'Worker response timeout (5s)',
|
|
142
|
-
};
|
|
143
|
-
this.sendResponse(socket, response);
|
|
144
|
-
console.error('[daemon] Peek timeout response sent');
|
|
145
|
-
}, 5000);
|
|
146
|
-
// Track pending request
|
|
147
|
-
this.pendingRequests.add(requestId, {
|
|
91
|
+
const workerRequest = {
|
|
92
|
+
type: 'worker_har_data_request',
|
|
93
|
+
requestId: generateRequestId('worker_har_data'),
|
|
94
|
+
};
|
|
95
|
+
this.forwardToWorker({
|
|
148
96
|
socket,
|
|
149
97
|
sessionId: request.sessionId,
|
|
150
|
-
|
|
151
|
-
|
|
98
|
+
commandName: 'worker_har_data',
|
|
99
|
+
workerRequest: workerRequest,
|
|
152
100
|
});
|
|
153
|
-
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Handle peek request - forward to worker via IPC.
|
|
104
|
+
*/
|
|
105
|
+
handlePeek(socket, request) {
|
|
106
|
+
console.error(`[daemon] Peek request received (sessionId: ${request.sessionId})`);
|
|
107
|
+
if (!this.hasActiveWorker()) {
|
|
108
|
+
this.sendNoWorkerResponse(socket, request.sessionId, 'peek', 'No active session');
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
154
111
|
const workerRequest = {
|
|
155
112
|
type: 'worker_peek_request',
|
|
156
|
-
requestId,
|
|
113
|
+
requestId: generateRequestId('worker_peek'),
|
|
157
114
|
lastN: 10, // Default limit for preview items (PeekRequest doesn't include lastN)
|
|
158
115
|
};
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
const response = {
|
|
166
|
-
type: 'peek_response',
|
|
167
|
-
sessionId: request.sessionId,
|
|
168
|
-
status: 'error',
|
|
169
|
-
error: getErrorMessage(error),
|
|
170
|
-
};
|
|
171
|
-
this.sendResponse(socket, response);
|
|
172
|
-
console.error(`[daemon] Failed to forward worker_peek_request: ${getErrorMessage(error)}`);
|
|
173
|
-
}
|
|
116
|
+
this.forwardToWorker({
|
|
117
|
+
socket,
|
|
118
|
+
sessionId: request.sessionId,
|
|
119
|
+
commandName: 'worker_peek',
|
|
120
|
+
workerRequest: workerRequest,
|
|
121
|
+
});
|
|
174
122
|
}
|
|
175
123
|
}
|
|
176
124
|
//# sourceMappingURL=QueryHandlers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryHandlers.js","sourceRoot":"","sources":["../../../src/daemon/handlers/QueryHandlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAYzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"QueryHandlers.js","sourceRoot":"","sources":["../../../src/daemon/handlers/QueryHandlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionHandlers.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/SessionHandlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAGlC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAE3E,OAAO,EACL,KAAK,mBAAmB,EAGxB,KAAK,kBAAkB,EAGxB,MAAM,gBAAgB,CAAC;AAQxB;;GAEG;AACH,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;AAElE;;GAEG;AACH,qBAAa,eAAe;IAExB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAFZ,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,eAAe,EAC/B,YAAY,EAAE,cAAc;IAG/C;;OAEG;IACG,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"SessionHandlers.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/SessionHandlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAGlC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAE3E,OAAO,EACL,KAAK,mBAAmB,EAGxB,KAAK,kBAAkB,EAGxB,MAAM,gBAAgB,CAAC;AAQxB;;GAEG;AACH,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;AAElE;;GAEG;AACH,qBAAa,eAAe;IAExB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAFZ,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,eAAe,EAC/B,YAAY,EAAE,cAAc;IAG/C;;OAEG;IACG,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+HrF;;OAEG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,IAAI;CAgFrE"}
|