@swarmdo/cli 1.18.0 → 1.27.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 (86) hide show
  1. package/README.md +2 -1
  2. package/dist/src/apply/apply.d.ts +2 -0
  3. package/dist/src/apply/apply.d.ts.map +1 -1
  4. package/dist/src/apply/apply.js +29 -2
  5. package/dist/src/apply/apply.js.map +1 -1
  6. package/dist/src/changelog/changelog.d.ts.map +1 -1
  7. package/dist/src/changelog/changelog.js +26 -3
  8. package/dist/src/changelog/changelog.js.map +1 -1
  9. package/dist/src/codegraph/codegraph.d.ts +26 -7
  10. package/dist/src/codegraph/codegraph.d.ts.map +1 -1
  11. package/dist/src/codegraph/codegraph.js +97 -13
  12. package/dist/src/codegraph/codegraph.js.map +1 -1
  13. package/dist/src/codegraph/store.d.ts +8 -1
  14. package/dist/src/codegraph/store.d.ts.map +1 -1
  15. package/dist/src/codegraph/store.js +78 -1
  16. package/dist/src/codegraph/store.js.map +1 -1
  17. package/dist/src/commands/cycles.d.ts.map +1 -1
  18. package/dist/src/commands/cycles.js +4 -1
  19. package/dist/src/commands/cycles.js.map +1 -1
  20. package/dist/src/commands/hotspots.d.ts.map +1 -1
  21. package/dist/src/commands/hotspots.js +5 -2
  22. package/dist/src/commands/hotspots.js.map +1 -1
  23. package/dist/src/commands/index.d.ts.map +1 -1
  24. package/dist/src/commands/index.js +6 -3
  25. package/dist/src/commands/index.js.map +1 -1
  26. package/dist/src/commands/release.d.ts.map +1 -1
  27. package/dist/src/commands/release.js +5 -1
  28. package/dist/src/commands/release.js.map +1 -1
  29. package/dist/src/commands/testreport.d.ts +17 -0
  30. package/dist/src/commands/testreport.d.ts.map +1 -0
  31. package/dist/src/commands/testreport.js +120 -0
  32. package/dist/src/commands/testreport.js.map +1 -0
  33. package/dist/src/cycles/cycles.d.ts +12 -2
  34. package/dist/src/cycles/cycles.d.ts.map +1 -1
  35. package/dist/src/cycles/cycles.js +5 -3
  36. package/dist/src/cycles/cycles.js.map +1 -1
  37. package/dist/src/env/env.d.ts +5 -2
  38. package/dist/src/env/env.d.ts.map +1 -1
  39. package/dist/src/env/env.js +24 -3
  40. package/dist/src/env/env.js.map +1 -1
  41. package/dist/src/hotspots/hotspots.d.ts +15 -0
  42. package/dist/src/hotspots/hotspots.d.ts.map +1 -1
  43. package/dist/src/hotspots/hotspots.js +33 -1
  44. package/dist/src/hotspots/hotspots.js.map +1 -1
  45. package/dist/src/license/license.d.ts +31 -2
  46. package/dist/src/license/license.d.ts.map +1 -1
  47. package/dist/src/license/license.js +133 -11
  48. package/dist/src/license/license.js.map +1 -1
  49. package/dist/src/mcp-client.d.ts.map +1 -1
  50. package/dist/src/mcp-client.js +2 -0
  51. package/dist/src/mcp-client.js.map +1 -1
  52. package/dist/src/mcp-tools/index.d.ts +1 -0
  53. package/dist/src/mcp-tools/index.d.ts.map +1 -1
  54. package/dist/src/mcp-tools/index.js +1 -0
  55. package/dist/src/mcp-tools/index.js.map +1 -1
  56. package/dist/src/mcp-tools/profiles.d.ts.map +1 -1
  57. package/dist/src/mcp-tools/profiles.js +1 -0
  58. package/dist/src/mcp-tools/profiles.js.map +1 -1
  59. package/dist/src/mcp-tools/testreport-tools.d.ts +11 -0
  60. package/dist/src/mcp-tools/testreport-tools.d.ts.map +1 -0
  61. package/dist/src/mcp-tools/testreport-tools.js +33 -0
  62. package/dist/src/mcp-tools/testreport-tools.js.map +1 -0
  63. package/dist/src/pack/pack.d.ts +2 -3
  64. package/dist/src/pack/pack.d.ts.map +1 -1
  65. package/dist/src/pack/pack.js +68 -12
  66. package/dist/src/pack/pack.js.map +1 -1
  67. package/dist/src/redact/redact.d.ts.map +1 -1
  68. package/dist/src/redact/redact.js +14 -2
  69. package/dist/src/redact/redact.js.map +1 -1
  70. package/dist/src/sbom/sbom.d.ts +16 -0
  71. package/dist/src/sbom/sbom.d.ts.map +1 -1
  72. package/dist/src/sbom/sbom.js +28 -1
  73. package/dist/src/sbom/sbom.js.map +1 -1
  74. package/dist/src/testreport/testreport.d.ts +65 -0
  75. package/dist/src/testreport/testreport.d.ts.map +1 -0
  76. package/dist/src/testreport/testreport.js +246 -0
  77. package/dist/src/testreport/testreport.js.map +1 -0
  78. package/dist/src/usage/claude-pricing.d.ts +6 -0
  79. package/dist/src/usage/claude-pricing.d.ts.map +1 -1
  80. package/dist/src/usage/claude-pricing.js +12 -9
  81. package/dist/src/usage/claude-pricing.js.map +1 -1
  82. package/dist/src/usage/transcript-usage.d.ts.map +1 -1
  83. package/dist/src/usage/transcript-usage.js +4 -1
  84. package/dist/src/usage/transcript-usage.js.map +1 -1
  85. package/dist/tsconfig.tsbuildinfo +1 -1
  86. package/package.json +1 -1
@@ -0,0 +1,246 @@
1
+ /**
2
+ * testreport.ts — parse JUnit-XML / TAP test results into a compact failure
3
+ * digest. The missing front-half of the test→fix loop: an agent runs the suite,
4
+ * points this at the results, and gets exactly the failing test names + file:line
5
+ * + assertion message — instead of re-reading hundreds of log lines — then feeds
6
+ * that into `repair`. Inspired by dorny/test-reporter, action-junit-report,
7
+ * gotestsum.
8
+ *
9
+ * Pure + deterministic: a results string in, a normalized summary out. The file
10
+ * read / glob lives in ../commands/testreport.ts, so this is fixture-testable.
11
+ * No XML dependency — well-formed JUnit escapes <>& in attribute values, so a
12
+ * focused tokenizer over <testcase>/<failure> is safe.
13
+ */
14
+ /** Decode the five predefined XML entities. Pure. */
15
+ function decodeXml(s) {
16
+ return s
17
+ .replace(/&lt;/g, '<')
18
+ .replace(/&gt;/g, '>')
19
+ .replace(/&quot;/g, '"')
20
+ .replace(/&apos;/g, "'")
21
+ .replace(/&#(\d+);/g, (_, d) => String.fromCharCode(parseInt(d, 10)))
22
+ .replace(/&amp;/g, '&'); // last, so &amp;lt; → &lt; not <
23
+ }
24
+ /**
25
+ * Decode an element's text content, honoring CDATA sections. Text OUTSIDE
26
+ * `<![CDATA[ … ]]>` is entity-decoded; text INSIDE is taken literally (per the
27
+ * XML spec, CDATA content is never entity-expanded). Maven Surefire/Failsafe
28
+ * wrap `<failure>`/`<error>` stack traces in CDATA, so without this the raw
29
+ * `<![CDATA[`/`]]>` markers leak into the failure message. Pure.
30
+ */
31
+ function decodeXmlContent(s) {
32
+ const OPEN = '<![CDATA[';
33
+ const CLOSE = ']]>';
34
+ if (!s.includes(OPEN))
35
+ return decodeXml(s);
36
+ let out = '';
37
+ let i = 0;
38
+ while (i < s.length) {
39
+ const start = s.indexOf(OPEN, i);
40
+ if (start < 0) {
41
+ out += decodeXml(s.slice(i));
42
+ break;
43
+ }
44
+ out += decodeXml(s.slice(i, start));
45
+ const end = s.indexOf(CLOSE, start + OPEN.length);
46
+ if (end < 0) {
47
+ out += s.slice(start + OPEN.length);
48
+ break;
49
+ } // unterminated → rest is literal
50
+ out += s.slice(start + OPEN.length, end);
51
+ i = end + CLOSE.length;
52
+ }
53
+ return out;
54
+ }
55
+ /** Extract key="value" / key='value' attributes from a tag's attribute text. Pure. */
56
+ function parseAttrs(attrText) {
57
+ const out = {};
58
+ const re = /([\w:.-]+)\s*=\s*("([^"]*)"|'([^']*)')/g;
59
+ let m;
60
+ while ((m = re.exec(attrText)) !== null) {
61
+ out[m[1]] = decodeXml(m[3] ?? m[4] ?? '');
62
+ }
63
+ return out;
64
+ }
65
+ /** Pull a `file:line` out of a stack-trace / assertion message. Pure. */
66
+ export function extractFileLine(text) {
67
+ if (!text)
68
+ return {};
69
+ // Prefer a parenthesised frame `(path:line:col)`, else a bare `path:line`.
70
+ const paren = text.match(/\(([^()\s]+?):(\d+):(?:\d+)\)/);
71
+ if (paren)
72
+ return { file: paren[1], line: parseInt(paren[2], 10) };
73
+ const bare = text.match(/([\w./\\-]+\.[a-zA-Z]{1,5}):(\d+)(?::\d+)?/);
74
+ if (bare)
75
+ return { file: bare[1], line: parseInt(bare[2], 10) };
76
+ return {};
77
+ }
78
+ /** Parse JUnit XML (testsuites/testsuite/testcase). Pure. */
79
+ export function parseJUnit(xml) {
80
+ const failures = [];
81
+ let passed = 0, failed = 0, skipped = 0, durationMs = 0;
82
+ const caseRe = /<testcase\b([^>]*?)(?:\/>|>([\s\S]*?)<\/testcase>)/g;
83
+ let c;
84
+ while ((c = caseRe.exec(xml)) !== null) {
85
+ const attrs = parseAttrs(c[1]);
86
+ const body = c[2] ?? '';
87
+ const name = attrs.name ?? '(unnamed)';
88
+ const suite = attrs.classname ?? attrs.suite ?? '';
89
+ if (attrs.time)
90
+ durationMs += Math.round(parseFloat(attrs.time) * 1000) || 0;
91
+ const fail = body.match(/<(failure|error)\b([^>]*?)(?:\/>|>([\s\S]*?)<\/\1>)/);
92
+ const isSkipped = /<skipped\b[^>]*\/?>/.test(body);
93
+ if (fail) {
94
+ failed++;
95
+ const fAttrs = parseAttrs(fail[2]);
96
+ const inner = decodeXmlContent(fail[3] ?? '').trim();
97
+ const message = fAttrs.message || inner.split('\n')[0] || undefined;
98
+ // Prefer explicit file/line attrs (pytest, some emitters), else sniff the trace.
99
+ const loc = attrs.file
100
+ ? { file: attrs.file, line: attrs.line ? parseInt(attrs.line, 10) : undefined }
101
+ : extractFileLine(inner || fAttrs.message || '');
102
+ failures.push({ suite, name, message, type: fAttrs.type, ...loc });
103
+ }
104
+ else if (isSkipped) {
105
+ skipped++;
106
+ }
107
+ else {
108
+ passed++;
109
+ }
110
+ }
111
+ return { passed, failed, skipped, total: passed + failed + skipped, durationMs, failures };
112
+ }
113
+ /** Parse TAP (Test Anything Protocol) output. Pure. */
114
+ export function parseTAP(text) {
115
+ const failures = [];
116
+ let passed = 0, failed = 0, skipped = 0, todo = 0;
117
+ let bailedOut = false;
118
+ let bailReason;
119
+ const lines = text.split('\n');
120
+ for (let i = 0; i < lines.length; i++) {
121
+ const line = lines[i];
122
+ // `Bail out!` (column 1, per the TAP spec) aborts the run — stop parsing;
123
+ // anything after it is not a valid result.
124
+ const bail = line.match(/^Bail out!(?:\s+(.*))?$/);
125
+ if (bail) {
126
+ bailedOut = true;
127
+ bailReason = bail[1]?.trim() || undefined;
128
+ break;
129
+ }
130
+ const m = line.match(/^(ok|not ok)\b\s*(\d+)?\s*-?\s*(.*)$/);
131
+ if (!m)
132
+ continue;
133
+ const ok = m[1] === 'ok';
134
+ let desc = m[3].trim();
135
+ const directive = desc.match(/#\s*(SKIP|TODO)\b(.*)$/i);
136
+ if (directive)
137
+ desc = desc.slice(0, directive.index).trim();
138
+ if (directive && /skip/i.test(directive[1])) {
139
+ skipped++;
140
+ continue;
141
+ }
142
+ // TODO tests are "not expected to succeed" — a `not ok … # TODO` is a known
143
+ // stub, not a real failure (TAP spec). Count it as todo, never a failure.
144
+ if (directive && /todo/i.test(directive[1])) {
145
+ todo++;
146
+ continue;
147
+ }
148
+ if (ok) {
149
+ passed++;
150
+ }
151
+ else {
152
+ failed++;
153
+ // Look ahead for an indented YAML diagnostic block for message/file/line.
154
+ let message;
155
+ let file;
156
+ let lineNo;
157
+ for (let j = i + 1; j < lines.length; j++) {
158
+ const d = lines[j];
159
+ if (!/^\s/.test(d) && d.trim() !== '')
160
+ break; // dedented → block ended
161
+ const mm = d.match(/^\s*message:\s*(.+)$/);
162
+ if (mm)
163
+ message = mm[1].replace(/^["']|["']$/g, '').trim();
164
+ const fm = d.match(/^\s*(?:file|at):\s*(.+)$/);
165
+ if (fm) {
166
+ const fl = extractFileLine(fm[1]);
167
+ if (fl.file) {
168
+ file = fl.file;
169
+ lineNo = fl.line;
170
+ }
171
+ }
172
+ const lm = d.match(/^\s*line:\s*(\d+)/);
173
+ if (lm)
174
+ lineNo = parseInt(lm[1], 10);
175
+ if (/^\s*\.\.\.\s*$/.test(d))
176
+ break; // end of YAML block
177
+ }
178
+ failures.push({ suite: '', name: desc || '(unnamed)', message, file, line: lineNo });
179
+ }
180
+ }
181
+ return { passed, failed, skipped, total: passed + failed + skipped + todo, durationMs: 0, failures, ...(todo && { todo }), ...(bailedOut && { bailedOut, bailReason }) };
182
+ }
183
+ /** Sniff the format from a path extension, then content. Pure. */
184
+ export function detectFormat(content, path) {
185
+ if (path) {
186
+ if (/\.tap$/i.test(path))
187
+ return 'tap';
188
+ if (/\.xml$/i.test(path))
189
+ return 'junit';
190
+ }
191
+ if (/<testsuite|<testcase/i.test(content))
192
+ return 'junit';
193
+ if (/^\s*(TAP version|1\.\.\d|ok\b|not ok\b)/m.test(content))
194
+ return 'tap';
195
+ return 'junit';
196
+ }
197
+ /** Parse by explicit or detected format. Pure. */
198
+ export function parseTestReport(content, format) {
199
+ return format === 'tap' ? parseTAP(content) : parseJUnit(content);
200
+ }
201
+ /** Merge several summaries (multi-file globs). Pure. */
202
+ export function mergeSummaries(list) {
203
+ const merged = list.reduce((acc, s) => ({
204
+ passed: acc.passed + s.passed,
205
+ failed: acc.failed + s.failed,
206
+ skipped: acc.skipped + s.skipped,
207
+ total: acc.total + s.total,
208
+ durationMs: acc.durationMs + s.durationMs,
209
+ failures: acc.failures.concat(s.failures),
210
+ }), { passed: 0, failed: 0, skipped: 0, total: 0, durationMs: 0, failures: [] });
211
+ const todoSum = list.reduce((n, s) => n + (s.todo ?? 0), 0);
212
+ if (todoSum > 0)
213
+ merged.todo = todoSum;
214
+ // Any bailed file taints the whole run; keep the first reason seen.
215
+ const bailed = list.find((s) => s.bailedOut);
216
+ if (bailed) {
217
+ merged.bailedOut = true;
218
+ merged.bailReason = bailed.bailReason;
219
+ }
220
+ return merged;
221
+ }
222
+ /** Human-readable digest. Pure. */
223
+ export function formatSummary(s, opts = {}) {
224
+ const todoSeg = s.todo ? ` · ${s.todo} todo` : '';
225
+ const head = `${s.passed} passed · ${s.failed} failed · ${s.skipped} skipped${todoSeg} (${s.total} total, ${s.durationMs}ms)`;
226
+ const bailLine = s.bailedOut
227
+ ? `⚠ suite ABORTED (Bail out!${s.bailReason ? `: ${s.bailReason}` : ''}) — results incomplete`
228
+ : '';
229
+ if (s.failures.length === 0) {
230
+ if (s.bailedOut)
231
+ return `${bailLine}\n${head}`;
232
+ return head + (s.failed === 0 ? ' ✓' : '');
233
+ }
234
+ const shown = opts.top && opts.top > 0 ? s.failures.slice(0, opts.top) : s.failures;
235
+ const lines = s.bailedOut ? [bailLine, head, ''] : [head, ''];
236
+ for (const f of shown) {
237
+ const where = f.file ? `${f.file}${f.line ? `:${f.line}` : ''}` : '';
238
+ lines.push(`✗ ${f.suite ? f.suite + ' › ' : ''}${f.name}${where ? ` (${where})` : ''}`);
239
+ if (f.message)
240
+ lines.push(` ${f.message.split('\n')[0]}`);
241
+ }
242
+ if (shown.length < s.failures.length)
243
+ lines.push(`… and ${s.failures.length - shown.length} more`);
244
+ return lines.join('\n');
245
+ }
246
+ //# sourceMappingURL=testreport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testreport.js","sourceRoot":"","sources":["../../../src/testreport/testreport.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,10 @@
16
16
  export interface TranscriptModelPrice {
17
17
  in: number;
18
18
  out: number;
19
+ /** 5-minute-TTL cache write (1.25× base input) */
19
20
  cacheWrite: number;
21
+ /** 1-hour-TTL cache write (2× base input) */
22
+ cacheWrite1h: number;
20
23
  cacheRead: number;
21
24
  }
22
25
  /**
@@ -32,7 +35,10 @@ export declare function resolveTranscriptPrice(rawModelId: string): TranscriptMo
32
35
  export interface TokenBundle {
33
36
  inputTokens: number;
34
37
  outputTokens: number;
38
+ /** TOTAL cache-write tokens (5-min + 1-hour). */
35
39
  cacheWriteTokens: number;
40
+ /** The 1-hour-TTL SUBSET of cacheWriteTokens (≤ cacheWriteTokens). Default 0 → all writes priced at the 5-min rate. */
41
+ cacheWrite1hTokens?: number;
36
42
  cacheReadTokens: number;
37
43
  }
38
44
  /** USD for one response at the given rates. */
@@ -1 +1 @@
1
- {"version":3,"file":"claude-pricing.d.ts","sourceRoot":"","sources":["../../../src/usage/claude-pricing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,iDAAiD;AACjD,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAoBD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAS9D;AAED,kFAAkF;AAClF,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAW3F;AAED,gDAAgD;AAChD,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,+CAA+C;AAC/C,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,EAAE,CAAC,EAAE,WAAW,GAAG,MAAM,CAOrF"}
1
+ {"version":3,"file":"claude-pricing.d.ts","sourceRoot":"","sources":["../../../src/usage/claude-pricing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,iDAAiD;AACjD,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAoBD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAS9D;AAED,kFAAkF;AAClF,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAW3F;AAED,gDAAgD;AAChD,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,iDAAiD;IACjD,gBAAgB,EAAE,MAAM,CAAC;IACzB,uHAAuH;IACvH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,+CAA+C;AAC/C,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,EAAE,CAAC,EAAE,WAAW,GAAG,MAAM,CAUrF"}
@@ -20,14 +20,14 @@
20
20
  * publishes rates — absent means "unpriced", never "guessed".
21
21
  */
22
22
  const PRICE_FAMILIES = {
23
- 'claude-opus-4': { in: 15, out: 75, cacheWrite: 18.75, cacheRead: 1.5 },
24
- 'claude-sonnet-4': { in: 3, out: 15, cacheWrite: 3.75, cacheRead: 0.3 },
25
- 'claude-haiku-4': { in: 1, out: 5, cacheWrite: 1.25, cacheRead: 0.1 },
26
- 'claude-3-7-sonnet': { in: 3, out: 15, cacheWrite: 3.75, cacheRead: 0.3 },
27
- 'claude-3-5-sonnet': { in: 3, out: 15, cacheWrite: 3.75, cacheRead: 0.3 },
28
- 'claude-3-5-haiku': { in: 0.8, out: 4, cacheWrite: 1, cacheRead: 0.08 },
29
- 'claude-3-opus': { in: 15, out: 75, cacheWrite: 18.75, cacheRead: 1.5 },
30
- 'claude-3-haiku': { in: 0.25, out: 1.25, cacheWrite: 0.3, cacheRead: 0.03 },
23
+ 'claude-opus-4': { in: 15, out: 75, cacheWrite: 18.75, cacheWrite1h: 30, cacheRead: 1.5 },
24
+ 'claude-sonnet-4': { in: 3, out: 15, cacheWrite: 3.75, cacheWrite1h: 6, cacheRead: 0.3 },
25
+ 'claude-haiku-4': { in: 1, out: 5, cacheWrite: 1.25, cacheWrite1h: 2, cacheRead: 0.1 },
26
+ 'claude-3-7-sonnet': { in: 3, out: 15, cacheWrite: 3.75, cacheWrite1h: 6, cacheRead: 0.3 },
27
+ 'claude-3-5-sonnet': { in: 3, out: 15, cacheWrite: 3.75, cacheWrite1h: 6, cacheRead: 0.3 },
28
+ 'claude-3-5-haiku': { in: 0.8, out: 4, cacheWrite: 1, cacheWrite1h: 1.6, cacheRead: 0.08 },
29
+ 'claude-3-opus': { in: 15, out: 75, cacheWrite: 18.75, cacheWrite1h: 30, cacheRead: 1.5 },
30
+ 'claude-3-haiku': { in: 0.25, out: 1.25, cacheWrite: 0.3, cacheWrite1h: 0.5, cacheRead: 0.03 },
31
31
  };
32
32
  /**
33
33
  * Reduce a transcript/gateway model id to the bare Anthropic id:
@@ -62,9 +62,12 @@ export function resolveTranscriptPrice(rawModelId) {
62
62
  }
63
63
  /** USD for one response at the given rates. */
64
64
  export function transcriptCostUsd(price, t) {
65
+ const cacheWrite1h = t.cacheWrite1hTokens ?? 0;
66
+ const cacheWrite5m = Math.max(0, t.cacheWriteTokens - cacheWrite1h);
65
67
  return ((t.inputTokens * price.in +
66
68
  t.outputTokens * price.out +
67
- t.cacheWriteTokens * price.cacheWrite +
69
+ cacheWrite5m * price.cacheWrite +
70
+ cacheWrite1h * price.cacheWrite1h +
68
71
  t.cacheReadTokens * price.cacheRead) / 1_000_000);
69
72
  }
70
73
  //# sourceMappingURL=claude-pricing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude-pricing.js","sourceRoot":"","sources":["../../../src/usage/claude-pricing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-pricing.js","sourceRoot":"","sources":["../../../src/usage/claude-pricing.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"transcript-usage.d.ts","sourceRoot":"","sources":["../../../src/usage/transcript-usage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transcript-usage.d.ts","sourceRoot":"","sources":["../../../src/usage/transcript-usage.ts"],"names":[],"mappings":"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"}
@@ -177,6 +177,9 @@ function toUsageEvent(line, project, seen, unpriced) {
177
177
  cacheWriteTokens: usage.cache_creation_input_tokens ?? 0,
178
178
  cacheReadTokens: usage.cache_read_input_tokens ?? 0,
179
179
  };
180
+ // 1-hour-TTL cache writes cost 2× base input, not the 1.25× 5-min rate. Recent
181
+ // transcripts split them in `cache_creation`; older ones don't (→ all 5-min).
182
+ const cacheWrite1hTokens = usage.cache_creation?.ephemeral_1h_input_tokens ?? 0;
180
183
  let costUsd;
181
184
  let costSource;
182
185
  const price = resolveTranscriptPrice(model);
@@ -185,7 +188,7 @@ function toUsageEvent(line, project, seen, unpriced) {
185
188
  costSource = 'transcript';
186
189
  }
187
190
  else if (price) {
188
- costUsd = transcriptCostUsd(price, tokens);
191
+ costUsd = transcriptCostUsd(price, { ...tokens, cacheWrite1hTokens });
189
192
  costSource = 'computed';
190
193
  }
191
194
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"transcript-usage.js","sourceRoot":"","sources":["../../../src/usage/transcript-usage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transcript-usage.js","sourceRoot":"","sources":["../../../src/usage/transcript-usage.ts"],"names":[],"mappings":"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"}