@zhixuan92/multi-model-agent-core 4.7.12 → 4.7.14

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 (265) hide show
  1. package/README.md +13 -13
  2. package/dist/events/task-envelope.d.ts +6 -0
  3. package/dist/events/task-envelope.d.ts.map +1 -1
  4. package/dist/events/task-envelope.js +4 -0
  5. package/dist/events/task-envelope.js.map +1 -1
  6. package/dist/events/wire-schema.d.ts +10 -10
  7. package/dist/index.d.ts +1 -3
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +0 -2
  10. package/dist/index.js.map +1 -1
  11. package/dist/lifecycle/annotate-parser.d.ts.map +1 -1
  12. package/dist/lifecycle/annotate-parser.js +1 -2
  13. package/dist/lifecycle/annotate-parser.js.map +1 -1
  14. package/dist/lifecycle/annotate-prompts.d.ts.map +1 -1
  15. package/dist/lifecycle/annotate-prompts.js +6 -3
  16. package/dist/lifecycle/annotate-prompts.js.map +1 -1
  17. package/dist/lifecycle/auto-commit.d.ts +0 -15
  18. package/dist/lifecycle/auto-commit.d.ts.map +1 -1
  19. package/dist/lifecycle/auto-commit.js +0 -37
  20. package/dist/lifecycle/auto-commit.js.map +1 -1
  21. package/dist/lifecycle/derive-completion.d.ts +0 -1
  22. package/dist/lifecycle/derive-completion.d.ts.map +1 -1
  23. package/dist/lifecycle/derive-completion.js +3 -4
  24. package/dist/lifecycle/derive-completion.js.map +1 -1
  25. package/dist/lifecycle/executor-output-types.d.ts +2 -0
  26. package/dist/lifecycle/executor-output-types.d.ts.map +1 -1
  27. package/dist/lifecycle/handlers/annotate-stage.d.ts.map +1 -1
  28. package/dist/lifecycle/handlers/annotate-stage.js +15 -6
  29. package/dist/lifecycle/handlers/annotate-stage.js.map +1 -1
  30. package/dist/lifecycle/handlers/enrich-runtime-result.d.ts.map +1 -1
  31. package/dist/lifecycle/handlers/enrich-runtime-result.js +7 -15
  32. package/dist/lifecycle/handlers/enrich-runtime-result.js.map +1 -1
  33. package/dist/lifecycle/handlers/git-commit-handler.d.ts.map +1 -1
  34. package/dist/lifecycle/handlers/git-commit-handler.js +100 -70
  35. package/dist/lifecycle/handlers/git-commit-handler.js.map +1 -1
  36. package/dist/lifecycle/handlers/implement-stage.d.ts.map +1 -1
  37. package/dist/lifecycle/handlers/implement-stage.js +6 -1
  38. package/dist/lifecycle/handlers/implement-stage.js.map +1 -1
  39. package/dist/lifecycle/handlers/rework-stage.d.ts.map +1 -1
  40. package/dist/lifecycle/handlers/rework-stage.js +3 -2
  41. package/dist/lifecycle/handlers/rework-stage.js.map +1 -1
  42. package/dist/lifecycle/handlers/terminal-handlers.d.ts.map +1 -1
  43. package/dist/lifecycle/handlers/terminal-handlers.js +16 -90
  44. package/dist/lifecycle/handlers/terminal-handlers.js.map +1 -1
  45. package/dist/lifecycle/lifecycle-context.d.ts +1 -40
  46. package/dist/lifecycle/lifecycle-context.d.ts.map +1 -1
  47. package/dist/lifecycle/lifecycle-driver.d.ts.map +1 -1
  48. package/dist/lifecycle/lifecycle-driver.js +1 -32
  49. package/dist/lifecycle/lifecycle-driver.js.map +1 -1
  50. package/dist/lifecycle/perform-implementation.d.ts.map +1 -1
  51. package/dist/lifecycle/perform-implementation.js +13 -10
  52. package/dist/lifecycle/perform-implementation.js.map +1 -1
  53. package/dist/lifecycle/read-only-subtype-spec.d.ts +1 -1
  54. package/dist/lifecycle/read-only-subtype-spec.d.ts.map +1 -1
  55. package/dist/lifecycle/{parallel-criteria-routes.d.ts → read-route-criteria.d.ts} +2 -2
  56. package/dist/lifecycle/read-route-criteria.d.ts.map +1 -0
  57. package/dist/lifecycle/{parallel-criteria-routes.js → read-route-criteria.js} +2 -2
  58. package/dist/lifecycle/read-route-criteria.js.map +1 -0
  59. package/dist/lifecycle/real-diff.d.ts.map +1 -1
  60. package/dist/lifecycle/real-diff.js +4 -1
  61. package/dist/lifecycle/real-diff.js.map +1 -1
  62. package/dist/lifecycle/repo-commit-lock.d.ts +20 -0
  63. package/dist/lifecycle/repo-commit-lock.d.ts.map +1 -0
  64. package/dist/lifecycle/repo-commit-lock.js +40 -0
  65. package/dist/lifecycle/repo-commit-lock.js.map +1 -0
  66. package/dist/lifecycle/research-pre-loop.d.ts.map +1 -1
  67. package/dist/lifecycle/research-pre-loop.js +0 -1
  68. package/dist/lifecycle/research-pre-loop.js.map +1 -1
  69. package/dist/lifecycle/stage-io.d.ts +1 -0
  70. package/dist/lifecycle/stage-io.d.ts.map +1 -1
  71. package/dist/lifecycle/stage-io.js.map +1 -1
  72. package/dist/lifecycle/stage-plan-builder.d.ts.map +1 -1
  73. package/dist/lifecycle/stage-plan-builder.js +10 -6
  74. package/dist/lifecycle/stage-plan-builder.js.map +1 -1
  75. package/dist/lifecycle/stage-plan-types.d.ts +17 -13
  76. package/dist/lifecycle/stage-plan-types.d.ts.map +1 -1
  77. package/dist/lifecycle/stage-plan-types.js +27 -1
  78. package/dist/lifecycle/stage-plan-types.js.map +1 -1
  79. package/dist/lifecycle/stage-progression.d.ts.map +1 -1
  80. package/dist/lifecycle/stage-progression.js +0 -1
  81. package/dist/lifecycle/stage-progression.js.map +1 -1
  82. package/dist/lifecycle/task-executor.d.ts +0 -23
  83. package/dist/lifecycle/task-executor.d.ts.map +1 -1
  84. package/dist/lifecycle/task-executor.js +26 -67
  85. package/dist/lifecycle/task-executor.js.map +1 -1
  86. package/dist/lifecycle/task-runner.d.ts +8 -53
  87. package/dist/lifecycle/task-runner.d.ts.map +1 -1
  88. package/dist/lifecycle/task-runner.js +7 -69
  89. package/dist/lifecycle/task-runner.js.map +1 -1
  90. package/dist/lifecycle/tool-config-types.d.ts +6 -9
  91. package/dist/lifecycle/tool-config-types.d.ts.map +1 -1
  92. package/dist/providers/runner-types.d.ts +0 -5
  93. package/dist/providers/runner-types.d.ts.map +1 -1
  94. package/dist/reporting/findings-headline.d.ts +12 -0
  95. package/dist/reporting/findings-headline.d.ts.map +1 -0
  96. package/dist/reporting/findings-headline.js +40 -0
  97. package/dist/reporting/findings-headline.js.map +1 -0
  98. package/dist/reporting/report-parser-slots/no-structured-report.d.ts +10 -0
  99. package/dist/reporting/report-parser-slots/no-structured-report.d.ts.map +1 -0
  100. package/dist/reporting/report-parser-slots/no-structured-report.js +13 -0
  101. package/dist/reporting/report-parser-slots/no-structured-report.js.map +1 -0
  102. package/dist/stores/batch-registry.d.ts +0 -18
  103. package/dist/stores/batch-registry.d.ts.map +1 -1
  104. package/dist/stores/batch-registry.js +0 -12
  105. package/dist/stores/batch-registry.js.map +1 -1
  106. package/dist/tools/audit/implementer-criteria.d.ts +0 -11
  107. package/dist/tools/audit/implementer-criteria.d.ts.map +1 -1
  108. package/dist/tools/audit/implementer-criteria.js +0 -22
  109. package/dist/tools/audit/implementer-criteria.js.map +1 -1
  110. package/dist/tools/audit/skill-audit-criteria.d.ts +1 -1
  111. package/dist/tools/audit/skill-audit-criteria.d.ts.map +1 -1
  112. package/dist/tools/audit/spec-audit-criteria.d.ts +1 -1
  113. package/dist/tools/audit/spec-audit-criteria.d.ts.map +1 -1
  114. package/dist/tools/audit/subtypes.js +1 -1
  115. package/dist/tools/audit/subtypes.js.map +1 -1
  116. package/dist/tools/audit/tool-config.d.ts +1 -2
  117. package/dist/tools/audit/tool-config.d.ts.map +1 -1
  118. package/dist/tools/audit/tool-config.js +13 -87
  119. package/dist/tools/audit/tool-config.js.map +1 -1
  120. package/dist/tools/debug/implementer-criteria.d.ts +0 -10
  121. package/dist/tools/debug/implementer-criteria.d.ts.map +1 -1
  122. package/dist/tools/debug/implementer-criteria.js +0 -23
  123. package/dist/tools/debug/implementer-criteria.js.map +1 -1
  124. package/dist/tools/debug/tool-config.d.ts.map +1 -1
  125. package/dist/tools/debug/tool-config.js +12 -72
  126. package/dist/tools/debug/tool-config.js.map +1 -1
  127. package/dist/tools/delegate/brief-slot.d.ts +1 -0
  128. package/dist/tools/delegate/brief-slot.d.ts.map +1 -1
  129. package/dist/tools/delegate/brief-slot.js +5 -2
  130. package/dist/tools/delegate/brief-slot.js.map +1 -1
  131. package/dist/tools/delegate/schema.d.ts +6 -2
  132. package/dist/tools/delegate/schema.d.ts.map +1 -1
  133. package/dist/tools/delegate/schema.js +3 -2
  134. package/dist/tools/delegate/schema.js.map +1 -1
  135. package/dist/tools/delegate/tool-config.d.ts.map +1 -1
  136. package/dist/tools/delegate/tool-config.js +3 -1
  137. package/dist/tools/delegate/tool-config.js.map +1 -1
  138. package/dist/tools/execute-plan/barrel.d.ts +2 -0
  139. package/dist/tools/execute-plan/barrel.d.ts.map +1 -0
  140. package/dist/tools/execute-plan/barrel.js +7 -0
  141. package/dist/tools/execute-plan/barrel.js.map +1 -0
  142. package/dist/tools/execute-plan/tool-config.d.ts +48 -0
  143. package/dist/tools/execute-plan/tool-config.d.ts.map +1 -1
  144. package/dist/tools/execute-plan/tool-config.js +6 -2
  145. package/dist/tools/execute-plan/tool-config.js.map +1 -1
  146. package/dist/tools/index.d.ts +1 -2
  147. package/dist/tools/index.d.ts.map +1 -1
  148. package/dist/tools/index.js +7 -7
  149. package/dist/tools/index.js.map +1 -1
  150. package/dist/tools/investigate/brief-slot.d.ts +3 -19
  151. package/dist/tools/investigate/brief-slot.d.ts.map +1 -1
  152. package/dist/tools/investigate/brief-slot.js +0 -60
  153. package/dist/tools/investigate/brief-slot.js.map +1 -1
  154. package/dist/tools/investigate/implementer-criteria.d.ts +0 -11
  155. package/dist/tools/investigate/implementer-criteria.d.ts.map +1 -1
  156. package/dist/tools/investigate/implementer-criteria.js +0 -23
  157. package/dist/tools/investigate/implementer-criteria.js.map +1 -1
  158. package/dist/tools/investigate/tool-config.d.ts.map +1 -1
  159. package/dist/tools/investigate/tool-config.js +4 -6
  160. package/dist/tools/investigate/tool-config.js.map +1 -1
  161. package/dist/tools/{parallel-criteria-prompt.d.ts → read-route-prompt.d.ts} +1 -1
  162. package/dist/tools/read-route-prompt.d.ts.map +1 -0
  163. package/dist/tools/{parallel-criteria-prompt.js → read-route-prompt.js} +1 -1
  164. package/dist/tools/read-route-prompt.js.map +1 -0
  165. package/dist/tools/register-context-block/tool-config.d.ts.map +1 -1
  166. package/dist/tools/register-context-block/tool-config.js +2 -0
  167. package/dist/tools/register-context-block/tool-config.js.map +1 -1
  168. package/dist/tools/research/brief-slot.d.ts +4 -1
  169. package/dist/tools/research/brief-slot.d.ts.map +1 -1
  170. package/dist/tools/research/brief-slot.js +1 -31
  171. package/dist/tools/research/brief-slot.js.map +1 -1
  172. package/dist/tools/research/tool-config.d.ts.map +1 -1
  173. package/dist/tools/research/tool-config.js +4 -2
  174. package/dist/tools/research/tool-config.js.map +1 -1
  175. package/dist/tools/research/two-turn-driver.d.ts +0 -4
  176. package/dist/tools/research/two-turn-driver.d.ts.map +1 -1
  177. package/dist/tools/research/two-turn-driver.js.map +1 -1
  178. package/dist/tools/retry/tool-config.d.ts.map +1 -1
  179. package/dist/tools/retry/tool-config.js +6 -5
  180. package/dist/tools/retry/tool-config.js.map +1 -1
  181. package/dist/tools/review/implementer-criteria.d.ts +0 -12
  182. package/dist/tools/review/implementer-criteria.d.ts.map +1 -1
  183. package/dist/tools/review/implementer-criteria.js +0 -23
  184. package/dist/tools/review/implementer-criteria.js.map +1 -1
  185. package/dist/tools/review/subtypes.js +1 -1
  186. package/dist/tools/review/subtypes.js.map +1 -1
  187. package/dist/tools/review/tool-config.d.ts.map +1 -1
  188. package/dist/tools/review/tool-config.js +13 -81
  189. package/dist/tools/review/tool-config.js.map +1 -1
  190. package/dist/types/enums.d.ts +1 -1
  191. package/dist/types/task-spec.d.ts +12 -11
  192. package/dist/types/task-spec.d.ts.map +1 -1
  193. package/package.json +1 -1
  194. package/dist/lifecycle/fallback-report.d.ts +0 -5
  195. package/dist/lifecycle/fallback-report.d.ts.map +0 -1
  196. package/dist/lifecycle/fallback-report.js +0 -33
  197. package/dist/lifecycle/fallback-report.js.map +0 -1
  198. package/dist/lifecycle/handlers/commit-stage.d.ts +0 -16
  199. package/dist/lifecycle/handlers/commit-stage.d.ts.map +0 -1
  200. package/dist/lifecycle/handlers/commit-stage.js +0 -52
  201. package/dist/lifecycle/handlers/commit-stage.js.map +0 -1
  202. package/dist/lifecycle/parallel-criteria-routes.d.ts.map +0 -1
  203. package/dist/lifecycle/parallel-criteria-routes.js.map +0 -1
  204. package/dist/lifecycle/plan-extraction.d.ts +0 -2
  205. package/dist/lifecycle/plan-extraction.d.ts.map +0 -1
  206. package/dist/lifecycle/plan-extraction.js +0 -44
  207. package/dist/lifecycle/plan-extraction.js.map +0 -1
  208. package/dist/lifecycle/repo-hygiene.d.ts +0 -14
  209. package/dist/lifecycle/repo-hygiene.d.ts.map +0 -1
  210. package/dist/lifecycle/repo-hygiene.js +0 -74
  211. package/dist/lifecycle/repo-hygiene.js.map +0 -1
  212. package/dist/lifecycle/task-completion-summary.d.ts +0 -23
  213. package/dist/lifecycle/task-completion-summary.d.ts.map +0 -1
  214. package/dist/lifecycle/task-completion-summary.js +0 -83
  215. package/dist/lifecycle/task-completion-summary.js.map +0 -1
  216. package/dist/lifecycle/task-grouping.d.ts +0 -19
  217. package/dist/lifecycle/task-grouping.d.ts.map +0 -1
  218. package/dist/lifecycle/task-grouping.js +0 -48
  219. package/dist/lifecycle/task-grouping.js.map +0 -1
  220. package/dist/reporting/headline-templates/audit.d.ts +0 -3
  221. package/dist/reporting/headline-templates/audit.d.ts.map +0 -1
  222. package/dist/reporting/headline-templates/audit.js +0 -37
  223. package/dist/reporting/headline-templates/audit.js.map +0 -1
  224. package/dist/reporting/headline-templates/debug.d.ts +0 -25
  225. package/dist/reporting/headline-templates/debug.d.ts.map +0 -1
  226. package/dist/reporting/headline-templates/debug.js +0 -42
  227. package/dist/reporting/headline-templates/debug.js.map +0 -1
  228. package/dist/reporting/headline-templates/retry.d.ts +0 -3
  229. package/dist/reporting/headline-templates/retry.d.ts.map +0 -1
  230. package/dist/reporting/headline-templates/retry.js +0 -9
  231. package/dist/reporting/headline-templates/retry.js.map +0 -1
  232. package/dist/reporting/headline-templates/review.d.ts +0 -3
  233. package/dist/reporting/headline-templates/review.d.ts.map +0 -1
  234. package/dist/reporting/headline-templates/review.js +0 -38
  235. package/dist/reporting/headline-templates/review.js.map +0 -1
  236. package/dist/reporting/report-parser-slots/audit-report.d.ts +0 -13
  237. package/dist/reporting/report-parser-slots/audit-report.d.ts.map +0 -1
  238. package/dist/reporting/report-parser-slots/audit-report.js +0 -9
  239. package/dist/reporting/report-parser-slots/audit-report.js.map +0 -1
  240. package/dist/reporting/report-parser-slots/retry-report.d.ts +0 -8
  241. package/dist/reporting/report-parser-slots/retry-report.d.ts.map +0 -1
  242. package/dist/reporting/report-parser-slots/retry-report.js +0 -9
  243. package/dist/reporting/report-parser-slots/retry-report.js.map +0 -1
  244. package/dist/reporting/report-parser-slots/review-report.d.ts +0 -14
  245. package/dist/reporting/report-parser-slots/review-report.d.ts.map +0 -1
  246. package/dist/reporting/report-parser-slots/review-report.js +0 -9
  247. package/dist/reporting/report-parser-slots/review-report.js.map +0 -1
  248. package/dist/tools/audit/plan-audit-verdict.d.ts +0 -15
  249. package/dist/tools/audit/plan-audit-verdict.d.ts.map +0 -1
  250. package/dist/tools/audit/plan-audit-verdict.js +0 -44
  251. package/dist/tools/audit/plan-audit-verdict.js.map +0 -1
  252. package/dist/tools/execute-plan/draft-id.d.ts +0 -12
  253. package/dist/tools/execute-plan/draft-id.d.ts.map +0 -1
  254. package/dist/tools/execute-plan/draft-id.js +0 -46
  255. package/dist/tools/execute-plan/draft-id.js.map +0 -1
  256. package/dist/tools/execute-plan/schema.d.ts +0 -65
  257. package/dist/tools/execute-plan/schema.d.ts.map +0 -1
  258. package/dist/tools/execute-plan/schema.js +0 -32
  259. package/dist/tools/execute-plan/schema.js.map +0 -1
  260. package/dist/tools/parallel-criteria-prompt.d.ts.map +0 -1
  261. package/dist/tools/parallel-criteria-prompt.js.map +0 -1
  262. package/dist/tools/shared/severity-ladder.d.ts +0 -2
  263. package/dist/tools/shared/severity-ladder.d.ts.map +0 -1
  264. package/dist/tools/shared/severity-ladder.js +0 -9
  265. package/dist/tools/shared/severity-ladder.js.map +0 -1
@@ -1,74 +0,0 @@
1
- import { spawn } from 'node:child_process';
2
- /**
3
- * Returns the list of porcelain-reported dirty file paths in cwd, or []
4
- * on any failure (timeout, spawn error, non-git repo). Never throws.
5
- */
6
- export async function getDirtyFiles(cwd, opts = {}) {
7
- const timeoutMs = opts.timeoutMs ?? 5000;
8
- return new Promise((resolve) => {
9
- let settled = false;
10
- const done = (v) => { if (!settled) {
11
- settled = true;
12
- resolve(v);
13
- } };
14
- let child;
15
- try {
16
- child = spawn('git', ['-C', cwd, 'status', '--porcelain'], {
17
- stdio: ['ignore', 'pipe', 'pipe'],
18
- // windowsHide: suppress the console window Windows opens per spawned
19
- // console binary when the daemon has no attached console. No-op on POSIX.
20
- windowsHide: true,
21
- });
22
- }
23
- catch {
24
- done([]);
25
- return;
26
- }
27
- let out = '';
28
- child.stdout?.on('data', (b) => { out += b.toString('utf8'); });
29
- child.stderr?.on('data', () => { });
30
- child.on('error', () => done([]));
31
- child.on('exit', (code) => {
32
- if (code !== 0) {
33
- done([]);
34
- return;
35
- }
36
- const files = out.split('\n')
37
- .filter(Boolean)
38
- .map((l) => {
39
- const path = l.substring(3);
40
- if (path.startsWith('"') && path.endsWith('"')) {
41
- try {
42
- return JSON.parse(path);
43
- }
44
- catch {
45
- return path;
46
- }
47
- }
48
- return path;
49
- })
50
- .filter(Boolean);
51
- done(files);
52
- });
53
- const t = setTimeout(() => { try {
54
- child.kill('SIGKILL');
55
- }
56
- catch { } done([]); }, timeoutMs);
57
- child.on('exit', () => clearTimeout(t));
58
- });
59
- }
60
- /**
61
- * Builds the [REPO HYGIENE] advisory string. Sorts files lexicographically;
62
- * lists the first 20 and appends ", … (+N more)" when N > 0.
63
- */
64
- export function formatHygieneAdvisory(files) {
65
- const sorted = [...files].sort();
66
- const shown = sorted.slice(0, 20);
67
- const remaining = sorted.length - shown.length;
68
- const list = shown.join(', ') + (remaining > 0 ? `, … (+${remaining} more)` : '');
69
- return ('[REPO HYGIENE] The previous task in this serial group left uncommitted ' +
70
- `changes in the following files: ${list}. Review these before editing ` +
71
- 'the same paths; your `getRealFilesChanged` will attribute them to your ' +
72
- 'task if you commit.\n\n');
73
- }
74
- //# sourceMappingURL=repo-hygiene.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repo-hygiene.js","sourceRoot":"","sources":["../../src/lifecycle/repo-hygiene.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAI3C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAW,EACX,OAA0B,EAAE;IAE5B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC;IACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,IAAI,GAAG,CAAC,CAAW,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAAC,OAAO,GAAG,IAAI,CAAC;YAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAAC,CAAC,CAAC,CAAC,CAAC;QAChF,IAAI,KAAK,CAAC;QACV,IAAI,CAAC;YACH,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE;gBACzD,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;gBACjC,qEAAqE;gBACrE,0EAA0E;gBAC1E,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,EAAE,CAAC,CAAC;YAAC,OAAO;QACnB,CAAC;QACD,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACnC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAClC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YACrC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;iBAC1B,MAAM,CAAC,OAAO,CAAC;iBACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACT,MAAM,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/C,IAAI,CAAC;wBACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC1B,CAAC;oBAAC,MAAM,CAAC;wBACP,OAAO,IAAI,CAAC;oBACd,CAAC;gBACH,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;iBACD,MAAM,CAAC,OAAO,CAAC,CAAC;YACnB,IAAI,CAAC,KAAK,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAC7F,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAe;IACnD,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClF,OAAO,CACL,yEAAyE;QACzE,mCAAmC,IAAI,gCAAgC;QACvE,yEAAyE;QACzE,yBAAyB,CAC1B,CAAC;AACJ,CAAC"}
@@ -1,23 +0,0 @@
1
- import type { RuntimeRunResult } from '../types.js';
2
- export interface TaskCompletionSummary {
3
- batchId: string;
4
- taskIndexZero: number;
5
- totalTasks: number;
6
- terminalStatus: string;
7
- totalDurationMs: number;
8
- totalCostUSD: number | null;
9
- totalInputTokens: number | null;
10
- totalOutputTokens: number | null;
11
- turns: number;
12
- filesWrittenCount: number;
13
- specReviewVerdict: string;
14
- qualityReviewVerdict: string;
15
- }
16
- export declare function computeTaskCompletionSummary(args: {
17
- runResult: RuntimeRunResult;
18
- taskIndexZero: number;
19
- totalTasks: number;
20
- batchId: string;
21
- }): TaskCompletionSummary;
22
- export declare function formatTaskDoneLine(s: TaskCompletionSummary): string;
23
- //# sourceMappingURL=task-completion-summary.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"task-completion-summary.d.ts","sourceRoot":"","sources":["../../src/lifecycle/task-completion-summary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AASpD,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAwBD,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IACjD,SAAS,EAAE,gBAAgB,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,qBAAqB,CA+CxB;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAMnE"}
@@ -1,83 +0,0 @@
1
- import { clampStageCost, clampTaskCost, clampInputTokens, clampOutputTokens, clampDurationMsTotal, } from '../events/to-wire-record.js';
2
- // Derive each total INDEPENDENTLY from stage stats, mirroring event-builder
3
- // exactly. Top-level totals must NEVER depend on runResult.usage — that field
4
- // only carries the last implementer attempt and would lose reviewer + earlier
5
- // rework cost (the same Gap 2 bug we already fixed in event-builder).
6
- //
7
- // Clamping is identical to event-builder via shared helpers from
8
- // packages/core/src/telemetry/clamp.ts — guarantees the summary line and
9
- // the V3 event never disagree on cost/token/duration values.
10
- function deriveTerminalStatus(rr) {
11
- const tr = rr.terminationReason;
12
- if (!tr || typeof tr !== 'object')
13
- return 'incomplete';
14
- switch (tr.cause) {
15
- case 'finished': return 'ok';
16
- case 'incomplete':
17
- case 'degenerate_exhausted': return 'incomplete';
18
- case 'timeout': return 'timeout';
19
- case 'brief_too_vague': return 'brief_too_vague';
20
- case 'error': return 'error';
21
- default: return 'incomplete';
22
- }
23
- }
24
- export function computeTaskCompletionSummary(args) {
25
- const { runResult, taskIndexZero, totalTasks, batchId } = args;
26
- const stageEntries = Object.values(runResult.stageStats ?? {}).filter((s) => s.entered);
27
- // Sum across entered stages with per-stage clamping, then apply
28
- // top-level clamping — exactly mirroring the two-level clamping in
29
- // event-builder.ts (extractStageData + buildTaskCompletedEvent).
30
- const sumFinite = (key, clampStage, clampTotal) => {
31
- let total = 0;
32
- let anyFinite = false;
33
- for (const s of stageEntries) {
34
- const v = s[key];
35
- if (typeof v === 'number' && Number.isFinite(v)) {
36
- total += clampStage(v);
37
- anyFinite = true;
38
- }
39
- }
40
- return anyFinite ? clampTotal(total) : null;
41
- };
42
- const totalDurationMs = clampDurationMsTotal(stageEntries.reduce((s, st) => {
43
- const v = st['durationMs'];
44
- return s + (typeof v === 'number' && Number.isFinite(v) ? v : 0);
45
- }, 0));
46
- return {
47
- batchId,
48
- taskIndexZero,
49
- totalTasks,
50
- terminalStatus: deriveTerminalStatus(runResult),
51
- totalDurationMs,
52
- totalCostUSD: sumFinite('costUSD', clampStageCost, clampTaskCost),
53
- totalInputTokens: sumFinite('inputTokens', clampInputTokens, clampInputTokens),
54
- totalOutputTokens: sumFinite('outputTokens', clampOutputTokens, clampOutputTokens),
55
- turns: runResult.turns ?? 0,
56
- filesWrittenCount: runResult.filesWritten?.length ?? 0,
57
- specReviewVerdict: runResult.specReviewStatus ?? 'not_applicable',
58
- qualityReviewVerdict: runResult.qualityReviewStatus ?? 'not_applicable',
59
- };
60
- }
61
- export function formatTaskDoneLine(s) {
62
- const idx = `task=${s.taskIndexZero + 1}/${s.totalTasks} taskIndex=${s.taskIndexZero}`;
63
- const dur = formatDur(s.totalDurationMs);
64
- const tokens = formatTokens(s.totalInputTokens, s.totalOutputTokens);
65
- const cost = s.totalCostUSD === null ? '$unknown' : `$${s.totalCostUSD.toFixed(2)}`;
66
- return `[mmagent] batch=${s.batchId.slice(0, 8)} ${idx} done: ${s.terminalStatus} in ${dur}, ${tokens}, ${cost}, ${s.turns} turns, ${s.filesWrittenCount} file(s) written, reviews [spec=${s.specReviewVerdict}, quality=${s.qualityReviewVerdict}]`;
67
- }
68
- function formatDur(ms) {
69
- if (ms < 60_000)
70
- return `${Math.round(ms / 1000)}s`;
71
- const m = Math.floor(ms / 60_000);
72
- const sec = Math.round((ms % 60_000) / 1000);
73
- return `${m}m ${sec}s`;
74
- }
75
- function formatTokens(input, output) {
76
- if (input === null && output === null)
77
- return 'tokens=unknown';
78
- const total = (input ?? 0) + (output ?? 0);
79
- if (total < 1000)
80
- return `${total} tokens`;
81
- return `${Math.ceil(total / 1000)}k tokens`;
82
- }
83
- //# sourceMappingURL=task-completion-summary.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"task-completion-summary.js","sourceRoot":"","sources":["../../src/lifecycle/task-completion-summary.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import type { TaskSpec } from '../types/task-spec.js';
2
- export interface TaskGroup {
3
- key: string;
4
- tasks: Array<{
5
- task: TaskSpec;
6
- originalIndex: number;
7
- }>;
8
- }
9
- /**
10
- * Buckets tasks by (git toplevel of cwd) ?? realpath(cwd).
11
- * Tasks in the same bucket share a write surface and must run serially.
12
- *
13
- * - Memoizes resolveGitToplevel per unique cwd.
14
- * - Group order follows the smallest originalIndex in each group, so the
15
- * group containing tasks[0] is first.
16
- * - Within each group, tasks appear in caller input order.
17
- */
18
- export declare function groupTasksByRepo(tasks: TaskSpec[]): Promise<TaskGroup[]>;
19
- //# sourceMappingURL=task-grouping.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"task-grouping.d.ts","sourceRoot":"","sources":["../../src/lifecycle/task-grouping.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGtD,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,QAAQ,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACzD;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAuC9E"}
@@ -1,48 +0,0 @@
1
- import { realpathSync } from 'node:fs';
2
- import { resolveGitToplevel } from './git-toplevel.js';
3
- /**
4
- * Buckets tasks by (git toplevel of cwd) ?? realpath(cwd).
5
- * Tasks in the same bucket share a write surface and must run serially.
6
- *
7
- * - Memoizes resolveGitToplevel per unique cwd.
8
- * - Group order follows the smallest originalIndex in each group, so the
9
- * group containing tasks[0] is first.
10
- * - Within each group, tasks appear in caller input order.
11
- */
12
- export async function groupTasksByRepo(tasks) {
13
- const cwds = Array.from(new Set(tasks.map((t) => t.cwd ?? process.cwd())));
14
- const toplevelByCwd = new Map();
15
- await Promise.all(cwds.map(async (c) => {
16
- toplevelByCwd.set(c, await resolveGitToplevel(c));
17
- }));
18
- const realpathByCwd = new Map();
19
- const realpathOf = (cwd) => {
20
- if (realpathByCwd.has(cwd))
21
- return realpathByCwd.get(cwd);
22
- let resolved;
23
- try {
24
- resolved = realpathSync(cwd);
25
- }
26
- catch {
27
- resolved = cwd; // verbatim fallback
28
- }
29
- realpathByCwd.set(cwd, resolved);
30
- return resolved;
31
- };
32
- const byKey = new Map();
33
- const keyOrder = []; // tracks first appearance for stable group order
34
- tasks.forEach((task, originalIndex) => {
35
- const cwd = task.cwd ?? process.cwd();
36
- const toplevel = toplevelByCwd.get(cwd);
37
- const key = toplevel ?? realpathOf(cwd);
38
- let group = byKey.get(key);
39
- if (!group) {
40
- group = { key, tasks: [] };
41
- byKey.set(key, group);
42
- keyOrder.push(key);
43
- }
44
- group.tasks.push({ task, originalIndex });
45
- });
46
- return keyOrder.map((k) => byKey.get(k));
47
- }
48
- //# sourceMappingURL=task-grouping.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"task-grouping.js","sourceRoot":"","sources":["../../src/lifecycle/task-grouping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAOvD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAiB;IACtD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAyB,CAAC;IACvD,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QACnB,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC,CACH,CAAC;IAEF,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;IAChD,MAAM,UAAU,GAAG,CAAC,GAAW,EAAU,EAAE;QACzC,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,aAAa,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;QAC3D,IAAI,QAAgB,CAAC;QACrB,IAAI,CAAC;YACH,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,GAAG,CAAC,CAAC,oBAAoB;QACtC,CAAC;QACD,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACjC,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC3C,MAAM,QAAQ,GAAa,EAAE,CAAC,CAAC,iDAAiD;IAEhF,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAC3B,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACtB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC;AAC5C,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { HeadlineTemplate } from '../headline-composer.js';
2
- export declare const auditHeadlineTemplate: HeadlineTemplate;
3
- //# sourceMappingURL=audit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../../src/reporting/headline-templates/audit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAKhE,eAAO,MAAM,qBAAqB,EAAE,gBAuCnC,CAAC"}
@@ -1,37 +0,0 @@
1
- import { isNotApplicable } from '../not-applicable.js';
2
- import { countHighOrCritical, parseNarrativeFindings } from '../severity.js';
3
- export const auditHeadlineTemplate = {
4
- compose({ report, status, runResult, task }) {
5
- const r = report;
6
- const reportInapplicable = !r || isNotApplicable(r);
7
- // Source priority for findings (v4.5.2+):
8
- // 1. Structured report's `findings` (rare — only when the worker
9
- // emitted proper JSON matching the audit reportSchema).
10
- // 2. parseNarrativeFindings(runResult.output) — recovers findings
11
- // directly from the implementer's `## Finding N:` output when
12
- // no structured report was emitted. This is the load-bearing
13
- // path for read-route audits (their workers emit narrative,
14
- // not structured JSON).
15
- const reportFindings = !reportInapplicable && Array.isArray(r?.findings) ? r.findings : [];
16
- let findings = reportFindings.length > 0
17
- ? reportFindings
18
- : [];
19
- if (findings.length === 0 && typeof runResult?.output === 'string') {
20
- const narrative = parseNarrativeFindings(runResult.output);
21
- if (narrative.length > 0)
22
- findings = narrative;
23
- }
24
- if (findings.length === 0 && reportInapplicable) {
25
- return `[${status}] audit completed`;
26
- }
27
- const high = countHighOrCritical(findings);
28
- // Document path fallback: when narrative-parse is the active source,
29
- // the structured report's documentPath is absent; pull from the task's
30
- // filePaths instead.
31
- const path = (!reportInapplicable && typeof r?.documentPath === 'string' ? r.documentPath : '')
32
- || task?.filePaths?.[0]
33
- || '';
34
- return `[${status}] audit ${path}: ${findings.length} findings (${high} high)`;
35
- },
36
- };
37
- //# sourceMappingURL=audit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../../src/reporting/headline-templates/audit.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAE7E,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACrD,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE;QACzC,MAAM,CAAC,GAAG,MAAiD,CAAC;QAC5D,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC;QAEpD,0CAA0C;QAC1C,mEAAmE;QACnE,6DAA6D;QAC7D,oEAAoE;QACpE,mEAAmE;QACnE,kEAAkE;QAClE,iEAAiE;QACjE,6BAA6B;QAC7B,MAAM,cAAc,GAAG,CAAC,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,IAAI,QAAQ,GACV,cAAc,CAAC,MAAM,GAAG,CAAC;YACvB,CAAC,CAAE,cAAgD;YACnD,CAAC,CAAC,EAAE,CAAC;QACT,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,SAAS,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC;YACnE,MAAM,SAAS,GAAG,sBAAsB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC3D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;gBAAE,QAAQ,GAAG,SAAS,CAAC;QACjD,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,kBAAkB,EAAE,CAAC;YAChD,OAAO,IAAI,MAAM,mBAAmB,CAAC;QACvC,CAAC;QAED,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAE3C,qEAAqE;QACrE,uEAAuE;QACvE,qBAAqB;QACrB,MAAM,IAAI,GACR,CAAC,CAAC,kBAAkB,IAAI,OAAO,CAAC,EAAE,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;eAC/E,IAA6C,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;eAC9D,EAAE,CAAC;QAER,OAAO,IAAI,MAAM,WAAW,IAAI,KAAK,QAAQ,CAAC,MAAM,cAAc,IAAI,QAAQ,CAAC;IACjF,CAAC;CACF,CAAC"}
@@ -1,25 +0,0 @@
1
- import type { HeadlineTemplate } from '../headline-composer.js';
2
- /**
3
- * Compose a terminal headline for debug.
4
- *
5
- * Tool sweep #4 rewrite: bring debug into the same shape as audit and
6
- * review/verify so operator-facing logs stay consistent across tools:
7
- *
8
- * [ok] debug <path>: 3 findings (0 high)
9
- * [error] debug: 1 findings (1 high)
10
- * [ok] debug completed
11
- *
12
- * Previously emitted "debug: 1/1 tasks complete" with no status prefix
13
- * and no findings count — operator could not tell ok from error and
14
- * had no signal about how many real findings landed.
15
- *
16
- * Findings source (v4.5.2+): parseNarrativeFindings(runResult.output)
17
- * recovers `## Finding N:` blocks directly from the implementer's
18
- * narrative.
19
- *
20
- * Note: debug's reportSchema.parse is intentionally a thrower (the tool
21
- * doesn't emit a structured report), so `report` is always notApplicable
22
- * here — there's no `report.findings` source to read.
23
- */
24
- export declare const debugHeadlineTemplate: HeadlineTemplate;
25
- //# sourceMappingURL=debug.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../../src/reporting/headline-templates/debug.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAGhE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,qBAAqB,EAAE,gBAoBnC,CAAC"}
@@ -1,42 +0,0 @@
1
- import { countHighOrCritical, parseNarrativeFindings } from '../severity.js';
2
- /**
3
- * Compose a terminal headline for debug.
4
- *
5
- * Tool sweep #4 rewrite: bring debug into the same shape as audit and
6
- * review/verify so operator-facing logs stay consistent across tools:
7
- *
8
- * [ok] debug <path>: 3 findings (0 high)
9
- * [error] debug: 1 findings (1 high)
10
- * [ok] debug completed
11
- *
12
- * Previously emitted "debug: 1/1 tasks complete" with no status prefix
13
- * and no findings count — operator could not tell ok from error and
14
- * had no signal about how many real findings landed.
15
- *
16
- * Findings source (v4.5.2+): parseNarrativeFindings(runResult.output)
17
- * recovers `## Finding N:` blocks directly from the implementer's
18
- * narrative.
19
- *
20
- * Note: debug's reportSchema.parse is intentionally a thrower (the tool
21
- * doesn't emit a structured report), so `report` is always notApplicable
22
- * here — there's no `report.findings` source to read.
23
- */
24
- export const debugHeadlineTemplate = {
25
- compose({ status, runResult, task }) {
26
- let findings = [];
27
- if (typeof runResult?.output === 'string') {
28
- const narrative = parseNarrativeFindings(runResult.output);
29
- if (narrative.length > 0)
30
- findings = narrative;
31
- }
32
- const path = task?.filePaths?.[0] || '';
33
- if (findings.length === 0 && !path) {
34
- return `[${status}] debug completed`;
35
- }
36
- const high = countHighOrCritical(findings);
37
- return path
38
- ? `[${status}] debug ${path}: ${findings.length} findings (${high} high)`
39
- : `[${status}] debug: ${findings.length} findings (${high} high)`;
40
- },
41
- };
42
- //# sourceMappingURL=debug.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/reporting/headline-templates/debug.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACrD,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE;QACjC,IAAI,QAAQ,GAAkC,EAAE,CAAC;QACjD,IAAI,OAAO,SAAS,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,SAAS,GAAG,sBAAsB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC3D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;gBAAE,QAAQ,GAAG,SAAS,CAAC;QACjD,CAAC;QAED,MAAM,IAAI,GACP,IAA6C,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEvE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,IAAI,MAAM,mBAAmB,CAAC;QACvC,CAAC;QAED,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC3C,OAAO,IAAI;YACT,CAAC,CAAC,IAAI,MAAM,WAAW,IAAI,KAAK,QAAQ,CAAC,MAAM,cAAc,IAAI,QAAQ;YACzE,CAAC,CAAC,IAAI,MAAM,YAAY,QAAQ,CAAC,MAAM,cAAc,IAAI,QAAQ,CAAC;IACtE,CAAC;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { HeadlineTemplate } from '../headline-composer.js';
2
- export declare const retryHeadlineTemplate: HeadlineTemplate;
3
- //# sourceMappingURL=retry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../../src/reporting/headline-templates/retry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,eAAO,MAAM,qBAAqB,EAAE,gBAOnC,CAAC"}
@@ -1,9 +0,0 @@
1
- export const retryHeadlineTemplate = {
2
- compose() {
3
- // The retry envelope's headline is overwritten by postProcessEnvelope to
4
- // reflect total/completed counts. This default keeps shape uniformity if
5
- // the post-process step is ever skipped.
6
- return 'retry';
7
- },
8
- };
9
- //# sourceMappingURL=retry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../../src/reporting/headline-templates/retry.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACrD,OAAO;QACL,yEAAyE;QACzE,yEAAyE;QACzE,yCAAyC;QACzC,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { HeadlineTemplate } from '../headline-composer.js';
2
- export declare const reviewHeadlineTemplate: HeadlineTemplate;
3
- //# sourceMappingURL=review.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../../src/reporting/headline-templates/review.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAKhE,eAAO,MAAM,sBAAsB,EAAE,gBAuCpC,CAAC"}
@@ -1,38 +0,0 @@
1
- import { isNotApplicable } from '../not-applicable.js';
2
- import { countHighOrCritical, parseNarrativeFindings } from '../severity.js';
3
- export const reviewHeadlineTemplate = {
4
- compose({ report, status, taskBrief, runResult, task }) {
5
- const r = report;
6
- const reportInapplicable = !r || isNotApplicable(r);
7
- // Source priority (v4.5.2+):
8
- // 1. report.findings (structured — when the worker emitted proper JSON
9
- // matching the per-route report schema)
10
- // 2. parseNarrativeFindings(runResult.output) (recover from the
11
- // implementer's `## Finding N:` blocks when no structured report)
12
- const reportFindings = !reportInapplicable && Array.isArray(r?.findings) ? r.findings : [];
13
- let findings = reportFindings.length > 0
14
- ? reportFindings
15
- : [];
16
- if (findings.length === 0 && typeof runResult?.output === 'string') {
17
- const narrative = parseNarrativeFindings(runResult.output);
18
- if (narrative.length > 0)
19
- findings = narrative;
20
- }
21
- const blocking = countHighOrCritical(findings);
22
- const path = (!reportInapplicable && typeof r?.filePath === 'string' ? r.filePath : '')
23
- || task?.filePaths?.[0]
24
- || '';
25
- // Mirror audit's gap-A fix: only collapse to "review completed"
26
- // when we have no path AND no findings. With a path, always emit
27
- // the structured form so a clean review still names the file:
28
- // [ok] review packages/foo.ts: 0 findings (0 blocking)
29
- // Previously this branch fell back to `${taskBrief}` which the
30
- // brief compiler reduces to the route name, producing the
31
- // operator-useless headline "[ok] review: review".
32
- if (findings.length === 0 && !path) {
33
- return `[${status}] review completed`;
34
- }
35
- return `[${status}] review ${path}: ${findings.length} findings (${blocking} blocking)`;
36
- },
37
- };
38
- //# sourceMappingURL=review.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"review.js","sourceRoot":"","sources":["../../../src/reporting/headline-templates/review.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAE7E,MAAM,CAAC,MAAM,sBAAsB,GAAqB;IACtD,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE;QACpD,MAAM,CAAC,GAAG,MAAkD,CAAC;QAC7D,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC;QAEpD,6BAA6B;QAC7B,yEAAyE;QACzE,6CAA6C;QAC7C,kEAAkE;QAClE,uEAAuE;QACvE,MAAM,cAAc,GAAG,CAAC,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,IAAI,QAAQ,GACV,cAAc,CAAC,MAAM,GAAG,CAAC;YACvB,CAAC,CAAE,cAAgD;YACnD,CAAC,CAAC,EAAE,CAAC;QACT,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,SAAS,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC;YACnE,MAAM,SAAS,GAAG,sBAAsB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC3D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;gBAAE,QAAQ,GAAG,SAAS,CAAC;QACjD,CAAC;QAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,IAAI,GACR,CAAC,CAAC,kBAAkB,IAAI,OAAO,CAAC,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;eACvE,IAA6C,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;eAC9D,EAAE,CAAC;QAER,gEAAgE;QAChE,iEAAiE;QACjE,8DAA8D;QAC9D,yDAAyD;QACzD,+DAA+D;QAC/D,0DAA0D;QAC1D,mDAAmD;QACnD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,IAAI,MAAM,oBAAoB,CAAC;QACxC,CAAC;QAED,OAAO,IAAI,MAAM,YAAY,IAAI,KAAK,QAAQ,CAAC,MAAM,cAAc,QAAQ,YAAY,CAAC;IAC1F,CAAC;CACF,CAAC"}
@@ -1,13 +0,0 @@
1
- import type { ReportSchema } from '../structured-report-parser.js';
2
- export interface AuditReport {
3
- documentPath: string;
4
- findings: Array<{
5
- severity: 'low' | 'medium' | 'high';
6
- category: string;
7
- message: string;
8
- evidenceQuote: string;
9
- annotatorConfidence: number;
10
- }>;
11
- }
12
- export declare const auditReportSchema: ReportSchema<AuditReport>;
13
- //# sourceMappingURL=audit-report.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audit-report.d.ts","sourceRoot":"","sources":["../../../src/reporting/report-parser-slots/audit-report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEnE,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC;QACd,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;QACpC,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,EAAE,MAAM,CAAC;QACtB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC,CAAC;CACJ;AAED,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAMvD,CAAC"}
@@ -1,9 +0,0 @@
1
- export const auditReportSchema = {
2
- parse(text) {
3
- const m = text.match(/```json\n([\s\S]+?)\n```/);
4
- if (!m)
5
- throw new Error('audit report missing JSON block');
6
- return JSON.parse(m[1]);
7
- },
8
- };
9
- //# sourceMappingURL=audit-report.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audit-report.js","sourceRoot":"","sources":["../../../src/reporting/report-parser-slots/audit-report.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,MAAM,iBAAiB,GAA8B;IAC1D,KAAK,CAAC,IAAY;QAChB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACjD,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;CACF,CAAC"}
@@ -1,8 +0,0 @@
1
- import type { ReportSchema } from '../structured-report-parser.js';
2
- export interface RetryReport {
3
- retriedTaskIndex: number;
4
- originalTaskIndex: number;
5
- inheritedToolCategory: string;
6
- }
7
- export declare const retryReportSchema: ReportSchema<RetryReport>;
8
- //# sourceMappingURL=retry-report.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retry-report.d.ts","sourceRoot":"","sources":["../../../src/reporting/report-parser-slots/retry-report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAKnE,MAAM,WAAW,WAAW;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAMvD,CAAC"}
@@ -1,9 +0,0 @@
1
- export const retryReportSchema = {
2
- parse(text) {
3
- const m = text.match(/```json\n([\s\S]+?)\n```/);
4
- if (!m)
5
- throw new Error('retry report missing JSON block');
6
- return JSON.parse(m[1]);
7
- },
8
- };
9
- //# sourceMappingURL=retry-report.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retry-report.js","sourceRoot":"","sources":["../../../src/reporting/report-parser-slots/retry-report.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,iBAAiB,GAA8B;IAC1D,KAAK,CAAC,IAAY;QAChB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACjD,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;CACF,CAAC"}
@@ -1,14 +0,0 @@
1
- import type { ReportSchema } from '../structured-report-parser.js';
2
- export interface ReviewReport {
3
- filePath: string;
4
- findings: Array<{
5
- severity: 'low' | 'medium' | 'high';
6
- category: string;
7
- message: string;
8
- lineNumber?: number;
9
- evidenceQuote: string;
10
- annotatorConfidence: number;
11
- }>;
12
- }
13
- export declare const reviewReportSchema: ReportSchema<ReviewReport>;
14
- //# sourceMappingURL=review-report.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"review-report.d.ts","sourceRoot":"","sources":["../../../src/reporting/report-parser-slots/review-report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEnE,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC;QACd,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;QACpC,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC,CAAC;CACJ;AAED,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,YAAY,CAMzD,CAAC"}
@@ -1,9 +0,0 @@
1
- export const reviewReportSchema = {
2
- parse(text) {
3
- const m = text.match(/```json\n([\s\S]+?)\n```/);
4
- if (!m)
5
- throw new Error('review report missing JSON block');
6
- return JSON.parse(m[1]);
7
- },
8
- };
9
- //# sourceMappingURL=review-report.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"review-report.js","sourceRoot":"","sources":["../../../src/reporting/report-parser-slots/review-report.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,MAAM,kBAAkB,GAA+B;IAC5D,KAAK,CAAC,IAAY;QAChB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACjD,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;CACF,CAAC"}
@@ -1,15 +0,0 @@
1
- export type PlanTaskVerdict = 'EXECUTABLE' | 'PARTIAL' | 'BLOCKED';
2
- export interface PlanAuditFinding {
3
- taskId: string;
4
- severity: 'critical' | 'high' | 'medium' | 'low';
5
- }
6
- export declare function derivePlanTaskVerdicts(findings: ReadonlyArray<PlanAuditFinding>): Map<string, PlanTaskVerdict>;
7
- export interface PlanAuditSummary {
8
- text: string;
9
- executable: string[];
10
- partial: string[];
11
- blocked: string[];
12
- nextBlocker: string | null;
13
- }
14
- export declare function composePlanAuditSummary(allTaskIds: ReadonlyArray<string>, verdicts: ReadonlyMap<string, PlanTaskVerdict>): PlanAuditSummary;
15
- //# sourceMappingURL=plan-audit-verdict.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan-audit-verdict.d.ts","sourceRoot":"","sources":["../../../src/tools/audit/plan-audit-verdict.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC;AAEnE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;CAClD;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,aAAa,CAAC,gBAAgB,CAAC,GACxC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAa9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,EACjC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,GAC7C,gBAAgB,CAsBlB"}