@rajat-rastogi/maestro 0.1.5 → 0.1.7

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.
@@ -442,6 +442,8 @@ body {
442
442
  let sessionStart = 0;
443
443
  let elapsedInterval = null;
444
444
  const sectionTimers = new Map(); // section-content element → { start, frozen, elEl }
445
+ let replayTimings = null; // null = live mode; array in replay mode
446
+ let replaySectionIdx = 0;
445
447
 
446
448
  // ── DOM refs ──
447
449
  const logEl = document.getElementById('log');
@@ -459,6 +461,58 @@ body {
459
461
  const logWrap = document.getElementById('log-wrap');
460
462
 
461
463
  // ── Helpers ──
464
+ function parseTs(ts) {
465
+ if (!ts) return null;
466
+ const m = ts.match(/\[(\d{2})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})\]/);
467
+ if (!m) return null;
468
+ return new Date(2000 + +m[1], +m[2] - 1, +m[3], +m[4], +m[5], +m[6]).getTime();
469
+ }
470
+
471
+ function computeReplayTimings(events) {
472
+ // Find header indices and first/last timestamps
473
+ const headerIdxs = [];
474
+ let firstTs = null;
475
+ let lastTs = null;
476
+
477
+ for (let i = 0; i < events.length; i++) {
478
+ const ev = events[i];
479
+ if (ev.level === 'header' && ev.text.startsWith('---')) {
480
+ headerIdxs.push(i);
481
+ }
482
+ const t = parseTs(ev.ts);
483
+ if (t !== null) {
484
+ if (firstTs === null) firstTs = t;
485
+ lastTs = t;
486
+ }
487
+ }
488
+
489
+ const totalMs = (firstTs !== null && lastTs !== null) ? lastTs - firstTs : null;
490
+
491
+ // Compute per-section durations
492
+ const sectionDurations = headerIdxs.map((hi, si) => {
493
+ const nextHi = headerIdxs[si + 1] ?? events.length;
494
+
495
+ // start = first timestamped ev after the header
496
+ let start = null;
497
+ for (let i = hi + 1; i < nextHi; i++) {
498
+ const t = parseTs(events[i].ts);
499
+ if (t !== null) { start = t; break; }
500
+ }
501
+
502
+ // end = first timestamped ev in the next section, or lastTs
503
+ let end = null;
504
+ for (let i = nextHi; i < events.length; i++) {
505
+ const t = parseTs(events[i].ts);
506
+ if (t !== null) { end = t; break; }
507
+ }
508
+ if (end === null) end = lastTs;
509
+
510
+ return (start !== null && end !== null) ? end - start : null;
511
+ });
512
+
513
+ return { totalMs, sectionDurations };
514
+ }
515
+
462
516
  function formatElapsed(ms) {
463
517
  const s = Math.floor(ms / 1000);
464
518
  const m = Math.floor(s / 60);
@@ -534,7 +588,6 @@ body {
534
588
 
535
589
  const elapsedEl = document.createElement('span');
536
590
  elapsedEl.className = 'section-elapsed';
537
- elapsedEl.textContent = '0s';
538
591
 
539
592
  hdr.appendChild(toggle);
540
593
  hdr.appendChild(badge);
@@ -554,7 +607,16 @@ body {
554
607
  });
555
608
 
556
609
  currentSectionEl = content;
557
- sectionTimers.set(content, { start: sectionStart, frozen: false, elEl: elapsedEl });
610
+
611
+ if (replayTimings !== null) {
612
+ // Replay: use pre-computed duration, no live timer
613
+ const ms = replayTimings[replaySectionIdx++];
614
+ elapsedEl.textContent = ms !== null ? formatElapsed(ms) : '';
615
+ } else {
616
+ // Live: start timer as before
617
+ elapsedEl.textContent = '0s';
618
+ sectionTimers.set(content, { start: sectionStart, frozen: false, elEl: elapsedEl });
619
+ }
558
620
 
559
621
  sectionDiv.classList.toggle('hidden', !matchesPhase(phase, activePhase));
560
622
  }
@@ -804,13 +866,16 @@ body {
804
866
  })
805
867
  .then(data => {
806
868
  if (data.planContent) renderPlan(data.planContent);
807
- sessionStart = Date.now();
808
- startElapsedTimer();
869
+ const timings = computeReplayTimings(data.events);
870
+ replayTimings = timings.sectionDurations;
871
+ replaySectionIdx = 0;
872
+ if (timings.totalMs !== null) elapsedTotal.textContent = formatElapsed(timings.totalMs);
809
873
  for (const ev of data.events) appendEvent(ev);
810
- stopTimers();
874
+ replayTimings = null;
811
875
  if (autoScroll) window.scrollTo(0, document.body.scrollHeight);
812
876
  })
813
877
  .catch(err => {
878
+ replayTimings = null;
814
879
  logWrap.innerHTML = '<div style="color:var(--error);padding:20px">Failed to load replay data.'
815
880
  + (err.message ? '<br><small style="color:var(--ts)">' + err.message + '</small>' : '')
816
881
  + '</div>';
@@ -1 +1 @@
1
- {"version":3,"file":"replay-parser.d.ts","sourceRoot":"","sources":["../../src/dashboard/replay-parser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAsD/F"}
1
+ {"version":3,"file":"replay-parser.d.ts","sourceRoot":"","sources":["../../src/dashboard/replay-parser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAmE/F"}
@@ -10,15 +10,29 @@ export function parseProgressFile(filePath) {
10
10
  const planFileMatch = content.match(/^starting maestro loop: (.+?\.md) \(/m);
11
11
  if (planFileMatch) {
12
12
  const cwd = path.dirname(path.dirname(path.dirname(path.resolve(filePath))));
13
- const fullPath = path.join(cwd, planFileMatch[1]);
13
+ const planPath = planFileMatch[1];
14
+ const fullPath = path.isAbsolute(planPath) ? planPath : path.join(cwd, planPath);
14
15
  try {
15
16
  planContent = fs.readFileSync(fullPath, 'utf8');
16
17
  }
17
18
  catch {
19
+ // Fallback 1: exact name in completed/ (plan not yet timestamped)
18
20
  try {
19
21
  planContent = fs.readFileSync(path.join(path.dirname(fullPath), 'completed', path.basename(fullPath)), 'utf8');
20
22
  }
21
- catch { /* not found */ }
23
+ catch {
24
+ // Fallback 2: timestamped name in completed/, e.g. my-plan-20260307-175011.md
25
+ try {
26
+ const completedDir = path.join(path.dirname(fullPath), 'completed');
27
+ const baseName = path.basename(fullPath, '.md');
28
+ const entries = fs.readdirSync(completedDir);
29
+ const match = entries.find(e => e.startsWith(baseName + '-') && e.endsWith('.md'));
30
+ if (match) {
31
+ planContent = fs.readFileSync(path.join(completedDir, match), 'utf8');
32
+ }
33
+ }
34
+ catch { /* not found */ }
35
+ }
22
36
  }
23
37
  }
24
38
  let currentPhase = 'info';
@@ -1 +1 @@
1
- {"version":3,"file":"replay-parser.js","sourceRoot":"","sources":["../../src/dashboard/replay-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replay-parser.js","sourceRoot":"","sources":["../../src/dashboard/replay-parser.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,12 @@
1
+ export interface FileDiff {
2
+ filePath: string;
3
+ chunk: string;
4
+ }
5
+ /**
6
+ * Split a full diff string into per-file chunks.
7
+ * Returns [] for empty or non-parseable input.
8
+ */
9
+ export declare function splitDiffByFile(diff: string): FileDiff[];
1
10
  /**
2
11
  * Get the full diff of the current branch against the base branch.
3
12
  * Used as context for review prompts.
@@ -1 +1 @@
1
- {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../src/git/diff.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,MAAM,CAGrF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAItE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,MAAM,CAGnF"}
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../src/git/diff.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,EAAE,CAUxD;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,MAAM,CAGrF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAItE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,MAAM,CAGnF"}
package/dist/git/diff.js CHANGED
@@ -1,4 +1,21 @@
1
1
  import { git } from './git.js';
2
+ /**
3
+ * Split a full diff string into per-file chunks.
4
+ * Returns [] for empty or non-parseable input.
5
+ */
6
+ export function splitDiffByFile(diff) {
7
+ if (!diff.trim())
8
+ return [];
9
+ const parts = diff.split(/(?=^diff --git )/m).filter(Boolean);
10
+ const result = [];
11
+ for (const chunk of parts) {
12
+ const match = chunk.match(/^diff --git a\/.+ b\/(.+)/m);
13
+ if (!match)
14
+ continue;
15
+ result.push({ filePath: match[1].trimEnd(), chunk });
16
+ }
17
+ return result;
18
+ }
2
19
  /**
3
20
  * Get the full diff of the current branch against the base branch.
4
21
  * Used as context for review prompts.
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/git/diff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,UAAkB,EAAE,MAAc,OAAO,CAAC,GAAG,EAAE;IAC3E,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,UAAU,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,OAAO,CAAC,GAAG,EAAE;IAC5D,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;IACpC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,UAAkB,EAAE,MAAc,OAAO,CAAC,GAAG,EAAE;IACzE,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC;IACpE,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/git/diff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAO/B;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,UAAkB,EAAE,MAAc,OAAO,CAAC,GAAG,EAAE;IAC3E,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,UAAU,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,OAAO,CAAC,GAAG,EAAE;IAC5D,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;IACpC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,UAAkB,EAAE,MAAc,OAAO,CAAC,GAAG,EAAE;IACzE,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC;IACpE,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/review/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAA+B,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAOxC,UAAU,qBAAqB;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,UAAU,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAO;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;gBAEjB,IAAI,EAAE,qBAAqB;IAWjC,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,OAAO,CAAC,kBAAkB;YAQZ,kBAAkB;IAiDhC,OAAO,CAAC,OAAO;IAOf,OAAO,CAAC,oBAAoB;IAO5B,sFAAsF;YACxE,cAAc;YAWd,UAAU;YA2BV,gBAAgB;IA8C9B,OAAO,CAAC,iBAAiB;CAiB1B"}
1
+ {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/review/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAA+B,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAOxC,UAAU,qBAAqB;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,UAAU,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAO;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;gBAEjB,IAAI,EAAE,qBAAqB;IAWjC,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,OAAO,CAAC,kBAAkB;YAQZ,kBAAkB;IAuFhC,OAAO,CAAC,OAAO;IAOf,OAAO,CAAC,oBAAoB;IAO5B,sFAAsF;YACxE,cAAc;YAWd,UAAU;YA2BV,gBAAgB;IA8C9B,OAAO,CAAC,iBAAiB;CAiB1B"}
@@ -1,7 +1,7 @@
1
1
  import { AIProviderError } from '../backend/backend.js';
2
2
  import { loadPrompt } from '../config/prompts.js';
3
3
  import { expandTemplate } from '../config/template.js';
4
- import { getBranchDiff, getUncommittedDiff } from '../git/diff.js';
4
+ import { getBranchDiff, getUncommittedDiff, getDiffStat, splitDiffByFile } from '../git/diff.js';
5
5
  import { getStatusSnapshot, stageFilesAndCommit, reviewCommitMessage, hasChanges } from '../git/commit.js';
6
6
  import { extractAgentNames, expandAgentPlaceholders, buildCopilotAgentPrompts } from './agents.js';
7
7
  export class ReviewPipeline {
@@ -51,23 +51,20 @@ export class ReviewPipeline {
51
51
  async runReviewIteration(phase, iteration) {
52
52
  const preSnapshot = getStatusSnapshot(this.cwd);
53
53
  const rawDiff = this.getDiff(iteration);
54
- const diff = truncateDiff(rawDiff, this.config.max_diff_chars);
55
- if (diff.length < rawDiff.length) {
56
- this.logger.warn(`Diff truncated from ${rawDiff.length} to ${diff.length} chars (max_diff_chars=${this.config.max_diff_chars})`);
57
- }
58
- const diffInstruction = this.buildDiffInstruction(iteration, diff);
59
54
  const promptName = phase === 'first' ? 'review_first' : 'review_second';
60
55
  const rawTemplate = loadPrompt(promptName, this.config);
61
- const templateVars = {
62
- PLAN_FILE: this.plan.filePath,
63
- GOAL: this.plan.goal,
64
- DEFAULT_BRANCH: this.defaultBranch,
65
- PROGRESS_FILE: this.progressFilePath,
66
- DIFF_INSTRUCTION: diffInstruction,
67
- };
68
56
  let reviewDoneDetected;
69
57
  if (this.backend.supportsParallelAgents()) {
70
- // Claude path: expand agent placeholders first (lowercase keys), then expand template vars
58
+ // Claude path: full diff (truncated) goes into DIFF_INSTRUCTION, agents self-serve via tools
59
+ const diff = truncateDiff(rawDiff, this.config.max_diff_chars);
60
+ const diffInstruction = this.buildDiffInstruction(iteration, diff);
61
+ const templateVars = {
62
+ PLAN_FILE: this.plan.filePath,
63
+ GOAL: this.plan.goal,
64
+ DEFAULT_BRANCH: this.defaultBranch,
65
+ PROGRESS_FILE: this.progressFilePath,
66
+ DIFF_INSTRUCTION: diffInstruction,
67
+ };
71
68
  const agentNames = extractAgentNames(rawTemplate);
72
69
  if (agentNames.length > 0) {
73
70
  this.logger.log(`Launching ${agentNames.length} review agents: ${agentNames.join(', ')}`, 'review');
@@ -77,13 +74,44 @@ export class ReviewPipeline {
77
74
  reviewDoneDetected = await this.runSessionSafe(prompt);
78
75
  }
79
76
  else {
80
- // Copilot path: run agents separately, then run single eval+fix session with merged findings
77
+ // Copilot path: batch diff by file, run agents per batch, eval+fix on compact stat
78
+ const fileDiffs = splitDiffByFile(rawDiff);
79
+ const batches = batchFileDiffs(fileDiffs, this.config.max_diff_chars);
80
+ if (batches.length > 1) {
81
+ this.logger.log(`Diff split into ${batches.length} batches (${fileDiffs.length} files total)`, 'review');
82
+ }
81
83
  const agentNames = extractAgentNames(rawTemplate);
82
- const agentPrompts = buildCopilotAgentPrompts(agentNames, diff, this.config, templateVars);
83
- const mergedFindings = await this.runCopilotAgents(agentPrompts);
84
- // Build eval+fix prompt: strip agent-launch lines from template, expand vars, append findings
84
+ // Use compact stat diff for eval session so it never exceeds context
85
+ const evalDiffInstruction = iteration === 1
86
+ ? `Here is a summary of all changes on this branch against ${this.defaultBranch}:\n\n${getDiffStat(this.defaultBranch, this.cwd)}`
87
+ : `Here is a summary of uncommitted changes since the last review iteration:\n\n${getDiffStat(this.defaultBranch, this.cwd)}`;
88
+ const evalTemplateVars = {
89
+ PLAN_FILE: this.plan.filePath,
90
+ GOAL: this.plan.goal,
91
+ DEFAULT_BRANCH: this.defaultBranch,
92
+ PROGRESS_FILE: this.progressFilePath,
93
+ DIFF_INSTRUCTION: evalDiffInstruction,
94
+ };
95
+ const allFindings = [];
96
+ for (let b = 0; b < batches.length; b++) {
97
+ const batchDiff = batches[b];
98
+ if (batches.length > 1) {
99
+ // Extract file names for this batch to log
100
+ const batchFiles = splitDiffByFile(batchDiff).map(f => f.filePath);
101
+ this.logger.log(`[batch ${b + 1}/${batches.length}] running agents on ${batchFiles.length} files: ${batchFiles.join(', ')}`, 'review');
102
+ }
103
+ const batchTemplateVars = {
104
+ ...evalTemplateVars,
105
+ DIFF_INSTRUCTION: this.buildDiffInstruction(iteration, batchDiff),
106
+ };
107
+ const agentPrompts = buildCopilotAgentPrompts(agentNames, batchDiff, this.config, batchTemplateVars);
108
+ const findings = await this.runCopilotAgents(agentPrompts);
109
+ allFindings.push(findings);
110
+ }
111
+ // Build eval+fix prompt: strip agent-launch lines, expand vars, append all batch findings
85
112
  const strippedTemplate = stripAgentLines(rawTemplate);
86
- const evalPrompt = expandTemplate(strippedTemplate, templateVars) + '\n\n' + mergedFindings;
113
+ const mergedFindings = allFindings.join('\n\n');
114
+ const evalPrompt = expandTemplate(strippedTemplate, evalTemplateVars) + '\n\n' + mergedFindings;
87
115
  reviewDoneDetected = await this.runSessionSafe(evalPrompt);
88
116
  }
89
117
  return this.handlePostSession(reviewDoneDetected, phase, iteration, preSnapshot);
@@ -190,6 +218,37 @@ export class ReviewPipeline {
190
218
  return true;
191
219
  }
192
220
  }
221
+ /**
222
+ * Pack FileDiff chunks greedily into batches not exceeding maxChars each.
223
+ * A single file that exceeds maxChars is truncated with a note.
224
+ * Returns [''] for empty input so the existing single-batch behaviour is preserved.
225
+ */
226
+ function batchFileDiffs(fileDiffs, maxChars) {
227
+ if (fileDiffs.length === 0)
228
+ return [''];
229
+ const batches = [];
230
+ let current = '';
231
+ for (const fd of fileDiffs) {
232
+ let chunk = fd.chunk;
233
+ // Truncate single oversized file
234
+ if (maxChars > 0 && chunk.length > maxChars) {
235
+ chunk = chunk.slice(0, maxChars) + `\n\n[...file truncated — showing first ${maxChars} of ${chunk.length} chars for ${fd.filePath}...]`;
236
+ }
237
+ if (current.length === 0) {
238
+ current = chunk;
239
+ }
240
+ else if (maxChars <= 0 || current.length + chunk.length <= maxChars) {
241
+ current += chunk;
242
+ }
243
+ else {
244
+ batches.push(current);
245
+ current = chunk;
246
+ }
247
+ }
248
+ if (current.length > 0)
249
+ batches.push(current);
250
+ return batches.length > 0 ? batches : [''];
251
+ }
193
252
  /**
194
253
  * Strip {{agent:name}} token lines AND the preamble "Launch agents..." line from a template.
195
254
  * Used in the Copilot path to produce a clean eval+fix prompt.
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/review/pipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/review/pipeline.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rajat-rastogi/maestro",
3
- "version": "0.1.5",
3
+ "version": "0.1.7",
4
4
  "description": "Conduct your codebase — autonomous AI coding orchestrator",
5
5
  "type": "module",
6
6
  "main": "dist/main.js",