@zhixuan92/multi-model-agent-core 4.0.2 → 4.0.4

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 (263) hide show
  1. package/README.md +20 -6
  2. package/dist/bounded-execution/activity-tracker-types.d.ts +2 -2
  3. package/dist/bounded-execution/activity-tracker-types.d.ts.map +1 -1
  4. package/dist/bounded-execution/activity-tracker.d.ts +3 -3
  5. package/dist/bounded-execution/activity-tracker.d.ts.map +1 -1
  6. package/dist/bounded-execution/activity-tracker.js +15 -15
  7. package/dist/bounded-execution/activity-tracker.js.map +1 -1
  8. package/dist/config/model-profile-registry.d.ts +0 -10
  9. package/dist/config/model-profile-registry.d.ts.map +1 -1
  10. package/dist/config/model-profile-registry.js +126 -8
  11. package/dist/config/model-profile-registry.js.map +1 -1
  12. package/dist/config/schema.d.ts +0 -1
  13. package/dist/config/schema.d.ts.map +1 -1
  14. package/dist/config/schema.js +3 -1
  15. package/dist/config/schema.js.map +1 -1
  16. package/dist/escalation/delegate-with-escalation.d.ts +24 -0
  17. package/dist/escalation/delegate-with-escalation.d.ts.map +1 -1
  18. package/dist/escalation/delegate-with-escalation.js +5 -0
  19. package/dist/escalation/delegate-with-escalation.js.map +1 -1
  20. package/dist/escalation/fallback-types.d.ts +1 -1
  21. package/dist/escalation/fallback-types.d.ts.map +1 -1
  22. package/dist/escalation/fallback.js +2 -2
  23. package/dist/escalation/fallback.js.map +1 -1
  24. package/dist/events/cloud-events.d.ts +3 -4
  25. package/dist/events/cloud-events.d.ts.map +1 -1
  26. package/dist/events/cloud-events.js +0 -1
  27. package/dist/events/cloud-events.js.map +1 -1
  28. package/dist/events/event-builder.d.ts +4 -2
  29. package/dist/events/event-builder.d.ts.map +1 -1
  30. package/dist/events/event-builder.js +47 -45
  31. package/dist/events/event-builder.js.map +1 -1
  32. package/dist/events/observability-events.d.ts +7 -8
  33. package/dist/events/observability-events.d.ts.map +1 -1
  34. package/dist/events/running-headline-sink.d.ts +26 -0
  35. package/dist/events/running-headline-sink.d.ts.map +1 -0
  36. package/dist/events/running-headline-sink.js +116 -0
  37. package/dist/events/running-headline-sink.js.map +1 -0
  38. package/dist/events/telemetry-types.d.ts +20 -20
  39. package/dist/events/telemetry-types.js +8 -8
  40. package/dist/events/telemetry-types.js.map +1 -1
  41. package/dist/events/verbose-log-channel.d.ts +22 -2
  42. package/dist/events/verbose-log-channel.d.ts.map +1 -1
  43. package/dist/events/verbose-log-channel.js +46 -9
  44. package/dist/events/verbose-log-channel.js.map +1 -1
  45. package/dist/index.d.ts +4 -1
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +4 -1
  48. package/dist/index.js.map +1 -1
  49. package/dist/intake/brief-compiler-slots/delegate.d.ts +1 -0
  50. package/dist/intake/brief-compiler-slots/delegate.d.ts.map +1 -1
  51. package/dist/intake/brief-compiler-slots/delegate.js +17 -2
  52. package/dist/intake/brief-compiler-slots/delegate.js.map +1 -1
  53. package/dist/lifecycle/diff-tracker.d.ts +72 -0
  54. package/dist/lifecycle/diff-tracker.d.ts.map +1 -0
  55. package/dist/lifecycle/diff-tracker.js +316 -0
  56. package/dist/lifecycle/diff-tracker.js.map +1 -0
  57. package/dist/lifecycle/executor-output-types.d.ts +2 -2
  58. package/dist/lifecycle/executor-output-types.d.ts.map +1 -1
  59. package/dist/lifecycle/handlers/baseline-handlers.d.ts.map +1 -1
  60. package/dist/lifecycle/handlers/baseline-handlers.js +48 -1
  61. package/dist/lifecycle/handlers/baseline-handlers.js.map +1 -1
  62. package/dist/lifecycle/handlers/prepare-execution-context-handler.d.ts +1 -1
  63. package/dist/lifecycle/handlers/prepare-execution-context-handler.d.ts.map +1 -1
  64. package/dist/lifecycle/handlers/prepare-execution-context-handler.js +23 -1
  65. package/dist/lifecycle/handlers/prepare-execution-context-handler.js.map +1 -1
  66. package/dist/lifecycle/handlers/quality-chain-handlers.d.ts.map +1 -1
  67. package/dist/lifecycle/handlers/quality-chain-handlers.js +177 -6
  68. package/dist/lifecycle/handlers/quality-chain-handlers.js.map +1 -1
  69. package/dist/lifecycle/handlers/review-diff-handler.d.ts.map +1 -1
  70. package/dist/lifecycle/handlers/review-diff-handler.js +74 -13
  71. package/dist/lifecycle/handlers/review-diff-handler.js.map +1 -1
  72. package/dist/lifecycle/handlers/run-verify-command-handler.js +11 -2
  73. package/dist/lifecycle/handlers/run-verify-command-handler.js.map +1 -1
  74. package/dist/lifecycle/handlers/spec-chain-handlers.d.ts.map +1 -1
  75. package/dist/lifecycle/handlers/spec-chain-handlers.js +135 -6
  76. package/dist/lifecycle/handlers/spec-chain-handlers.js.map +1 -1
  77. package/dist/lifecycle/handlers/terminal-handlers.d.ts +8 -0
  78. package/dist/lifecycle/handlers/terminal-handlers.d.ts.map +1 -1
  79. package/dist/lifecycle/handlers/terminal-handlers.js +168 -11
  80. package/dist/lifecycle/handlers/terminal-handlers.js.map +1 -1
  81. package/dist/lifecycle/lifecycle-context.d.ts +0 -2
  82. package/dist/lifecycle/lifecycle-context.d.ts.map +1 -1
  83. package/dist/lifecycle/merge-stage-stats.d.ts +58 -0
  84. package/dist/lifecycle/merge-stage-stats.d.ts.map +1 -0
  85. package/dist/lifecycle/merge-stage-stats.js +120 -0
  86. package/dist/lifecycle/merge-stage-stats.js.map +1 -0
  87. package/dist/lifecycle/shared-compute.js +4 -4
  88. package/dist/lifecycle/shared-compute.js.map +1 -1
  89. package/dist/lifecycle/stage-plan-builder.d.ts.map +1 -1
  90. package/dist/lifecycle/stage-plan-builder.js +6 -0
  91. package/dist/lifecycle/stage-plan-builder.js.map +1 -1
  92. package/dist/lifecycle/stage-plan-types.d.ts +18 -0
  93. package/dist/lifecycle/stage-plan-types.d.ts.map +1 -1
  94. package/dist/lifecycle/stage-progression.d.ts +20 -0
  95. package/dist/lifecycle/stage-progression.d.ts.map +1 -0
  96. package/dist/lifecycle/stage-progression.js +165 -0
  97. package/dist/lifecycle/stage-progression.js.map +1 -0
  98. package/dist/lifecycle/task-executor.d.ts.map +1 -1
  99. package/dist/lifecycle/task-executor.js +55 -10
  100. package/dist/lifecycle/task-executor.js.map +1 -1
  101. package/dist/lifecycle/task-runner.d.ts +7 -3
  102. package/dist/lifecycle/task-runner.d.ts.map +1 -1
  103. package/dist/lifecycle/task-runner.js +43 -7
  104. package/dist/lifecycle/task-runner.js.map +1 -1
  105. package/dist/providers/anthropic-messages-adapter.d.ts.map +1 -1
  106. package/dist/providers/anthropic-messages-adapter.js +25 -1
  107. package/dist/providers/anthropic-messages-adapter.js.map +1 -1
  108. package/dist/providers/base/result-builders.d.ts +1 -1
  109. package/dist/providers/base/result-builders.d.ts.map +1 -1
  110. package/dist/providers/base/result-builders.js +4 -4
  111. package/dist/providers/base/result-builders.js.map +1 -1
  112. package/dist/providers/make-runner-shell.d.ts.map +1 -1
  113. package/dist/providers/make-runner-shell.js +6 -5
  114. package/dist/providers/make-runner-shell.js.map +1 -1
  115. package/dist/providers/openai-chat-adapter.d.ts +0 -2
  116. package/dist/providers/openai-chat-adapter.d.ts.map +1 -1
  117. package/dist/providers/openai-chat-adapter.js +2 -3
  118. package/dist/providers/openai-chat-adapter.js.map +1 -1
  119. package/dist/providers/openai-responses-adapter.d.ts +1 -2
  120. package/dist/providers/openai-responses-adapter.d.ts.map +1 -1
  121. package/dist/providers/openai-responses-adapter.js +67 -39
  122. package/dist/providers/openai-responses-adapter.js.map +1 -1
  123. package/dist/providers/provider-factory.d.ts.map +1 -1
  124. package/dist/providers/provider-factory.js +51 -9
  125. package/dist/providers/provider-factory.js.map +1 -1
  126. package/dist/providers/runner-adapter.d.ts +10 -0
  127. package/dist/providers/runner-adapter.d.ts.map +1 -1
  128. package/dist/providers/runner-shell-types.d.ts +33 -0
  129. package/dist/providers/runner-shell-types.d.ts.map +1 -1
  130. package/dist/providers/runner-shell.d.ts +10 -1
  131. package/dist/providers/runner-shell.d.ts.map +1 -1
  132. package/dist/providers/runner-shell.js +251 -18
  133. package/dist/providers/runner-shell.js.map +1 -1
  134. package/dist/providers/runner-types.d.ts +21 -2
  135. package/dist/providers/runner-types.d.ts.map +1 -1
  136. package/dist/providers/tool-name-sets.d.ts +29 -0
  137. package/dist/providers/tool-name-sets.d.ts.map +1 -0
  138. package/dist/providers/tool-name-sets.js +41 -0
  139. package/dist/providers/tool-name-sets.js.map +1 -0
  140. package/dist/reporting/headline-composer.d.ts +12 -0
  141. package/dist/reporting/headline-composer.d.ts.map +1 -1
  142. package/dist/reporting/headline-composer.js.map +1 -1
  143. package/dist/reporting/headline-templates/audit.d.ts.map +1 -1
  144. package/dist/reporting/headline-templates/audit.js +35 -6
  145. package/dist/reporting/headline-templates/audit.js.map +1 -1
  146. package/dist/reporting/headline-templates/debug.d.ts +22 -3
  147. package/dist/reporting/headline-templates/debug.d.ts.map +1 -1
  148. package/dist/reporting/headline-templates/debug.js +38 -8
  149. package/dist/reporting/headline-templates/debug.js.map +1 -1
  150. package/dist/reporting/headline-templates/delegate.d.ts.map +1 -1
  151. package/dist/reporting/headline-templates/delegate.js +36 -6
  152. package/dist/reporting/headline-templates/delegate.js.map +1 -1
  153. package/dist/reporting/headline-templates/execute-plan.d.ts.map +1 -1
  154. package/dist/reporting/headline-templates/execute-plan.js +18 -6
  155. package/dist/reporting/headline-templates/execute-plan.js.map +1 -1
  156. package/dist/reporting/headline-templates/review.d.ts.map +1 -1
  157. package/dist/reporting/headline-templates/review.js +32 -8
  158. package/dist/reporting/headline-templates/review.js.map +1 -1
  159. package/dist/reporting/headline-templates/verify.d.ts.map +1 -1
  160. package/dist/reporting/headline-templates/verify.js +23 -6
  161. package/dist/reporting/headline-templates/verify.js.map +1 -1
  162. package/dist/reporting/headline-text.d.ts +36 -0
  163. package/dist/reporting/headline-text.d.ts.map +1 -0
  164. package/dist/reporting/headline-text.js +73 -0
  165. package/dist/reporting/headline-text.js.map +1 -0
  166. package/dist/reporting/report-parser-slots/verify-report.d.ts +17 -0
  167. package/dist/reporting/report-parser-slots/verify-report.d.ts.map +1 -1
  168. package/dist/reporting/report-parser-slots/verify-report.js +45 -3
  169. package/dist/reporting/report-parser-slots/verify-report.js.map +1 -1
  170. package/dist/reporting/severity.d.ts +62 -0
  171. package/dist/reporting/severity.d.ts.map +1 -0
  172. package/dist/reporting/severity.js +93 -0
  173. package/dist/reporting/severity.js.map +1 -0
  174. package/dist/reporting/structured-report.d.ts +3 -3
  175. package/dist/research/explore-orchestrator.d.ts.map +1 -1
  176. package/dist/research/explore-orchestrator.js +4 -5
  177. package/dist/research/explore-orchestrator.js.map +1 -1
  178. package/dist/review/annotator-engine.d.ts +8 -0
  179. package/dist/review/annotator-engine.d.ts.map +1 -1
  180. package/dist/review/annotator-engine.js +7 -1
  181. package/dist/review/annotator-engine.js.map +1 -1
  182. package/dist/review/annotator-output-parser.d.ts.map +1 -1
  183. package/dist/review/annotator-output-parser.js +94 -14
  184. package/dist/review/annotator-output-parser.js.map +1 -1
  185. package/dist/review/annotator-prompt-builder.d.ts +20 -0
  186. package/dist/review/annotator-prompt-builder.d.ts.map +1 -1
  187. package/dist/review/annotator-prompt-builder.js +52 -1
  188. package/dist/review/annotator-prompt-builder.js.map +1 -1
  189. package/dist/review/review-types.d.ts +6 -2
  190. package/dist/review/review-types.d.ts.map +1 -1
  191. package/dist/review/reviewer-engine.d.ts +25 -0
  192. package/dist/review/reviewer-engine.d.ts.map +1 -1
  193. package/dist/review/reviewer-engine.js +18 -1
  194. package/dist/review/reviewer-engine.js.map +1 -1
  195. package/dist/review/reviewer-output-parser.d.ts.map +1 -1
  196. package/dist/review/reviewer-output-parser.js +190 -13
  197. package/dist/review/reviewer-output-parser.js.map +1 -1
  198. package/dist/review/reviewer-prompt-builder.d.ts +4 -12
  199. package/dist/review/reviewer-prompt-builder.d.ts.map +1 -1
  200. package/dist/review/reviewer-prompt-builder.js.map +1 -1
  201. package/dist/review/templates/diff-review.d.ts +8 -0
  202. package/dist/review/templates/diff-review.d.ts.map +1 -1
  203. package/dist/review/templates/diff-review.js +34 -2
  204. package/dist/review/templates/diff-review.js.map +1 -1
  205. package/dist/review/templates/finding-criteria.d.ts +39 -0
  206. package/dist/review/templates/finding-criteria.d.ts.map +1 -0
  207. package/dist/review/templates/finding-criteria.js +80 -0
  208. package/dist/review/templates/finding-criteria.js.map +1 -0
  209. package/dist/review/templates/quality-review-artifact.d.ts +13 -0
  210. package/dist/review/templates/quality-review-artifact.d.ts.map +1 -1
  211. package/dist/review/templates/quality-review-artifact.js +41 -3
  212. package/dist/review/templates/quality-review-artifact.js.map +1 -1
  213. package/dist/review/templates/shared.d.ts +22 -5
  214. package/dist/review/templates/shared.d.ts.map +1 -1
  215. package/dist/review/templates/spec-review.d.ts +15 -0
  216. package/dist/review/templates/spec-review.d.ts.map +1 -1
  217. package/dist/review/templates/spec-review.js +43 -3
  218. package/dist/review/templates/spec-review.js.map +1 -1
  219. package/dist/stores/batch-registry.d.ts +18 -0
  220. package/dist/stores/batch-registry.d.ts.map +1 -1
  221. package/dist/stores/batch-registry.js +10 -0
  222. package/dist/stores/batch-registry.js.map +1 -1
  223. package/dist/stores/context-block-tool.d.ts +14 -0
  224. package/dist/stores/context-block-tool.d.ts.map +1 -1
  225. package/dist/stores/context-block-tool.js.map +1 -1
  226. package/dist/stores/file-backed-context-block-store.d.ts +63 -0
  227. package/dist/stores/file-backed-context-block-store.d.ts.map +1 -0
  228. package/dist/stores/file-backed-context-block-store.js +293 -0
  229. package/dist/stores/file-backed-context-block-store.js.map +1 -0
  230. package/dist/stores/project-context-registry.d.ts +16 -3
  231. package/dist/stores/project-context-registry.d.ts.map +1 -1
  232. package/dist/stores/project-context-registry.js +9 -2
  233. package/dist/stores/project-context-registry.js.map +1 -1
  234. package/dist/tools/audit/schema.d.ts +2 -2
  235. package/dist/tools/audit/tool-config.d.ts.map +1 -1
  236. package/dist/tools/audit/tool-config.js +23 -6
  237. package/dist/tools/audit/tool-config.js.map +1 -1
  238. package/dist/tools/debug/tool-config.d.ts.map +1 -1
  239. package/dist/tools/debug/tool-config.js +17 -4
  240. package/dist/tools/debug/tool-config.js.map +1 -1
  241. package/dist/tools/execute-plan/tool-config.d.ts.map +1 -1
  242. package/dist/tools/execute-plan/tool-config.js +5 -1
  243. package/dist/tools/execute-plan/tool-config.js.map +1 -1
  244. package/dist/tools/investigate/tool-config.d.ts +13 -1
  245. package/dist/tools/investigate/tool-config.d.ts.map +1 -1
  246. package/dist/tools/investigate/tool-config.js +34 -4
  247. package/dist/tools/investigate/tool-config.js.map +1 -1
  248. package/dist/tools/retry/tool-config.d.ts.map +1 -1
  249. package/dist/tools/retry/tool-config.js +28 -5
  250. package/dist/tools/retry/tool-config.js.map +1 -1
  251. package/dist/tools/review/schema.d.ts +1 -1
  252. package/dist/tools/review/tool-config.d.ts.map +1 -1
  253. package/dist/tools/review/tool-config.js +19 -4
  254. package/dist/tools/review/tool-config.js.map +1 -1
  255. package/dist/tools/verify/tool-config.d.ts.map +1 -1
  256. package/dist/tools/verify/tool-config.js +17 -4
  257. package/dist/tools/verify/tool-config.js.map +1 -1
  258. package/dist/types/enums.d.ts +10 -10
  259. package/package.json +5 -1
  260. package/dist/intake/brief-compiler-slots/investigate.d.ts +0 -26
  261. package/dist/intake/brief-compiler-slots/investigate.d.ts.map +0 -1
  262. package/dist/intake/brief-compiler-slots/investigate.js +0 -42
  263. package/dist/intake/brief-compiler-slots/investigate.js.map +0 -1
@@ -0,0 +1,120 @@
1
+ // merge-stage-stats.ts
2
+ //
3
+ // Helper that mutates state.lastRunResult.stageStats[<stage>] to record
4
+ // per-stage execution costs as each stage handler completes. Without this,
5
+ // only the implementer's RunResult.usage is visible at terminal — the
6
+ // reviewer / annotator / rework / diff / verify costs are dropped on the
7
+ // floor. Affected events:
8
+ // - local `task_completed` (top-level inputTokens / outputTokens / cost)
9
+ // - wire `task.completed` (per-stage `stages[]` array + tier rollup)
10
+ //
11
+ // Stages with multi-round semantics (spec_review, quality_review) accumulate
12
+ // across rounds; the schema has one slot per stage name with `roundsUsed`
13
+ // reflecting the total number of rounds executed.
14
+ /**
15
+ * Merge a stage's per-call cost into state.lastRunResult.stageStats.
16
+ * Multi-round stages accumulate; single-shot stages overwrite.
17
+ */
18
+ export function mergeStageStats(state, stage, delta, options) {
19
+ const rr = state.lastRunResult;
20
+ if (!rr)
21
+ return;
22
+ const existing = (rr.stageStats ?? {})[stage];
23
+ const accumulated = {
24
+ stage,
25
+ entered: true,
26
+ durationMs: (existing?.['durationMs'] ?? 0) + (delta.durationMs ?? 0),
27
+ costUSD: combineCost(existing?.['costUSD'], delta.costUSD),
28
+ agentTier: options.tier ?? existing?.['agentTier'] ?? null,
29
+ modelFamily: options.modelFamily ?? existing?.['modelFamily'] ?? null,
30
+ model: options.model ?? existing?.['model'] ?? null,
31
+ maxIdleMs: 0,
32
+ totalIdleMs: 0,
33
+ activityEvents: 0,
34
+ inputTokens: (existing?.['inputTokens'] ?? 0) + delta.inputTokens,
35
+ outputTokens: (existing?.['outputTokens'] ?? 0) + delta.outputTokens,
36
+ cachedReadTokens: (existing?.['cachedReadTokens'] ?? 0) + (delta.cachedReadTokens ?? 0),
37
+ cachedNonReadTokens: (existing?.['cachedNonReadTokens'] ?? 0) + (delta.cachedNonReadTokens ?? 0),
38
+ turnCount: (existing?.['turnCount'] ?? 0) + delta.turnCount,
39
+ toolCallCount: (existing?.['toolCallCount'] ?? 0) + delta.toolCallCount,
40
+ filesReadCount: (existing?.['filesReadCount'] ?? 0) + (delta.filesReadCount ?? 0),
41
+ filesWrittenCount: (existing?.['filesWrittenCount'] ?? 0) + (delta.filesWrittenCount ?? 0),
42
+ };
43
+ if (stage === 'spec_review' || stage === 'quality_review' || stage === 'diff_review') {
44
+ accumulated['verdict'] = options.verdict ?? existing?.['verdict'] ?? null;
45
+ accumulated['roundsUsed'] = (existing?.['roundsUsed'] ?? 0) + (options.roundsDelta ?? 1);
46
+ accumulated['concernCategories'] = existing?.['concernCategories'] ?? [];
47
+ accumulated['findingsBySeverity'] = existing?.['findingsBySeverity'] ?? { critical: 0, high: 0, medium: 0, low: 0 };
48
+ }
49
+ else if (stage === 'spec_rework' || stage === 'quality_rework') {
50
+ accumulated['triggeringConcernCategories'] = existing?.['triggeringConcernCategories'] ?? [];
51
+ }
52
+ const stageStatsObj = (rr.stageStats ?? {});
53
+ stageStatsObj[stage] = accumulated;
54
+ rr.stageStats = stageStatsObj;
55
+ }
56
+ /** Sum nullable cost slots; null when both contributions are null (honest-null). */
57
+ function combineCost(a, b) {
58
+ if (a === null || a === undefined)
59
+ return b;
60
+ if (b === null)
61
+ return a;
62
+ return a + b;
63
+ }
64
+ /**
65
+ * Replace state.lastRunResult with the rework-stage's `newResult`, but
66
+ * preserve cumulative file-tracker arrays AND stageStats from the prior
67
+ * lastRunResult.
68
+ *
69
+ * Tool sweep #6 fix: the spec-chain and quality-chain handlers both
70
+ * replaced `state.lastRunResult` with the rework's RunResult, only
71
+ * keeping `stageStats`. Implementing-stage file writes were thereby
72
+ * lost when a spec-rework round produced no writes:
73
+ * implementer: filesWritten=['/x.ts'] ← real edit applied
74
+ * spec_review: no run
75
+ * spec_rework: filesWritten=[] ← reads but no writes
76
+ * Envelope read `lastRunResult.filesWritten` → `[]`, downstream
77
+ * `qualityReviewStatus` collapsed to "task produced no file artifacts
78
+ * to review" and the headline reported "(0 files)" even though the
79
+ * implementer had successfully made the requested edit.
80
+ *
81
+ * Stage stats already tracked the writes correctly per-stage (the wire
82
+ * telemetry's `findings_low` etc. are computed from stageStats). Only
83
+ * the result envelope's `filesRead` / `filesWritten` / `toolCalls`
84
+ * arrays were broken.
85
+ *
86
+ * Fix: union the arrays across all rework rounds. Stable de-dupe via
87
+ * Set so a file edited twice doesn't appear twice in the envelope.
88
+ */
89
+ export function replaceLastRunResultPreservingTrackers(state, newResult) {
90
+ const prior = state.lastRunResult;
91
+ if (!prior) {
92
+ state.lastRunResult = newResult;
93
+ return;
94
+ }
95
+ const unionStrings = (a, b) => {
96
+ const out = [];
97
+ const seen = new Set();
98
+ for (const x of a ?? []) {
99
+ if (typeof x === 'string' && !seen.has(x)) {
100
+ seen.add(x);
101
+ out.push(x);
102
+ }
103
+ }
104
+ for (const x of b ?? []) {
105
+ if (typeof x === 'string' && !seen.has(x)) {
106
+ seen.add(x);
107
+ out.push(x);
108
+ }
109
+ }
110
+ return out;
111
+ };
112
+ state.lastRunResult = {
113
+ ...newResult,
114
+ stageStats: prior.stageStats ?? newResult.stageStats,
115
+ filesRead: unionStrings(prior.filesRead, newResult.filesRead),
116
+ filesWritten: unionStrings(prior.filesWritten, newResult.filesWritten),
117
+ toolCalls: [...(prior.toolCalls ?? []), ...(newResult.toolCalls ?? [])],
118
+ };
119
+ }
120
+ //# sourceMappingURL=merge-stage-stats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge-stage-stats.js","sourceRoot":"","sources":["../../src/lifecycle/merge-stage-stats.ts"],"names":[],"mappings":"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"}
@@ -5,15 +5,15 @@ export function computeTimings(wallClockMs, results) {
5
5
  }
6
6
  export function computeAggregateCost(results) {
7
7
  let totalActualCostUSD = 0;
8
- let totalCostDeltaVsParentUSD = 0;
8
+ let totalCostDeltaVsMainUSD = 0;
9
9
  for (const r of results) {
10
10
  if (r.cost?.costUSD !== null && r.cost?.costUSD !== undefined) {
11
11
  totalActualCostUSD += r.cost.costUSD;
12
12
  }
13
- if (r.cost?.costDeltaVsParentUSD !== null && r.cost?.costDeltaVsParentUSD !== undefined) {
14
- totalCostDeltaVsParentUSD += r.cost.costDeltaVsParentUSD;
13
+ if (r.cost?.costDeltaVsMainUSD !== null && r.cost?.costDeltaVsMainUSD !== undefined) {
14
+ totalCostDeltaVsMainUSD += r.cost.costDeltaVsMainUSD;
15
15
  }
16
16
  }
17
- return { totalActualCostUSD, totalCostDeltaVsParentUSD };
17
+ return { totalActualCostUSD, totalCostDeltaVsMainUSD };
18
18
  }
19
19
  //# sourceMappingURL=shared-compute.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared-compute.js","sourceRoot":"","sources":["../../src/lifecycle/shared-compute.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,cAAc,CAAC,WAAmB,EAAE,OAAoB;IACtE,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,MAAM,0BAA0B,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC,CAAC;IAC1E,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAoB;IACvD,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAC3B,IAAI,yBAAyB,GAAG,CAAC,CAAC;IAClC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;YAC9D,kBAAkB,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QACvC,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACxF,yBAAyB,IAAI,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC;QAC3D,CAAC;IACH,CAAC;IACD,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"shared-compute.js","sourceRoot":"","sources":["../../src/lifecycle/shared-compute.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,cAAc,CAAC,WAAmB,EAAE,OAAoB;IACtE,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,MAAM,0BAA0B,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC,CAAC;IAC1E,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAoB;IACvD,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAC3B,IAAI,uBAAuB,GAAG,CAAC,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;YAC9D,kBAAkB,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QACvC,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACpF,uBAAuB,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC;QACvD,CAAC;IACH,CAAC;IACD,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,CAAC;AACzD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"stage-plan-builder.d.ts","sourceRoot":"","sources":["../../src/lifecycle/stage-plan-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAA4B,MAAM,uBAAuB,CAAC;AACjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,YAAY,GAAG,SAAS,CAoLhE"}
1
+ {"version":3,"file":"stage-plan-builder.d.ts","sourceRoot":"","sources":["../../src/lifecycle/stage-plan-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAA4B,MAAM,uBAAuB,CAAC;AACjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,YAAY,GAAG,SAAS,CA0LhE"}
@@ -155,6 +155,12 @@ export function buildStagePlan(category) {
155
155
  { rowId: '5.5', stageName: 'persist_to_batch_registry',
156
156
  runCondition: () => true, isRework: false, handlerKey: 'persist_to_batch_registry',
157
157
  runOnTerminal: true },
158
+ // 5.6: record_task_completed — server-only; calls ctx.recorder.recordTaskCompleted
159
+ // to enqueue the cloud task.completed wire event. No-ops on CLI/test paths
160
+ // (no recorder). Must run on terminal so failures still record.
161
+ { rowId: '5.6', stageName: 'record_task_completed',
162
+ runCondition: () => true, isRework: false, handlerKey: 'record_task_completed',
163
+ runOnTerminal: true },
158
164
  // Stage 6 — emit + cleanup (rows 6.1–6.3)
159
165
  // 6.1: flush_telemetry — always; fires on terminal so failure events drain
160
166
  { rowId: '6.1', stageName: 'flush_telemetry',
@@ -1 +1 @@
1
- {"version":3,"file":"stage-plan-builder.js","sourceRoot":"","sources":["../../src/lifecycle/stage-plan-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stage-plan-builder.js","sourceRoot":"","sources":["../../src/lifecycle/stage-plan-builder.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,8 @@ export interface LifecycleState {
52
52
  diffReviewKind?: DiffReviewKind;
53
53
  specChainPassed?: boolean;
54
54
  qualityChainPassed?: boolean;
55
+ specReworkFailed?: boolean;
56
+ qualityReworkFailed?: boolean;
55
57
  specChainAttemptIndex?: number;
56
58
  qualityChainAttemptIndex?: number;
57
59
  specUnavailable?: import('../escalation/fallback.js').UnavailableMap;
@@ -70,6 +72,21 @@ export interface LifecycleState {
70
72
  lastRunResult?: unknown;
71
73
  verifyResult?: unknown;
72
74
  commits?: unknown;
75
+ /**
76
+ * Snapshot-based diff tracker. Captured before the implementer runs;
77
+ * used at every reviewer call site to produce a cumulative unified
78
+ * diff (every change since task start) so reviewers can ground their
79
+ * verdicts in evidence rather than the worker's prose claim.
80
+ * Tool sweep #6.
81
+ */
82
+ diffTracker?: import('./diff-tracker.js').DiffTracker;
83
+ /**
84
+ * Concerns flagged by spec_review rounds 1..N. Round N+1's reviewer
85
+ * receives them so it can verify the rework addressed each.
86
+ */
87
+ priorSpecConcerns?: string[];
88
+ /** Same as priorSpecConcerns but for the quality review chain. */
89
+ priorQualityConcerns?: string[];
73
90
  commitError?: string;
74
91
  stageStats?: unknown;
75
92
  terminalRunResult?: unknown;
@@ -78,6 +95,7 @@ export interface LifecycleState {
78
95
  terminalBlockId?: string;
79
96
  taskTerminalEmitted?: boolean;
80
97
  batchRegistryPersisted?: boolean;
98
+ taskCompletedRecorded?: boolean;
81
99
  telemetryFlushed?: boolean;
82
100
  projectContext?: ProjectContext;
83
101
  blockRegistration?: {
@@ -1 +1 @@
1
- {"version":3,"file":"stage-plan-types.d.ts","sourceRoot":"","sources":["../../src/lifecycle/stage-plan-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stage-plan-types.d.ts","sourceRoot":"","sources":["../../src/lifecycle/stage-plan-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /** Build the user-facing stage label list for a route by simulating each
2
+ * StagePlan row's runCondition under the route's defaults. Distinct
3
+ * schemaStages whose runCondition returns true become the user-facing
4
+ * stages, in plan order. Route-specific label overrides + a tail
5
+ * "Finalizing" slot give the agent a stable bracket. */
6
+ export declare function stageOrderForRoute(route: string): string[];
7
+ /** Public accessor mirroring the legacy `STAGE_ORDER_BY_ROUTE[route]` shape
8
+ * but driven by the StagePlan. Returns an empty array (treated as "1/1")
9
+ * for unknown routes. */
10
+ export declare const STAGE_ORDER_BY_ROUTE: Record<string, readonly string[]>;
11
+ /** Normalize a runtime stageLabel ("Spec rework round 1") to a coarse
12
+ * label that exists in `stageOrderForRoute(route)`. Reworks map to their
13
+ * own coarse slot ("Spec rework" / "Quality rework"), not back to the
14
+ * review slot — the StagePlan-derived order DOES contain a rework slot
15
+ * (because spec_rework / quality_rework are distinct schemaStages), so
16
+ * the bracket advances correctly when a rework fires. */
17
+ export declare function normalizeStageLabel(label: string): string;
18
+ /** "(X/Y)" stage-progress bracket for a route + current stageLabel. */
19
+ export declare function stageProgress(route: string, stageLabel: string | undefined): string;
20
+ //# sourceMappingURL=stage-progression.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stage-progression.d.ts","sourceRoot":"","sources":["../../src/lifecycle/stage-progression.ts"],"names":[],"mappings":"AAuHA;;;;yDAIyD;AACzD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CA2B1D;AAOD;;0BAE0B;AAC1B,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAa7B,CAAC;AAEvC;;;;;0DAK0D;AAC1D,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIzD;AAED,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CASnF"}
@@ -0,0 +1,165 @@
1
+ import { buildStagePlan } from './stage-plan-builder.js';
2
+ /** Canonical schemaStage → human-readable label used in `stageLabel` events
3
+ * emitted by handlers + shown in the polling headline. */
4
+ const SCHEMA_STAGE_LABELS = {
5
+ implementing: 'Implementing',
6
+ annotating: 'Annotating', // quality_review on read-only routes (audit/review/verify/debug/investigate)
7
+ spec_review: 'Spec review',
8
+ spec_rework: 'Spec rework',
9
+ quality_review: 'Quality review',
10
+ quality_rework: 'Quality rework',
11
+ diff_review: 'Diff review',
12
+ verifying: 'Verifying',
13
+ committing: 'Committing',
14
+ finalizing: 'Finalizing',
15
+ };
16
+ /** Tool route → (ToolCategory, default reviewPolicy). Mirrors
17
+ * task-runner.ts:toolCategoryForRoute + the reviewPolicy each tool-config
18
+ * injects into TaskSpec. Keep in sync; if these drift, the user-facing
19
+ * stage bracket will denominator-skew. */
20
+ const ROUTE_PROFILE = {
21
+ delegate: { category: 'artifact_producing', reviewPolicy: 'full' },
22
+ 'execute-plan': { category: 'artifact_producing', reviewPolicy: 'full' },
23
+ retry: { category: 'artifact_producing', reviewPolicy: 'full' },
24
+ audit: { category: 'read_only', reviewPolicy: 'quality_only' },
25
+ review: { category: 'read_only', reviewPolicy: 'quality_only' },
26
+ verify: { category: 'read_only', reviewPolicy: 'quality_only' },
27
+ debug: { category: 'read_only', reviewPolicy: 'quality_only' },
28
+ investigate: { category: 'read_only', reviewPolicy: 'quality_only' },
29
+ explore: { category: 'research', reviewPolicy: 'none' },
30
+ 'register-context-block': { category: 'assist', reviewPolicy: 'none' },
31
+ };
32
+ /** Route-specific overrides for stages that the StagePlan doesn't model
33
+ * but the user-facing progression should still surface. Read-only routes
34
+ * produce annotations rather than spec/quality reviews; the stage plan
35
+ * reuses the quality_review schemaStage but the agent-facing label is
36
+ * "Annotating" — surface it that way. */
37
+ const ROUTE_LABEL_OVERRIDES = {
38
+ audit: { quality_review: 'Annotating' },
39
+ review: { quality_review: 'Annotating' },
40
+ verify: { quality_review: 'Annotating' },
41
+ debug: { quality_review: 'Annotating' },
42
+ investigate: { quality_review: 'Annotating' },
43
+ };
44
+ /** Routes where the StagePlan doesn't include a coarse "Finalizing" row
45
+ * but we want one in the polling progression so the agent sees a clean
46
+ * ramp to completion. Appended to the derived list. */
47
+ const FINALIZING_LABEL = 'Finalizing';
48
+ /** "Rework-possible happy-path" simulated state. Used to filter StagePlan
49
+ * rows by runCondition so the user-facing denominator only counts stages
50
+ * that could plausibly fire for this route — not every schemaStage in
51
+ * the plan. Verdict flags are set to 'changes_required' so rework rows
52
+ * are eligible (the bracket should reflect the maximum reachable
53
+ * denominator, not just the happy path). Chain-passed flags are also
54
+ * set true so post-chain rows (diff_review / verifying / committing)
55
+ * are eligible too. */
56
+ function simulatedStateForRoute(route, category, reviewPolicy) {
57
+ return {
58
+ terminal: false,
59
+ attemptIndex: 0,
60
+ attemptBudget: 7,
61
+ reviewPolicy,
62
+ shutdownInProgress: false,
63
+ route,
64
+ toolCategory: category,
65
+ // lastRunResult truthy + a non-empty filesWritten so post-impl rows
66
+ // that gate on artifacts (e.g. 5.2 git_commit) are eligible.
67
+ lastRunResult: { filesWritten: ['x'] },
68
+ filesChanged: ['x'],
69
+ // Only artifact_producing routes commit. Setting these correctly here
70
+ // makes row 5.2 (git_commit) gate off for read_only audit/review/etc.
71
+ autoCommit: category === 'artifact_producing',
72
+ readOnlyTask: category === 'read_only',
73
+ specChainPassed: true,
74
+ qualityChainPassed: true,
75
+ specReviewRound1Verdict: 'changes_required',
76
+ specReviewRound2Verdict: 'changes_required',
77
+ qualityReviewRound1Verdict: 'changes_required',
78
+ qualityReviewRound2Verdict: 'changes_required',
79
+ };
80
+ }
81
+ /** Build the user-facing stage label list for a route by simulating each
82
+ * StagePlan row's runCondition under the route's defaults. Distinct
83
+ * schemaStages whose runCondition returns true become the user-facing
84
+ * stages, in plan order. Route-specific label overrides + a tail
85
+ * "Finalizing" slot give the agent a stable bracket. */
86
+ export function stageOrderForRoute(route) {
87
+ const profile = ROUTE_PROFILE[route];
88
+ if (!profile)
89
+ return [FINALIZING_LABEL];
90
+ const plan = buildStagePlan(profile.category);
91
+ const state = simulatedStateForRoute(route, profile.category, profile.reviewPolicy);
92
+ const seen = new Set();
93
+ const ordered = [];
94
+ const overrides = ROUTE_LABEL_OVERRIDES[route] ?? {};
95
+ for (const row of plan.rows) {
96
+ const schema = row.schemaStage;
97
+ if (!schema)
98
+ continue;
99
+ if (seen.has(schema))
100
+ continue;
101
+ // Skip rows whose runCondition wouldn't fire for this route's defaults.
102
+ // E.g. spec_review/spec_rework/diff_review/verifying/committing all
103
+ // gate on `isAP` — they're absent from the read_only audit denominator.
104
+ let eligible = false;
105
+ try {
106
+ eligible = row.runCondition(state);
107
+ }
108
+ catch {
109
+ eligible = false;
110
+ }
111
+ if (!eligible)
112
+ continue;
113
+ seen.add(schema);
114
+ const label = overrides[schema] ?? SCHEMA_STAGE_LABELS[schema] ?? schema;
115
+ ordered.push(label);
116
+ }
117
+ ordered.push(FINALIZING_LABEL);
118
+ return ordered;
119
+ }
120
+ /** Memoized lookup so async-dispatch + RunningHeadlineSink don't rebuild
121
+ * the stage plan for every event. The plan is pure-of-state, so the
122
+ * cache is safe across the daemon's lifetime. */
123
+ const cache = new Map();
124
+ /** Public accessor mirroring the legacy `STAGE_ORDER_BY_ROUTE[route]` shape
125
+ * but driven by the StagePlan. Returns an empty array (treated as "1/1")
126
+ * for unknown routes. */
127
+ export const STAGE_ORDER_BY_ROUTE = new Proxy({}, {
128
+ get(_target, prop) {
129
+ if (typeof prop !== 'string')
130
+ return undefined;
131
+ let cached = cache.get(prop);
132
+ if (!cached) {
133
+ cached = stageOrderForRoute(prop);
134
+ cache.set(prop, cached);
135
+ }
136
+ return cached;
137
+ },
138
+ });
139
+ /** Normalize a runtime stageLabel ("Spec rework round 1") to a coarse
140
+ * label that exists in `stageOrderForRoute(route)`. Reworks map to their
141
+ * own coarse slot ("Spec rework" / "Quality rework"), not back to the
142
+ * review slot — the StagePlan-derived order DOES contain a rework slot
143
+ * (because spec_rework / quality_rework are distinct schemaStages), so
144
+ * the bracket advances correctly when a rework fires. */
145
+ export function normalizeStageLabel(label) {
146
+ if (/^Spec rework/i.test(label))
147
+ return 'Spec rework';
148
+ if (/^Quality rework/i.test(label))
149
+ return 'Quality rework';
150
+ return label;
151
+ }
152
+ /** "(X/Y)" stage-progress bracket for a route + current stageLabel. */
153
+ export function stageProgress(route, stageLabel) {
154
+ const order = STAGE_ORDER_BY_ROUTE[route];
155
+ if (!order || order.length === 0)
156
+ return '1/1';
157
+ const total = order.length;
158
+ if (!stageLabel)
159
+ return `1/${total}`;
160
+ const normalized = normalizeStageLabel(stageLabel);
161
+ const idx = order.indexOf(normalized);
162
+ const oneBased = idx === -1 ? 1 : idx + 1;
163
+ return `${oneBased}/${total}`;
164
+ }
165
+ //# sourceMappingURL=stage-progression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stage-progression.js","sourceRoot":"","sources":["../../src/lifecycle/stage-progression.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"task-executor.d.ts","sourceRoot":"","sources":["../../src/lifecycle/task-executor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAUjE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EACpD,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,EACxC,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,cAAc,CAAC,CAgLzB"}
1
+ {"version":3,"file":"task-executor.d.ts","sourceRoot":"","sources":["../../src/lifecycle/task-executor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAYjE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EACpD,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,EACxC,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,cAAc,CAAC,CA0NzB"}