@ai-dossier/cli 0.10.0 → 0.12.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 (44) hide show
  1. package/README.md +113 -7
  2. package/dist/cache-resolver.d.ts.map +1 -1
  3. package/dist/cache-resolver.js +4 -16
  4. package/dist/cache-resolver.js.map +1 -1
  5. package/dist/commands/cache.d.ts.map +1 -1
  6. package/dist/commands/cache.js +2 -14
  7. package/dist/commands/cache.js.map +1 -1
  8. package/dist/commands/history.d.ts.map +1 -1
  9. package/dist/commands/history.js +42 -33
  10. package/dist/commands/history.js.map +1 -1
  11. package/dist/commands/run.d.ts.map +1 -1
  12. package/dist/commands/run.js +139 -71
  13. package/dist/commands/run.js.map +1 -1
  14. package/dist/commands/runstate.d.ts +1 -1
  15. package/dist/commands/runstate.d.ts.map +1 -1
  16. package/dist/commands/runstate.js +259 -12
  17. package/dist/commands/runstate.js.map +1 -1
  18. package/dist/commands/traces.d.ts.map +1 -1
  19. package/dist/commands/traces.js +6 -7
  20. package/dist/commands/traces.js.map +1 -1
  21. package/dist/duration.d.ts +35 -0
  22. package/dist/duration.d.ts.map +1 -0
  23. package/dist/duration.js +76 -0
  24. package/dist/duration.js.map +1 -0
  25. package/dist/helpers.d.ts +36 -0
  26. package/dist/helpers.d.ts.map +1 -1
  27. package/dist/helpers.js +59 -1
  28. package/dist/helpers.js.map +1 -1
  29. package/dist/issue-selection.d.ts +22 -0
  30. package/dist/issue-selection.d.ts.map +1 -0
  31. package/dist/issue-selection.js +88 -0
  32. package/dist/issue-selection.js.map +1 -0
  33. package/dist/run-log.d.ts +25 -0
  34. package/dist/run-log.d.ts.map +1 -1
  35. package/dist/run-log.js.map +1 -1
  36. package/dist/runstate-stats.d.ts +157 -0
  37. package/dist/runstate-stats.d.ts.map +1 -0
  38. package/dist/runstate-stats.js +359 -0
  39. package/dist/runstate-stats.js.map +1 -0
  40. package/dist/table.d.ts +26 -0
  41. package/dist/table.d.ts.map +1 -0
  42. package/dist/table.js +49 -0
  43. package/dist/table.js.map +1 -0
  44. package/package.json +1 -1
package/dist/helpers.d.ts CHANGED
@@ -130,6 +130,42 @@ export declare function downloadUrlToTempFile(url: string): string;
130
130
  * @returns The execution descriptor, or null for unknown LLM.
131
131
  */
132
132
  export declare function buildLlmCommand(llm: string, file: string, headless?: boolean, passthrough?: LlmPassthroughOptions): LlmExecDescriptor | null;
133
+ /**
134
+ * Usage data extracted from an agent CLI's JSON result output (#458).
135
+ * Every field is null when the CLI did not report it — values are never
136
+ * fabricated or estimated.
137
+ */
138
+ export interface AgentRunUsage {
139
+ /** Model id the agent reported; comma-joined when several models ran (token/cost fields are totals across all). */
140
+ model: string | null;
141
+ input_tokens: number | null;
142
+ output_tokens: number | null;
143
+ total_cost_usd: number | null;
144
+ /** The final result text (claude's `result` field), for re-emitting to stdout. */
145
+ result_text: string | null;
146
+ }
147
+ /**
148
+ * Sentinel thrown by the run command when the spawned agent exits non-zero
149
+ * (or fails to spawn) — carries everything the run log records about the exit.
150
+ */
151
+ export interface AgentExitError {
152
+ /** The child's exit status; null when it was killed by a signal or failed to spawn. */
153
+ status: number | null;
154
+ /** Signal that killed the child, when applicable. */
155
+ signal: string | null;
156
+ /** Spawn failure reason (e.g. ENOENT, ENOBUFS), when applicable. */
157
+ spawn_error: string | null;
158
+ usage: AgentRunUsage | null;
159
+ }
160
+ /**
161
+ * Parse a `claude -p --output-format json` result payload into usage data.
162
+ *
163
+ * Handles both reported shapes: the classic top-level `usage` /
164
+ * `total_cost_usd` (older: `cost_usd`) fields, and the newer per-model
165
+ * `modelUsage` map (camelCase or snake_case entry keys). Returns null when the
166
+ * output is not a JSON object; individual fields are null when absent.
167
+ */
168
+ export declare function parseAgentUsage(stdout: string | null | undefined): AgentRunUsage | null;
133
169
  /**
134
170
  * Multi-stage verification pipeline.
135
171
  */
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
package/dist/helpers.js CHANGED
@@ -17,6 +17,7 @@ exports.detectNestedHost = detectNestedHost;
17
17
  exports.detectLlm = detectLlm;
18
18
  exports.downloadUrlToTempFile = downloadUrlToTempFile;
19
19
  exports.buildLlmCommand = buildLlmCommand;
20
+ exports.parseAgentUsage = parseAgentUsage;
20
21
  exports.runVerification = runVerification;
21
22
  exports.findDossierFilesLocal = findDossierFilesLocal;
22
23
  exports.parseListSource = parseListSource;
@@ -254,7 +255,7 @@ function buildLlmCommand(llm, file, headless = false, passthrough) {
254
255
  }
255
256
  if (headless) {
256
257
  const content = node_fs_1.default.readFileSync(file, 'utf8');
257
- const args = ['-p'];
258
+ const args = ['-p', '--output-format', 'json'];
258
259
  if (passthrough?.model) {
259
260
  args.push('--model', passthrough.model);
260
261
  }
@@ -292,6 +293,63 @@ function buildLlmCommand(llm, file, headless = false, passthrough) {
292
293
  };
293
294
  }
294
295
  }
296
+ function toCount(value) {
297
+ return typeof value === 'number' && Number.isFinite(value) ? value : null;
298
+ }
299
+ /**
300
+ * Parse a `claude -p --output-format json` result payload into usage data.
301
+ *
302
+ * Handles both reported shapes: the classic top-level `usage` /
303
+ * `total_cost_usd` (older: `cost_usd`) fields, and the newer per-model
304
+ * `modelUsage` map (camelCase or snake_case entry keys). Returns null when the
305
+ * output is not a JSON object; individual fields are null when absent.
306
+ */
307
+ function parseAgentUsage(stdout) {
308
+ if (typeof stdout !== 'string' || stdout.trim() === '')
309
+ return null;
310
+ let parsed;
311
+ try {
312
+ const value = JSON.parse(stdout);
313
+ if (!value || typeof value !== 'object' || Array.isArray(value))
314
+ return null;
315
+ parsed = value;
316
+ }
317
+ catch {
318
+ return null;
319
+ }
320
+ const usage = parsed.usage && typeof parsed.usage === 'object' && !Array.isArray(parsed.usage)
321
+ ? parsed.usage
322
+ : {};
323
+ const modelUsage = parsed.modelUsage && typeof parsed.modelUsage === 'object' && !Array.isArray(parsed.modelUsage)
324
+ ? parsed.modelUsage
325
+ : null;
326
+ // Keep only object-shaped entries; a scalar entry is malformed, not a model.
327
+ const modelEntries = modelUsage
328
+ ? Object.entries(modelUsage).filter((entry) => !!entry[1] && typeof entry[1] === 'object' && !Array.isArray(entry[1]))
329
+ : [];
330
+ const sumFromModelUsage = (camel, snake) => {
331
+ let sum = 0;
332
+ let seen = false;
333
+ for (const [, entry] of modelEntries) {
334
+ const value = toCount(entry[camel]) ?? toCount(entry[snake]);
335
+ if (value !== null) {
336
+ sum += value;
337
+ seen = true;
338
+ }
339
+ }
340
+ return seen ? sum : null;
341
+ };
342
+ const input_tokens = toCount(usage.input_tokens) ?? sumFromModelUsage('inputTokens', 'input_tokens');
343
+ const output_tokens = toCount(usage.output_tokens) ?? sumFromModelUsage('outputTokens', 'output_tokens');
344
+ const total_cost_usd = toCount(parsed.total_cost_usd) ??
345
+ toCount(parsed.cost_usd) ??
346
+ sumFromModelUsage('totalCostUsd', 'total_cost_usd');
347
+ const modelKeys = modelEntries.map(([key]) => key);
348
+ const modelFromUsage = modelKeys.length > 1 ? modelKeys.join(',') : (modelKeys[0] ?? null);
349
+ const model = typeof parsed.model === 'string' && parsed.model ? parsed.model : modelFromUsage;
350
+ const result_text = typeof parsed.result === 'string' ? parsed.result : null;
351
+ return { model, input_tokens, output_tokens, total_cost_usd, result_text };
352
+ }
295
353
  /**
296
354
  * Multi-stage verification pipeline.
297
355
  */
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Fleet-style issue selections — `1,2,3`, `1..9`, or mixed `1,2,5..8`.
3
+ *
4
+ * The grammar is `imboard-ai/git/fleet-cycle`'s, so an operator can paste the selection
5
+ * they dispatched a fleet with straight into a command that measures it.
6
+ */
7
+ /**
8
+ * Most issues a single selection may expand to.
9
+ *
10
+ * Each issue costs a `gh` round trip, so a mistyped range (`1..10000`, or `1..99` written
11
+ * `1..999`) would sit there firing thousands of requests before anyone noticed. The cap
12
+ * turns that into an immediate, named error.
13
+ */
14
+ export declare const MAX_ISSUE_SELECTION = 200;
15
+ /**
16
+ * Expand an issue selection into a sorted, de-duplicated list.
17
+ *
18
+ * @throws Error naming the offending token, so a typo in one of nine terms is not reported
19
+ * as a failure of the whole selection. The message carries its own `Fix:` line.
20
+ */
21
+ export declare function parseIssueSelection(raw: string): number[];
22
+ //# sourceMappingURL=issue-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"issue-selection.d.ts","sourceRoot":"","sources":["../src/issue-selection.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAgBvC;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CA6BzD"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ /**
3
+ * Fleet-style issue selections — `1,2,3`, `1..9`, or mixed `1,2,5..8`.
4
+ *
5
+ * The grammar is `imboard-ai/git/fleet-cycle`'s, so an operator can paste the selection
6
+ * they dispatched a fleet with straight into a command that measures it.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.MAX_ISSUE_SELECTION = void 0;
10
+ exports.parseIssueSelection = parseIssueSelection;
11
+ const runstate_1 = require("./runstate");
12
+ /**
13
+ * Most issues a single selection may expand to.
14
+ *
15
+ * Each issue costs a `gh` round trip, so a mistyped range (`1..10000`, or `1..99` written
16
+ * `1..999`) would sit there firing thousands of requests before anyone noticed. The cap
17
+ * turns that into an immediate, named error.
18
+ */
19
+ exports.MAX_ISSUE_SELECTION = 200;
20
+ /**
21
+ * Digits an issue number may have before it stops surviving a `Number()` round trip.
22
+ *
23
+ * A caller that parses the selection and prints the numbers back gets `1e+23` from a
24
+ * 23-digit string, and `Infinity` from a long enough one — so an absurd number would reach
25
+ * the API as a value nobody typed. `Number.MAX_SAFE_INTEGER` is 16 digits.
26
+ */
27
+ const MAX_ISSUE_DIGITS = 15;
28
+ /** Every error here carries its own fix line, so a caller can print it unmodified. */
29
+ function selectionError(cause, fix) {
30
+ return new Error(`${cause}\nFix: ${fix}`);
31
+ }
32
+ /**
33
+ * Expand an issue selection into a sorted, de-duplicated list.
34
+ *
35
+ * @throws Error naming the offending token, so a typo in one of nine terms is not reported
36
+ * as a failure of the whole selection. The message carries its own `Fix:` line.
37
+ */
38
+ function parseIssueSelection(raw) {
39
+ const trimmed = raw.trim();
40
+ if (trimmed === '') {
41
+ throw selectionError(`Empty issue selection.`, `pass a list or range of issue numbers, e.g. --issues 1,2,5..8.`);
42
+ }
43
+ const issues = new Set();
44
+ for (const token of trimmed.split(',')) {
45
+ const term = token.trim();
46
+ if (term === '') {
47
+ throw selectionError(`Empty term in issue selection '${raw}'.`, `remove the stray comma — a selection looks like 1,2,5..8.`);
48
+ }
49
+ for (const issue of expandTerm(term, raw))
50
+ issues.add(issue);
51
+ // Checked inside the loop so an enormous FIRST range fails before the rest expands.
52
+ if (issues.size > exports.MAX_ISSUE_SELECTION) {
53
+ throw selectionError(`Issue selection '${raw}' expands past ${exports.MAX_ISSUE_SELECTION} issues, and each one costs a gh call.`, `narrow the selection to at most ${exports.MAX_ISSUE_SELECTION} issues, or run it in batches.`);
54
+ }
55
+ }
56
+ return [...issues].sort((a, b) => a - b);
57
+ }
58
+ /** One comma-separated term: a single issue, or an inclusive `a..b` range. */
59
+ function expandTerm(term, raw) {
60
+ const range = term.split('..');
61
+ if (range.length === 1)
62
+ return [requireIssue(term, raw)];
63
+ if (range.length !== 2) {
64
+ throw selectionError(`Malformed range '${term}' in '${raw}'.`, `write a range as <from>..<to>, e.g. 5..8.`);
65
+ }
66
+ const from = requireIssue(range[0], raw);
67
+ const to = requireIssue(range[1], raw);
68
+ if (to < from) {
69
+ throw selectionError(`Descending range '${term}' in '${raw}'.`, `write it as ${to}..${from}.`);
70
+ }
71
+ // Bounded before materialising: `1..1000000` must not allocate a million-entry array on
72
+ // its way to the selection cap.
73
+ if (to - from + 1 > exports.MAX_ISSUE_SELECTION) {
74
+ throw selectionError(`Range '${term}' covers ${to - from + 1} issues, past the ${exports.MAX_ISSUE_SELECTION} cap, and each one costs a gh call.`, `narrow the range to at most ${exports.MAX_ISSUE_SELECTION} issues, or run it in batches.`);
75
+ }
76
+ const out = [];
77
+ for (let n = from; n <= to; n += 1)
78
+ out.push(n);
79
+ return out;
80
+ }
81
+ function requireIssue(value, raw) {
82
+ const term = value.trim();
83
+ if (!(0, runstate_1.isIssueNumber)(term) || term.length > MAX_ISSUE_DIGITS) {
84
+ throw selectionError(`Invalid issue '${term}' in '${raw}'.`, `expected a positive issue number of at most ${MAX_ISSUE_DIGITS} digits, e.g. --issues 1,2,5..8.`);
85
+ }
86
+ return Number(term);
87
+ }
88
+ //# sourceMappingURL=issue-selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"issue-selection.js","sourceRoot":"","sources":["../src/issue-selection.ts"],"names":[],"mappings":"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"}
package/dist/run-log.d.ts CHANGED
@@ -29,6 +29,31 @@ export interface RunLogEntry {
29
29
  * older runs.jsonl entries. Not written by new runs.
30
30
  */
31
31
  update_available?: string;
32
+ /**
33
+ * Cost/observability fields (#458). All optional and nullable so old-schema
34
+ * entries still parse; written by new runs with explicit nulls when a value
35
+ * is unavailable — never fabricated.
36
+ */
37
+ /** Wall-clock duration of the run in milliseconds (action start → entry write). */
38
+ duration_ms?: number | null;
39
+ /**
40
+ * The exact agent command spawned (binary + args). Prompt content is excluded
41
+ * (headless prompts travel over stdin). Null when nothing was spawned
42
+ * (nested-skip, failed verification, dry-run, no LLM detected, unknown LLM).
43
+ */
44
+ spawned_command?: string | null;
45
+ /** Model id as reported by the agent CLI, else the requested --model alias. Null when unknown. */
46
+ model?: string | null;
47
+ /** Exit code of the spawned agent process, or of the CLI action for early exits. Null when killed by a signal or failed to spawn. */
48
+ exit_code?: number | null;
49
+ /** Why the spawned process produced no exit code: spawn error (e.g. ENOENT) or signal. Null when the process exited normally. */
50
+ spawn_error?: string | null;
51
+ /** Input tokens reported by the agent CLI. Null when unavailable. */
52
+ input_tokens?: number | null;
53
+ /** Output tokens reported by the agent CLI. Null when unavailable. */
54
+ output_tokens?: number | null;
55
+ /** Total cost in USD reported by the agent CLI. Null when unavailable. */
56
+ total_cost_usd?: number | null;
32
57
  }
33
58
  declare const LOG_FILE: string;
34
59
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"run-log.d.ts","sourceRoot":"","sources":["../src/run-log.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,KAAK,CAAC;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,aAAa,CAAC;IACpE,YAAY,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,aAAa,CAAC;IAC9D,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,QAAA,MAAM,QAAQ,QAAsC,CAAC;AAErD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAQrD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,EAAE,CAuBrF;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAQlC;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"run-log.d.ts","sourceRoot":"","sources":["../src/run-log.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,KAAK,CAAC;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,aAAa,CAAC;IACpE,YAAY,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,aAAa,CAAC;IAC9D,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,mFAAmF;IACnF,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kGAAkG;IAClG,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,qIAAqI;IACrI,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,iIAAiI;IACjI,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,qEAAqE;IACrE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,sEAAsE;IACtE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,0EAA0E;IAC1E,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,QAAA,MAAM,QAAQ,QAAsC,CAAC;AAErD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAQrD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,EAAE,CAuBrF;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAQlC;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"run-log.js","sourceRoot":"","sources":["../src/run-log.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAyCH,oCAQC;AAMD,gCAuBC;AAKD,kCAQC;AAzFD,sDAAyB;AACzB,0DAA6B;AAC7B,qCAAkE;AA+BlE,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,mBAAU,EAAE,YAAY,CAAC,CAAC;AA0D5C,4BAAQ;AAxDjB;;;GAGG;AACH,SAAgB,YAAY,CAAC,KAAkB;IAC7C,IAAI,CAAC;QACH,IAAI,IAAA,kBAAS,EAAC,UAAU,CAAC,KAAK,KAAK;YAAE,OAAO;QAC5C,IAAA,wBAAe,GAAE,CAAC;QAClB,iBAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC;IAAC,MAAM,CAAC;QACP,sBAAsB;IACxB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,UAAU,CAAC,IAA2C;IACpE,IAAI,CAAC;QACH,IAAI,CAAC,iBAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,iBAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5E,IAAI,OAAO,GAAkB,EAAE,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACjC,CAAC;YAAC,MAAM,CAAC;gBACP,uBAAuB;YACzB,CAAC;QACH,CAAC;QACD,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;YAClB,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;YAChB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW;IACzB,IAAI,CAAC;QACH,IAAI,iBAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,iBAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,gBAAgB;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"run-log.js","sourceRoot":"","sources":["../src/run-log.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAkEH,oCAQC;AAMD,gCAuBC;AAKD,kCAQC;AAlHD,sDAAyB;AACzB,0DAA6B;AAC7B,qCAAkE;AAwDlE,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,mBAAU,EAAE,YAAY,CAAC,CAAC;AA0D5C,4BAAQ;AAxDjB;;;GAGG;AACH,SAAgB,YAAY,CAAC,KAAkB;IAC7C,IAAI,CAAC;QACH,IAAI,IAAA,kBAAS,EAAC,UAAU,CAAC,KAAK,KAAK;YAAE,OAAO;QAC5C,IAAA,wBAAe,GAAE,CAAC;QAClB,iBAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC;IAAC,MAAM,CAAC;QACP,sBAAsB;IACxB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,UAAU,CAAC,IAA2C;IACpE,IAAI,CAAC;QACH,IAAI,CAAC,iBAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,iBAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5E,IAAI,OAAO,GAAkB,EAAE,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACjC,CAAC;YAAC,MAAM,CAAC;gBACP,uBAAuB;YACzB,CAAC;QACH,CAAC;QACD,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;YAClB,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;YAChB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW;IACzB,IAAI,CAAC;QACH,IAAI,iBAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,iBAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,gBAAgB;IAClB,CAAC;AACH,CAAC"}
@@ -0,0 +1,157 @@
1
+ /**
2
+ * Timing analysis over `runstate:v1` milestone trails.
3
+ *
4
+ * Every milestone already stamps `at=`, so a run's per-phase durations are latent in the
5
+ * trail the moment it is written — nothing needs to be measured, stored, or timed at run
6
+ * time. This module is the read side of that decision: it turns the milestones
7
+ * {@link ./runstate!parseMilestones} produces into per-phase spans and aggregates.
8
+ *
9
+ * Pure and dependency-free — no `gh`, no network, no clock, no filesystem — so the
10
+ * arithmetic is unit-testable against fixture trails and the command layer only has to
11
+ * render what it returns.
12
+ */
13
+ import { type ParsedMilestone } from './runstate';
14
+ /**
15
+ * The synthetic phase covering the gap between ship's two milestones — the PR is open and
16
+ * green-pending, and nothing is being worked on. It is reported separately because it is
17
+ * the one span in a run that measures waiting rather than working: folding it into `ship`
18
+ * would make ship's median a function of CI queue depth rather than of the work.
19
+ */
20
+ export declare const MERGE_WAIT_PHASE = "merge-wait";
21
+ /**
22
+ * Row order for aggregate tables: the protocol's phase order, with `merge-wait` sitting
23
+ * where it happens (between ship and report). Alphabetical order would read
24
+ * `gate, implement, merge-wait, plan, …`, which tells a reader nothing about a pipeline.
25
+ */
26
+ export declare const STATS_PHASE_ORDER: readonly string[];
27
+ /** The bucket a run lands in when no milestone in the run carries a `model=` key. */
28
+ export declare const UNKNOWN_MODEL = "unknown";
29
+ /** The group a milestone lands in when it carries no `run=` id. */
30
+ export declare const UNKNOWN_RUN = "unknown-run";
31
+ /**
32
+ * Make a milestone-derived value safe to print.
33
+ *
34
+ * Control characters are the real hazard, not merely a cosmetic one: `parseMilestone` is
35
+ * deliberately tolerant and validates nothing but the marker, so `status=` or `model=` can
36
+ * carry ANSI escapes or a carriage return. Printed raw, those repaint or erase rows of the
37
+ * table an operator reads to decide whether a run succeeded. They also make `.length`
38
+ * disagree with the drawn width, which silently destroys column alignment.
39
+ */
40
+ export declare function renderValue(value: string): string;
41
+ /** One phase span within a run: what ran, when it ended, and how long it took. */
42
+ export interface PhaseTiming {
43
+ /** Phase name, or {@link MERGE_WAIT_PHASE} for the gap between ship's two milestones. */
44
+ phase: string;
45
+ status: string;
46
+ /** The previous usable milestone's `at=`, or null when there is no measurable start. */
47
+ started_at: string | null;
48
+ /** This milestone's `at=`. */
49
+ ended_at: string;
50
+ /** Elapsed seconds, or null when `started_at` is null. May be negative under clock skew. */
51
+ seconds: number | null;
52
+ }
53
+ /** Every phase span of one run, plus what the whole run cost. */
54
+ export interface RunStats {
55
+ issue: number;
56
+ run: string;
57
+ /** The `model=` recorded by the run (see {@link modelOf}), or null. */
58
+ model: string | null;
59
+ phases: PhaseTiming[];
60
+ /** The last milestone's phase — how far the run actually got. */
61
+ last_phase: string;
62
+ /** The last milestone's status, so an in-flight or blocked run is recognisable. */
63
+ last_status: string;
64
+ /** First usable milestone's `at=`. */
65
+ started_at: string | null;
66
+ /** Last usable milestone's `at=`. */
67
+ ended_at: string | null;
68
+ /**
69
+ * `started_at` → `ended_at`, or null when the run has fewer than TWO usable milestones.
70
+ *
71
+ * One usable milestone is not a zero-length run — it is a run whose length is unknown,
72
+ * which is the normal state of anything still in flight. Reporting it as `0` would drag
73
+ * every median it feeds toward zero with a duration nobody measured.
74
+ */
75
+ total_seconds: number | null;
76
+ }
77
+ /** Median/min/max over every sample of one phase across the selected runs. */
78
+ export interface PhaseAggregate {
79
+ phase: string;
80
+ /** Spans of this phase that had a measurable duration; unmeasurable ones are excluded. */
81
+ samples: number;
82
+ median_seconds: number;
83
+ min_seconds: number;
84
+ max_seconds: number;
85
+ /** Samples below zero, i.e. from clock skew — a median over these is not meaningful. */
86
+ negative_samples: number;
87
+ }
88
+ /** Per-`model=` view of whole-run totals — the point of recording `model=` at the gate. */
89
+ export interface ModelAggregate {
90
+ model: string;
91
+ runs: number;
92
+ /** Runs of this model whose total was measurable; the rest are excluded below. */
93
+ samples: number;
94
+ median_total_seconds: number | null;
95
+ min_total_seconds: number | null;
96
+ max_total_seconds: number | null;
97
+ negative_samples: number;
98
+ }
99
+ /** The two cross-run rollups: per-phase spread, and whole-run totals bucketed by model. */
100
+ export interface StatsAggregates {
101
+ phases: PhaseAggregate[];
102
+ models: ModelAggregate[];
103
+ }
104
+ /** An issue in the selection that could not be read at all, and why. */
105
+ export interface FailedIssue {
106
+ issue: number;
107
+ error: string;
108
+ }
109
+ /** Everything `runstate stats` needs to render, for one issue or many. */
110
+ export interface StatsReport {
111
+ /** The repository the trails were read from, when the caller named one. */
112
+ repo: string | null;
113
+ issues: number[];
114
+ runs: RunStats[];
115
+ aggregates: StatsAggregates;
116
+ /** Issues in the selection whose trail had no runstate milestones at all. */
117
+ issues_without_trail: number[];
118
+ /** Issues that could not be read — distinct from an issue that simply has no trail. */
119
+ issues_failed: FailedIssue[];
120
+ /** Degraded reads: skipped milestones, clock skew, missing run ids. */
121
+ warnings: string[];
122
+ }
123
+ /** True when `value` is a timestamp this module will measure against. */
124
+ export declare function isUsableTimestamp(value: string): boolean;
125
+ /**
126
+ * Median of a non-empty numeric list, rounded to whole seconds.
127
+ *
128
+ * Even counts average the two middle values — stated because the other convention (lower
129
+ * middle) is equally common and the difference shows up in exactly the small sample sizes
130
+ * these trails produce.
131
+ *
132
+ * @throws when `values` is empty — an empty median is `NaN`, which renders as a
133
+ * plausible-looking `NaN (NaNs)` cell rather than announcing itself.
134
+ */
135
+ export declare function median(values: number[]): number;
136
+ /** One issue's trail, as the command layer hands it to {@link buildStatsReport}. */
137
+ export interface IssueTrail {
138
+ issue: number;
139
+ milestones: ParsedMilestone[];
140
+ }
141
+ /** One aggregate row's skew note, or null when every sample was forwards. */
142
+ export declare function skewNote(negativeSamples: number): string | null;
143
+ export interface StatsInput {
144
+ trails: IssueTrail[];
145
+ /** Issues that could not be read at all. */
146
+ failed?: FailedIssue[];
147
+ /** The repository the trails came from, for unambiguous issue references. */
148
+ repo?: string;
149
+ }
150
+ /**
151
+ * Build the whole report from already-fetched trails.
152
+ *
153
+ * Takes trails rather than issue numbers so every rule here — grouping, pairing, skipping,
154
+ * aggregating — is testable against fixture milestones without a `gh` in sight.
155
+ */
156
+ export declare function buildStatsReport(input: StatsInput): StatsReport;
157
+ //# sourceMappingURL=runstate-stats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runstate-stats.d.ts","sourceRoot":"","sources":["../src/runstate-stats.ts"],"names":[],"mappings":"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"}