@sentry/warden 0.2.0 → 0.4.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.
- package/README.md +1 -1
- package/dist/cli/args.d.ts +2 -0
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +11 -0
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/commands/add.d.ts.map +1 -1
- package/dist/cli/commands/add.js +21 -3
- package/dist/cli/commands/add.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +33 -1
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/diff-apply.d.ts +15 -0
- package/dist/cli/diff-apply.d.ts.map +1 -0
- package/dist/cli/diff-apply.js +69 -0
- package/dist/cli/diff-apply.js.map +1 -0
- package/dist/cli/fix.d.ts +1 -5
- package/dist/cli/fix.d.ts.map +1 -1
- package/dist/cli/fix.js +3 -62
- package/dist/cli/fix.js.map +1 -1
- package/dist/cli/index.js +11 -4
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/main.d.ts +7 -0
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +21 -6
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/output/formatters.d.ts +17 -2
- package/dist/cli/output/formatters.d.ts.map +1 -1
- package/dist/cli/output/formatters.js +31 -3
- package/dist/cli/output/formatters.js.map +1 -1
- package/dist/cli/output/index.d.ts +1 -1
- package/dist/cli/output/index.d.ts.map +1 -1
- package/dist/cli/output/index.js +1 -1
- package/dist/cli/output/index.js.map +1 -1
- package/dist/cli/output/ink-runner.d.ts.map +1 -1
- package/dist/cli/output/ink-runner.js +29 -8
- package/dist/cli/output/ink-runner.js.map +1 -1
- package/dist/cli/output/jsonl.d.ts +12 -1
- package/dist/cli/output/jsonl.d.ts.map +1 -1
- package/dist/cli/output/jsonl.js +12 -0
- package/dist/cli/output/jsonl.js.map +1 -1
- package/dist/cli/output/reporter.d.ts +2 -2
- package/dist/cli/output/reporter.d.ts.map +1 -1
- package/dist/cli/output/reporter.js +54 -37
- package/dist/cli/output/reporter.js.map +1 -1
- package/dist/cli/output/tasks.d.ts +12 -0
- package/dist/cli/output/tasks.d.ts.map +1 -1
- package/dist/cli/output/tasks.js +154 -42
- package/dist/cli/output/tasks.js.map +1 -1
- package/dist/cli/output/verbosity.d.ts +2 -1
- package/dist/cli/output/verbosity.d.ts.map +1 -1
- package/dist/cli/output/verbosity.js +3 -2
- package/dist/cli/output/verbosity.js.map +1 -1
- package/dist/cli/terminal.d.ts.map +1 -1
- package/dist/cli/terminal.js +8 -14
- package/dist/cli/terminal.js.map +1 -1
- package/dist/config/schema.d.ts +13 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +4 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/output/dedup.d.ts +10 -5
- package/dist/output/dedup.d.ts.map +1 -1
- package/dist/output/dedup.js +52 -18
- package/dist/output/dedup.js.map +1 -1
- package/dist/output/github-checks.d.ts +3 -1
- package/dist/output/github-checks.d.ts.map +1 -1
- package/dist/output/github-checks.js +9 -3
- package/dist/output/github-checks.js.map +1 -1
- package/dist/output/issue-renderer.js +1 -1
- package/dist/output/issue-renderer.js.map +1 -1
- package/dist/output/renderer.js +7 -6
- package/dist/output/renderer.js.map +1 -1
- package/dist/sdk/analyze.d.ts.map +1 -1
- package/dist/sdk/analyze.js +91 -30
- package/dist/sdk/analyze.js.map +1 -1
- package/dist/sdk/errors.d.ts +1 -1
- package/dist/sdk/errors.d.ts.map +1 -1
- package/dist/sdk/errors.js +6 -4
- package/dist/sdk/errors.js.map +1 -1
- package/dist/sdk/extract.d.ts +12 -2
- package/dist/sdk/extract.d.ts.map +1 -1
- package/dist/sdk/extract.js +22 -3
- package/dist/sdk/extract.js.map +1 -1
- package/dist/sdk/model-pricing.json +104 -0
- package/dist/sdk/pricing.d.ts +17 -0
- package/dist/sdk/pricing.d.ts.map +1 -0
- package/dist/sdk/pricing.js +41 -0
- package/dist/sdk/pricing.js.map +1 -0
- package/dist/sdk/runner.d.ts +4 -3
- package/dist/sdk/runner.d.ts.map +1 -1
- package/dist/sdk/runner.js +4 -2
- package/dist/sdk/runner.js.map +1 -1
- package/dist/sdk/types.d.ts +15 -0
- package/dist/sdk/types.d.ts.map +1 -1
- package/dist/sdk/types.js.map +1 -1
- package/dist/sdk/usage.d.ts +13 -1
- package/dist/sdk/usage.d.ts.map +1 -1
- package/dist/sdk/usage.js +46 -0
- package/dist/sdk/usage.js.map +1 -1
- package/dist/triggers/matcher.d.ts +2 -2
- package/dist/triggers/matcher.d.ts.map +1 -1
- package/dist/triggers/matcher.js +4 -1
- package/dist/triggers/matcher.js.map +1 -1
- package/dist/types/index.d.ts +40 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +13 -0
- package/dist/types/index.js.map +1 -1
- package/package.json +4 -2
- package/scripts/update-pricing.ts +88 -0
package/dist/sdk/analyze.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { query } from '@anthropic-ai/claude-agent-sdk';
|
|
2
2
|
import { SkillRunnerError, WardenAuthenticationError, isRetryableError, isAuthenticationError, isAuthenticationErrorMessage } from './errors.js';
|
|
3
3
|
import { DEFAULT_RETRY_CONFIG, calculateRetryDelay, sleep } from './retry.js';
|
|
4
|
-
import { extractUsage, aggregateUsage, emptyUsage, estimateTokens } from './usage.js';
|
|
4
|
+
import { extractUsage, aggregateUsage, emptyUsage, estimateTokens, aggregateAuxiliaryUsage } from './usage.js';
|
|
5
5
|
import { buildHunkSystemPrompt, buildHunkUserPrompt } from './prompt.js';
|
|
6
6
|
import { extractFindingsJson, extractFindingsWithLLM, validateFindings, deduplicateFindings } from './extract.js';
|
|
7
7
|
import { LARGE_PROMPT_THRESHOLD_CHARS, DEFAULT_FILE_CONCURRENCY, } from './types.js';
|
|
@@ -15,31 +15,36 @@ import { prepareFiles } from './prepare.js';
|
|
|
15
15
|
async function parseHunkOutput(result, filename, apiKey) {
|
|
16
16
|
if (result.subtype !== 'success') {
|
|
17
17
|
// SDK error - not an extraction failure, just no findings
|
|
18
|
-
return { findings: [], extractionFailed: false };
|
|
18
|
+
return { findings: [], extractionFailed: false, extractionMethod: 'none' };
|
|
19
19
|
}
|
|
20
20
|
// Tier 1: Try regex-based extraction first (fast)
|
|
21
21
|
const extracted = extractFindingsJson(result.result);
|
|
22
22
|
if (extracted.success) {
|
|
23
|
-
return { findings: validateFindings(extracted.findings, filename), extractionFailed: false };
|
|
23
|
+
return { findings: validateFindings(extracted.findings, filename), extractionFailed: false, extractionMethod: 'regex' };
|
|
24
24
|
}
|
|
25
25
|
// Tier 2: Try LLM fallback for malformed output
|
|
26
26
|
const fallback = await extractFindingsWithLLM(result.result, apiKey);
|
|
27
27
|
if (fallback.success) {
|
|
28
|
-
return { findings: validateFindings(fallback.findings, filename), extractionFailed: false };
|
|
28
|
+
return { findings: validateFindings(fallback.findings, filename), extractionFailed: false, extractionMethod: 'llm', extractionUsage: fallback.usage };
|
|
29
29
|
}
|
|
30
30
|
// Both tiers failed - return extraction failure info
|
|
31
31
|
return {
|
|
32
32
|
findings: [],
|
|
33
33
|
extractionFailed: true,
|
|
34
|
+
extractionMethod: 'none',
|
|
34
35
|
extractionError: fallback.error,
|
|
35
36
|
extractionPreview: fallback.preview,
|
|
37
|
+
extractionUsage: fallback.usage,
|
|
36
38
|
};
|
|
37
39
|
}
|
|
38
40
|
/**
|
|
39
41
|
* Execute a single SDK query attempt.
|
|
42
|
+
* Captures stderr for better error diagnostics when Claude Code fails.
|
|
40
43
|
*/
|
|
41
44
|
async function executeQuery(systemPrompt, userPrompt, repoPath, options) {
|
|
42
45
|
const { maxTurns = 50, model, abortController, pathToClaudeCodeExecutable } = options;
|
|
46
|
+
// Capture stderr output for better error diagnostics
|
|
47
|
+
const stderrChunks = [];
|
|
43
48
|
const stream = query({
|
|
44
49
|
prompt: userPrompt,
|
|
45
50
|
options: {
|
|
@@ -54,20 +59,37 @@ async function executeQuery(systemPrompt, userPrompt, repoPath, options) {
|
|
|
54
59
|
model,
|
|
55
60
|
abortController,
|
|
56
61
|
pathToClaudeCodeExecutable,
|
|
62
|
+
stderr: (data) => {
|
|
63
|
+
stderrChunks.push(data);
|
|
64
|
+
},
|
|
57
65
|
},
|
|
58
66
|
});
|
|
59
67
|
let resultMessage;
|
|
60
68
|
let authError;
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
69
|
+
try {
|
|
70
|
+
for await (const message of stream) {
|
|
71
|
+
if (message.type === 'result') {
|
|
72
|
+
resultMessage = message;
|
|
73
|
+
}
|
|
74
|
+
else if (message.type === 'auth_status' && message.error) {
|
|
75
|
+
// Capture authentication errors from auth_status messages
|
|
76
|
+
authError = message.error;
|
|
77
|
+
}
|
|
64
78
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
// Re-throw with stderr info if available
|
|
82
|
+
const stderr = stderrChunks.join('').trim();
|
|
83
|
+
if (stderr) {
|
|
84
|
+
const originalMessage = error instanceof Error ? error.message : String(error);
|
|
85
|
+
const enhancedError = new Error(`${originalMessage}\nClaude Code stderr: ${stderr}`);
|
|
86
|
+
enhancedError.cause = error;
|
|
87
|
+
throw enhancedError;
|
|
68
88
|
}
|
|
89
|
+
throw error;
|
|
69
90
|
}
|
|
70
|
-
|
|
91
|
+
const stderr = stderrChunks.join('').trim() || undefined;
|
|
92
|
+
return { result: resultMessage, authError, stderr };
|
|
71
93
|
}
|
|
72
94
|
/**
|
|
73
95
|
* Analyze a single hunk with retry logic for transient failures.
|
|
@@ -103,13 +125,9 @@ async function analyzeHunk(skill, hunkCtx, repoPath, options, callbacks, prConte
|
|
|
103
125
|
try {
|
|
104
126
|
const { result: resultMessage, authError } = await executeQuery(systemPrompt, userPrompt, repoPath, options);
|
|
105
127
|
// Check for authentication errors from auth_status messages
|
|
128
|
+
// auth_status errors are always auth-related - throw immediately
|
|
106
129
|
if (authError) {
|
|
107
|
-
|
|
108
|
-
throw new WardenAuthenticationError();
|
|
109
|
-
}
|
|
110
|
-
// Non-auth error from auth_status - log and treat as failure
|
|
111
|
-
console.error(`SDK auth error: ${authError}`);
|
|
112
|
-
return { findings: [], usage: aggregateUsage(accumulatedUsage), failed: true, extractionFailed: false };
|
|
130
|
+
throw new WardenAuthenticationError(authError);
|
|
113
131
|
}
|
|
114
132
|
if (!resultMessage) {
|
|
115
133
|
console.error('SDK returned no result');
|
|
@@ -142,6 +160,8 @@ async function analyzeHunk(skill, hunkCtx, repoPath, options, callbacks, prConte
|
|
|
142
160
|
};
|
|
143
161
|
}
|
|
144
162
|
const parseResult = await parseHunkOutput(resultMessage, hunkCtx.filename, apiKey);
|
|
163
|
+
// Notify about extraction result (debug mode)
|
|
164
|
+
callbacks?.onExtractionResult?.(callbacks.lineRange, parseResult.findings.length, parseResult.extractionMethod);
|
|
145
165
|
// Notify about extraction failure if callback provided
|
|
146
166
|
if (parseResult.extractionFailed) {
|
|
147
167
|
callbacks?.onExtractionFailure?.(callbacks.lineRange, parseResult.extractionError ?? 'unknown_error', parseResult.extractionPreview ?? '');
|
|
@@ -153,6 +173,9 @@ async function analyzeHunk(skill, hunkCtx, repoPath, options, callbacks, prConte
|
|
|
153
173
|
extractionFailed: parseResult.extractionFailed,
|
|
154
174
|
extractionError: parseResult.extractionError,
|
|
155
175
|
extractionPreview: parseResult.extractionPreview,
|
|
176
|
+
auxiliaryUsage: parseResult.extractionUsage
|
|
177
|
+
? [{ agent: 'extraction', usage: parseResult.extractionUsage }]
|
|
178
|
+
: undefined,
|
|
156
179
|
};
|
|
157
180
|
}
|
|
158
181
|
catch (error) {
|
|
@@ -221,6 +244,7 @@ export async function analyzeFile(skill, file, repoPath, options = {}, callbacks
|
|
|
221
244
|
const { abortController } = options;
|
|
222
245
|
const fileFindings = [];
|
|
223
246
|
const fileUsage = [];
|
|
247
|
+
const fileAuxiliaryUsage = [];
|
|
224
248
|
let failedHunks = 0;
|
|
225
249
|
let failedExtractions = 0;
|
|
226
250
|
for (const [hunkIndex, hunk] of file.hunks.entries()) {
|
|
@@ -235,6 +259,7 @@ export async function analyzeFile(skill, file, repoPath, options = {}, callbacks
|
|
|
235
259
|
onPromptSize: callbacks.onPromptSize,
|
|
236
260
|
onRetry: callbacks.onRetry,
|
|
237
261
|
onExtractionFailure: callbacks.onExtractionFailure,
|
|
262
|
+
onExtractionResult: callbacks.onExtractionResult,
|
|
238
263
|
}
|
|
239
264
|
: undefined;
|
|
240
265
|
const result = await analyzeHunk(skill, hunk, repoPath, options, hunkCallbacks, prContext);
|
|
@@ -248,6 +273,9 @@ export async function analyzeFile(skill, file, repoPath, options = {}, callbacks
|
|
|
248
273
|
callbacks?.onHunkComplete?.(hunkIndex + 1, result.findings);
|
|
249
274
|
fileFindings.push(...result.findings);
|
|
250
275
|
fileUsage.push(result.usage);
|
|
276
|
+
if (result.auxiliaryUsage) {
|
|
277
|
+
fileAuxiliaryUsage.push(...result.auxiliaryUsage);
|
|
278
|
+
}
|
|
251
279
|
}
|
|
252
280
|
return {
|
|
253
281
|
filename: file.filename,
|
|
@@ -255,6 +283,7 @@ export async function analyzeFile(skill, file, repoPath, options = {}, callbacks
|
|
|
255
283
|
usage: aggregateUsage(fileUsage),
|
|
256
284
|
failedHunks,
|
|
257
285
|
failedExtractions,
|
|
286
|
+
auxiliaryUsage: fileAuxiliaryUsage.length > 0 ? fileAuxiliaryUsage : undefined,
|
|
258
287
|
};
|
|
259
288
|
}
|
|
260
289
|
/**
|
|
@@ -309,9 +338,11 @@ export async function runSkill(skill, context, options = {}) {
|
|
|
309
338
|
return report;
|
|
310
339
|
}
|
|
311
340
|
const totalFiles = fileHunks.length;
|
|
341
|
+
const totalHunks = fileHunks.reduce((sum, file) => sum + file.hunks.length, 0);
|
|
312
342
|
const allFindings = [];
|
|
313
343
|
// Track all usage stats for aggregation
|
|
314
344
|
const allUsage = [];
|
|
345
|
+
const allAuxiliaryUsage = [];
|
|
315
346
|
// Track failed hunks across all files
|
|
316
347
|
let totalFailedHunks = 0;
|
|
317
348
|
let totalFailedExtractions = 0;
|
|
@@ -356,11 +387,25 @@ export async function runSkill(skill, context, options = {}) {
|
|
|
356
387
|
callbacks.onExtractionFailure?.(filename, lineRange, error, preview);
|
|
357
388
|
}
|
|
358
389
|
: undefined,
|
|
390
|
+
onExtractionResult: callbacks?.onExtractionResult
|
|
391
|
+
? (lineRange, findingsCount, method) => {
|
|
392
|
+
callbacks.onExtractionResult?.(filename, lineRange, findingsCount, method);
|
|
393
|
+
}
|
|
394
|
+
: undefined,
|
|
359
395
|
};
|
|
360
396
|
const result = await analyzeFile(skill, fileHunkEntry, context.repoPath, options, fileCallbacks, prContext);
|
|
361
397
|
callbacks?.onFileComplete?.(filename, fileIndex, totalFiles);
|
|
362
398
|
return result;
|
|
363
399
|
}
|
|
400
|
+
/** Process a file with timing, returning a self-contained result. */
|
|
401
|
+
async function processFileWithTiming(fileHunkEntry, fileIndex) {
|
|
402
|
+
const fileStart = Date.now();
|
|
403
|
+
const result = await processFile(fileHunkEntry, fileIndex);
|
|
404
|
+
const durationMs = Date.now() - fileStart;
|
|
405
|
+
return { filename: fileHunkEntry.filename, result, durationMs };
|
|
406
|
+
}
|
|
407
|
+
// Collect results in input order (Promise.all preserves order)
|
|
408
|
+
const fileResults = [];
|
|
364
409
|
// Process files - parallel or sequential based on options
|
|
365
410
|
if (parallel) {
|
|
366
411
|
// Process files in parallel with concurrency limit
|
|
@@ -375,14 +420,8 @@ export async function runSkill(skill, context, options = {}) {
|
|
|
375
420
|
await new Promise((resolve) => setTimeout(resolve, batchDelayMs));
|
|
376
421
|
}
|
|
377
422
|
const batch = fileHunks.slice(i, i + fileConcurrency);
|
|
378
|
-
const
|
|
379
|
-
|
|
380
|
-
for (const result of batchResults) {
|
|
381
|
-
allFindings.push(...result.findings);
|
|
382
|
-
allUsage.push(result.usage);
|
|
383
|
-
totalFailedHunks += result.failedHunks;
|
|
384
|
-
totalFailedExtractions += result.failedExtractions;
|
|
385
|
-
}
|
|
423
|
+
const batchResults = await Promise.all(batch.map((fileHunkEntry, batchIndex) => processFileWithTiming(fileHunkEntry, i + batchIndex)));
|
|
424
|
+
fileResults.push(...batchResults);
|
|
386
425
|
}
|
|
387
426
|
}
|
|
388
427
|
else {
|
|
@@ -391,13 +430,25 @@ export async function runSkill(skill, context, options = {}) {
|
|
|
391
430
|
// Check for abort before starting new file
|
|
392
431
|
if (abortController?.signal.aborted)
|
|
393
432
|
break;
|
|
394
|
-
|
|
395
|
-
allFindings.push(...result.findings);
|
|
396
|
-
allUsage.push(result.usage);
|
|
397
|
-
totalFailedHunks += result.failedHunks;
|
|
398
|
-
totalFailedExtractions += result.failedExtractions;
|
|
433
|
+
fileResults.push(await processFileWithTiming(fileHunkEntry, fileIndex));
|
|
399
434
|
}
|
|
400
435
|
}
|
|
436
|
+
// Accumulate results from ordered fileResults
|
|
437
|
+
for (const fr of fileResults) {
|
|
438
|
+
allFindings.push(...fr.result.findings);
|
|
439
|
+
allUsage.push(fr.result.usage);
|
|
440
|
+
totalFailedHunks += fr.result.failedHunks;
|
|
441
|
+
totalFailedExtractions += fr.result.failedExtractions;
|
|
442
|
+
if (fr.result.auxiliaryUsage) {
|
|
443
|
+
allAuxiliaryUsage.push(...fr.result.auxiliaryUsage);
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
// Check if all analysis failed (indicates a systemic problem like auth failure)
|
|
447
|
+
if (totalFailedHunks > 0 && totalFailedHunks === totalHunks && allFindings.length === 0) {
|
|
448
|
+
throw new SkillRunnerError(`All ${totalHunks} chunk${totalHunks === 1 ? '' : 's'} failed to analyze. ` +
|
|
449
|
+
`This usually indicates an authentication problem. ` +
|
|
450
|
+
`Verify WARDEN_ANTHROPIC_API_KEY is set correctly, or run 'claude login' if using Claude Code subscription.`);
|
|
451
|
+
}
|
|
401
452
|
// Deduplicate findings
|
|
402
453
|
const uniqueFindings = deduplicateFindings(allFindings);
|
|
403
454
|
// Generate summary
|
|
@@ -410,6 +461,12 @@ export async function runSkill(skill, context, options = {}) {
|
|
|
410
461
|
findings: uniqueFindings,
|
|
411
462
|
usage: totalUsage,
|
|
412
463
|
durationMs: Date.now() - startTime,
|
|
464
|
+
files: fileResults.map((fr) => ({
|
|
465
|
+
filename: fr.filename,
|
|
466
|
+
findingCount: fr.result.findings.length,
|
|
467
|
+
durationMs: fr.durationMs,
|
|
468
|
+
usage: fr.result.usage,
|
|
469
|
+
})),
|
|
413
470
|
};
|
|
414
471
|
if (skippedFiles.length > 0) {
|
|
415
472
|
report.skippedFiles = skippedFiles;
|
|
@@ -420,6 +477,10 @@ export async function runSkill(skill, context, options = {}) {
|
|
|
420
477
|
if (totalFailedExtractions > 0) {
|
|
421
478
|
report.failedExtractions = totalFailedExtractions;
|
|
422
479
|
}
|
|
480
|
+
const auxUsage = aggregateAuxiliaryUsage(allAuxiliaryUsage);
|
|
481
|
+
if (auxUsage) {
|
|
482
|
+
report.auxiliaryUsage = auxUsage;
|
|
483
|
+
}
|
|
423
484
|
return report;
|
|
424
485
|
}
|
|
425
486
|
//# sourceMappingURL=analyze.js.map
|
package/dist/sdk/analyze.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/sdk/analyze.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/sdk/analyze.ts"],"names":[],"mappings":"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"}
|
package/dist/sdk/errors.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ export declare class SkillRunnerError extends Error {
|
|
|
8
8
|
*/
|
|
9
9
|
export declare function isAuthenticationErrorMessage(message: string): boolean;
|
|
10
10
|
export declare class WardenAuthenticationError extends Error {
|
|
11
|
-
constructor();
|
|
11
|
+
constructor(sdkError?: string);
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
14
|
* Check if an error is retryable.
|
package/dist/sdk/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/sdk/errors.ts"],"names":[],"mappings":"AAQA,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI3D;AAaD;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAErE;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/sdk/errors.ts"],"names":[],"mappings":"AAQA,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI3D;AAaD;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAErE;AASD,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,QAAQ,CAAC,EAAE,MAAM;CAO9B;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAcxD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAQ7D"}
|
package/dist/sdk/errors.js
CHANGED
|
@@ -22,15 +22,17 @@ export function isAuthenticationErrorMessage(message) {
|
|
|
22
22
|
return AUTH_ERROR_PATTERNS.some((pattern) => new RegExp(pattern, 'i').test(message));
|
|
23
23
|
}
|
|
24
24
|
/** User-friendly error message for authentication failures */
|
|
25
|
-
const
|
|
26
|
-
|
|
25
|
+
const AUTH_ERROR_GUIDANCE = `
|
|
27
26
|
claude login # Use Claude Code subscription
|
|
28
27
|
export WARDEN_ANTHROPIC_API_KEY=sk-... # Or use API key
|
|
29
28
|
|
|
30
29
|
https://console.anthropic.com/ for API keys`;
|
|
31
30
|
export class WardenAuthenticationError extends Error {
|
|
32
|
-
constructor() {
|
|
33
|
-
|
|
31
|
+
constructor(sdkError) {
|
|
32
|
+
const message = sdkError
|
|
33
|
+
? `Authentication failed: ${sdkError}\n${AUTH_ERROR_GUIDANCE}`
|
|
34
|
+
: `Authentication required.${AUTH_ERROR_GUIDANCE}`;
|
|
35
|
+
super(message);
|
|
34
36
|
this.name = 'WardenAuthenticationError';
|
|
35
37
|
}
|
|
36
38
|
}
|
package/dist/sdk/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/sdk/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC,YAAY,OAAe,EAAE,OAA6B;QACxD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAED,uDAAuD;AACvD,MAAM,mBAAmB,GAAG;IAC1B,gBAAgB;IAChB,cAAc;IACd,mBAAmB;IACnB,cAAc;IACd,iBAAiB;IACjB,iBAAiB;IACjB,SAAS;CACV,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAAC,OAAe;IAC1D,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACvF,CAAC;AAED,8DAA8D;AAC9D,MAAM,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/sdk/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC,YAAY,OAAe,EAAE,OAA6B;QACxD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAED,uDAAuD;AACvD,MAAM,mBAAmB,GAAG;IAC1B,gBAAgB;IAChB,cAAc;IACd,mBAAmB;IACnB,cAAc;IACd,iBAAiB;IACjB,iBAAiB;IACjB,SAAS;CACV,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAAC,OAAe;IAC1D,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACvF,CAAC;AAED,8DAA8D;AAC9D,MAAM,mBAAmB,GAAG;;;;4CAIgB,CAAC;AAE7C,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IAClD,YAAY,QAAiB;QAC3B,MAAM,OAAO,GAAG,QAAQ;YACtB,CAAC,CAAC,0BAA0B,QAAQ,KAAK,mBAAmB,EAAE;YAC9D,CAAC,CAAC,2BAA2B,mBAAmB,EAAE,CAAC;QACrD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;IAC1C,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,YAAY,cAAc;QAAE,OAAO,IAAI,CAAC;IACjD,IAAI,KAAK,YAAY,mBAAmB;QAAE,OAAO,IAAI,CAAC;IACtD,IAAI,KAAK,YAAY,kBAAkB;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,KAAK,YAAY,yBAAyB;QAAE,OAAO,IAAI,CAAC;IAE5D,yDAAyD;IACzD,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QAChC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG;YAAE,OAAO,IAAI,CAAC;IACzE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAClD,IAAI,KAAK,YAAY,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uDAAuD;IACvD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO,4BAA4B,CAAC,OAAO,CAAC,CAAC;AAC/C,CAAC"}
|
package/dist/sdk/extract.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Finding } from '../types/index.js';
|
|
1
|
+
import type { Finding, UsageStats } from '../types/index.js';
|
|
2
2
|
/** Pattern to match the start of findings JSON (allows whitespace after brace) */
|
|
3
3
|
export declare const FINDINGS_JSON_START: RegExp;
|
|
4
4
|
/**
|
|
@@ -7,10 +7,12 @@ export declare const FINDINGS_JSON_START: RegExp;
|
|
|
7
7
|
export type ExtractFindingsResult = {
|
|
8
8
|
success: true;
|
|
9
9
|
findings: unknown[];
|
|
10
|
+
usage?: UsageStats;
|
|
10
11
|
} | {
|
|
11
12
|
success: false;
|
|
12
13
|
error: string;
|
|
13
14
|
preview: string;
|
|
15
|
+
usage?: UsageStats;
|
|
14
16
|
};
|
|
15
17
|
/**
|
|
16
18
|
* Extract JSON object from text, handling nested braces correctly.
|
|
@@ -33,12 +35,20 @@ export declare function truncateForLLMFallback(rawText: string, maxChars: number
|
|
|
33
35
|
* Uses claude-haiku-4-5 for lightweight, fast extraction.
|
|
34
36
|
*/
|
|
35
37
|
export declare function extractFindingsWithLLM(rawText: string, apiKey?: string): Promise<ExtractFindingsResult>;
|
|
38
|
+
/** Length of each generated short ID (before formatting). */
|
|
39
|
+
export declare const SHORT_ID_LENGTH = 6;
|
|
40
|
+
/**
|
|
41
|
+
* Generate a short human-readable ID for a finding.
|
|
42
|
+
* Format: XXX-XXX (e.g., K7M-X9P)
|
|
43
|
+
*/
|
|
44
|
+
export declare function generateShortId(): string;
|
|
36
45
|
/**
|
|
37
46
|
* Validate and normalize findings from extracted JSON.
|
|
47
|
+
* Replaces the LLM-provided ID with a short nanoid for stable cross-referencing.
|
|
38
48
|
*/
|
|
39
49
|
export declare function validateFindings(findings: unknown[], filename: string): Finding[];
|
|
40
50
|
/**
|
|
41
|
-
* Deduplicate findings by
|
|
51
|
+
* Deduplicate findings by title and location.
|
|
42
52
|
*/
|
|
43
53
|
export declare function deduplicateFindings(findings: Finding[]): Finding[];
|
|
44
54
|
//# sourceMappingURL=extract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../src/sdk/extract.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../src/sdk/extract.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG7D,kFAAkF;AAClF,eAAO,MAAM,mBAAmB,QAAoB,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,CAAA;CAAE,GAC1D;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,CAAA;CAAE,CAAC;AAE3E;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAmCnF;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB,CA6D1E;AAQD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAwBhF;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,qBAAqB,CAAC,CA8DhC;AAKD,6DAA6D;AAC7D,eAAO,MAAM,eAAe,IAAI,CAAC;AAEjC;;;GAGG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAGxC;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,EAAE,CAuBjF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAQlE"}
|
package/dist/sdk/extract.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import Anthropic from '@anthropic-ai/sdk';
|
|
2
|
+
import { customAlphabet } from 'nanoid';
|
|
2
3
|
import { FindingSchema } from '../types/index.js';
|
|
4
|
+
import { apiUsageToStats } from './pricing.js';
|
|
3
5
|
/** Pattern to match the start of findings JSON (allows whitespace after brace) */
|
|
4
6
|
export const FINDINGS_JSON_START = /\{\s*"findings"/;
|
|
5
7
|
/**
|
|
@@ -165,16 +167,19 @@ ${truncatedText}`,
|
|
|
165
167
|
},
|
|
166
168
|
],
|
|
167
169
|
});
|
|
170
|
+
const usage = apiUsageToStats('claude-haiku-4-5', response.usage);
|
|
168
171
|
const content = response.content[0];
|
|
169
172
|
if (!content || content.type !== 'text') {
|
|
170
173
|
return {
|
|
171
174
|
success: false,
|
|
172
175
|
error: 'llm_unexpected_response',
|
|
173
176
|
preview: rawText.slice(0, 200),
|
|
177
|
+
usage,
|
|
174
178
|
};
|
|
175
179
|
}
|
|
176
180
|
// Parse the LLM response as JSON
|
|
177
|
-
|
|
181
|
+
const result = extractFindingsJson(content.text);
|
|
182
|
+
return { ...result, usage };
|
|
178
183
|
}
|
|
179
184
|
catch (error) {
|
|
180
185
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
@@ -185,8 +190,21 @@ ${truncatedText}`,
|
|
|
185
190
|
};
|
|
186
191
|
}
|
|
187
192
|
}
|
|
193
|
+
/** Unambiguous uppercase alphanumeric alphabet (no O/0, I/1). */
|
|
194
|
+
const SHORT_ID_ALPHABET = 'ABCDEFGHJKLMNPQRSTUVWXYZ23456789';
|
|
195
|
+
/** Length of each generated short ID (before formatting). */
|
|
196
|
+
export const SHORT_ID_LENGTH = 6;
|
|
197
|
+
/**
|
|
198
|
+
* Generate a short human-readable ID for a finding.
|
|
199
|
+
* Format: XXX-XXX (e.g., K7M-X9P)
|
|
200
|
+
*/
|
|
201
|
+
export function generateShortId() {
|
|
202
|
+
const raw = customAlphabet(SHORT_ID_ALPHABET, SHORT_ID_LENGTH)();
|
|
203
|
+
return `${raw.slice(0, 3)}-${raw.slice(3)}`;
|
|
204
|
+
}
|
|
188
205
|
/**
|
|
189
206
|
* Validate and normalize findings from extracted JSON.
|
|
207
|
+
* Replaces the LLM-provided ID with a short nanoid for stable cross-referencing.
|
|
190
208
|
*/
|
|
191
209
|
export function validateFindings(findings, filename) {
|
|
192
210
|
const validated = [];
|
|
@@ -202,6 +220,7 @@ export function validateFindings(findings, filename) {
|
|
|
202
220
|
if (result.success) {
|
|
203
221
|
validated.push({
|
|
204
222
|
...result.data,
|
|
223
|
+
id: generateShortId(),
|
|
205
224
|
location: result.data.location ? { ...result.data.location, path: filename } : undefined,
|
|
206
225
|
});
|
|
207
226
|
}
|
|
@@ -209,12 +228,12 @@ export function validateFindings(findings, filename) {
|
|
|
209
228
|
return validated;
|
|
210
229
|
}
|
|
211
230
|
/**
|
|
212
|
-
* Deduplicate findings by
|
|
231
|
+
* Deduplicate findings by title and location.
|
|
213
232
|
*/
|
|
214
233
|
export function deduplicateFindings(findings) {
|
|
215
234
|
const seen = new Set();
|
|
216
235
|
return findings.filter((f) => {
|
|
217
|
-
const key = `${f.
|
|
236
|
+
const key = `${f.title}:${f.location?.path}:${f.location?.startLine}`;
|
|
218
237
|
if (seen.has(key))
|
|
219
238
|
return false;
|
|
220
239
|
seen.add(key);
|
package/dist/sdk/extract.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../src/sdk/extract.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../src/sdk/extract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
{
|
|
2
|
+
"claude-2": {
|
|
3
|
+
"inputPerMTok": 8,
|
|
4
|
+
"outputPerMTok": 24,
|
|
5
|
+
"cacheReadPerMTok": 0,
|
|
6
|
+
"cacheWritePerMTok": 0
|
|
7
|
+
},
|
|
8
|
+
"claude-3-5-haiku-latest": {
|
|
9
|
+
"inputPerMTok": 0.8,
|
|
10
|
+
"outputPerMTok": 4,
|
|
11
|
+
"cacheReadPerMTok": 0.08,
|
|
12
|
+
"cacheWritePerMTok": 1
|
|
13
|
+
},
|
|
14
|
+
"claude-3-5-sonnet": {
|
|
15
|
+
"inputPerMTok": 3,
|
|
16
|
+
"outputPerMTok": 15,
|
|
17
|
+
"cacheReadPerMTok": 0.3,
|
|
18
|
+
"cacheWritePerMTok": 3.75
|
|
19
|
+
},
|
|
20
|
+
"claude-3-7-sonnet-latest": {
|
|
21
|
+
"inputPerMTok": 3,
|
|
22
|
+
"outputPerMTok": 15,
|
|
23
|
+
"cacheReadPerMTok": 0.3,
|
|
24
|
+
"cacheWritePerMTok": 3.75
|
|
25
|
+
},
|
|
26
|
+
"claude-3-haiku": {
|
|
27
|
+
"inputPerMTok": 0.25,
|
|
28
|
+
"outputPerMTok": 1.25,
|
|
29
|
+
"cacheReadPerMTok": 0.03,
|
|
30
|
+
"cacheWritePerMTok": 0.3
|
|
31
|
+
},
|
|
32
|
+
"claude-3-opus-latest": {
|
|
33
|
+
"inputPerMTok": 15,
|
|
34
|
+
"outputPerMTok": 75,
|
|
35
|
+
"cacheReadPerMTok": 1.5,
|
|
36
|
+
"cacheWritePerMTok": 18.75
|
|
37
|
+
},
|
|
38
|
+
"claude-3-sonnet": {
|
|
39
|
+
"inputPerMTok": 3,
|
|
40
|
+
"outputPerMTok": 15,
|
|
41
|
+
"cacheReadPerMTok": 0.3,
|
|
42
|
+
"cacheWritePerMTok": 3.75
|
|
43
|
+
},
|
|
44
|
+
"claude-haiku-4-5": {
|
|
45
|
+
"inputPerMTok": 1,
|
|
46
|
+
"outputPerMTok": 5,
|
|
47
|
+
"cacheReadPerMTok": 0.1,
|
|
48
|
+
"cacheWritePerMTok": 1.25
|
|
49
|
+
},
|
|
50
|
+
"claude-instant-1": {
|
|
51
|
+
"inputPerMTok": 1.63,
|
|
52
|
+
"outputPerMTok": 55.1,
|
|
53
|
+
"cacheReadPerMTok": 0,
|
|
54
|
+
"cacheWritePerMTok": 0
|
|
55
|
+
},
|
|
56
|
+
"claude-instant-1.2": {
|
|
57
|
+
"inputPerMTok": 1.63,
|
|
58
|
+
"outputPerMTok": 5.51,
|
|
59
|
+
"cacheReadPerMTok": 0,
|
|
60
|
+
"cacheWritePerMTok": 0
|
|
61
|
+
},
|
|
62
|
+
"claude-opus-4-0": {
|
|
63
|
+
"inputPerMTok": 15,
|
|
64
|
+
"outputPerMTok": 75,
|
|
65
|
+
"cacheReadPerMTok": 1.5,
|
|
66
|
+
"cacheWritePerMTok": 18.75
|
|
67
|
+
},
|
|
68
|
+
"claude-opus-4-1": {
|
|
69
|
+
"inputPerMTok": 15,
|
|
70
|
+
"outputPerMTok": 75,
|
|
71
|
+
"cacheReadPerMTok": 1.5,
|
|
72
|
+
"cacheWritePerMTok": 18.75
|
|
73
|
+
},
|
|
74
|
+
"claude-opus-4-5": {
|
|
75
|
+
"inputPerMTok": 5,
|
|
76
|
+
"outputPerMTok": 25,
|
|
77
|
+
"cacheReadPerMTok": 0.5,
|
|
78
|
+
"cacheWritePerMTok": 6.25
|
|
79
|
+
},
|
|
80
|
+
"claude-opus-4-6": {
|
|
81
|
+
"inputPerMTok": 5,
|
|
82
|
+
"outputPerMTok": 25,
|
|
83
|
+
"cacheReadPerMTok": 0.5,
|
|
84
|
+
"cacheWritePerMTok": 6.25
|
|
85
|
+
},
|
|
86
|
+
"claude-sonnet-4-0": {
|
|
87
|
+
"inputPerMTok": 3,
|
|
88
|
+
"outputPerMTok": 15,
|
|
89
|
+
"cacheReadPerMTok": 0.3,
|
|
90
|
+
"cacheWritePerMTok": 3.75
|
|
91
|
+
},
|
|
92
|
+
"claude-sonnet-4-5": {
|
|
93
|
+
"inputPerMTok": 3,
|
|
94
|
+
"outputPerMTok": 15,
|
|
95
|
+
"cacheReadPerMTok": 0.3,
|
|
96
|
+
"cacheWritePerMTok": 3.75
|
|
97
|
+
},
|
|
98
|
+
"claude-v1": {
|
|
99
|
+
"inputPerMTok": 8,
|
|
100
|
+
"outputPerMTok": 24,
|
|
101
|
+
"cacheReadPerMTok": 0,
|
|
102
|
+
"cacheWritePerMTok": 0
|
|
103
|
+
}
|
|
104
|
+
}
|