coolhand-cli 0.7.0 → 0.9.0

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 (101) hide show
  1. package/README.md +23 -2
  2. package/dist/api/feedback-client.d.ts +17 -0
  3. package/dist/api/feedback-client.d.ts.map +1 -0
  4. package/dist/api/feedback-client.js +40 -0
  5. package/dist/api/feedback-client.js.map +1 -0
  6. package/dist/api/last-sync.d.ts +8 -6
  7. package/dist/api/last-sync.d.ts.map +1 -1
  8. package/dist/api/last-sync.js +27 -16
  9. package/dist/api/last-sync.js.map +1 -1
  10. package/dist/api/log-client.d.ts +17 -0
  11. package/dist/api/log-client.d.ts.map +1 -0
  12. package/dist/api/log-client.js +40 -0
  13. package/dist/api/log-client.js.map +1 -0
  14. package/dist/bin.js +0 -0
  15. package/dist/cli.d.ts +1 -1
  16. package/dist/cli.d.ts.map +1 -1
  17. package/dist/cli.js +326 -10
  18. package/dist/cli.js.map +1 -1
  19. package/dist/commands/analyze-claude-sessions.d.ts +6 -0
  20. package/dist/commands/analyze-claude-sessions.d.ts.map +1 -1
  21. package/dist/commands/analyze-claude-sessions.js +60 -9
  22. package/dist/commands/analyze-claude-sessions.js.map +1 -1
  23. package/dist/commands/clients.d.ts.map +1 -1
  24. package/dist/commands/clients.js +2 -1
  25. package/dist/commands/clients.js.map +1 -1
  26. package/dist/commands/close-optimization.js +1 -1
  27. package/dist/commands/close-optimization.js.map +1 -1
  28. package/dist/commands/fetch-log.d.ts +3 -0
  29. package/dist/commands/fetch-log.d.ts.map +1 -0
  30. package/dist/commands/{create-optimization.js → fetch-log.js} +14 -10
  31. package/dist/commands/fetch-log.js.map +1 -0
  32. package/dist/commands/get-feedback.d.ts +3 -0
  33. package/dist/commands/get-feedback.d.ts.map +1 -0
  34. package/dist/commands/get-feedback.js +70 -0
  35. package/dist/commands/get-feedback.js.map +1 -0
  36. package/dist/commands/get-optimization.d.ts.map +1 -1
  37. package/dist/commands/get-optimization.js +61 -10
  38. package/dist/commands/get-optimization.js.map +1 -1
  39. package/dist/commands/mcp-call.d.ts.map +1 -1
  40. package/dist/commands/mcp-call.js +14 -50
  41. package/dist/commands/mcp-call.js.map +1 -1
  42. package/dist/commands/search-feedback.d.ts +3 -0
  43. package/dist/commands/search-feedback.d.ts.map +1 -0
  44. package/dist/commands/search-feedback.js +71 -0
  45. package/dist/commands/search-feedback.js.map +1 -0
  46. package/dist/commands/search-logs.d.ts +3 -0
  47. package/dist/commands/search-logs.d.ts.map +1 -0
  48. package/dist/commands/search-logs.js +77 -0
  49. package/dist/commands/search-logs.js.map +1 -0
  50. package/dist/commands/status.d.ts.map +1 -1
  51. package/dist/commands/status.js +2 -1
  52. package/dist/commands/status.js.map +1 -1
  53. package/dist/commands/whoami.js +1 -1
  54. package/dist/commands/whoami.js.map +1 -1
  55. package/dist/config.d.ts.map +1 -1
  56. package/dist/config.js +5 -1
  57. package/dist/config.js.map +1 -1
  58. package/dist/errors.d.ts +1 -1
  59. package/dist/errors.d.ts.map +1 -1
  60. package/dist/errors.js.map +1 -1
  61. package/dist/parse-when.d.ts +17 -0
  62. package/dist/parse-when.d.ts.map +1 -0
  63. package/dist/parse-when.js +49 -0
  64. package/dist/parse-when.js.map +1 -0
  65. package/dist/sessions/claude-scanner.d.ts +14 -1
  66. package/dist/sessions/claude-scanner.d.ts.map +1 -1
  67. package/dist/sessions/claude-scanner.js +205 -41
  68. package/dist/sessions/claude-scanner.js.map +1 -1
  69. package/dist/sessions/cowork-scanner.d.ts +2 -0
  70. package/dist/sessions/cowork-scanner.d.ts.map +1 -1
  71. package/dist/sessions/cowork-scanner.js +22 -9
  72. package/dist/sessions/cowork-scanner.js.map +1 -1
  73. package/dist/sessions/redact-secrets.d.ts +14 -0
  74. package/dist/sessions/redact-secrets.d.ts.map +1 -0
  75. package/dist/sessions/redact-secrets.js +47 -0
  76. package/dist/sessions/redact-secrets.js.map +1 -0
  77. package/dist/sessions/session-filter.d.ts +28 -0
  78. package/dist/sessions/session-filter.d.ts.map +1 -0
  79. package/dist/sessions/session-filter.js +38 -0
  80. package/dist/sessions/session-filter.js.map +1 -0
  81. package/dist/types.d.ts +61 -0
  82. package/dist/types.d.ts.map +1 -1
  83. package/dist/types.js.map +1 -1
  84. package/dist/version.d.ts +2 -2
  85. package/dist/version.js +1 -1
  86. package/package.json +6 -6
  87. package/dist/commands/accounts.d.ts +0 -3
  88. package/dist/commands/accounts.d.ts.map +0 -1
  89. package/dist/commands/accounts.js +0 -59
  90. package/dist/commands/accounts.js.map +0 -1
  91. package/dist/commands/add-optimization-comment.d.ts +0 -3
  92. package/dist/commands/add-optimization-comment.d.ts.map +0 -1
  93. package/dist/commands/add-optimization-comment.js +0 -28
  94. package/dist/commands/add-optimization-comment.js.map +0 -1
  95. package/dist/commands/capture-sessions.d.ts +0 -3
  96. package/dist/commands/capture-sessions.d.ts.map +0 -1
  97. package/dist/commands/capture-sessions.js +0 -79
  98. package/dist/commands/capture-sessions.js.map +0 -1
  99. package/dist/commands/create-optimization.d.ts +0 -3
  100. package/dist/commands/create-optimization.d.ts.map +0 -1
  101. package/dist/commands/create-optimization.js.map +0 -1
package/dist/types.d.ts CHANGED
@@ -46,6 +46,7 @@ export interface StatusOutput {
46
46
  client_id: string;
47
47
  client_name: string;
48
48
  masked_token: string;
49
+ masked_private_key: string;
49
50
  base_url: string;
50
51
  }>;
51
52
  default_client_id: string | null;
@@ -72,6 +73,32 @@ export interface UpdateWorkloadOptions {
72
73
  json?: boolean;
73
74
  clientId?: string;
74
75
  }
76
+ export interface FetchLogOptions {
77
+ logId: string;
78
+ section?: 'full' | 'beginning' | 'end';
79
+ maxChars?: number;
80
+ searchQuery?: string;
81
+ includeThinking?: boolean;
82
+ json?: boolean;
83
+ clientId?: string;
84
+ }
85
+ export interface SearchLogsOptions {
86
+ templateId?: string;
87
+ workloadId?: string;
88
+ systemPromptContains?: string;
89
+ userPromptContains?: string;
90
+ model?: string;
91
+ sourceApi?: string;
92
+ sourceApiResult?: string;
93
+ unmatchedOnly?: boolean;
94
+ daysBack?: number;
95
+ includePrompts?: boolean;
96
+ sort?: string;
97
+ page?: number;
98
+ perPage?: number;
99
+ json?: boolean;
100
+ clientId?: string;
101
+ }
75
102
  export interface SearchOptimizationsOptions {
76
103
  status?: string;
77
104
  type?: string;
@@ -91,6 +118,7 @@ export interface SearchOptimizationsOptions {
91
118
  export interface GetOptimizationOptions {
92
119
  id: string;
93
120
  json?: boolean;
121
+ full?: boolean;
94
122
  clientId?: string;
95
123
  }
96
124
  export interface CloseOptimizationOptions {
@@ -111,6 +139,39 @@ export interface AnalyzeClaudeSessionsOptions {
111
139
  dryRun?: boolean;
112
140
  clientId?: string;
113
141
  json?: boolean;
142
+ /** Raw --since value (date or Nh/Nd/Nw shorthand); parsed in the command so bad input
143
+ * surfaces as a CliError rather than a crash in the flag layer. */
144
+ since?: string;
145
+ /** Raw --until value, same formats as since. */
146
+ until?: string;
147
+ /** Override for the Claude Code scan root (--projects-dir). */
148
+ projectsDir?: string;
149
+ /** Only upload sessions whose project folder matches one of these (--project, repeatable). */
150
+ projects?: string[];
151
+ /** Never upload sessions whose project folder matches one of these (--exclude-project). */
152
+ excludeProjects?: string[];
153
+ }
154
+ export interface SearchFeedbackOptions {
155
+ sentiment?: 'positive' | 'negative' | 'neutral';
156
+ search?: string;
157
+ creatorId?: string;
158
+ workloadId?: string;
159
+ /** Only feedback linked to an LLM request log. Mutually exclusive with `unmatched`. */
160
+ matched?: boolean;
161
+ /** Only feedback not linked to an LLM request log. Mutually exclusive with `matched`. */
162
+ unmatched?: boolean;
163
+ since?: string;
164
+ sortBy?: 'created_at' | 'updated_at';
165
+ sortDir?: 'asc' | 'desc';
166
+ page?: number;
167
+ perPage?: number;
168
+ json?: boolean;
169
+ clientId?: string;
170
+ }
171
+ export interface GetFeedbackOptions {
172
+ id: string;
173
+ json?: boolean;
174
+ clientId?: string;
114
175
  }
115
176
  export interface ComplaintBoxOptions {
116
177
  complaint: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA0JA,MAAM,CAAC,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;AAC3D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA2NA,MAAM,CAAC,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;AAC3D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC"}
package/dist/version.d.ts CHANGED
@@ -2,10 +2,10 @@
2
2
  * Auto-generated from package.json — do not edit manually.
3
3
  * Run `npm run sync-version` or `npm run build` to regenerate.
4
4
  */
5
- export declare const PACKAGE_VERSION = "0.7.0";
5
+ export declare const PACKAGE_VERSION = "0.9.0";
6
6
  export declare const PACKAGE_NAME = "coolhand-cli";
7
7
  /**
8
8
  * Full package identifier
9
9
  */
10
- export declare const PACKAGE_IDENTIFIER = "coolhand-cli-0.7.0";
10
+ export declare const PACKAGE_IDENTIFIER = "coolhand-cli-0.9.0";
11
11
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -2,7 +2,7 @@
2
2
  * Auto-generated from package.json — do not edit manually.
3
3
  * Run `npm run sync-version` or `npm run build` to regenerate.
4
4
  */
5
- export const PACKAGE_VERSION = '0.7.0';
5
+ export const PACKAGE_VERSION = '0.9.0';
6
6
  export const PACKAGE_NAME = 'coolhand-cli';
7
7
  /**
8
8
  * Full package identifier
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "coolhand-cli",
3
- "version": "0.7.0",
3
+ "version": "0.9.0",
4
4
  "description": "CLI for authenticating with Coolhand and retrieving API tokens from a local dev environment",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -59,21 +59,21 @@
59
59
  "smoke": "node dist/bin.js --version"
60
60
  },
61
61
  "dependencies": {
62
- "coolhand-node": "^0.8.0",
62
+ "coolhand-node": "^0.10.1",
63
63
  "mockttp": "^4.2.1"
64
64
  },
65
65
  "overrides": {
66
66
  "js-yaml": "^4.2.0"
67
67
  },
68
68
  "devDependencies": {
69
- "@eslint/js": "^9.36.0",
69
+ "@eslint/js": "^10.0.1",
70
70
  "@types/jest": "^30.0.0",
71
71
  "@types/node": "^20.0.0",
72
72
  "@typescript-eslint/eslint-plugin": "^8.45.0",
73
73
  "@typescript-eslint/parser": "^8.45.0",
74
- "eslint": "^9.36.0",
75
- "eslint-plugin-jest": "^29.0.1",
76
- "globals": "^16.4.0",
74
+ "eslint": "^10.8.0",
75
+ "eslint-plugin-jest": "^29.16.0",
76
+ "globals": "^17.8.0",
77
77
  "jest": "^30.2.0",
78
78
  "ts-jest": "^29.4.11",
79
79
  "ts-node": "^10.9.0",
@@ -1,3 +0,0 @@
1
- import type { AccountsOptions } from '../types.js';
2
- export declare function run(positional: string[], opts: AccountsOptions): Promise<number>;
3
- //# sourceMappingURL=accounts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/commands/accounts.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AA4CnD,wBAAsB,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAYtF"}
@@ -1,59 +0,0 @@
1
- import { CliError, ExitCode } from '../errors.js';
2
- import { logger } from '../logger.js';
3
- import { loadConfig, setDefault } from '../config.js';
4
- import { maskToken } from '../mask.js';
5
- import { buildStatusOutput } from './status.js';
6
- async function listAccounts(opts) {
7
- const cfg = await loadConfig();
8
- const output = buildStatusOutput(cfg);
9
- if (opts.json) {
10
- logger.json(output);
11
- return ExitCode.OK;
12
- }
13
- if (!output.configured) {
14
- logger.info('No accounts configured. Run `coolhand login` to add one.');
15
- return ExitCode.OK;
16
- }
17
- for (const acct of output.accounts) {
18
- const marker = acct.account_id === output.default_account_id ? '* ' : ' ';
19
- logger.info(`${marker}${acct.account_id} ${acct.account_name} ${acct.masked_token} ${acct.base_url}`);
20
- }
21
- return ExitCode.OK;
22
- }
23
- async function useAccount(accountId, opts) {
24
- if (!accountId) {
25
- throw new CliError('INVALID_ARGS', 'accounts use requires an account id');
26
- }
27
- const cfg = await setDefault(accountId);
28
- const entry = cfg.accounts[accountId];
29
- if (opts.json) {
30
- logger.json({
31
- ok: true,
32
- default_account_id: cfg.default_account_id,
33
- account: {
34
- account_id: entry.account_id,
35
- account_name: entry.account_name,
36
- masked_token: maskToken(entry.api_key),
37
- base_url: entry.base_url,
38
- },
39
- });
40
- }
41
- else {
42
- logger.info(`Default account is now "${entry.account_name}" (${entry.account_id}).`);
43
- }
44
- return ExitCode.OK;
45
- }
46
- export async function run(positional, opts) {
47
- const sub = positional[0];
48
- if (!sub) {
49
- return listAccounts(opts);
50
- }
51
- if (sub === 'use') {
52
- return useAccount(positional[1] ?? '', opts);
53
- }
54
- if (sub === 'list') {
55
- return listAccounts(opts);
56
- }
57
- throw new CliError('INVALID_ARGS', `Unknown accounts subcommand: ${sub}`);
58
- }
59
- //# sourceMappingURL=accounts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/commands/accounts.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { AddOptimizationCommentOptions } from '../types.js';
2
- export declare function run(opts: AddOptimizationCommentOptions): Promise<number>;
3
- //# sourceMappingURL=add-optimization-comment.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"add-optimization-comment.d.ts","sourceRoot":"","sources":["../../src/commands/add-optimization-comment.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAC;AAEjE,wBAAsB,GAAG,CAAC,IAAI,EAAE,6BAA6B,GAAG,OAAO,CAAC,MAAM,CAAC,CAqB9E"}
@@ -1,28 +0,0 @@
1
- import { CliError, ExitCode } from '../errors.js';
2
- import { logger, redact } from '../logger.js';
3
- import { mcpCall } from './mcp-call.js';
4
- export async function run(opts) {
5
- try {
6
- const result = await mcpCall('add_optimization_comment', { id: opts.id, comment: opts.comment }, { clientId: opts.clientId });
7
- if (opts.json) {
8
- logger.json({ ok: true, result });
9
- }
10
- else {
11
- logger.info(JSON.stringify(result, null, 2));
12
- }
13
- return ExitCode.OK;
14
- }
15
- catch (err) {
16
- if (err instanceof CliError) {
17
- if (opts.json) {
18
- logger.json({ ok: false, error: err.code, message: redact(err.message) });
19
- }
20
- else {
21
- logger.info(`Error: ${redact(err.message)} [${err.code}]`);
22
- }
23
- return err.exitCode;
24
- }
25
- throw err;
26
- }
27
- }
28
- //# sourceMappingURL=add-optimization-comment.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"add-optimization-comment.js","sourceRoot":"","sources":["../../src/commands/add-optimization-comment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAmC;IAC3D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,0BAA0B,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAE9H,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,QAAQ,CAAC,EAAE,CAAC;IACrB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,QAAQ,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YAC7D,CAAC;YACD,OAAO,GAAG,CAAC,QAAQ,CAAC;QACtB,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { CaptureSessionsOptions } from '../types.js';
2
- export declare function run(opts: CaptureSessionsOptions): Promise<number>;
3
- //# sourceMappingURL=capture-sessions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"capture-sessions.d.ts","sourceRoot":"","sources":["../../src/commands/capture-sessions.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAK1D,wBAAsB,GAAG,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwEvE"}
@@ -1,79 +0,0 @@
1
- import { CliError, ExitCode } from '../errors.js';
2
- import { logger, redact } from '../logger.js';
3
- import { scanSessions, sessionIdOf } from '../sessions/claude-scanner.js';
4
- import { loadCaptureState, isSubmitted, markSubmitted, saveCaptureState, } from '../sessions/capture-state.js';
5
- import { loadConfig, getClient } from '../config.js';
6
- import { logRequest } from '../log-request.js';
7
- /** Errors that apply to every session (auth/config), so the run should abort, not keep retrying. */
8
- const FATAL_CODES = new Set(['NOT_CONFIGURED', 'CLIENT_NOT_FOUND', 'INVALID_BASE_URL']);
9
- export async function run(opts) {
10
- try {
11
- const { envelopes, sessionCount } = await scanSessions();
12
- // Scope the "already submitted" list to the client we're submitting to, so the same sessions
13
- // can be sent to a different client if needed.
14
- const cfg = await loadConfig();
15
- const stateClientId = getClient(cfg, opts.clientId)?.client_id ?? opts.clientId ?? '_default';
16
- const state = await loadCaptureState();
17
- const pending = envelopes.filter((e) => !isSubmitted(state, stateClientId, sessionIdOf(e)));
18
- const skipped = envelopes.length - pending.length;
19
- if (opts.dryRun) {
20
- if (opts.json) {
21
- logger.json({ ok: true, dryRun: true, sessions: sessionCount, toSubmit: pending.length, skipped });
22
- }
23
- else {
24
- logger.info(`Dry run: found ${sessionCount} session(s), ${pending.length} new to submit, ` +
25
- `${skipped} already submitted. Nothing sent.`);
26
- }
27
- return ExitCode.OK;
28
- }
29
- let submitted = 0;
30
- let failed = 0;
31
- try {
32
- for (const envelope of pending) {
33
- try {
34
- await logRequest(envelope, { clientId: opts.clientId });
35
- markSubmitted(state, stateClientId, sessionIdOf(envelope));
36
- submitted += 1;
37
- }
38
- catch (err) {
39
- if (err instanceof CliError && FATAL_CODES.has(err.code)) {
40
- throw err;
41
- }
42
- failed += 1;
43
- logger.warn(`Failed to submit session: ${redact(err.message)}`);
44
- }
45
- }
46
- }
47
- finally {
48
- // Persist whatever we recorded, even if a fatal error aborts the run partway.
49
- try {
50
- await saveCaptureState(state);
51
- }
52
- catch (err) {
53
- logger.warn(`Failed to save capture state: ${redact(err.message)}`);
54
- }
55
- }
56
- if (opts.json) {
57
- logger.json({ ok: failed === 0, sessions: sessionCount, submitted, skipped, failed });
58
- }
59
- else {
60
- const failureNote = failed > 0 ? `, ${failed} failed` : '';
61
- const skippedNote = skipped > 0 ? `, ${skipped} already submitted` : '';
62
- logger.info(`Submitted ${submitted} session(s) of ${sessionCount} scanned${skippedNote}${failureNote}.`);
63
- }
64
- return failed === 0 ? ExitCode.OK : ExitCode.USER_ERROR;
65
- }
66
- catch (err) {
67
- if (err instanceof CliError) {
68
- if (opts.json) {
69
- logger.json({ ok: false, error: err.code, message: redact(err.message) });
70
- }
71
- else {
72
- logger.info(`Error: ${redact(err.message)} [${err.code}]`);
73
- }
74
- return err.exitCode;
75
- }
76
- throw err;
77
- }
78
- }
79
- //# sourceMappingURL=capture-sessions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"capture-sessions.js","sourceRoot":"","sources":["../../src/commands/capture-sessions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG/C,oGAAoG;AACpG,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC,CAAC;AAExF,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAA4B;IACpD,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;QAEzD,6FAA6F;QAC7F,+CAA+C;QAC/C,MAAM,GAAG,GAAG,MAAM,UAAU,EAAE,CAAC;QAC/B,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,QAAQ,IAAI,UAAU,CAAC;QAC9F,MAAM,KAAK,GAAG,MAAM,gBAAgB,EAAE,CAAC;QAEvC,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5F,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAElD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YACrG,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CACT,kBAAkB,YAAY,gBAAgB,OAAO,CAAC,MAAM,kBAAkB;oBAC5E,GAAG,OAAO,mCAAmC,CAChD,CAAC;YACJ,CAAC;YACD,OAAO,QAAQ,CAAC,EAAE,CAAC;QACrB,CAAC;QAED,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,CAAC;YACH,KAAK,MAAM,QAAQ,IAAI,OAAO,EAAE,CAAC;gBAC/B,IAAI,CAAC;oBACH,MAAM,UAAU,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACxD,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAC3D,SAAS,IAAI,CAAC,CAAC;gBACjB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,GAAG,YAAY,QAAQ,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;wBACzD,MAAM,GAAG,CAAC;oBACZ,CAAC;oBACD,MAAM,IAAI,CAAC,CAAC;oBACZ,MAAM,CAAC,IAAI,CAAC,6BAA6B,MAAM,CAAE,GAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC7E,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,8EAA8E;YAC9E,IAAI,CAAC;gBACH,MAAM,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAChC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,iCAAiC,MAAM,CAAE,GAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,KAAK,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxF,CAAC;aAAM,CAAC;YACN,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,MAAM,WAAW,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,MAAM,CAAC,IAAI,CACT,aAAa,SAAS,kBAAkB,YAAY,WAAW,WAAW,GAAG,WAAW,GAAG,CAC5F,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;IAC1D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,QAAQ,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YAC7D,CAAC;YACD,OAAO,GAAG,CAAC,QAAQ,CAAC;QACtB,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { CreateOptimizationOptions } from '../types.js';
2
- export declare function run(opts: CreateOptimizationOptions): Promise<number>;
3
- //# sourceMappingURL=create-optimization.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-optimization.d.ts","sourceRoot":"","sources":["../../src/commands/create-optimization.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAE7D,wBAAsB,GAAG,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAgC1E"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-optimization.js","sourceRoot":"","sources":["../../src/commands/create-optimization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAA+B;IACvD,IAAI,CAAC;QACH,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACxB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,qBAAqB,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEvF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,QAAQ,CAAC,EAAE,CAAC;IACrB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,QAAQ,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YAC7D,CAAC;YACD,OAAO,GAAG,CAAC,QAAQ,CAAC;QACtB,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}