browser-debugger-cli 0.6.6 → 0.6.8
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 +48 -269
- package/dist/commands/__tests__/console.contract.test.d.ts +9 -0
- package/dist/commands/__tests__/console.contract.test.d.ts.map +1 -0
- package/dist/commands/__tests__/console.contract.test.js +118 -0
- package/dist/commands/__tests__/console.contract.test.js.map +1 -0
- package/dist/commands/__tests__/helpJson.contract.test.d.ts +12 -0
- package/dist/commands/__tests__/helpJson.contract.test.d.ts.map +1 -0
- package/dist/commands/__tests__/helpJson.contract.test.js +121 -0
- package/dist/commands/__tests__/helpJson.contract.test.js.map +1 -0
- package/dist/commands/__tests__/machineReadableHelp.contract.test.js +26 -7
- package/dist/commands/__tests__/machineReadableHelp.contract.test.js.map +1 -1
- package/dist/commands/cdp.d.ts.map +1 -1
- package/dist/commands/cdp.js.map +1 -1
- package/dist/commands/cleanup.d.ts.map +1 -1
- package/dist/commands/cleanup.js +17 -91
- package/dist/commands/cleanup.js.map +1 -1
- package/dist/commands/console.d.ts +17 -0
- package/dist/commands/console.d.ts.map +1 -1
- package/dist/commands/console.js +158 -56
- package/dist/commands/console.js.map +1 -1
- package/dist/commands/details.d.ts.map +1 -1
- package/dist/commands/details.js +3 -1
- package/dist/commands/details.js.map +1 -1
- package/dist/commands/dom/DomElementResolver.d.ts +138 -0
- package/dist/commands/dom/DomElementResolver.d.ts.map +1 -0
- package/dist/commands/dom/DomElementResolver.js +173 -0
- package/dist/commands/dom/DomElementResolver.js.map +1 -0
- package/dist/commands/dom/a11y.d.ts.map +1 -1
- package/dist/commands/dom/a11y.js +4 -28
- package/dist/commands/dom/a11y.js.map +1 -1
- package/dist/commands/dom/evalHelpers.d.ts.map +1 -1
- package/dist/commands/dom/evalHelpers.js +1 -1
- 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 +11 -11
- 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 +5 -5
- package/dist/commands/dom/formInteraction.js.map +1 -1
- package/dist/commands/dom/helpers.d.ts +0 -50
- package/dist/commands/dom/helpers.d.ts.map +1 -1
- package/dist/commands/dom/helpers.js +2 -56
- 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 +50 -44
- package/dist/commands/dom/index.js.map +1 -1
- package/dist/commands/dom/keyMapping.d.ts +0 -6
- package/dist/commands/dom/keyMapping.d.ts.map +1 -1
- package/dist/commands/dom/keyMapping.js +0 -8
- package/dist/commands/dom/keyMapping.js.map +1 -1
- package/dist/commands/dom/reactEventHelpers.d.ts +12 -18
- package/dist/commands/dom/reactEventHelpers.d.ts.map +1 -1
- package/dist/commands/dom/reactEventHelpers.js +21 -70
- package/dist/commands/dom/reactEventHelpers.js.map +1 -1
- package/dist/commands/helpJson.d.ts +165 -0
- package/dist/commands/helpJson.d.ts.map +1 -0
- package/dist/commands/helpJson.js +252 -0
- package/dist/commands/helpJson.js.map +1 -0
- package/dist/commands/machineReadableHelp.d.ts +21 -2
- package/dist/commands/machineReadableHelp.d.ts.map +1 -1
- package/dist/commands/machineReadableHelp.js +95 -60
- package/dist/commands/machineReadableHelp.js.map +1 -1
- package/dist/commands/network.d.ts.map +1 -1
- package/dist/commands/network.js.map +1 -1
- package/dist/commands/peek.d.ts.map +1 -1
- package/dist/commands/peek.js +5 -7
- package/dist/commands/peek.js.map +1 -1
- package/dist/commands/shared/CommandRunner.d.ts +4 -10
- package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
- package/dist/commands/shared/CommandRunner.js +2 -2
- package/dist/commands/shared/CommandRunner.js.map +1 -1
- package/dist/commands/shared/commonOptions.d.ts +0 -15
- package/dist/commands/shared/commonOptions.d.ts.map +1 -1
- package/dist/commands/shared/commonOptions.js +0 -32
- package/dist/commands/shared/commonOptions.js.map +1 -1
- package/dist/commands/shared/optionTypes.d.ts +247 -0
- package/dist/commands/shared/optionTypes.d.ts.map +1 -0
- package/dist/commands/shared/optionTypes.js +20 -0
- package/dist/commands/shared/optionTypes.js.map +1 -0
- package/dist/commands/shared/startHelpers.d.ts.map +1 -1
- package/dist/commands/shared/startHelpers.js +3 -3
- package/dist/commands/shared/startHelpers.js.map +1 -1
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +8 -6
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/stop.d.ts.map +1 -1
- package/dist/commands/stop.js +17 -43
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/tail.d.ts.map +1 -1
- package/dist/commands/tail.js +49 -59
- package/dist/commands/tail.js.map +1 -1
- package/dist/connection/types.d.ts +2 -1
- package/dist/connection/types.d.ts.map +1 -1
- package/dist/constants.d.ts +14 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +39 -0
- package/dist/constants.js.map +1 -1
- package/dist/daemon/handlers/responseHandler.d.ts.map +1 -1
- package/dist/daemon/handlers/responseHandler.js +1 -0
- package/dist/daemon/handlers/responseHandler.js.map +1 -1
- package/dist/daemon/ipcServer.js +8 -8
- package/dist/daemon/ipcServer.js.map +1 -1
- package/dist/daemon/lifecycle/signalHandlers.d.ts.map +1 -1
- package/dist/daemon/lifecycle/signalHandlers.js +19 -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 +5 -2
- package/dist/daemon/lifecycle/workerCleanup.js.map +1 -1
- package/dist/daemon/patternDefinitions.d.ts +0 -13
- package/dist/daemon/patternDefinitions.d.ts.map +1 -1
- package/dist/daemon/patternDefinitions.js +0 -17
- package/dist/daemon/patternDefinitions.js.map +1 -1
- package/dist/daemon/worker/commandRegistry.d.ts.map +1 -1
- package/dist/daemon/worker/commandRegistry.js +3 -0
- package/dist/daemon/worker/commandRegistry.js.map +1 -1
- package/dist/index.js +34 -2
- package/dist/index.js.map +1 -1
- package/dist/ipc/protocol/commands.d.ts +2 -0
- package/dist/ipc/protocol/commands.d.ts.map +1 -1
- package/dist/ipc/protocol/commands.js.map +1 -1
- package/dist/ipc/session/queries.d.ts +2 -0
- package/dist/ipc/session/queries.d.ts.map +1 -1
- package/dist/ipc/utils/responseValidator.d.ts +7 -1
- package/dist/ipc/utils/responseValidator.d.ts.map +1 -1
- package/dist/ipc/utils/responseValidator.js +6 -1
- package/dist/ipc/utils/responseValidator.js.map +1 -1
- package/dist/session/QueryCacheManager.d.ts +140 -0
- package/dist/session/QueryCacheManager.d.ts.map +1 -0
- package/dist/session/QueryCacheManager.js +233 -0
- package/dist/session/QueryCacheManager.js.map +1 -0
- package/dist/session/cleanup.d.ts +63 -1
- package/dist/session/cleanup.d.ts.map +1 -1
- package/dist/session/cleanup.js +191 -65
- package/dist/session/cleanup.js.map +1 -1
- package/dist/session/queryCache.d.ts +25 -14
- package/dist/session/queryCache.d.ts.map +1 -1
- package/dist/session/queryCache.js +31 -60
- package/dist/session/queryCache.js.map +1 -1
- package/dist/telemetry/__tests__/roleInference.unit.test.d.ts +9 -0
- package/dist/telemetry/__tests__/roleInference.unit.test.d.ts.map +1 -0
- package/dist/telemetry/__tests__/roleInference.unit.test.js +138 -0
- package/dist/telemetry/__tests__/roleInference.unit.test.js.map +1 -0
- package/dist/telemetry/console.d.ts.map +1 -1
- package/dist/telemetry/console.js +29 -17
- package/dist/telemetry/console.js.map +1 -1
- package/dist/telemetry/dom.d.ts +1 -0
- package/dist/telemetry/dom.d.ts.map +1 -1
- package/dist/telemetry/dom.js +9 -4
- package/dist/telemetry/dom.js.map +1 -1
- package/dist/telemetry/filters.d.ts +3 -0
- package/dist/telemetry/filters.d.ts.map +1 -1
- package/dist/telemetry/filters.js +25 -3
- package/dist/telemetry/filters.js.map +1 -1
- package/dist/telemetry/network.d.ts.map +1 -1
- package/dist/telemetry/network.js +35 -6
- package/dist/telemetry/network.js.map +1 -1
- package/dist/telemetry/remoteObject.d.ts +58 -0
- package/dist/telemetry/remoteObject.d.ts.map +1 -0
- package/dist/telemetry/remoteObject.js +134 -0
- package/dist/telemetry/remoteObject.js.map +1 -0
- package/dist/telemetry/roleInference.d.ts +50 -0
- package/dist/telemetry/roleInference.d.ts.map +1 -0
- package/dist/telemetry/roleInference.js +163 -0
- package/dist/telemetry/roleInference.js.map +1 -0
- package/dist/telemetry/utils.d.ts +0 -57
- package/dist/telemetry/utils.d.ts.map +1 -1
- package/dist/telemetry/utils.js +0 -71
- package/dist/telemetry/utils.js.map +1 -1
- package/dist/types/dom.d.ts +2 -0
- package/dist/types/dom.d.ts.map +1 -1
- package/dist/types.d.ts +23 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/formatters/a11y.d.ts +0 -9
- package/dist/ui/formatters/a11y.d.ts.map +1 -1
- package/dist/ui/formatters/a11y.js +0 -45
- package/dist/ui/formatters/a11y.js.map +1 -1
- package/dist/ui/formatters/console.d.ts +131 -0
- package/dist/ui/formatters/console.d.ts.map +1 -0
- package/dist/ui/formatters/console.js +400 -0
- package/dist/ui/formatters/console.js.map +1 -0
- package/dist/ui/formatters/preview.d.ts.map +1 -1
- package/dist/ui/formatters/preview.js +2 -39
- package/dist/ui/formatters/preview.js.map +1 -1
- package/dist/ui/logging/index.d.ts +1 -1
- package/dist/ui/logging/index.d.ts.map +1 -1
- package/dist/ui/logging/index.js +1 -1
- package/dist/ui/logging/index.js.map +1 -1
- package/dist/ui/logging/logger.d.ts +21 -0
- package/dist/ui/logging/logger.d.ts.map +1 -1
- package/dist/ui/logging/logger.js +24 -6
- package/dist/ui/logging/logger.js.map +1 -1
- package/dist/ui/messages/commands.d.ts +0 -14
- package/dist/ui/messages/commands.d.ts.map +1 -1
- package/dist/ui/messages/commands.js +0 -18
- package/dist/ui/messages/commands.js.map +1 -1
- package/dist/ui/messages/consoleMessages.d.ts +12 -27
- package/dist/ui/messages/consoleMessages.d.ts.map +1 -1
- package/dist/ui/messages/consoleMessages.js +16 -31
- package/dist/ui/messages/consoleMessages.js.map +1 -1
- package/dist/ui/messages/errors.d.ts +0 -16
- package/dist/ui/messages/errors.d.ts.map +1 -1
- package/dist/ui/messages/errors.js +0 -18
- package/dist/ui/messages/errors.js.map +1 -1
- package/dist/ui/messages/hints.d.ts +0 -10
- package/dist/ui/messages/hints.d.ts.map +1 -1
- package/dist/ui/messages/hints.js +0 -12
- package/dist/ui/messages/hints.js.map +1 -1
- package/dist/utils/decisionTrees.d.ts +0 -17
- package/dist/utils/decisionTrees.d.ts.map +1 -1
- package/dist/utils/decisionTrees.js +17 -23
- package/dist/utils/decisionTrees.js.map +1 -1
- package/dist/utils/errorMapping.d.ts +60 -0
- package/dist/utils/errorMapping.d.ts.map +1 -0
- package/dist/utils/errorMapping.js +97 -0
- package/dist/utils/errorMapping.js.map +1 -0
- package/dist/utils/file.d.ts +27 -0
- package/dist/utils/file.d.ts.map +1 -0
- package/dist/utils/file.js +37 -0
- package/dist/utils/file.js.map +1 -0
- package/dist/utils/levenshtein.d.ts +0 -17
- package/dist/utils/levenshtein.d.ts.map +1 -1
- package/dist/utils/levenshtein.js +0 -31
- package/dist/utils/levenshtein.js.map +1 -1
- package/dist/utils/strings.d.ts +14 -0
- package/dist/utils/strings.d.ts.map +1 -0
- package/dist/utils/strings.js +23 -0
- package/dist/utils/strings.js.map +1 -0
- package/dist/utils/taskMappings.d.ts +0 -17
- package/dist/utils/taskMappings.d.ts.map +1 -1
- package/dist/utils/taskMappings.js +18 -24
- package/dist/utils/taskMappings.js.map +1 -1
- package/dist/utils/typeGuards.d.ts +62 -0
- package/dist/utils/typeGuards.d.ts.map +1 -0
- package/dist/utils/typeGuards.js +94 -0
- package/dist/utils/typeGuards.js.map +1 -0
- package/package.json +1 -1
|
@@ -41,10 +41,15 @@ describe('Machine-readable help capabilities', () => {
|
|
|
41
41
|
});
|
|
42
42
|
});
|
|
43
43
|
describe('high-level command capabilities', () => {
|
|
44
|
-
test('highLevel.commands
|
|
44
|
+
test('highLevel.commands contains all unique commands from task mappings', () => {
|
|
45
45
|
const help = generateMachineReadableHelp(program);
|
|
46
46
|
const taskMappings = getAllTaskMappings();
|
|
47
|
-
|
|
47
|
+
const expectedCommands = new Set(Object.values(taskMappings).flatMap((mapping) => mapping.commands));
|
|
48
|
+
assert.ok(Array.isArray(help.capabilities.highLevel.commands));
|
|
49
|
+
assert.strictEqual(help.capabilities.highLevel.commands.length, expectedCommands.size);
|
|
50
|
+
for (const cmd of expectedCommands) {
|
|
51
|
+
assert.ok(help.capabilities.highLevel.commands.includes(cmd), `Expected commands to include "${cmd}"`);
|
|
52
|
+
}
|
|
48
53
|
});
|
|
49
54
|
test('highLevel.coverage includes expected domains', () => {
|
|
50
55
|
const help = generateMachineReadableHelp(program);
|
|
@@ -64,16 +69,17 @@ describe('Machine-readable help capabilities', () => {
|
|
|
64
69
|
const methodCount = parseInt(help.capabilities.cdp.methods, 10);
|
|
65
70
|
assert.ok(methodCount > 600);
|
|
66
71
|
});
|
|
67
|
-
test('high-level command
|
|
72
|
+
test('high-level command list has more than 10 commands', () => {
|
|
68
73
|
const help = generateMachineReadableHelp(program);
|
|
69
|
-
assert.ok(help.capabilities.highLevel.commands > 10);
|
|
74
|
+
assert.ok(help.capabilities.highLevel.commands.length > 10);
|
|
70
75
|
});
|
|
71
76
|
});
|
|
72
77
|
describe('dynamic calculation prevents drift', () => {
|
|
73
|
-
test('
|
|
78
|
+
test('command list updates when task mappings change', () => {
|
|
74
79
|
const help = generateMachineReadableHelp(program);
|
|
75
80
|
const taskMappings = getAllTaskMappings();
|
|
76
|
-
|
|
81
|
+
const expectedCommands = new Set(Object.values(taskMappings).flatMap((mapping) => mapping.commands));
|
|
82
|
+
assert.strictEqual(help.capabilities.highLevel.commands.length, expectedCommands.size);
|
|
77
83
|
});
|
|
78
84
|
test('CDP counts change if protocol changes', () => {
|
|
79
85
|
const help = generateMachineReadableHelp(program);
|
|
@@ -94,9 +100,22 @@ describe('Machine-readable help capabilities', () => {
|
|
|
94
100
|
const help = generateMachineReadableHelp(program);
|
|
95
101
|
assert.strictEqual(typeof help.capabilities.cdp.domains, 'number');
|
|
96
102
|
assert.strictEqual(typeof help.capabilities.cdp.methods, 'string');
|
|
97
|
-
assert.
|
|
103
|
+
assert.ok(Array.isArray(help.capabilities.highLevel.commands));
|
|
98
104
|
assert.ok(Array.isArray(help.capabilities.highLevel.coverage));
|
|
99
105
|
});
|
|
106
|
+
test('highLevel.commands contains only strings', () => {
|
|
107
|
+
const help = generateMachineReadableHelp(program);
|
|
108
|
+
for (const cmd of help.capabilities.highLevel.commands) {
|
|
109
|
+
assert.strictEqual(typeof cmd, 'string');
|
|
110
|
+
assert.ok(cmd.length > 0, 'Command should not be empty');
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
test('highLevel.commands is sorted alphabetically', () => {
|
|
114
|
+
const help = generateMachineReadableHelp(program);
|
|
115
|
+
const commands = help.capabilities.highLevel.commands;
|
|
116
|
+
const sorted = [...commands].sort();
|
|
117
|
+
assert.deepStrictEqual(commands, sorted);
|
|
118
|
+
});
|
|
100
119
|
});
|
|
101
120
|
});
|
|
102
121
|
//# sourceMappingURL=machineReadableHelp.contract.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machineReadableHelp.contract.test.js","sourceRoot":"","sources":["../../../src/commands/__tests__/machineReadableHelp.contract.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,IAAI,OAAgB,CAAC;IAErB,UAAU,CAAC,GAAG,EAAE;QACd,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACvD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,aAAa,GAAG,qBAAqB,EAAE,CAAC;YAE9C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,+DAA+D,EAAE,GAAG,EAAE;YACzE,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,eAAe,GAAG,qBAAqB,EAAE,CAAC;YAChD,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YAE3F,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;YACjD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAElD,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACnE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3D,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC/C,IAAI,CAAC
|
|
1
|
+
{"version":3,"file":"machineReadableHelp.contract.test.js","sourceRoot":"","sources":["../../../src/commands/__tests__/machineReadableHelp.contract.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,IAAI,OAAgB,CAAC;IAErB,UAAU,CAAC,GAAG,EAAE;QACd,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACvD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,aAAa,GAAG,qBAAqB,EAAE,CAAC;YAE9C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,+DAA+D,EAAE,GAAG,EAAE;YACzE,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,eAAe,GAAG,qBAAqB,EAAE,CAAC;YAChD,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YAE3F,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;YACjD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAElD,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACnE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3D,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC/C,IAAI,CAAC,oEAAoE,EAAE,GAAG,EAAE;YAC9E,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;YAE1C,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CACnE,CAAC;YAEF,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/D,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAEvF,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;gBACnC,MAAM,CAAC,EAAE,CACP,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAClD,iCAAiC,GAAG,GAAG,CACxC,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACxD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;YAE/E,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;gBACrC,MAAM,CAAC,EAAE,CACP,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EACrD,gCAAgC,MAAM,EAAE,CACzC,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC/C,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC/C,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAElD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAChD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAEhE,MAAM,CAAC,EAAE,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC7D,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAElD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAClD,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;YAC1D,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;YAE1C,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CACnE,CAAC;YAEF,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACzF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;YACjD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,eAAe,GAAG,qBAAqB,EAAE,CAAC;YAEhD,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YAC9F,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAElE,MAAM,CAAC,WAAW,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;QACpD,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACrD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAElD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACjC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACzD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAElD,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACnE,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACnE,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/D,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,0CAA0C,EAAE,GAAG,EAAE;YACpD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAElD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACvD,MAAM,CAAC,WAAW,CAAC,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC;gBACzC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,6BAA6B,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACvD,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC;YACtD,MAAM,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YAEpC,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdp.d.ts","sourceRoot":"","sources":["../../src/commands/cdp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"cdp.d.ts","sourceRoot":"","sources":["../../src/commands/cdp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBzC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgDzD"}
|
package/dist/commands/cdp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdp.js","sourceRoot":"","sources":["../../src/commands/cdp.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,GAChB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"cdp.js","sourceRoot":"","sources":["../../src/commands/cdp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqCzC;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoE7D"}
|
package/dist/commands/cleanup.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
import * as fs from 'fs';
|
|
2
1
|
import { runCommand } from '../commands/shared/CommandRunner.js';
|
|
3
2
|
import { jsonOption } from '../commands/shared/commonOptions.js';
|
|
4
|
-
import {
|
|
5
|
-
import { cleanupSession } from '../session/cleanup.js';
|
|
6
|
-
import { getSessionFilePath } from '../session/paths.js';
|
|
3
|
+
import { performSessionCleanup } from '../session/cleanup.js';
|
|
7
4
|
import { readPid } from '../session/pid.js';
|
|
8
5
|
import { joinLines } from '../ui/formatting.js';
|
|
9
|
-
import { sessionFilesCleanedMessage, sessionOutputRemovedMessage, sessionDirectoryCleanMessage, noSessionFilesMessage,
|
|
6
|
+
import { sessionFilesCleanedMessage, sessionOutputRemovedMessage, sessionDirectoryCleanMessage, noSessionFilesMessage, sessionStillActiveError, warningMessage, } from '../ui/messages/commands.js';
|
|
10
7
|
import { EXIT_CODES } from '../utils/exitCodes.js';
|
|
11
8
|
import { isProcessAlive } from '../utils/process.js';
|
|
12
9
|
/**
|
|
@@ -28,57 +25,11 @@ export function registerCleanupCommand(program) {
|
|
|
28
25
|
.command('cleanup')
|
|
29
26
|
.description('Clean up stale session files')
|
|
30
27
|
.option('-f, --force', 'Force cleanup even if session appears active', false)
|
|
31
|
-
.option('-
|
|
28
|
+
.option('--remove-output', 'Also remove session.json output file', false)
|
|
32
29
|
.option('--aggressive', 'Kill orphaned daemon processes and all stale Chrome instances', false)
|
|
33
30
|
.addOption(jsonOption)
|
|
34
31
|
.action(async (options) => {
|
|
35
32
|
await runCommand(async (opts) => {
|
|
36
|
-
const { cleanupStaleChrome } = await import('../session/chrome.js');
|
|
37
|
-
const { cleanupOrphanedDaemons } = await import('../session/cleanup.js');
|
|
38
|
-
let didCleanup = false;
|
|
39
|
-
let cleanedSession = false;
|
|
40
|
-
let cleanedOutput = false;
|
|
41
|
-
let cleanedChrome = false;
|
|
42
|
-
let cleanedDaemons = false;
|
|
43
|
-
const warnings = [];
|
|
44
|
-
if (opts.aggressive) {
|
|
45
|
-
const daemonsKilled = cleanupOrphanedDaemons();
|
|
46
|
-
if (daemonsKilled > 0) {
|
|
47
|
-
cleanedDaemons = true;
|
|
48
|
-
didCleanup = true;
|
|
49
|
-
console.error(`✓ Killed ${daemonsKilled} orphaned daemon process(es)`);
|
|
50
|
-
}
|
|
51
|
-
const errorCount = await cleanupStaleChrome();
|
|
52
|
-
cleanedChrome = true;
|
|
53
|
-
if (errorCount > 0) {
|
|
54
|
-
warnings.push('Some Chrome processes could not be killed');
|
|
55
|
-
}
|
|
56
|
-
didCleanup = true;
|
|
57
|
-
}
|
|
58
|
-
const daemonPidPath = getSessionFilePath('DAEMON_PID');
|
|
59
|
-
if (fs.existsSync(daemonPidPath)) {
|
|
60
|
-
try {
|
|
61
|
-
const daemonPidStr = fs.readFileSync(daemonPidPath, 'utf-8').trim();
|
|
62
|
-
const daemonPid = parseInt(daemonPidStr, 10);
|
|
63
|
-
if (isNaN(daemonPid) || !isProcessAlive(daemonPid)) {
|
|
64
|
-
console.error(staleSessionFoundMessage(daemonPid));
|
|
65
|
-
fs.unlinkSync(daemonPidPath);
|
|
66
|
-
cleanedSession = true;
|
|
67
|
-
didCleanup = true;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
catch {
|
|
71
|
-
try {
|
|
72
|
-
fs.unlinkSync(daemonPidPath);
|
|
73
|
-
cleanedSession = true;
|
|
74
|
-
didCleanup = true;
|
|
75
|
-
}
|
|
76
|
-
catch (removeError) {
|
|
77
|
-
const errorMessage = getErrorMessage(removeError);
|
|
78
|
-
warnings.push(`Could not remove daemon.pid: ${errorMessage}`);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
33
|
const pid = readPid();
|
|
83
34
|
if (pid) {
|
|
84
35
|
const isAlive = isProcessAlive(pid);
|
|
@@ -93,41 +44,16 @@ export function registerCleanupCommand(program) {
|
|
|
93
44
|
},
|
|
94
45
|
};
|
|
95
46
|
}
|
|
96
|
-
if (isAlive) {
|
|
97
|
-
warnings.push(`Process ${pid} is still running but forcing cleanup anyway`);
|
|
98
|
-
console.error(forceCleanupWarningMessage(pid));
|
|
99
|
-
try {
|
|
100
|
-
const killedCount = await cleanupStaleChrome();
|
|
101
|
-
if (killedCount > 0) {
|
|
102
|
-
cleanedChrome = true;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
catch (error) {
|
|
106
|
-
const errorMessage = getErrorMessage(error);
|
|
107
|
-
warnings.push(`Could not kill Chrome processes: ${errorMessage}`);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
console.error(staleSessionFoundMessage(pid));
|
|
112
|
-
}
|
|
113
|
-
cleanupSession();
|
|
114
|
-
cleanedSession = true;
|
|
115
|
-
didCleanup = true;
|
|
116
|
-
}
|
|
117
|
-
if (opts.all) {
|
|
118
|
-
const outputPath = getSessionFilePath('OUTPUT');
|
|
119
|
-
if (fs.existsSync(outputPath)) {
|
|
120
|
-
try {
|
|
121
|
-
fs.unlinkSync(outputPath);
|
|
122
|
-
cleanedOutput = true;
|
|
123
|
-
didCleanup = true;
|
|
124
|
-
}
|
|
125
|
-
catch (error) {
|
|
126
|
-
const errorMessage = getErrorMessage(error);
|
|
127
|
-
warnings.push(`Could not remove session.json: ${errorMessage}`);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
47
|
}
|
|
48
|
+
const cleanupResult = await performSessionCleanup({
|
|
49
|
+
force: opts.force,
|
|
50
|
+
aggressive: opts.aggressive,
|
|
51
|
+
removeOutput: opts.removeOutput,
|
|
52
|
+
});
|
|
53
|
+
const didCleanup = cleanupResult.cleaned.session ||
|
|
54
|
+
cleanupResult.cleaned.chrome ||
|
|
55
|
+
cleanupResult.cleaned.daemons ||
|
|
56
|
+
cleanupResult.cleaned.output;
|
|
131
57
|
if (!didCleanup) {
|
|
132
58
|
return {
|
|
133
59
|
success: true,
|
|
@@ -141,13 +67,13 @@ export function registerCleanupCommand(program) {
|
|
|
141
67
|
success: true,
|
|
142
68
|
data: {
|
|
143
69
|
cleaned: {
|
|
144
|
-
session:
|
|
145
|
-
output:
|
|
146
|
-
chrome:
|
|
147
|
-
daemons:
|
|
70
|
+
session: cleanupResult.cleaned.session,
|
|
71
|
+
output: cleanupResult.cleaned.output,
|
|
72
|
+
chrome: cleanupResult.cleaned.chrome,
|
|
73
|
+
daemons: cleanupResult.cleaned.daemons,
|
|
148
74
|
},
|
|
149
75
|
message: sessionDirectoryCleanMessage(),
|
|
150
|
-
...(warnings.length > 0 && { warnings }),
|
|
76
|
+
...(cleanupResult.warnings.length > 0 && { warnings: cleanupResult.warnings }),
|
|
151
77
|
},
|
|
152
78
|
};
|
|
153
79
|
}, options, formatCleanup);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,24 @@
|
|
|
1
1
|
import type { Command } from 'commander';
|
|
2
|
+
import type { ConsoleMessage } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Filter messages to only include those from the current (most recent) navigation.
|
|
5
|
+
*
|
|
6
|
+
* Finds the highest navigationId (most recent page load) and returns only
|
|
7
|
+
* messages from that navigation. Messages without navigationId are excluded.
|
|
8
|
+
*
|
|
9
|
+
* @param messages - All console messages
|
|
10
|
+
* @returns Messages from the current page load only
|
|
11
|
+
*/
|
|
12
|
+
export declare function filterByCurrentNavigation(messages: ConsoleMessage[]): ConsoleMessage[];
|
|
2
13
|
/**
|
|
3
14
|
* Register console command.
|
|
4
15
|
*
|
|
16
|
+
* Provides smart console message inspection with:
|
|
17
|
+
* - Default: Problem-focused summary (errors + warnings deduplicated)
|
|
18
|
+
* - --list: Chronological view of all messages
|
|
19
|
+
* - --follow: Live streaming mode
|
|
20
|
+
* - --json: Machine-readable output with summary stats
|
|
21
|
+
*
|
|
5
22
|
* @param program - Commander.js Command instance to register commands on
|
|
6
23
|
*/
|
|
7
24
|
export declare function registerConsoleCommand(program: Command): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/commands/console.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/commands/console.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,OAAO,KAAK,EAAa,cAAc,EAAE,MAAM,YAAY,CAAC;AA4H5D;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAYtF;AAkDD;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqC7D"}
|
package/dist/commands/console.js
CHANGED
|
@@ -1,23 +1,27 @@
|
|
|
1
1
|
import { Option } from 'commander';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { jsonOption } from '../commands/shared/commonOptions.js';
|
|
3
|
+
import { handleDaemonConnectionError } from '../commands/shared/daemonErrorHandler.js';
|
|
4
|
+
import { getErrorMessage } from '../connection/errors.js';
|
|
4
5
|
import { getPeek } from '../ipc/client.js';
|
|
5
6
|
import { validateIPCResponse } from '../ipc/index.js';
|
|
6
7
|
import { CommandError } from '../ui/errors/index.js';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
8
|
+
import { formatConsole, formatConsoleFollow, } from '../ui/formatters/console.js';
|
|
9
|
+
import { followingConsoleMessage, stoppedFollowingConsoleMessage, noConsoleDataMessage, } from '../ui/messages/consoleMessages.js';
|
|
9
10
|
import { invalidLastRangeError } from '../ui/messages/validation.js';
|
|
11
|
+
import { getExitCodeForConnectionError } from '../utils/errorMapping.js';
|
|
10
12
|
import { EXIT_CODES } from '../utils/exitCodes.js';
|
|
11
13
|
/**
|
|
12
14
|
* Validation limits for --last option.
|
|
13
15
|
*/
|
|
14
16
|
const MIN_LAST_ITEMS = 0;
|
|
15
17
|
const MAX_LAST_ITEMS = 10000;
|
|
18
|
+
const DEFAULT_LAST_ITEMS = 100;
|
|
19
|
+
const FOLLOW_MODE_MESSAGE_LIMIT = 20;
|
|
16
20
|
/**
|
|
17
|
-
* Console-specific --last option
|
|
21
|
+
* Console-specific --last option.
|
|
18
22
|
*/
|
|
19
|
-
const consoleLastOption = new Option('--last <n>',
|
|
20
|
-
.default(
|
|
23
|
+
const consoleLastOption = new Option('--last <n>', `Show last N console messages (0 = all, default: ${DEFAULT_LAST_ITEMS})`)
|
|
24
|
+
.default(DEFAULT_LAST_ITEMS)
|
|
21
25
|
.argParser((val) => {
|
|
22
26
|
const n = parseInt(val, 10);
|
|
23
27
|
if (isNaN(n) || n < MIN_LAST_ITEMS || n > MAX_LAST_ITEMS) {
|
|
@@ -26,77 +30,175 @@ const consoleLastOption = new Option('--last <n>', 'Show last N console messages
|
|
|
26
30
|
return n;
|
|
27
31
|
});
|
|
28
32
|
/**
|
|
29
|
-
*
|
|
33
|
+
* --list option for showing all messages chronologically.
|
|
34
|
+
* Note: Named differently from --all to avoid conflict with program-level -a/--all (start command).
|
|
35
|
+
*/
|
|
36
|
+
const listOption = new Option('-l, --list', 'List all messages chronologically').default(false);
|
|
37
|
+
/**
|
|
38
|
+
* --follow option for live streaming.
|
|
39
|
+
*/
|
|
40
|
+
const followOption = new Option('-f, --follow', 'Stream console messages in real-time').default(false);
|
|
41
|
+
/**
|
|
42
|
+
* --history option to show messages from all page loads.
|
|
43
|
+
* By default, only current navigation messages are shown.
|
|
44
|
+
*/
|
|
45
|
+
const historyOption = new Option('-H, --history', 'Show messages from all page loads (default: current only)').default(false);
|
|
46
|
+
/**
|
|
47
|
+
* Fetch console messages from the daemon.
|
|
30
48
|
*
|
|
31
|
-
* @param
|
|
32
|
-
* @
|
|
33
|
-
* @returns Formatted message string
|
|
49
|
+
* @param options - Command options for error handling context
|
|
50
|
+
* @returns Console messages array or null if error handled
|
|
34
51
|
*/
|
|
35
|
-
function
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
52
|
+
async function fetchConsoleMessages(options) {
|
|
53
|
+
try {
|
|
54
|
+
const response = await getPeek();
|
|
55
|
+
try {
|
|
56
|
+
validateIPCResponse(response);
|
|
57
|
+
}
|
|
58
|
+
catch (validationError) {
|
|
59
|
+
const errorMsg = getErrorMessage(validationError);
|
|
60
|
+
const exitCode = getExitCodeForConnectionError(errorMsg);
|
|
61
|
+
const result = handleDaemonConnectionError(errorMsg, {
|
|
62
|
+
json: options.json,
|
|
63
|
+
follow: options.follow,
|
|
64
|
+
retryIntervalMs: 1000,
|
|
65
|
+
exitCode,
|
|
66
|
+
});
|
|
67
|
+
if (result.shouldExit) {
|
|
68
|
+
process.exit(result.exitCode);
|
|
69
|
+
}
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
const output = response.data?.preview;
|
|
73
|
+
if (!output?.data.console) {
|
|
74
|
+
if (options.json) {
|
|
75
|
+
console.log(JSON.stringify({
|
|
76
|
+
success: false,
|
|
77
|
+
error: noConsoleDataMessage(),
|
|
78
|
+
}));
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
console.error(noConsoleDataMessage());
|
|
82
|
+
}
|
|
83
|
+
process.exit(EXIT_CODES.RESOURCE_NOT_FOUND);
|
|
84
|
+
}
|
|
85
|
+
return output.data.console;
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
const result = handleDaemonConnectionError('Daemon not running', {
|
|
89
|
+
json: options.json,
|
|
90
|
+
follow: options.follow,
|
|
91
|
+
retryIntervalMs: 1000,
|
|
48
92
|
});
|
|
93
|
+
if (result.shouldExit) {
|
|
94
|
+
process.exit(result.exitCode);
|
|
95
|
+
}
|
|
96
|
+
return null;
|
|
49
97
|
}
|
|
50
|
-
return output;
|
|
51
98
|
}
|
|
52
99
|
/**
|
|
53
|
-
*
|
|
100
|
+
* Filter messages to only include those from the current (most recent) navigation.
|
|
54
101
|
*
|
|
55
|
-
*
|
|
102
|
+
* Finds the highest navigationId (most recent page load) and returns only
|
|
103
|
+
* messages from that navigation. Messages without navigationId are excluded.
|
|
104
|
+
*
|
|
105
|
+
* @param messages - All console messages
|
|
106
|
+
* @returns Messages from the current page load only
|
|
56
107
|
*/
|
|
57
|
-
function
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
return noConsoleMessagesMessage(filter);
|
|
108
|
+
export function filterByCurrentNavigation(messages) {
|
|
109
|
+
if (messages.length === 0) {
|
|
110
|
+
return messages;
|
|
61
111
|
}
|
|
62
|
-
|
|
112
|
+
// Find the maximum navigationId (current page load)
|
|
113
|
+
const maxNavigationId = Math.max(...messages.map((m) => m.navigationId ?? 0).filter((id) => id !== undefined));
|
|
114
|
+
// Filter to only messages from current navigation
|
|
115
|
+
return messages.filter((m) => m.navigationId === maxNavigationId);
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Display console output based on options.
|
|
119
|
+
*
|
|
120
|
+
* @param messages - Console messages to display
|
|
121
|
+
* @param options - Command options
|
|
122
|
+
*/
|
|
123
|
+
function displayConsole(messages, options) {
|
|
124
|
+
let filteredMessages = messages;
|
|
125
|
+
// Default: show only current navigation. Use --history for all.
|
|
126
|
+
if (!options.history) {
|
|
127
|
+
filteredMessages = filterByCurrentNavigation(messages);
|
|
128
|
+
}
|
|
129
|
+
const formatOptions = {
|
|
130
|
+
json: options.json,
|
|
131
|
+
list: options.list,
|
|
132
|
+
follow: options.follow,
|
|
133
|
+
last: options.last,
|
|
134
|
+
history: options.history,
|
|
135
|
+
};
|
|
136
|
+
if (options.follow) {
|
|
137
|
+
console.clear();
|
|
138
|
+
}
|
|
139
|
+
console.log(formatConsole(filteredMessages, formatOptions));
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Display console in follow mode with streaming updates.
|
|
143
|
+
*
|
|
144
|
+
* @param messages - Console messages to display
|
|
145
|
+
* @param options - Command options (for --history flag)
|
|
146
|
+
*/
|
|
147
|
+
function displayConsoleStreaming(messages, options) {
|
|
148
|
+
let filteredMessages = messages;
|
|
149
|
+
// Default: show only current navigation. Use --history for all.
|
|
150
|
+
if (!options.history) {
|
|
151
|
+
filteredMessages = filterByCurrentNavigation(messages);
|
|
152
|
+
}
|
|
153
|
+
const lastMessages = filteredMessages.slice(-FOLLOW_MODE_MESSAGE_LIMIT);
|
|
154
|
+
console.clear();
|
|
155
|
+
console.log(formatConsoleFollow(lastMessages));
|
|
63
156
|
}
|
|
64
157
|
/**
|
|
65
158
|
* Register console command.
|
|
66
159
|
*
|
|
160
|
+
* Provides smart console message inspection with:
|
|
161
|
+
* - Default: Problem-focused summary (errors + warnings deduplicated)
|
|
162
|
+
* - --list: Chronological view of all messages
|
|
163
|
+
* - --follow: Live streaming mode
|
|
164
|
+
* - --json: Machine-readable output with summary stats
|
|
165
|
+
*
|
|
67
166
|
* @param program - Commander.js Command instance to register commands on
|
|
68
167
|
*/
|
|
69
168
|
export function registerConsoleCommand(program) {
|
|
70
169
|
program
|
|
71
170
|
.command('console')
|
|
72
|
-
.description('
|
|
171
|
+
.description('Console message inspection and analysis')
|
|
172
|
+
.addOption(listOption)
|
|
173
|
+
.addOption(followOption)
|
|
174
|
+
.addOption(historyOption)
|
|
73
175
|
.addOption(consoleLastOption)
|
|
74
|
-
.addOption(filterOption(['log', 'error', 'warning', 'info']))
|
|
75
176
|
.addOption(jsonOption)
|
|
76
177
|
.action(async (options) => {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
error: 'No console data available. Ensure console telemetry is active.',
|
|
85
|
-
exitCode: EXIT_CODES.RESOURCE_NOT_FOUND,
|
|
86
|
-
};
|
|
87
|
-
}
|
|
88
|
-
let logs = [...output.data.console];
|
|
89
|
-
if (opts.filter) {
|
|
90
|
-
logs = logs.filter((log) => log.type === opts.filter);
|
|
91
|
-
}
|
|
92
|
-
if (opts.last > 0) {
|
|
93
|
-
logs = logs.slice(-opts.last);
|
|
94
|
-
}
|
|
95
|
-
return {
|
|
96
|
-
success: true,
|
|
97
|
-
data: { logs, ...(opts.filter && { filter: opts.filter }) },
|
|
178
|
+
if (options.follow) {
|
|
179
|
+
console.error(followingConsoleMessage());
|
|
180
|
+
const showConsole = async () => {
|
|
181
|
+
const messages = await fetchConsoleMessages(options);
|
|
182
|
+
if (messages) {
|
|
183
|
+
displayConsoleStreaming(messages, options);
|
|
184
|
+
}
|
|
98
185
|
};
|
|
99
|
-
|
|
186
|
+
await showConsole();
|
|
187
|
+
const followInterval = setInterval(() => {
|
|
188
|
+
void showConsole();
|
|
189
|
+
}, 1000);
|
|
190
|
+
process.on('SIGINT', () => {
|
|
191
|
+
clearInterval(followInterval);
|
|
192
|
+
console.error(stoppedFollowingConsoleMessage());
|
|
193
|
+
process.exit(EXIT_CODES.SUCCESS);
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
const messages = await fetchConsoleMessages(options);
|
|
198
|
+
if (messages) {
|
|
199
|
+
displayConsole(messages, options);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
100
202
|
});
|
|
101
203
|
}
|
|
102
204
|
//# sourceMappingURL=console.js.map
|