@zhixuan92/multi-model-agent-core 3.8.0 → 3.9.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 (91) hide show
  1. package/README.md +1 -1
  2. package/dist/config/schema.d.ts +12 -0
  3. package/dist/config/schema.d.ts.map +1 -1
  4. package/dist/config/schema.js +16 -9
  5. package/dist/config/schema.js.map +1 -1
  6. package/dist/executors/_shared/findings-schema.d.ts +61 -21
  7. package/dist/executors/_shared/findings-schema.d.ts.map +1 -1
  8. package/dist/executors/_shared/findings-schema.js +27 -15
  9. package/dist/executors/_shared/findings-schema.js.map +1 -1
  10. package/dist/executors/audit.d.ts.map +1 -1
  11. package/dist/executors/audit.js +2 -1
  12. package/dist/executors/audit.js.map +1 -1
  13. package/dist/executors/debug.d.ts.map +1 -1
  14. package/dist/executors/debug.js +2 -1
  15. package/dist/executors/debug.js.map +1 -1
  16. package/dist/executors/execute-plan.d.ts.map +1 -1
  17. package/dist/executors/execute-plan.js +2 -1
  18. package/dist/executors/execute-plan.js.map +1 -1
  19. package/dist/executors/investigate.d.ts.map +1 -1
  20. package/dist/executors/investigate.js +4 -2
  21. package/dist/executors/investigate.js.map +1 -1
  22. package/dist/executors/review.d.ts.map +1 -1
  23. package/dist/executors/review.js +2 -1
  24. package/dist/executors/review.js.map +1 -1
  25. package/dist/executors/verify.d.ts.map +1 -1
  26. package/dist/executors/verify.js +2 -1
  27. package/dist/executors/verify.js.map +1 -1
  28. package/dist/heartbeat.d.ts +3 -0
  29. package/dist/heartbeat.d.ts.map +1 -1
  30. package/dist/heartbeat.js +5 -0
  31. package/dist/heartbeat.js.map +1 -1
  32. package/dist/intake/resolve.d.ts.map +1 -1
  33. package/dist/intake/resolve.js +21 -6
  34. package/dist/intake/resolve.js.map +1 -1
  35. package/dist/observability/events.d.ts +192 -23
  36. package/dist/observability/events.d.ts.map +1 -1
  37. package/dist/observability/events.js +50 -11
  38. package/dist/observability/events.js.map +1 -1
  39. package/dist/review/aggregate-result.d.ts +1 -1
  40. package/dist/review/aggregate-result.d.ts.map +1 -1
  41. package/dist/review/aggregate-result.js.map +1 -1
  42. package/dist/review/diff-review.d.ts +7 -2
  43. package/dist/review/diff-review.d.ts.map +1 -1
  44. package/dist/review/diff-review.js +11 -2
  45. package/dist/review/diff-review.js.map +1 -1
  46. package/dist/review/quality-only-prompts.d.ts +11 -5
  47. package/dist/review/quality-only-prompts.d.ts.map +1 -1
  48. package/dist/review/quality-only-prompts.js +98 -51
  49. package/dist/review/quality-only-prompts.js.map +1 -1
  50. package/dist/review/quality-reviewer.d.ts +51 -10
  51. package/dist/review/quality-reviewer.d.ts.map +1 -1
  52. package/dist/review/quality-reviewer.js +163 -21
  53. package/dist/review/quality-reviewer.js.map +1 -1
  54. package/dist/review/spec-reviewer.d.ts +1 -1
  55. package/dist/review/spec-reviewer.d.ts.map +1 -1
  56. package/dist/review/spec-reviewer.js +4 -3
  57. package/dist/review/spec-reviewer.js.map +1 -1
  58. package/dist/run-tasks/index.d.ts +1 -0
  59. package/dist/run-tasks/index.d.ts.map +1 -1
  60. package/dist/run-tasks/reviewed-lifecycle.d.ts +16 -3
  61. package/dist/run-tasks/reviewed-lifecycle.d.ts.map +1 -1
  62. package/dist/run-tasks/reviewed-lifecycle.js +278 -212
  63. package/dist/run-tasks/reviewed-lifecycle.js.map +1 -1
  64. package/dist/run-tasks/stage-idle-tracker.d.ts +14 -0
  65. package/dist/run-tasks/stage-idle-tracker.d.ts.map +1 -0
  66. package/dist/run-tasks/stage-idle-tracker.js +17 -0
  67. package/dist/run-tasks/stage-idle-tracker.js.map +1 -0
  68. package/dist/tool-schemas/audit.d.ts +2 -0
  69. package/dist/tool-schemas/audit.d.ts.map +1 -1
  70. package/dist/tool-schemas/debug.d.ts +2 -0
  71. package/dist/tool-schemas/debug.d.ts.map +1 -1
  72. package/dist/tool-schemas/delegate.d.ts +2 -0
  73. package/dist/tool-schemas/delegate.d.ts.map +1 -1
  74. package/dist/tool-schemas/execute-plan.d.ts +2 -0
  75. package/dist/tool-schemas/execute-plan.d.ts.map +1 -1
  76. package/dist/tool-schemas/investigate.d.ts +2 -0
  77. package/dist/tool-schemas/investigate.d.ts.map +1 -1
  78. package/dist/tool-schemas/retry.d.ts +2 -0
  79. package/dist/tool-schemas/retry.d.ts.map +1 -1
  80. package/dist/tool-schemas/review.d.ts +2 -0
  81. package/dist/tool-schemas/review.d.ts.map +1 -1
  82. package/dist/tool-schemas/shared-output.d.ts +2 -0
  83. package/dist/tool-schemas/shared-output.d.ts.map +1 -1
  84. package/dist/tool-schemas/shared-output.js +1 -1
  85. package/dist/tool-schemas/shared-output.js.map +1 -1
  86. package/dist/tool-schemas/verify.d.ts +2 -0
  87. package/dist/tool-schemas/verify.d.ts.map +1 -1
  88. package/dist/types.d.ts +8 -2
  89. package/dist/types.d.ts.map +1 -1
  90. package/dist/types.js.map +1 -1
  91. package/package.json +1 -1
@@ -1,29 +1,122 @@
1
+ import { z } from 'zod';
1
2
  import { delegateWithEscalation } from '../delegate-with-escalation.js';
2
3
  import { buildQualityReviewPrompt } from './reviewer-prompt.js';
3
4
  import { parseStructuredReport } from '../reporting/structured-report.js';
4
- export async function runQualityReview(reviewerProvider, packet, implReport, fileContents, toolCallLog, filesWritten, evidenceBlock, qualityReviewPromptBuilder, workerOutput) {
5
- if (filesWritten.length === 0 && !qualityReviewPromptBuilder) {
5
+ import { workerFindingsSchema, } from '../executors/_shared/findings-schema.js';
6
+ const annotationItemSchema = z.object({
7
+ id: z.string().min(1),
8
+ reviewerConfidence: z.number().int().min(0).max(100),
9
+ reviewerSeverity: z.enum(['high', 'medium', 'low']).optional(),
10
+ }).strict();
11
+ const annotationsArraySchema = z.array(annotationItemSchema);
12
+ /**
13
+ * Extract the first ```json fenced code block from a string, or `null` if none found.
14
+ */
15
+ function extractJsonBlock(output) {
16
+ const match = output.match(/```json\s*\n([\s\S]*?)\n```/);
17
+ return match ? match[1] : null;
18
+ }
19
+ /**
20
+ * Parse worker findings from the worker's raw output. Looks for a ```json block whose
21
+ * content is an array passing workerFindingsSchema. Returns null if absent or invalid.
22
+ */
23
+ export function extractWorkerFindings(workerOutput) {
24
+ // Try the first json block; if absent, also try matching multiple blocks for
25
+ // resilience against workers that emit example JSON before the real findings.
26
+ const blocks = [...workerOutput.matchAll(/```json\s*\n([\s\S]*?)\n```/g)].map(m => m[1]);
27
+ for (const raw of blocks) {
28
+ try {
29
+ const parsed = JSON.parse(raw);
30
+ if (!Array.isArray(parsed))
31
+ continue;
32
+ const validated = workerFindingsSchema.safeParse(parsed);
33
+ if (validated.success)
34
+ return validated.data;
35
+ }
36
+ catch { /* try next block */ }
37
+ }
38
+ return null;
39
+ }
40
+ /**
41
+ * Parse the reviewer's response, validate against the worker's findings,
42
+ * and merge to produce AnnotatedFinding[].
43
+ *
44
+ * Validation:
45
+ * - Reviewer output must contain exactly one ```json fenced block (we take the first).
46
+ * - Block content must be a JSON array passing annotationsArraySchema.
47
+ * - Annotation ids must be a permutation of worker ids: no missing, no duplicate, no extra.
48
+ */
49
+ export function parseAndMergeAnnotations(reviewerOutput, workerFindings) {
50
+ const block = extractJsonBlock(reviewerOutput);
51
+ if (block === null) {
52
+ return { ok: false, reason: 'reviewer output missing ```json fenced block' };
53
+ }
54
+ let parsed;
55
+ try {
56
+ parsed = JSON.parse(block);
57
+ }
58
+ catch (err) {
59
+ return { ok: false, reason: `reviewer JSON parse failed: ${err instanceof Error ? err.message : String(err)}` };
60
+ }
61
+ const validated = annotationsArraySchema.safeParse(parsed);
62
+ if (!validated.success) {
63
+ return { ok: false, reason: `annotation array validation failed: ${validated.error.message}` };
64
+ }
65
+ const annotations = validated.data;
66
+ const workerIds = new Set(workerFindings.map(f => f.id));
67
+ const reviewerIds = annotations.map(a => a.id);
68
+ const reviewerIdSet = new Set(reviewerIds);
69
+ if (reviewerIds.length !== reviewerIdSet.size) {
70
+ return { ok: false, reason: 'duplicate id in reviewer annotations' };
71
+ }
72
+ if (reviewerIdSet.size !== workerIds.size) {
73
+ return { ok: false, reason: `annotation count ${reviewerIdSet.size} does not match worker findings count ${workerIds.size}` };
74
+ }
75
+ for (const id of reviewerIdSet) {
76
+ if (!workerIds.has(id)) {
77
+ return { ok: false, reason: `reviewer annotated unknown id: ${id}` };
78
+ }
79
+ }
80
+ for (const id of workerIds) {
81
+ if (!reviewerIdSet.has(id)) {
82
+ return { ok: false, reason: `reviewer missing annotation for worker id: ${id}` };
83
+ }
84
+ }
85
+ const byId = new Map(annotations.map(a => [a.id, a]));
86
+ const merged = workerFindings.map(wf => {
87
+ const ann = byId.get(wf.id);
88
+ const out = {
89
+ ...wf,
90
+ reviewerConfidence: ann.reviewerConfidence,
91
+ };
92
+ if (ann.reviewerSeverity !== undefined)
93
+ out.reviewerSeverity = ann.reviewerSeverity;
94
+ return out;
95
+ });
96
+ return { ok: true, annotated: merged };
97
+ }
98
+ export async function runQualityReview(reviewerProvider, packet, implReport, fileContents, toolCallLog, filesWritten, evidenceBlock, qualityReviewPromptBuilder, workerOutput, taskDeadlineMs, abortSignal, onProgress) {
99
+ // Read-only annotation path: triggered when caller passed a prompt builder
100
+ // (these are the per-route quality_only prompts in quality-only-prompts.ts).
101
+ if (qualityReviewPromptBuilder && workerOutput !== undefined) {
102
+ return runAnnotationReview(reviewerProvider, packet, workerOutput, qualityReviewPromptBuilder, taskDeadlineMs, abortSignal, onProgress);
103
+ }
104
+ // Artifact-route gating path: unchanged from prior behavior.
105
+ if (filesWritten.length === 0) {
6
106
  return { status: 'skipped', findings: [], errorReason: 'no files written by implementer' };
7
107
  }
8
- const corePrompt = qualityReviewPromptBuilder && workerOutput !== undefined
9
- ? qualityReviewPromptBuilder({ workerOutput, brief: packet.prompt })
10
- : buildQualityReviewPrompt(packet, implReport, fileContents, toolCallLog);
108
+ const corePrompt = buildQualityReviewPrompt(packet, implReport, fileContents, toolCallLog);
11
109
  const prompt = (evidenceBlock ? `${evidenceBlock}\n\n` : '') + corePrompt;
12
110
  const reviewerSlot = reviewerProvider.name === 'standard' ? 'standard' : 'complex';
13
111
  let result;
14
112
  try {
15
- result = await delegateWithEscalation({
16
- prompt,
17
- agentType: reviewerSlot,
18
- briefQualityPolicy: 'off',
19
- timeoutMs: 120_000,
20
- }, [reviewerProvider], { explicitlyPinned: true });
113
+ result = await delegateWithEscalation({ prompt, agentType: reviewerSlot, briefQualityPolicy: 'off', timeoutMs: 120_000 }, [reviewerProvider], { explicitlyPinned: true, taskDeadlineMs, abortSignal, onProgress });
21
114
  }
22
115
  catch (err) {
23
116
  return { status: 'error', findings: [], errorReason: `review agent threw: ${err instanceof Error ? err.message : String(err)}` };
24
117
  }
25
118
  if (result.status !== 'ok') {
26
- if (result.status === 'api_error' || result.status === 'network_error' || result.status === 'timeout') {
119
+ if (result.status === 'api_error' || result.status === 'network_error' || result.status === 'timeout' || result.status === 'api_aborted') {
27
120
  return { status: result.status, findings: [], errorReason: `review agent returned status: ${result.status}` };
28
121
  }
29
122
  return { status: 'error', findings: [], errorReason: `review agent returned status: ${result.status}` };
@@ -32,17 +125,13 @@ export async function runQualityReview(reviewerProvider, packet, implReport, fil
32
125
  if (!report.summary) {
33
126
  try {
34
127
  const retryResult = await delegateWithEscalation({
35
- prompt: prompt +
36
- '\n\nIMPORTANT: Your response MUST begin with a "## Summary" section containing either "approved" or "changes_required". Follow this exact format.',
37
- agentType: reviewerSlot,
38
- briefQualityPolicy: 'off',
39
- timeoutMs: 120_000,
40
- }, [reviewerProvider], { explicitlyPinned: true });
41
- if (retryResult.status === 'ok') {
128
+ prompt: prompt + '\n\nIMPORTANT: Your response MUST begin with a "## Summary" section containing either "approved" or "changes_required". Follow this exact format.',
129
+ agentType: reviewerSlot, briefQualityPolicy: 'off', timeoutMs: 120_000,
130
+ }, [reviewerProvider], { explicitlyPinned: true, taskDeadlineMs, abortSignal, onProgress });
131
+ if (retryResult.status === 'ok')
42
132
  report = parseStructuredReport(retryResult.output);
43
- }
44
133
  }
45
- catch { /* fall through to error */ }
134
+ catch { /* fall through */ }
46
135
  if (!report.summary) {
47
136
  return { status: 'error', findings: [], errorReason: 'reviewer output missing ## Summary section (after retry)' };
48
137
  }
@@ -57,4 +146,57 @@ export async function runQualityReview(reviewerProvider, packet, implReport, fil
57
146
  }
58
147
  return { status: 'approved', report, findings: [] };
59
148
  }
149
+ async function runAnnotationReview(reviewerProvider, packet, workerOutput, qualityReviewPromptBuilder, taskDeadlineMs, abortSignal, onProgress) {
150
+ // Step 1: extract worker findings from worker output.
151
+ const workerFindings = extractWorkerFindings(workerOutput);
152
+ if (workerFindings === null) {
153
+ return {
154
+ status: 'error',
155
+ findings: [],
156
+ errorReason: 'worker output missing or invalid findings[] JSON block',
157
+ };
158
+ }
159
+ // Step 2: short-circuit when worker found nothing — nothing to annotate.
160
+ if (workerFindings.length === 0) {
161
+ return {
162
+ status: 'annotated',
163
+ annotatedFindings: [],
164
+ findings: [],
165
+ };
166
+ }
167
+ // Step 3: build the route-specific prompt and call the reviewer.
168
+ const prompt = qualityReviewPromptBuilder({ workerOutput, brief: packet.prompt, workerFindings });
169
+ const reviewerSlot = reviewerProvider.name === 'standard' ? 'standard' : 'complex';
170
+ let result;
171
+ try {
172
+ result = await delegateWithEscalation({ prompt, agentType: reviewerSlot, briefQualityPolicy: 'off', timeoutMs: 120_000 }, [reviewerProvider], { explicitlyPinned: true, taskDeadlineMs, abortSignal, onProgress });
173
+ }
174
+ catch (err) {
175
+ return {
176
+ status: 'error',
177
+ findings: [],
178
+ errorReason: `review agent threw: ${err instanceof Error ? err.message : String(err)}`,
179
+ };
180
+ }
181
+ if (result.status !== 'ok') {
182
+ if (result.status === 'api_error' || result.status === 'network_error' || result.status === 'timeout' || result.status === 'api_aborted') {
183
+ return { status: result.status, findings: [], errorReason: `review agent returned status: ${result.status}` };
184
+ }
185
+ return {
186
+ status: 'error',
187
+ findings: [],
188
+ errorReason: `review agent returned status: ${result.status}`,
189
+ };
190
+ }
191
+ // Step 4: parse + validate + merge annotations.
192
+ const merged = parseAndMergeAnnotations(result.output, workerFindings);
193
+ if (!merged.ok) {
194
+ return { status: 'error', findings: [], errorReason: merged.reason };
195
+ }
196
+ return {
197
+ status: 'annotated',
198
+ annotatedFindings: merged.annotated,
199
+ findings: [],
200
+ };
201
+ }
60
202
  //# sourceMappingURL=quality-reviewer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"quality-reviewer.js","sourceRoot":"","sources":["../../src/review/quality-reviewer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quality-reviewer.js","sourceRoot":"","sources":["../../src/review/quality-reviewer.ts"],"names":[],"mappings":"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"}
@@ -13,5 +13,5 @@ export declare function runSpecReview(reviewerProvider: Provider, packet: {
13
13
  prompt: string;
14
14
  scope: string[];
15
15
  doneCondition: string;
16
- }, implReport: ParsedStructuredReport, fileContents: Record<string, string>, toolCallLog: string[], planContext?: string, evidenceBlock?: string): Promise<SpecReviewResult>;
16
+ }, implReport: ParsedStructuredReport, fileContents: Record<string, string>, toolCallLog: string[], planContext?: string, evidenceBlock?: string, taskDeadlineMs?: number, abortSignal?: AbortSignal, onProgress?: (e: import('../runners/types.js').InternalRunnerEvent) => void): Promise<SpecReviewResult>;
17
17
  //# sourceMappingURL=spec-reviewer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spec-reviewer.d.ts","sourceRoot":"","sources":["../../src/review/spec-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAEhF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,UAAU,GAAG,kBAAkB,GAAG,OAAO,GAAG,WAAW,GAAG,eAAe,GAAG,SAAS,CAAC;IAC9F,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAEzE,wBAAsB,aAAa,CACjC,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,EAClE,UAAU,EAAE,sBAAsB,EAClC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,WAAW,EAAE,MAAM,EAAE,EACrB,WAAW,CAAC,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,gBAAgB,CAAC,CAoE3B"}
1
+ {"version":3,"file":"spec-reviewer.d.ts","sourceRoot":"","sources":["../../src/review/spec-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAEhF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,UAAU,GAAG,kBAAkB,GAAG,OAAO,GAAG,WAAW,GAAG,eAAe,GAAG,SAAS,CAAC;IAC9F,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAEzE,wBAAsB,aAAa,CACjC,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,EAClE,UAAU,EAAE,sBAAsB,EAClC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,WAAW,EAAE,MAAM,EAAE,EACrB,WAAW,CAAC,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,MAAM,EACtB,cAAc,CAAC,EAAE,MAAM,EACvB,WAAW,CAAC,EAAE,WAAW,EACzB,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,qBAAqB,EAAE,mBAAmB,KAAK,IAAI,GAC1E,OAAO,CAAC,gBAAgB,CAAC,CAqE3B"}
@@ -1,10 +1,11 @@
1
1
  import { delegateWithEscalation } from '../delegate-with-escalation.js';
2
2
  import { buildSpecReviewPrompt } from './reviewer-prompt.js';
3
3
  import { parseStructuredReport } from '../reporting/structured-report.js';
4
- export async function runSpecReview(reviewerProvider, packet, implReport, fileContents, toolCallLog, planContext, evidenceBlock) {
4
+ export async function runSpecReview(reviewerProvider, packet, implReport, fileContents, toolCallLog, planContext, evidenceBlock, taskDeadlineMs, abortSignal, onProgress) {
5
5
  const prompt = (evidenceBlock ? `${evidenceBlock}\n\n` : '') +
6
6
  buildSpecReviewPrompt(packet, implReport, fileContents, toolCallLog, planContext);
7
7
  const reviewerSlot = reviewerProvider.name === 'standard' ? 'standard' : 'complex';
8
+ const delegateOpts = { explicitlyPinned: true, taskDeadlineMs, abortSignal, onProgress };
8
9
  let result;
9
10
  try {
10
11
  result = await delegateWithEscalation({
@@ -12,7 +13,7 @@ export async function runSpecReview(reviewerProvider, packet, implReport, fileCo
12
13
  agentType: reviewerSlot,
13
14
  briefQualityPolicy: 'off',
14
15
  timeoutMs: 120_000,
15
- }, [reviewerProvider], { explicitlyPinned: true });
16
+ }, [reviewerProvider], delegateOpts);
16
17
  }
17
18
  catch (err) {
18
19
  return { status: 'error', findings: [], errorReason: `review agent threw: ${err instanceof Error ? err.message : String(err)}` };
@@ -36,7 +37,7 @@ export async function runSpecReview(reviewerProvider, packet, implReport, fileCo
36
37
  agentType: reviewerSlot,
37
38
  briefQualityPolicy: 'off',
38
39
  timeoutMs: 120_000,
39
- }, [reviewerProvider], { explicitlyPinned: true });
40
+ }, [reviewerProvider], delegateOpts);
40
41
  if (retryResult.status === 'ok') {
41
42
  report = parseStructuredReport(retryResult.output);
42
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"spec-reviewer.js","sourceRoot":"","sources":["../../src/review/spec-reviewer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spec-reviewer.js","sourceRoot":"","sources":["../../src/review/spec-reviewer.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,7 @@ export interface RunTasksOptions {
50
50
  qualityReviewPromptBuilder?: (ctx: {
51
51
  workerOutput: string;
52
52
  brief: string;
53
+ workerFindings: import('../executors/_shared/findings-schema.js').WorkerFinding[];
53
54
  }) => string;
54
55
  }
55
56
  export declare function runTasks(tasks: TaskSpec[], config: MultiModelConfig, options?: RunTasksOptions): Promise<RunResult[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/run-tasks/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,QAAQ,EACR,gBAAgB,EAGjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAUxD,MAAM,MAAM,wBAAwB,GAAG,CACrC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,aAAa,KACjB,IAAI,CAAC;AAEV,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACpD;;;;;OAKG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+EAA+E;IAC/E,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,2EAA2E;IAC3E,QAAQ,CAAC,EAAE;QACT,mBAAmB,EAAE,CAAC,GAAG,EAAE;YACzB,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE,QAAQ,CAAC;YACnB,SAAS,EAAE,SAAS,CAAC;YACrB,MAAM,EAAE,MAAM,CAAC;YACf,eAAe,EAAE,MAAM,CAAC;YACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;SAC5B,KAAK,IAAI,CAAC;KACZ,CAAC;IACF,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oDAAoD;IACpD,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,+EAA+E;IAC/E,0BAA0B,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC;CACvF;AAED,wBAAsB,QAAQ,CAC5B,KAAK,EAAE,QAAQ,EAAE,EACjB,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,SAAS,EAAE,CAAC,CAsHtB;AAED,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/run-tasks/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,QAAQ,EACR,gBAAgB,EAGjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAUxD,MAAM,MAAM,wBAAwB,GAAG,CACrC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,aAAa,KACjB,IAAI,CAAC;AAEV,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACpD;;;;;OAKG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+EAA+E;IAC/E,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,2EAA2E;IAC3E,QAAQ,CAAC,EAAE;QACT,mBAAmB,EAAE,CAAC,GAAG,EAAE;YACzB,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE,QAAQ,CAAC;YACnB,SAAS,EAAE,SAAS,CAAC;YACrB,MAAM,EAAE,MAAM,CAAC;YACf,eAAe,EAAE,MAAM,CAAC;YACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;SAC5B,KAAK,IAAI,CAAC;KACZ,CAAC;IACF,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oDAAoD;IACpD,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,+EAA+E;IAC/E,0BAA0B,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,OAAO,yCAAyC,EAAE,aAAa,EAAE,CAAA;KAAE,KAAK,MAAM,CAAC;CAC1K;AAED,wBAAsB,QAAQ,CAC5B,KAAK,EAAE,QAAQ,EAAE,EACjB,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,SAAS,EAAE,CAAC,CAsHtB;AAED,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -4,15 +4,27 @@ export declare function emptyStats(): StageStatsMap;
4
4
  export declare function endBaseStage(stats: StageStatsMap, name: 'implementing' | 'spec_rework' | 'quality_rework' | 'committing', t0: number, c0: number | null, agent: {
5
5
  tier: 'standard' | 'complex';
6
6
  model: string;
7
- }, finalCostUSD: number | null): void;
7
+ }, finalCostUSD: number | null, idle: {
8
+ maxIdleMs: number;
9
+ totalIdleMs: number;
10
+ activityEvents: number;
11
+ } | null): void;
8
12
  export declare function endReviewStage(stats: StageStatsMap, name: 'spec_review' | 'quality_review' | 'diff_review', t0: number, c0: number | null, agent: {
9
13
  tier: 'standard' | 'complex';
10
14
  model: string;
11
- }, finalCostUSD: number | null, verdict: ReviewVerdict, roundsUsed: number): void;
15
+ }, finalCostUSD: number | null, idle: {
16
+ maxIdleMs: number;
17
+ totalIdleMs: number;
18
+ activityEvents: number;
19
+ } | null, verdict: ReviewVerdict, roundsUsed: number): void;
12
20
  export declare function endVerifyStage(stats: StageStatsMap, t0: number, c0: number | null, agent: {
13
21
  tier: 'standard' | 'complex';
14
22
  model: string;
15
- }, finalCostUSD: number | null, outcome: VerifyOutcome, skipReason: VerifySkipReason | null): void;
23
+ }, finalCostUSD: number | null, idle: {
24
+ maxIdleMs: number;
25
+ totalIdleMs: number;
26
+ activityEvents: number;
27
+ } | null, outcome: VerifyOutcome, skipReason: VerifySkipReason | null): void;
16
28
  export declare function executeReviewedLifecycle(task: TaskSpec, resolved: {
17
29
  slot: AgentType;
18
30
  provider: Provider;
@@ -36,5 +48,6 @@ export declare function executeReviewedLifecycle(task: TaskSpec, resolved: {
36
48
  }, _route?: string, _client?: string, _triggeringSkill?: string, bus?: import('../observability/bus.js').EventBus, qualityReviewPromptBuilder?: (ctx: {
37
49
  workerOutput: string;
38
50
  brief: string;
51
+ workerFindings: import('../executors/_shared/findings-schema.js').WorkerFinding[];
39
52
  }) => string): Promise<RunResult>;
40
53
  //# sourceMappingURL=reviewed-lifecycle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reviewed-lifecycle.d.ts","sourceRoot":"","sources":["../../src/run-tasks/reviewed-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewed-lifecycle.d.ts","sourceRoot":"","sources":["../../src/run-tasks/reviewed-lifecycle.ts"],"names":[],"mappings":"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"}