browser-debugger-cli 0.6.7 → 0.6.9

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.
Files changed (180) hide show
  1. package/dist/__tests__/telemetry/filterDsl.unit.test.d.ts +12 -0
  2. package/dist/__tests__/telemetry/filterDsl.unit.test.d.ts.map +1 -0
  3. package/dist/__tests__/telemetry/filterDsl.unit.test.js +374 -0
  4. package/dist/__tests__/telemetry/filterDsl.unit.test.js.map +1 -0
  5. package/dist/__tests__/telemetry/filterPresets.unit.test.d.ts +10 -0
  6. package/dist/__tests__/telemetry/filterPresets.unit.test.d.ts.map +1 -0
  7. package/dist/__tests__/telemetry/filterPresets.unit.test.js +89 -0
  8. package/dist/__tests__/telemetry/filterPresets.unit.test.js.map +1 -0
  9. package/dist/commands/__tests__/console.contract.test.d.ts +9 -0
  10. package/dist/commands/__tests__/console.contract.test.d.ts.map +1 -0
  11. package/dist/commands/__tests__/console.contract.test.js +118 -0
  12. package/dist/commands/__tests__/console.contract.test.js.map +1 -0
  13. package/dist/commands/cleanup.js +1 -1
  14. package/dist/commands/cleanup.js.map +1 -1
  15. package/dist/commands/console.d.ts +26 -0
  16. package/dist/commands/console.d.ts.map +1 -1
  17. package/dist/commands/console.js +195 -57
  18. package/dist/commands/console.js.map +1 -1
  19. package/dist/commands/details.js +1 -1
  20. package/dist/commands/details.js.map +1 -1
  21. package/dist/commands/dom/DomElementResolver.js +2 -2
  22. package/dist/commands/dom/DomElementResolver.js.map +1 -1
  23. package/dist/commands/dom/a11y.d.ts.map +1 -1
  24. package/dist/commands/dom/a11y.js +30 -18
  25. package/dist/commands/dom/a11y.js.map +1 -1
  26. package/dist/commands/dom/formFillHelpers.d.ts.map +1 -1
  27. package/dist/commands/dom/formFillHelpers.js +64 -2
  28. package/dist/commands/dom/formFillHelpers.js.map +1 -1
  29. package/dist/commands/dom/formInteraction.js +4 -4
  30. package/dist/commands/dom/formInteraction.js.map +1 -1
  31. package/dist/commands/dom/helpers.d.ts +1 -1
  32. package/dist/commands/dom/helpers.d.ts.map +1 -1
  33. package/dist/commands/dom/helpers.js +3 -3
  34. package/dist/commands/dom/helpers.js.map +1 -1
  35. package/dist/commands/dom/index.d.ts.map +1 -1
  36. package/dist/commands/dom/index.js +4 -1
  37. package/dist/commands/dom/index.js.map +1 -1
  38. package/dist/commands/network/har.d.ts +14 -0
  39. package/dist/commands/network/har.d.ts.map +1 -0
  40. package/dist/commands/network/har.js +97 -0
  41. package/dist/commands/network/har.js.map +1 -0
  42. package/dist/commands/network/index.d.ts +18 -0
  43. package/dist/commands/network/index.d.ts.map +1 -0
  44. package/dist/commands/network/index.js +27 -0
  45. package/dist/commands/network/index.js.map +1 -0
  46. package/dist/commands/network/list.d.ts +14 -0
  47. package/dist/commands/network/list.d.ts.map +1 -0
  48. package/dist/commands/network/list.js +273 -0
  49. package/dist/commands/network/list.js.map +1 -0
  50. package/dist/commands/network/shared.d.ts +56 -0
  51. package/dist/commands/network/shared.d.ts.map +1 -0
  52. package/dist/commands/network/shared.js +174 -0
  53. package/dist/commands/network/shared.js.map +1 -0
  54. package/dist/commands/network.js +4 -4
  55. package/dist/commands/network.js.map +1 -1
  56. package/dist/commands/peek.d.ts.map +1 -1
  57. package/dist/commands/peek.js +7 -2
  58. package/dist/commands/peek.js.map +1 -1
  59. package/dist/commands/shared/CommandRunner.d.ts +19 -0
  60. package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
  61. package/dist/commands/shared/CommandRunner.js +30 -0
  62. package/dist/commands/shared/CommandRunner.js.map +1 -1
  63. package/dist/commands/shared/commonOptions.d.ts +8 -24
  64. package/dist/commands/shared/commonOptions.d.ts.map +1 -1
  65. package/dist/commands/shared/commonOptions.js +9 -25
  66. package/dist/commands/shared/commonOptions.js.map +1 -1
  67. package/dist/commands/shared/optionTypes.d.ts +42 -4
  68. package/dist/commands/shared/optionTypes.d.ts.map +1 -1
  69. package/dist/commands/shared/startHelpers.d.ts +2 -10
  70. package/dist/commands/shared/startHelpers.d.ts.map +1 -1
  71. package/dist/commands/shared/startHelpers.js +9 -4
  72. package/dist/commands/shared/startHelpers.js.map +1 -1
  73. package/dist/commands/start.d.ts.map +1 -1
  74. package/dist/commands/start.js +3 -1
  75. package/dist/commands/start.js.map +1 -1
  76. package/dist/commands/stop.js +1 -1
  77. package/dist/commands/stop.js.map +1 -1
  78. package/dist/commands/tail.js +1 -1
  79. package/dist/commands/tail.js.map +1 -1
  80. package/dist/commands.js +1 -1
  81. package/dist/commands.js.map +1 -1
  82. package/dist/constants.d.ts +15 -0
  83. package/dist/constants.d.ts.map +1 -1
  84. package/dist/constants.js +18 -0
  85. package/dist/constants.js.map +1 -1
  86. package/dist/daemon/__tests__/commandRegistry.contract.test.js +6 -2
  87. package/dist/daemon/__tests__/commandRegistry.contract.test.js.map +1 -1
  88. package/dist/daemon/handlers/CommandHandlers.d.ts +5 -0
  89. package/dist/daemon/handlers/CommandHandlers.d.ts.map +1 -1
  90. package/dist/daemon/handlers/CommandHandlers.js +6 -1
  91. package/dist/daemon/handlers/CommandHandlers.js.map +1 -1
  92. package/dist/daemon/handlers/QueryHandlers.d.ts.map +1 -1
  93. package/dist/daemon/handlers/QueryHandlers.js +3 -1
  94. package/dist/daemon/handlers/QueryHandlers.js.map +1 -1
  95. package/dist/daemon/worker/commandRegistry.d.ts.map +1 -1
  96. package/dist/daemon/worker/commandRegistry.js +150 -53
  97. package/dist/daemon/worker/commandRegistry.js.map +1 -1
  98. package/dist/ipc/client.d.ts +10 -1
  99. package/dist/ipc/client.d.ts.map +1 -1
  100. package/dist/ipc/client.js +12 -2
  101. package/dist/ipc/client.js.map +1 -1
  102. package/dist/ipc/session/queries.d.ts +2 -0
  103. package/dist/ipc/session/queries.d.ts.map +1 -1
  104. package/dist/session/QueryCacheManager.d.ts +1 -1
  105. package/dist/session/QueryCacheManager.d.ts.map +1 -1
  106. package/dist/telemetry/__tests__/remoteObject.unit.test.d.ts +2 -0
  107. package/dist/telemetry/__tests__/remoteObject.unit.test.d.ts.map +1 -0
  108. package/dist/telemetry/__tests__/remoteObject.unit.test.js +261 -0
  109. package/dist/telemetry/__tests__/remoteObject.unit.test.js.map +1 -0
  110. package/dist/telemetry/console.d.ts +8 -8
  111. package/dist/telemetry/console.d.ts.map +1 -1
  112. package/dist/telemetry/console.js +142 -53
  113. package/dist/telemetry/console.js.map +1 -1
  114. package/dist/telemetry/filterDsl.d.ts +45 -0
  115. package/dist/telemetry/filterDsl.d.ts.map +1 -0
  116. package/dist/telemetry/filterDsl.js +299 -0
  117. package/dist/telemetry/filterDsl.js.map +1 -0
  118. package/dist/telemetry/filterPresets.d.ts +35 -0
  119. package/dist/telemetry/filterPresets.d.ts.map +1 -0
  120. package/dist/telemetry/filterPresets.js +76 -0
  121. package/dist/telemetry/filterPresets.js.map +1 -0
  122. package/dist/telemetry/network.d.ts.map +1 -1
  123. package/dist/telemetry/network.js +16 -8
  124. package/dist/telemetry/network.js.map +1 -1
  125. package/dist/telemetry/objectExpander.d.ts +35 -0
  126. package/dist/telemetry/objectExpander.d.ts.map +1 -0
  127. package/dist/telemetry/objectExpander.js +165 -0
  128. package/dist/telemetry/objectExpander.js.map +1 -0
  129. package/dist/telemetry/remoteObject.d.ts +41 -0
  130. package/dist/telemetry/remoteObject.d.ts.map +1 -0
  131. package/dist/telemetry/remoteObject.js +193 -0
  132. package/dist/telemetry/remoteObject.js.map +1 -0
  133. package/dist/telemetry/remoteObjectUtils.d.ts +40 -0
  134. package/dist/telemetry/remoteObjectUtils.d.ts.map +1 -0
  135. package/dist/telemetry/remoteObjectUtils.js +75 -0
  136. package/dist/telemetry/remoteObjectUtils.js.map +1 -0
  137. package/dist/telemetry/roleInference.d.ts +1 -1
  138. package/dist/telemetry/roleInference.d.ts.map +1 -1
  139. package/dist/types.d.ts +113 -0
  140. package/dist/types.d.ts.map +1 -1
  141. package/dist/ui/formatters/a11y.d.ts +1 -1
  142. package/dist/ui/formatters/a11y.d.ts.map +1 -1
  143. package/dist/ui/formatters/console.d.ts +143 -0
  144. package/dist/ui/formatters/console.d.ts.map +1 -0
  145. package/dist/ui/formatters/console.js +431 -0
  146. package/dist/ui/formatters/console.js.map +1 -0
  147. package/dist/ui/formatters/dom.d.ts +4 -4
  148. package/dist/ui/formatters/dom.d.ts.map +1 -1
  149. package/dist/ui/formatters/dom.js +5 -5
  150. package/dist/ui/formatters/dom.js.map +1 -1
  151. package/dist/ui/formatters/networkList.d.ts +19 -0
  152. package/dist/ui/formatters/networkList.d.ts.map +1 -0
  153. package/dist/ui/formatters/networkList.js +86 -0
  154. package/dist/ui/formatters/networkList.js.map +1 -0
  155. package/dist/ui/formatters/preview.d.ts +18 -0
  156. package/dist/ui/formatters/preview.d.ts.map +1 -1
  157. package/dist/ui/formatters/preview.js +13 -5
  158. package/dist/ui/formatters/preview.js.map +1 -1
  159. package/dist/ui/logging/logger.d.ts +1 -1
  160. package/dist/ui/logging/logger.d.ts.map +1 -1
  161. package/dist/ui/logging/logger.js.map +1 -1
  162. package/dist/ui/messages/consoleMessages.d.ts +12 -27
  163. package/dist/ui/messages/consoleMessages.d.ts.map +1 -1
  164. package/dist/ui/messages/consoleMessages.js +16 -31
  165. package/dist/ui/messages/consoleMessages.js.map +1 -1
  166. package/dist/ui/messages/networkMessages.d.ts +24 -0
  167. package/dist/ui/messages/networkMessages.d.ts.map +1 -0
  168. package/dist/ui/messages/networkMessages.js +30 -0
  169. package/dist/ui/messages/networkMessages.js.map +1 -0
  170. package/dist/utils/decisionTrees.d.ts.map +1 -1
  171. package/dist/utils/decisionTrees.js +17 -2
  172. package/dist/utils/decisionTrees.js.map +1 -1
  173. package/dist/utils/strings.d.ts +14 -0
  174. package/dist/utils/strings.d.ts.map +1 -0
  175. package/dist/utils/strings.js +23 -0
  176. package/dist/utils/strings.js.map +1 -0
  177. package/dist/utils/taskMappings.d.ts.map +1 -1
  178. package/dist/utils/taskMappings.js +18 -3
  179. package/dist/utils/taskMappings.js.map +1 -1
  180. package/package.json +1 -1
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Contract tests for console command navigation filtering.
3
+ *
4
+ * Tests the public behavior of filterByCurrentNavigation:
5
+ * - Given messages from multiple page loads, returns only current navigation
6
+ * - Handles edge cases (empty, single navigation, missing IDs)
7
+ */
8
+ import assert from 'node:assert';
9
+ import { describe, test } from 'node:test';
10
+ import { filterByCurrentNavigation } from '../../commands/console.js';
11
+ /**
12
+ * Create a test console message with minimal required fields.
13
+ */
14
+ function createMessage(text, navigationId, type = 'log') {
15
+ const msg = {
16
+ text,
17
+ type,
18
+ timestamp: Date.now(),
19
+ };
20
+ if (navigationId !== undefined) {
21
+ msg.navigationId = navigationId;
22
+ }
23
+ return msg;
24
+ }
25
+ describe('filterByCurrentNavigation contract', () => {
26
+ describe('filters to current (most recent) navigation', () => {
27
+ test('returns only messages from highest navigationId', () => {
28
+ const messages = [
29
+ createMessage('old error', 1),
30
+ createMessage('old warning', 1),
31
+ createMessage('current error', 2),
32
+ createMessage('current log', 2),
33
+ ];
34
+ const result = filterByCurrentNavigation(messages);
35
+ assert.strictEqual(result.length, 2);
36
+ assert.ok(result.every((m) => m.navigationId === 2));
37
+ assert.ok(result.some((m) => m.text === 'current error'));
38
+ assert.ok(result.some((m) => m.text === 'current log'));
39
+ });
40
+ test('handles three navigations correctly', () => {
41
+ const messages = [
42
+ createMessage('nav1', 1),
43
+ createMessage('nav2', 2),
44
+ createMessage('nav3-a', 3),
45
+ createMessage('nav3-b', 3),
46
+ ];
47
+ const result = filterByCurrentNavigation(messages);
48
+ assert.strictEqual(result.length, 2);
49
+ assert.ok(result.every((m) => m.navigationId === 3));
50
+ });
51
+ test('preserves message order within navigation', () => {
52
+ const messages = [
53
+ createMessage('first', 2),
54
+ createMessage('second', 2),
55
+ createMessage('third', 2),
56
+ ];
57
+ const result = filterByCurrentNavigation(messages);
58
+ assert.strictEqual(result.length, 3);
59
+ assert.strictEqual(result.at(0)?.text, 'first');
60
+ assert.strictEqual(result.at(1)?.text, 'second');
61
+ assert.strictEqual(result.at(2)?.text, 'third');
62
+ });
63
+ });
64
+ describe('edge cases', () => {
65
+ test('returns empty array for empty input', () => {
66
+ const result = filterByCurrentNavigation([]);
67
+ assert.strictEqual(result.length, 0);
68
+ });
69
+ test('returns all messages when single navigation', () => {
70
+ const messages = [
71
+ createMessage('a', 1),
72
+ createMessage('b', 1),
73
+ createMessage('c', 1),
74
+ ];
75
+ const result = filterByCurrentNavigation(messages);
76
+ assert.strictEqual(result.length, 3);
77
+ });
78
+ test('handles messages without navigationId', () => {
79
+ const messages = [
80
+ createMessage('no-nav', undefined),
81
+ createMessage('with-nav', 1),
82
+ ];
83
+ const result = filterByCurrentNavigation(messages);
84
+ // Messages without navigationId should be excluded (navigationId !== maxId)
85
+ assert.strictEqual(result.length, 1);
86
+ assert.strictEqual(result.at(0)?.text, 'with-nav');
87
+ });
88
+ test('handles all messages without navigationId', () => {
89
+ const messages = [
90
+ createMessage('no-nav-1', undefined),
91
+ createMessage('no-nav-2', undefined),
92
+ ];
93
+ const result = filterByCurrentNavigation(messages);
94
+ // All have navigationId=undefined, max of [0,0] = 0, filter where navId === 0
95
+ // Since undefined !== 0, returns empty
96
+ assert.strictEqual(result.length, 0);
97
+ });
98
+ });
99
+ describe('message types preserved', () => {
100
+ test('preserves all console message types', () => {
101
+ const messages = [
102
+ createMessage('error msg', 1, 'error'),
103
+ createMessage('warning msg', 1, 'warning'),
104
+ createMessage('log msg', 1, 'log'),
105
+ createMessage('info msg', 1, 'info'),
106
+ createMessage('debug msg', 1, 'debug'),
107
+ ];
108
+ const result = filterByCurrentNavigation(messages);
109
+ assert.strictEqual(result.length, 5);
110
+ assert.ok(result.some((m) => m.type === 'error'));
111
+ assert.ok(result.some((m) => m.type === 'warning'));
112
+ assert.ok(result.some((m) => m.type === 'log'));
113
+ assert.ok(result.some((m) => m.type === 'info'));
114
+ assert.ok(result.some((m) => m.type === 'debug'));
115
+ });
116
+ });
117
+ });
118
+ //# sourceMappingURL=console.contract.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console.contract.test.js","sourceRoot":"","sources":["../../../src/commands/__tests__/console.contract.test.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,7 @@ export function registerCleanupCommand(program) {
27
27
  .option('-f, --force', 'Force cleanup even if session appears active', false)
28
28
  .option('--remove-output', 'Also remove session.json output file', false)
29
29
  .option('--aggressive', 'Kill orphaned daemon processes and all stale Chrome instances', false)
30
- .addOption(jsonOption)
30
+ .addOption(jsonOption())
31
31
  .action(async (options) => {
32
32
  await runCommand(async (opts) => {
33
33
  const pid = readPid();
@@ -1 +1 @@
1
- {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,33 @@
1
1
  import type { Command } from 'commander';
2
+ import type { ConsoleMessage } from '../types.js';
3
+ import { type ConsoleLevel } from '../ui/formatters/console.js';
4
+ /**
5
+ * Filter messages to only include those from the current (most recent) navigation.
6
+ *
7
+ * Finds the highest navigationId (most recent page load) and returns only
8
+ * messages from that navigation. Messages without navigationId are excluded.
9
+ *
10
+ * @param messages - All console messages
11
+ * @returns Messages from the current page load only
12
+ */
13
+ export declare function filterByCurrentNavigation(messages: ConsoleMessage[]): ConsoleMessage[];
14
+ /**
15
+ * Filter messages by level.
16
+ *
17
+ * @param messages - Console messages to filter
18
+ * @param level - Level to filter by (error, warning, info, debug)
19
+ * @returns Filtered messages matching the specified level
20
+ */
21
+ export declare function filterByLevel(messages: ConsoleMessage[], level: ConsoleLevel): ConsoleMessage[];
2
22
  /**
3
23
  * Register console command.
4
24
  *
25
+ * Provides smart console message inspection with:
26
+ * - Default: Problem-focused summary (errors + warnings deduplicated)
27
+ * - --list: Chronological view of all messages
28
+ * - --follow: Live streaming mode
29
+ * - --json: Machine-readable output with summary stats
30
+ *
5
31
  * @param program - Commander.js Command instance to register commands on
6
32
  */
7
33
  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;AAoFzC;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA0C7D"}
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;AAE5D,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,4BAA4B,CAAC;AAqIpC;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAYtF;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,GAAG,cAAc,EAAE,CAE/F;AAkED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsC7D"}
@@ -1,23 +1,27 @@
1
1
  import { Option } from 'commander';
2
- import { runCommand } from '../commands/shared/CommandRunner.js';
3
- import { filterOption, jsonOption } from '../commands/shared/commonOptions.js';
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 { joinLines } from '../ui/formatting.js';
8
- import { noConsoleMessagesMessage, consoleMessagesHeader } from '../ui/messages/consoleMessages.js';
8
+ import { formatConsole, formatConsoleFollow, LEVEL_MAP, } 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 with accurate description.
21
+ * Console-specific --last option.
18
22
  */
19
- const consoleLastOption = new Option('--last <n>', 'Show last N console messages (0 = all)')
20
- .default(MIN_LAST_ITEMS)
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,211 @@ const consoleLastOption = new Option('--last <n>', 'Show last N console messages
26
30
  return n;
27
31
  });
28
32
  /**
29
- * Format single console message for human-readable output.
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
+ * Valid console levels for filtering.
48
+ */
49
+ const VALID_LEVELS = ['error', 'warning', 'info', 'debug'];
50
+ /**
51
+ * --level option for filtering by message level.
52
+ */
53
+ const levelOption = new Option('--level <level>', 'Filter by message level (error, warning, info, debug)').choices(VALID_LEVELS);
54
+ /**
55
+ * Fetch console messages from the daemon.
30
56
  *
31
- * @param log - Console message to format
32
- * @param index - Message index in the list
33
- * @returns Formatted message string
57
+ * @param options - Command options for error handling context
58
+ * @returns Console messages array or null if error handled
34
59
  */
35
- function formatConsoleMessage(log, index) {
36
- const icons = {
37
- log: 'ℹ',
38
- error: '❌',
39
- warning: '⚠️',
40
- info: 'ℹ️',
41
- };
42
- const icon = icons[log.type] ?? 'ℹ';
43
- const timestamp = new Date(log.timestamp).toISOString();
44
- let output = `[${index}] ${icon} [${timestamp}] ${log.text}`;
45
- if (log.args && log.args.length > 0) {
46
- log.args.forEach((arg) => {
47
- output += `\n ${JSON.stringify(arg)}`;
60
+ async function fetchConsoleMessages(options) {
61
+ try {
62
+ // Pass lastN=0 to get all messages (worker applies filtering)
63
+ // We request all and filter client-side for flexibility
64
+ const response = await getPeek({ lastN: 0 });
65
+ try {
66
+ validateIPCResponse(response);
67
+ }
68
+ catch (validationError) {
69
+ const errorMsg = getErrorMessage(validationError);
70
+ const exitCode = getExitCodeForConnectionError(errorMsg);
71
+ const result = handleDaemonConnectionError(errorMsg, {
72
+ json: options.json,
73
+ follow: options.follow,
74
+ retryIntervalMs: 1000,
75
+ exitCode,
76
+ });
77
+ if (result.shouldExit) {
78
+ process.exit(result.exitCode);
79
+ }
80
+ return null;
81
+ }
82
+ const output = response.data?.preview;
83
+ if (!output?.data.console) {
84
+ if (options.json) {
85
+ console.log(JSON.stringify({
86
+ success: false,
87
+ error: noConsoleDataMessage(),
88
+ }));
89
+ }
90
+ else {
91
+ console.error(noConsoleDataMessage());
92
+ }
93
+ process.exit(EXIT_CODES.RESOURCE_NOT_FOUND);
94
+ }
95
+ return output.data.console;
96
+ }
97
+ catch {
98
+ const result = handleDaemonConnectionError('Daemon not running', {
99
+ json: options.json,
100
+ follow: options.follow,
101
+ retryIntervalMs: 1000,
48
102
  });
103
+ if (result.shouldExit) {
104
+ process.exit(result.exitCode);
105
+ }
106
+ return null;
107
+ }
108
+ }
109
+ /**
110
+ * Filter messages to only include those from the current (most recent) navigation.
111
+ *
112
+ * Finds the highest navigationId (most recent page load) and returns only
113
+ * messages from that navigation. Messages without navigationId are excluded.
114
+ *
115
+ * @param messages - All console messages
116
+ * @returns Messages from the current page load only
117
+ */
118
+ export function filterByCurrentNavigation(messages) {
119
+ if (messages.length === 0) {
120
+ return messages;
121
+ }
122
+ // Find the maximum navigationId (current page load)
123
+ const maxNavigationId = Math.max(...messages.map((m) => m.navigationId ?? 0).filter((id) => id !== undefined));
124
+ // Filter to only messages from current navigation
125
+ return messages.filter((m) => m.navigationId === maxNavigationId);
126
+ }
127
+ /**
128
+ * Filter messages by level.
129
+ *
130
+ * @param messages - Console messages to filter
131
+ * @param level - Level to filter by (error, warning, info, debug)
132
+ * @returns Filtered messages matching the specified level
133
+ */
134
+ export function filterByLevel(messages, level) {
135
+ return messages.filter((m) => LEVEL_MAP[m.type] === level);
136
+ }
137
+ /**
138
+ * Apply navigation and level filters to console messages.
139
+ *
140
+ * @param messages - Raw console messages
141
+ * @param options - Filter options (history and level)
142
+ * @returns Filtered messages
143
+ */
144
+ function applyMessageFilters(messages, options) {
145
+ let filtered = options.history ? messages : filterByCurrentNavigation(messages);
146
+ if (options.level) {
147
+ filtered = filterByLevel(filtered, options.level);
49
148
  }
50
- return output;
149
+ return filtered;
150
+ }
151
+ /**
152
+ * Build format options from command options.
153
+ *
154
+ * @param options - Command options
155
+ * @returns Format options for console formatters
156
+ */
157
+ function buildFormatOptions(options) {
158
+ return {
159
+ json: options.json,
160
+ list: options.list,
161
+ follow: options.follow,
162
+ last: options.last,
163
+ history: options.history,
164
+ level: options.level,
165
+ };
51
166
  }
52
167
  /**
53
- * Format console messages for human-readable output.
168
+ * Display console output based on options.
54
169
  *
55
- * @param data - Object containing logs array and optional filter
170
+ * @param messages - Console messages to display
171
+ * @param options - Command options
56
172
  */
57
- function formatConsoleLogs(data) {
58
- const { logs, filter } = data;
59
- if (logs.length === 0) {
60
- return noConsoleMessagesMessage(filter);
173
+ function displayConsole(messages, options) {
174
+ const filteredMessages = applyMessageFilters(messages, options);
175
+ if (options.follow) {
176
+ console.clear();
61
177
  }
62
- return joinLines(consoleMessagesHeader(logs.length, filter), '', ...logs.map((log, idx) => formatConsoleMessage(log, idx)));
178
+ console.log(formatConsole(filteredMessages, buildFormatOptions(options)));
179
+ }
180
+ /**
181
+ * Display console in follow mode with streaming updates.
182
+ *
183
+ * @param messages - Console messages to display
184
+ * @param options - Command options (for --history and --level flags)
185
+ */
186
+ function displayConsoleStreaming(messages, options) {
187
+ const filteredMessages = applyMessageFilters(messages, options);
188
+ const lastMessages = filteredMessages.slice(-FOLLOW_MODE_MESSAGE_LIMIT);
189
+ console.clear();
190
+ console.log(formatConsoleFollow(lastMessages));
63
191
  }
64
192
  /**
65
193
  * Register console command.
66
194
  *
195
+ * Provides smart console message inspection with:
196
+ * - Default: Problem-focused summary (errors + warnings deduplicated)
197
+ * - --list: Chronological view of all messages
198
+ * - --follow: Live streaming mode
199
+ * - --json: Machine-readable output with summary stats
200
+ *
67
201
  * @param program - Commander.js Command instance to register commands on
68
202
  */
69
203
  export function registerConsoleCommand(program) {
70
204
  program
71
205
  .command('console')
72
- .description('Query console logs from the active session')
206
+ .description('Console message inspection and analysis')
207
+ .addOption(listOption)
208
+ .addOption(followOption)
209
+ .addOption(historyOption)
210
+ .addOption(levelOption)
73
211
  .addOption(consoleLastOption)
74
- .addOption(filterOption(['log', 'error', 'warning', 'info']))
75
- .addOption(jsonOption)
212
+ .addOption(jsonOption())
76
213
  .action(async (options) => {
77
- await runCommand(async (opts) => {
78
- const response = await getPeek();
79
- validateIPCResponse(response);
80
- const output = response.data?.preview;
81
- if (!output?.data.console) {
82
- return {
83
- success: false,
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 }) },
214
+ if (options.follow) {
215
+ console.error(followingConsoleMessage());
216
+ const showConsole = async () => {
217
+ const messages = await fetchConsoleMessages(options);
218
+ if (messages) {
219
+ displayConsoleStreaming(messages, options);
220
+ }
98
221
  };
99
- }, options, formatConsoleLogs);
222
+ await showConsole();
223
+ const followInterval = setInterval(() => {
224
+ void showConsole();
225
+ }, 1000);
226
+ process.on('SIGINT', () => {
227
+ clearInterval(followInterval);
228
+ console.error(stoppedFollowingConsoleMessage());
229
+ process.exit(EXIT_CODES.SUCCESS);
230
+ });
231
+ }
232
+ else {
233
+ const messages = await fetchConsoleMessages(options);
234
+ if (messages) {
235
+ displayConsole(messages, options);
236
+ }
237
+ }
100
238
  });
101
239
  }
102
240
  //# sourceMappingURL=console.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/commands/console.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/commands/console.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,7 @@ export function registerDetailsCommand(program) {
30
30
  .description('Get detailed information for a specific request or console message')
31
31
  .argument('<type>', 'Type of item: "network" or "console"')
32
32
  .argument('<id>', 'Request ID (for network) or index (for console)')
33
- .addOption(jsonOption)
33
+ .addOption(jsonOption())
34
34
  .action(async (type, id, options) => {
35
35
  options.type = type;
36
36
  options.id = id;
@@ -1 +1 @@
1
- {"version":3,"file":"details.js","sourceRoot":"","sources":["../../src/commands/details.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAGhE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D;;;;;GAKG;AACH,SAAS,aAAa,CAAC,IAAmB;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAsB,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACN,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAsB,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,oEAAoE,CAAC;SACjF,QAAQ,CAAC,QAAQ,EAAE,sCAAsC,CAAC;SAC1D,QAAQ,CAAC,MAAM,EAAE,iDAAiD,CAAC;SACnE,SAAS,CAAC,UAAU,CAAC;SACrB,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,EAAU,EAAE,OAA8B,EAAE,EAAE;QACzE,OAAO,CAAC,IAAI,GAAG,IAA6B,CAAC;QAC7C,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;QAEhB,MAAM,UAAU,CACd,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvD,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,iBAAiB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC;oBAC1E,QAAQ,EAAE,UAAU,CAAC,iBAAiB;iBACvC,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAEtD,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAE9B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;gBACzB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,qBAAqB;oBAC5B,QAAQ,EAAE,UAAU,CAAC,kBAAkB;iBACxC,CAAC;YACJ,CAAC;YAED,MAAM,aAAa,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAEzE,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,IAAI,EAAE,aAAa;oBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB;aACF,CAAC;QACJ,CAAC,EACD,OAAO,EACP,aAAa,CACd,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"details.js","sourceRoot":"","sources":["../../src/commands/details.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAGhE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D;;;;;GAKG;AACH,SAAS,aAAa,CAAC,IAAmB;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAsB,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACN,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAsB,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,oEAAoE,CAAC;SACjF,QAAQ,CAAC,QAAQ,EAAE,sCAAsC,CAAC;SAC1D,QAAQ,CAAC,MAAM,EAAE,iDAAiD,CAAC;SACnE,SAAS,CAAC,UAAU,EAAE,CAAC;SACvB,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,EAAU,EAAE,OAA8B,EAAE,EAAE;QACzE,OAAO,CAAC,IAAI,GAAG,IAA6B,CAAC;QAC7C,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;QAEhB,MAAM,UAAU,CACd,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvD,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,iBAAiB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC;oBAC1E,QAAQ,EAAE,UAAU,CAAC,iBAAiB;iBACvC,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAEtD,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAE9B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;gBACzB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,qBAAqB;oBAC5B,QAAQ,EAAE,UAAU,CAAC,kBAAkB;iBACxC,CAAC;YACJ,CAAC;YAED,MAAM,aAAa,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAEzE,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACJ,IAAI,EAAE,aAAa;oBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB;aACF,CAAC;QACJ,CAAC,EACD,OAAO,EACP,aAAa,CACd,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -96,7 +96,7 @@ export class DomElementResolver {
96
96
  if (index < 0 || index >= cachedQuery.nodes.length) {
97
97
  return {
98
98
  success: false,
99
- error: `Index ${index} out of range (found ${cachedQuery.nodes.length} elements)`,
99
+ error: `Index ${index} out of range (found ${cachedQuery.nodes.length} nodes from query "${cachedQuery.selector}")`,
100
100
  exitCode: EXIT_CODES.INVALID_ARGUMENTS,
101
101
  suggestion: `Use an index between 0 and ${cachedQuery.nodes.length - 1}`,
102
102
  };
@@ -135,7 +135,7 @@ export class DomElementResolver {
135
135
  }
136
136
  const cachedQuery = validation.cache;
137
137
  if (index < 0 || index >= cachedQuery.nodes.length) {
138
- throw new CommandError(`Index ${index} out of range (found ${cachedQuery.nodes.length} elements)`, {
138
+ throw new CommandError(`Index ${index} out of range (found ${cachedQuery.nodes.length} nodes from query "${cachedQuery.selector}")`, {
139
139
  suggestion: `Use an index between 0 and ${cachedQuery.nodes.length - 1}`,
140
140
  }, EXIT_CODES.INVALID_ARGUMENTS);
141
141
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DomElementResolver.js","sourceRoot":"","sources":["../../../src/commands/dom/DomElementResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DomElementResolver.js","sourceRoot":"","sources":["../../../src/commands/dom/DomElementResolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"a11y.d.ts","sourceRoot":"","sources":["../../../src/commands/dom/a11y.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8KzC;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CA0D1D"}
1
+ {"version":3,"file":"a11y.d.ts","sourceRoot":"","sources":["../../../src/commands/dom/a11y.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0LzC;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CA2D1D"}