triage-ai 1.4.0 → 1.5.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.
@@ -2,14 +2,22 @@
2
2
  * Triage progress display — rich (TTY) and plain (CI/piped) modes.
3
3
  *
4
4
  * Rich TTY mode uses chalk colours and ora spinners, rendered with
5
- * box-drawing characters. Plain mode emits simple bracketed lines
6
- * so CI logs stay readable.
5
+ * box-drawing characters. During the assessment phase, a bordered
6
+ * panel shows all models at once with in-place updates.
7
+ *
8
+ * Plain mode emits simple bracketed lines so CI logs stay readable.
7
9
  */
8
10
  import type { ProgressPhase } from './types.js';
9
11
  export declare class TriageProgress {
10
12
  private readonly isTTY;
11
13
  private currentPhase;
12
14
  private items;
15
+ private _panelActive;
16
+ private _panelRendered;
17
+ private _panelLineCount;
18
+ private _panelTimer?;
19
+ private _spinnerFrame;
20
+ private _panelTimeoutSec;
13
21
  constructor();
14
22
  /**
15
23
  * Begin a new phase. Finishes any active spinner from the previous phase
@@ -30,6 +38,9 @@ export declare class TriageProgress {
30
38
  /**
31
39
  * Start an ora spinner for the given item. The spinner persists until
32
40
  * `stopSpinner` is called.
41
+ *
42
+ * During assessment phase in TTY mode, items are rendered in a bordered
43
+ * panel instead of individual ora spinners.
33
44
  */
34
45
  startSpinner(label: string, detail?: string, timeoutSec?: number): void;
35
46
  /**
@@ -59,6 +70,21 @@ export declare class TriageProgress {
59
70
  * Print the very first header line. Call once at startup.
60
71
  */
61
72
  printHeader(): void;
73
+ /**
74
+ * Render the assessment panel — a bordered box showing all model statuses.
75
+ * Uses ANSI cursor movement to redraw in-place.
76
+ *
77
+ * ╭──────────────────────────────────────────────────╮
78
+ * │ ⠋ Claude examining codebase… 32s │
79
+ * │ ✓ Gemini 14 findings 38.2s │
80
+ * │ ⠋ Codex examining codebase… 35s │
81
+ * ╰──────────────────────────────────────────────────╯
82
+ */
83
+ private _renderPanel;
84
+ /**
85
+ * Stop the panel animation and show cursor.
86
+ */
87
+ private _stopPanel;
62
88
  private _itemText;
63
89
  private _printItem;
64
90
  private _plainItem;
@@ -1 +1 @@
1
- {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAa,MAAM,YAAY,CAAC;AAuD3D,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,KAAK,CAAuC;;IAUpD;;;OAGG;IACH,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAkBrD;;;OAGG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAiB7C;;;;OAIG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAuBvF;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IA6CvE;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IA0B5E;;;;;;OAMG;IACH,MAAM,CACJ,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,EACtB,aAAa,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,EAC3G,UAAU,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EAC/D,gBAAgB,CAAC,EAAE,OAAO,GACzB,IAAI;IAmCP;;OAEG;IACH,WAAW,IAAI,IAAI;IAenB,OAAO,CAAC,SAAS;IAsBjB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,IAAI;IASZ,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,gBAAgB;CAYzB;AAMD;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAAC,GACnD,MAAM,CAGR;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,GACT,MAAM,CAER"}
1
+ {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAa,MAAM,YAAY,CAAC;AAyE3D,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,KAAK,CAAuC;IAGpD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,WAAW,CAAC,CAAiC;IACrD,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,gBAAgB,CAAO;;IAU/B;;;OAGG;IACH,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAmBrD;;;OAGG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAiB7C;;;;OAIG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAuBvF;;;;;;OAMG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IAkEvE;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAwC5E;;;;;;OAMG;IACH,MAAM,CACJ,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,EACtB,aAAa,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,EAC3G,UAAU,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EAC/D,gBAAgB,CAAC,EAAE,OAAO,GACzB,IAAI;IAoCP;;OAEG;IACH,WAAW,IAAI,IAAI;IAenB;;;;;;;;;OASG;IACH,OAAO,CAAC,YAAY;IAgFpB;;OAEG;IACH,OAAO,CAAC,UAAU;IAkBlB,OAAO,CAAC,SAAS;IAsBjB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,IAAI;IASZ,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,gBAAgB;CAYzB;AAMD;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAAC,GACnD,MAAM,CAGR;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,GACT,MAAM,CAER"}
package/dist/progress.js CHANGED
@@ -2,8 +2,10 @@
2
2
  * Triage progress display — rich (TTY) and plain (CI/piped) modes.
3
3
  *
4
4
  * Rich TTY mode uses chalk colours and ora spinners, rendered with
5
- * box-drawing characters. Plain mode emits simple bracketed lines
6
- * so CI logs stay readable.
5
+ * box-drawing characters. During the assessment phase, a bordered
6
+ * panel shows all models at once with in-place updates.
7
+ *
8
+ * Plain mode emits simple bracketed lines so CI logs stay readable.
7
9
  */
8
10
  import chalk from 'chalk';
9
11
  import ora from 'ora';
@@ -17,8 +19,17 @@ const BOX = {
17
19
  pipe: '│',
18
20
  bottom: '└',
19
21
  dot: '·',
22
+ hLine: '─',
23
+ tl: '╭',
24
+ tr: '╮',
25
+ bl: '╰',
26
+ br: '╯',
20
27
  };
21
28
  // ---------------------------------------------------------------------------
29
+ // Spinner frames (braille dots)
30
+ // ---------------------------------------------------------------------------
31
+ const SPINNER_FRAMES = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
32
+ // ---------------------------------------------------------------------------
22
33
  // Status symbols and colours
23
34
  // ---------------------------------------------------------------------------
24
35
  const SYM_DONE = chalk.green('✓');
@@ -40,12 +51,24 @@ function phaseColour(phase) {
40
51
  // ---------------------------------------------------------------------------
41
52
  const HEARTBEAT_MS = parseInt(process.env.TRIAGE_HEARTBEAT_MS ?? '', 10) || 15_000;
42
53
  // ---------------------------------------------------------------------------
54
+ // Assessment panel constants
55
+ // ---------------------------------------------------------------------------
56
+ const PANEL_WIDTH = 48; // Inner content width (between border chars)
57
+ const PANEL_UPDATE_MS = 80; // Spinner animation speed
58
+ // ---------------------------------------------------------------------------
43
59
  // TriageProgress
44
60
  // ---------------------------------------------------------------------------
45
61
  export class TriageProgress {
46
62
  isTTY;
47
63
  currentPhase = null;
48
64
  items = new Map();
65
+ // Assessment panel state (TTY only)
66
+ _panelActive = false;
67
+ _panelRendered = false;
68
+ _panelLineCount = 0;
69
+ _panelTimer;
70
+ _spinnerFrame = 0;
71
+ _panelTimeoutSec = 300;
49
72
  constructor() {
50
73
  this.isTTY = Boolean(process.stdout.isTTY);
51
74
  }
@@ -57,6 +80,7 @@ export class TriageProgress {
57
80
  * and prints the phase header.
58
81
  */
59
82
  startPhase(phase, title) {
83
+ this._stopPanel();
60
84
  this._stopAllSpinners();
61
85
  this.items.clear();
62
86
  this.currentPhase = phase;
@@ -84,7 +108,7 @@ export class TriageProgress {
84
108
  spinner: null,
85
109
  };
86
110
  this.items.set(label, item);
87
- if (this.isTTY) {
111
+ if (this.isTTY && !this._panelActive) {
88
112
  const detailStr = detail ? chalk.dim(' ' + detail) : '';
89
113
  process.stdout.write(chalk.dim(BOX.pipe) + ' ' + SYM_PENDING + ' ' + chalk.dim(label) + detailStr + '\n');
90
114
  }
@@ -101,7 +125,7 @@ export class TriageProgress {
101
125
  this.addItem(label, detail);
102
126
  return this.updateItem(label, status, detail);
103
127
  }
104
- if (item.spinner) {
128
+ if (item.spinner || this._panelActive) {
105
129
  this.stopSpinner(label, status === 'failed' ? 'failed' : 'done', detail);
106
130
  return;
107
131
  }
@@ -118,6 +142,9 @@ export class TriageProgress {
118
142
  /**
119
143
  * Start an ora spinner for the given item. The spinner persists until
120
144
  * `stopSpinner` is called.
145
+ *
146
+ * During assessment phase in TTY mode, items are rendered in a bordered
147
+ * panel instead of individual ora spinners.
121
148
  */
122
149
  startSpinner(label, detail, timeoutSec) {
123
150
  if (!this.items.has(label)) {
@@ -129,6 +156,27 @@ export class TriageProgress {
129
156
  item._startTime = Date.now();
130
157
  if (detail !== undefined)
131
158
  item.detail = detail;
159
+ if (timeoutSec)
160
+ this._panelTimeoutSec = timeoutSec;
161
+ // ---- Assessment panel mode (TTY only) ----
162
+ if (this.isTTY && this.currentPhase === 'assessment') {
163
+ if (!this._panelActive) {
164
+ this._panelActive = true;
165
+ this._panelRendered = false;
166
+ // Hide cursor for clean panel rendering
167
+ process.stdout.write('\x1b[?25l');
168
+ }
169
+ // Start the panel animation timer (once)
170
+ if (!this._panelTimer) {
171
+ this._panelTimer = setInterval(() => {
172
+ this._spinnerFrame = (this._spinnerFrame + 1) % SPINNER_FRAMES.length;
173
+ this._renderPanel();
174
+ }, PANEL_UPDATE_MS);
175
+ }
176
+ this._renderPanel();
177
+ return;
178
+ }
179
+ // ---- Standard ora spinner mode (TTY, non-assessment) ----
132
180
  if (this.isTTY) {
133
181
  const spinner = ora({
134
182
  text: this._itemText(item),
@@ -150,9 +198,9 @@ export class TriageProgress {
150
198
  }, 15_000);
151
199
  }
152
200
  else {
201
+ // ---- Plain mode (non-TTY) ----
153
202
  process.stdout.write(`[${this._phaseName()}] ${label}…\n`);
154
203
  // Periodic heartbeat for non-TTY (CI / AI orchestrators)
155
- // Default 15s, configurable via TRIAGE_HEARTBEAT_MS env var
156
204
  item._timer = setInterval(() => {
157
205
  const elapsed = Math.round((Date.now() - item._startTime) / 1000);
158
206
  const warnStr = timeoutSec && elapsed > timeoutSec * 0.8
@@ -176,6 +224,17 @@ export class TriageProgress {
176
224
  item.status = status;
177
225
  if (detail !== undefined)
178
226
  item.detail = detail;
227
+ // ---- Panel mode ----
228
+ if (this._panelActive) {
229
+ this._renderPanel();
230
+ // If all items are done/failed, finalize the panel
231
+ const allDone = [...this.items.values()].every((i) => i.status === 'done' || i.status === 'failed' || i.status === 'skipped');
232
+ if (allDone) {
233
+ this._stopPanel();
234
+ }
235
+ return;
236
+ }
237
+ // ---- Standard ora spinner ----
179
238
  if (this.isTTY && item.spinner) {
180
239
  const text = this._itemText(item);
181
240
  if (status === 'done') {
@@ -198,6 +257,7 @@ export class TriageProgress {
198
257
  * @param consensusCount Number confirmed by 2+ models
199
258
  */
200
259
  finish(totalTime, totalFindings, consensusCount, modelStatuses, severities, contextTruncated) {
260
+ this._stopPanel();
201
261
  this._stopAllSpinners();
202
262
  const timeStr = totalTime.toFixed(1) + 's';
203
263
  const summary = `${totalFindings} findings, ${consensusCount} consensus`;
@@ -241,6 +301,103 @@ export class TriageProgress {
241
301
  }
242
302
  }
243
303
  // -------------------------------------------------------------------------
304
+ // Assessment panel rendering (TTY only)
305
+ // -------------------------------------------------------------------------
306
+ /**
307
+ * Render the assessment panel — a bordered box showing all model statuses.
308
+ * Uses ANSI cursor movement to redraw in-place.
309
+ *
310
+ * ╭──────────────────────────────────────────────────╮
311
+ * │ ⠋ Claude examining codebase… 32s │
312
+ * │ ✓ Gemini 14 findings 38.2s │
313
+ * │ ⠋ Codex examining codebase… 35s │
314
+ * ╰──────────────────────────────────────────────────╯
315
+ */
316
+ _renderPanel() {
317
+ const items = [...this.items.values()];
318
+ if (items.length === 0)
319
+ return;
320
+ // Lines: top border + one per model + bottom border
321
+ const lineCount = items.length + 2;
322
+ // If already rendered, move cursor up to overwrite
323
+ if (this._panelRendered) {
324
+ process.stdout.write(`\x1b[${this._panelLineCount}A`);
325
+ }
326
+ const frame = SPINNER_FRAMES[this._spinnerFrame];
327
+ const topBorder = chalk.dim(BOX.pipe) + ' ' + chalk.dim(BOX.tl + BOX.hLine.repeat(PANEL_WIDTH) + BOX.tr);
328
+ const botBorder = chalk.dim(BOX.pipe) + ' ' + chalk.dim(BOX.bl + BOX.hLine.repeat(PANEL_WIDTH) + BOX.br);
329
+ // Clear line and write top border
330
+ process.stdout.write('\x1b[2K' + topBorder + '\n');
331
+ for (const item of items) {
332
+ let sym;
333
+ let nameStr;
334
+ let detailStr;
335
+ let timeStr;
336
+ const elapsed = item._startTime
337
+ ? ((Date.now() - item._startTime) / 1000).toFixed(1) + 's'
338
+ : '';
339
+ switch (item.status) {
340
+ case 'running': {
341
+ sym = chalk.yellow(frame);
342
+ nameStr = chalk.white(item.label);
343
+ detailStr = chalk.dim(item.detail ?? 'running');
344
+ const warn = this._panelTimeoutSec && item._startTime &&
345
+ (Date.now() - item._startTime) / 1000 > this._panelTimeoutSec * 0.8
346
+ ? chalk.red(' ⚠') : '';
347
+ timeStr = chalk.dim(elapsed) + warn;
348
+ break;
349
+ }
350
+ case 'done':
351
+ sym = chalk.green('✓');
352
+ nameStr = chalk.green(item.label);
353
+ detailStr = chalk.white(item.detail ?? 'done');
354
+ timeStr = ''; // elapsed is in the detail
355
+ break;
356
+ case 'failed':
357
+ sym = chalk.red('✗');
358
+ nameStr = chalk.red(item.label);
359
+ detailStr = chalk.red(item.detail ?? 'failed');
360
+ timeStr = '';
361
+ break;
362
+ default:
363
+ sym = chalk.dim('·');
364
+ nameStr = chalk.dim(item.label);
365
+ detailStr = chalk.dim('waiting');
366
+ timeStr = '';
367
+ }
368
+ // Build the line content (plain, no ANSI) for padding calculation
369
+ const namePad = item.label.padEnd(12);
370
+ const plainDetail = item.detail ?? (item.status === 'running' ? 'running' : item.status);
371
+ const plainTime = item.status === 'running' ? elapsed : '';
372
+ const plainContent = ` ${' '} ${namePad}${plainDetail}`;
373
+ // Available space for time = PANEL_WIDTH - plainContent.length - 2 (right padding)
374
+ const timeSpace = Math.max(0, PANEL_WIDTH - plainContent.length - plainTime.length - 2);
375
+ const content = ` ${sym} ${item.status === 'done' ? chalk.green(namePad) : item.status === 'failed' ? chalk.red(namePad) : chalk.white(namePad)}${detailStr}${' '.repeat(timeSpace)}${timeStr} `;
376
+ // Pad to exact PANEL_WIDTH + trim for consistent border alignment
377
+ const line = chalk.dim(BOX.pipe) + ' ' + chalk.dim('│') + content + chalk.dim('│');
378
+ process.stdout.write('\x1b[2K' + line + '\n');
379
+ }
380
+ process.stdout.write('\x1b[2K' + botBorder + '\n');
381
+ this._panelLineCount = lineCount;
382
+ this._panelRendered = true;
383
+ }
384
+ /**
385
+ * Stop the panel animation and show cursor.
386
+ */
387
+ _stopPanel() {
388
+ if (this._panelTimer) {
389
+ clearInterval(this._panelTimer);
390
+ this._panelTimer = undefined;
391
+ }
392
+ if (this._panelActive) {
393
+ // Final render to show completed state
394
+ this._renderPanel();
395
+ this._panelActive = false;
396
+ // Show cursor again
397
+ process.stdout.write('\x1b[?25h');
398
+ }
399
+ }
400
+ // -------------------------------------------------------------------------
244
401
  // Private helpers
245
402
  // -------------------------------------------------------------------------
246
403
  _itemText(item) {
@@ -1 +1 @@
1
- {"version":3,"file":"progress.js","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"progress.js","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "triage-ai",
3
- "version": "1.4.0",
3
+ "version": "1.5.0",
4
4
  "description": "Multi-model code triage — run Claude, Gemini and Codex in parallel to analyze your codebase and merge their findings",
5
5
  "type": "module",
6
6
  "main": "dist/cli.js",