@zhixuan92/multi-model-agent-core 4.7.1 → 4.7.3

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 (206) hide show
  1. package/README.md +8 -6
  2. package/dist/bounded-execution/progress-events-subscriber.d.ts +3 -3
  3. package/dist/bounded-execution/progress-events-subscriber.d.ts.map +1 -1
  4. package/dist/bounded-execution/progress-events-subscriber.js +14 -4
  5. package/dist/bounded-execution/progress-events-subscriber.js.map +1 -1
  6. package/dist/bounded-execution/stall-watchdog.d.ts +4 -2
  7. package/dist/bounded-execution/stall-watchdog.d.ts.map +1 -1
  8. package/dist/bounded-execution/stall-watchdog.js +55 -31
  9. package/dist/bounded-execution/stall-watchdog.js.map +1 -1
  10. package/dist/config/schema.d.ts +0 -1
  11. package/dist/config/schema.d.ts.map +1 -1
  12. package/dist/config/schema.js +0 -1
  13. package/dist/config/schema.js.map +1 -1
  14. package/dist/events/envelope-bus.d.ts +22 -0
  15. package/dist/events/envelope-bus.d.ts.map +1 -0
  16. package/dist/events/envelope-bus.js +35 -0
  17. package/dist/events/envelope-bus.js.map +1 -0
  18. package/dist/events/log-writer.d.ts +24 -0
  19. package/dist/events/log-writer.d.ts.map +1 -0
  20. package/dist/events/log-writer.js +52 -0
  21. package/dist/events/log-writer.js.map +1 -0
  22. package/dist/events/plain-log-entry.d.ts +45 -0
  23. package/dist/events/plain-log-entry.d.ts.map +1 -0
  24. package/dist/events/plain-log-entry.js +45 -0
  25. package/dist/events/plain-log-entry.js.map +1 -0
  26. package/dist/events/stderr-log-subscriber.d.ts +16 -0
  27. package/dist/events/stderr-log-subscriber.d.ts.map +1 -0
  28. package/dist/events/stderr-log-subscriber.js +50 -0
  29. package/dist/events/stderr-log-subscriber.js.map +1 -0
  30. package/dist/events/task-envelope.d.ts +174 -0
  31. package/dist/events/task-envelope.d.ts.map +1 -0
  32. package/dist/events/task-envelope.js +165 -0
  33. package/dist/events/task-envelope.js.map +1 -0
  34. package/dist/events/telemetry-uploader.d.ts +24 -0
  35. package/dist/events/telemetry-uploader.d.ts.map +1 -0
  36. package/dist/events/telemetry-uploader.js +31 -0
  37. package/dist/events/telemetry-uploader.js.map +1 -0
  38. package/dist/events/to-wire-record.d.ts +42 -0
  39. package/dist/events/to-wire-record.d.ts.map +1 -0
  40. package/dist/events/to-wire-record.js +230 -0
  41. package/dist/events/to-wire-record.js.map +1 -0
  42. package/dist/events/{telemetry-types.d.ts → wire-schema.d.ts} +23 -36
  43. package/dist/events/wire-schema.d.ts.map +1 -0
  44. package/dist/events/{telemetry-types.js → wire-schema.js} +2 -9
  45. package/dist/events/wire-schema.js.map +1 -0
  46. package/dist/identity/{auth-token-store.d.ts → claude-oauth.d.ts} +1 -24
  47. package/dist/identity/claude-oauth.d.ts.map +1 -0
  48. package/dist/identity/claude-oauth.js +71 -0
  49. package/dist/identity/claude-oauth.js.map +1 -0
  50. package/dist/index.d.ts +9 -10
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js +5 -7
  53. package/dist/index.js.map +1 -1
  54. package/dist/lifecycle/handlers/annotate-stage.d.ts.map +1 -1
  55. package/dist/lifecycle/handlers/annotate-stage.js +11 -5
  56. package/dist/lifecycle/handlers/annotate-stage.js.map +1 -1
  57. package/dist/lifecycle/handlers/review-stage.d.ts.map +1 -1
  58. package/dist/lifecycle/handlers/review-stage.js +6 -1
  59. package/dist/lifecycle/handlers/review-stage.js.map +1 -1
  60. package/dist/lifecycle/handlers/rework-stage.js +2 -2
  61. package/dist/lifecycle/handlers/rework-stage.js.map +1 -1
  62. package/dist/lifecycle/handlers/terminal-handlers.d.ts +5 -4
  63. package/dist/lifecycle/handlers/terminal-handlers.d.ts.map +1 -1
  64. package/dist/lifecycle/handlers/terminal-handlers.js +39 -71
  65. package/dist/lifecycle/handlers/terminal-handlers.js.map +1 -1
  66. package/dist/lifecycle/lifecycle-context.d.ts +11 -8
  67. package/dist/lifecycle/lifecycle-context.d.ts.map +1 -1
  68. package/dist/lifecycle/lifecycle-driver.d.ts.map +1 -1
  69. package/dist/lifecycle/lifecycle-driver.js +169 -9
  70. package/dist/lifecycle/lifecycle-driver.js.map +1 -1
  71. package/dist/lifecycle/perform-implementation.js +2 -2
  72. package/dist/lifecycle/perform-implementation.js.map +1 -1
  73. package/dist/lifecycle/stage-plan-types.d.ts +7 -2
  74. package/dist/lifecycle/stage-plan-types.d.ts.map +1 -1
  75. package/dist/lifecycle/task-completion-summary.js +1 -1
  76. package/dist/lifecycle/task-completion-summary.js.map +1 -1
  77. package/dist/lifecycle/task-executor.d.ts.map +1 -1
  78. package/dist/lifecycle/task-executor.js +1 -2
  79. package/dist/lifecycle/task-executor.js.map +1 -1
  80. package/dist/lifecycle/task-runner.d.ts +11 -10
  81. package/dist/lifecycle/task-runner.d.ts.map +1 -1
  82. package/dist/lifecycle/task-runner.js +3 -4
  83. package/dist/lifecycle/task-runner.js.map +1 -1
  84. package/dist/providers/claude-session.d.ts +1 -0
  85. package/dist/providers/claude-session.d.ts.map +1 -1
  86. package/dist/providers/claude-session.js +29 -27
  87. package/dist/providers/claude-session.js.map +1 -1
  88. package/dist/providers/claude.js +1 -1
  89. package/dist/providers/claude.js.map +1 -1
  90. package/dist/providers/codex-cli-session.d.ts +4 -2
  91. package/dist/providers/codex-cli-session.d.ts.map +1 -1
  92. package/dist/providers/codex-cli-session.js +47 -46
  93. package/dist/providers/codex-cli-session.js.map +1 -1
  94. package/dist/providers/runner-types.d.ts +3 -3
  95. package/dist/providers/runner-types.d.ts.map +1 -1
  96. package/dist/reporting/structured-report.d.ts +3 -3
  97. package/dist/stores/batch-registry.d.ts +37 -29
  98. package/dist/stores/batch-registry.d.ts.map +1 -1
  99. package/dist/stores/batch-registry.js +18 -23
  100. package/dist/stores/batch-registry.js.map +1 -1
  101. package/dist/tools/audit/schema.d.ts +1 -1
  102. package/dist/tools/review/schema.d.ts +1 -1
  103. package/dist/transport/http-listener.d.ts +1 -1
  104. package/dist/types/config.d.ts +0 -1
  105. package/dist/types/config.d.ts.map +1 -1
  106. package/dist/types/enums.d.ts +16 -16
  107. package/dist/types/run-result.d.ts +3 -0
  108. package/dist/types/run-result.d.ts.map +1 -1
  109. package/package.json +25 -29
  110. package/dist/events/caller-response-channel.d.ts +0 -17
  111. package/dist/events/caller-response-channel.d.ts.map +0 -1
  112. package/dist/events/caller-response-channel.js +0 -10
  113. package/dist/events/caller-response-channel.js.map +0 -1
  114. package/dist/events/clamp.d.ts +0 -13
  115. package/dist/events/clamp.d.ts.map +0 -1
  116. package/dist/events/clamp.js +0 -24
  117. package/dist/events/clamp.js.map +0 -1
  118. package/dist/events/cloud-events.d.ts +0 -108
  119. package/dist/events/cloud-events.d.ts.map +0 -1
  120. package/dist/events/cloud-events.js +0 -58
  121. package/dist/events/cloud-events.js.map +0 -1
  122. package/dist/events/concern-classifier.d.ts +0 -9
  123. package/dist/events/concern-classifier.d.ts.map +0 -1
  124. package/dist/events/concern-classifier.js +0 -26
  125. package/dist/events/concern-classifier.js.map +0 -1
  126. package/dist/events/diagnostics-types.d.ts +0 -65
  127. package/dist/events/diagnostics-types.d.ts.map +0 -1
  128. package/dist/events/diagnostics-types.js +0 -2
  129. package/dist/events/diagnostics-types.js.map +0 -1
  130. package/dist/events/event-base.d.ts +0 -14
  131. package/dist/events/event-base.d.ts.map +0 -1
  132. package/dist/events/event-base.js +0 -24
  133. package/dist/events/event-base.js.map +0 -1
  134. package/dist/events/event-builder.d.ts +0 -55
  135. package/dist/events/event-builder.d.ts.map +0 -1
  136. package/dist/events/event-builder.js +0 -557
  137. package/dist/events/event-builder.js.map +0 -1
  138. package/dist/events/event-emitter.d.ts +0 -31
  139. package/dist/events/event-emitter.d.ts.map +0 -1
  140. package/dist/events/event-emitter.js +0 -63
  141. package/dist/events/event-emitter.js.map +0 -1
  142. package/dist/events/http-server-log.d.ts +0 -63
  143. package/dist/events/http-server-log.d.ts.map +0 -1
  144. package/dist/events/http-server-log.js +0 -188
  145. package/dist/events/http-server-log.js.map +0 -1
  146. package/dist/events/index.d.ts +0 -6
  147. package/dist/events/index.d.ts.map +0 -1
  148. package/dist/events/index.js +0 -7
  149. package/dist/events/index.js.map +0 -1
  150. package/dist/events/local-log-sink.d.ts +0 -10
  151. package/dist/events/local-log-sink.d.ts.map +0 -1
  152. package/dist/events/local-log-sink.js +0 -11
  153. package/dist/events/local-log-sink.js.map +0 -1
  154. package/dist/events/normalize.d.ts +0 -18
  155. package/dist/events/normalize.d.ts.map +0 -1
  156. package/dist/events/normalize.js +0 -18
  157. package/dist/events/normalize.js.map +0 -1
  158. package/dist/events/observability-events.d.ts +0 -1324
  159. package/dist/events/observability-events.d.ts.map +0 -1
  160. package/dist/events/observability-events.js +0 -446
  161. package/dist/events/observability-events.js.map +0 -1
  162. package/dist/events/privacy-filter.d.ts +0 -2
  163. package/dist/events/privacy-filter.d.ts.map +0 -1
  164. package/dist/events/privacy-filter.js +0 -10
  165. package/dist/events/privacy-filter.js.map +0 -1
  166. package/dist/events/request-spill.d.ts +0 -16
  167. package/dist/events/request-spill.d.ts.map +0 -1
  168. package/dist/events/request-spill.js +0 -23
  169. package/dist/events/request-spill.js.map +0 -1
  170. package/dist/events/telemetry-channel.d.ts +0 -9
  171. package/dist/events/telemetry-channel.d.ts.map +0 -1
  172. package/dist/events/telemetry-channel.js +0 -16
  173. package/dist/events/telemetry-channel.js.map +0 -1
  174. package/dist/events/telemetry-sink.d.ts +0 -12
  175. package/dist/events/telemetry-sink.d.ts.map +0 -1
  176. package/dist/events/telemetry-sink.js +0 -24
  177. package/dist/events/telemetry-sink.js.map +0 -1
  178. package/dist/events/telemetry-types.d.ts.map +0 -1
  179. package/dist/events/telemetry-types.js.map +0 -1
  180. package/dist/events/verbose-line.d.ts +0 -13
  181. package/dist/events/verbose-line.d.ts.map +0 -1
  182. package/dist/events/verbose-line.js +0 -99
  183. package/dist/events/verbose-line.js.map +0 -1
  184. package/dist/events/verbose-log-channel.d.ts +0 -29
  185. package/dist/events/verbose-log-channel.d.ts.map +0 -1
  186. package/dist/events/verbose-log-channel.js +0 -63
  187. package/dist/events/verbose-log-channel.js.map +0 -1
  188. package/dist/identity/auth-token-store.d.ts.map +0 -1
  189. package/dist/identity/auth-token-store.js +0 -136
  190. package/dist/identity/auth-token-store.js.map +0 -1
  191. package/dist/identity/cwd-validator.d.ts +0 -6
  192. package/dist/identity/cwd-validator.d.ts.map +0 -1
  193. package/dist/identity/cwd-validator.js +0 -28
  194. package/dist/identity/cwd-validator.js.map +0 -1
  195. package/dist/identity/host-allowlist.d.ts +0 -6
  196. package/dist/identity/host-allowlist.d.ts.map +0 -1
  197. package/dist/identity/host-allowlist.js +0 -11
  198. package/dist/identity/host-allowlist.js.map +0 -1
  199. package/dist/identity/index.d.ts +0 -6
  200. package/dist/identity/index.d.ts.map +0 -1
  201. package/dist/identity/index.js +0 -7
  202. package/dist/identity/index.js.map +0 -1
  203. package/dist/identity/ssrf-guard.d.ts +0 -4
  204. package/dist/identity/ssrf-guard.d.ts.map +0 -1
  205. package/dist/identity/ssrf-guard.js +0 -19
  206. package/dist/identity/ssrf-guard.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhixuan92/multi-model-agent-core",
3
- "version": "4.7.1",
3
+ "version": "4.7.3",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "Core library for multi-model-agent: provider runners (Claude, Codex, OpenAI-compatible), routing logic, config schema, and tool/sandbox primitives.",
@@ -68,14 +68,6 @@
68
68
  "types": "./dist/intake/verify-command-validator.d.ts",
69
69
  "import": "./dist/intake/verify-command-validator.js"
70
70
  },
71
- "./events/verbose-line": {
72
- "types": "./dist/events/verbose-line.d.ts",
73
- "import": "./dist/events/verbose-line.js"
74
- },
75
- "./events/request-spill": {
76
- "types": "./dist/events/request-spill.d.ts",
77
- "import": "./dist/events/request-spill.js"
78
- },
79
71
  "./lifecycle/handlers/commit-stage": {
80
72
  "types": "./dist/lifecycle/handlers/commit-stage.d.ts",
81
73
  "import": "./dist/lifecycle/handlers/commit-stage.js"
@@ -160,22 +152,30 @@
160
152
  "types": "./dist/intake/draft-id.d.ts",
161
153
  "import": "./dist/intake/draft-id.js"
162
154
  },
163
- "./events/observability-events": {
164
- "types": "./dist/events/observability-events.d.ts",
165
- "import": "./dist/events/observability-events.js"
166
- },
167
- "./events/local-log-sink": {
168
- "types": "./dist/events/local-log-sink.d.ts",
169
- "import": "./dist/events/local-log-sink.js"
170
- },
171
- "./events/telemetry-sink": {
172
- "types": "./dist/events/telemetry-sink.d.ts",
173
- "import": "./dist/events/telemetry-sink.js"
174
- },
175
155
  "./events/jsonl-writer": {
176
156
  "types": "./dist/events/jsonl-writer.d.ts",
177
157
  "import": "./dist/events/jsonl-writer.js"
178
158
  },
159
+ "./events/task-envelope": {
160
+ "types": "./dist/events/task-envelope.d.ts",
161
+ "import": "./dist/events/task-envelope.js"
162
+ },
163
+ "./events/envelope-bus": {
164
+ "types": "./dist/events/envelope-bus.d.ts",
165
+ "import": "./dist/events/envelope-bus.js"
166
+ },
167
+ "./events/log-writer": {
168
+ "types": "./dist/events/log-writer.d.ts",
169
+ "import": "./dist/events/log-writer.js"
170
+ },
171
+ "./events/telemetry-uploader": {
172
+ "types": "./dist/events/telemetry-uploader.d.ts",
173
+ "import": "./dist/events/telemetry-uploader.js"
174
+ },
175
+ "./events/stderr-log-subscriber": {
176
+ "types": "./dist/events/stderr-log-subscriber.d.ts",
177
+ "import": "./dist/events/stderr-log-subscriber.js"
178
+ },
179
179
  "./lifecycle/auto-commit": {
180
180
  "types": "./dist/lifecycle/auto-commit.d.ts",
181
181
  "import": "./dist/lifecycle/auto-commit.js"
@@ -284,14 +284,6 @@
284
284
  "types": "./dist/events/consent-rules.d.ts",
285
285
  "import": "./dist/events/consent-rules.js"
286
286
  },
287
- "./events/event-builder": {
288
- "types": "./dist/events/event-builder.d.ts",
289
- "import": "./dist/events/event-builder.js"
290
- },
291
- "./events/telemetry-types": {
292
- "types": "./dist/events/telemetry-types.d.ts",
293
- "import": "./dist/events/telemetry-types.js"
294
- },
295
287
  "./tool-surface/manifest": {
296
288
  "types": "./dist/tool-surface/manifest.d.ts",
297
289
  "import": "./dist/tool-surface/manifest.js"
@@ -335,6 +327,10 @@
335
327
  "./stores/context-block-project-cap": {
336
328
  "types": "./dist/stores/context-block-project-cap.d.ts",
337
329
  "import": "./dist/stores/context-block-project-cap.js"
330
+ },
331
+ "./events/wire-schema": {
332
+ "types": "./dist/events/wire-schema.d.ts",
333
+ "import": "./dist/events/wire-schema.js"
338
334
  }
339
335
  },
340
336
  "scripts": {
@@ -1,17 +0,0 @@
1
- import type { WorkerStatus, ErrorCode } from '../types.js';
2
- export interface CallerEnvelope {
3
- taskIndex: number;
4
- workerStatus: WorkerStatus;
5
- summary?: string;
6
- filesChanged?: string[];
7
- blockId?: string;
8
- errorCode?: ErrorCode;
9
- costUSD?: number;
10
- durationMs?: number;
11
- }
12
- export declare class CallerResponseChannel {
13
- private snapshots;
14
- upsert(env: CallerEnvelope): void;
15
- snapshot(): CallerEnvelope[];
16
- }
17
- //# sourceMappingURL=caller-response-channel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"caller-response-channel.d.ts","sourceRoot":"","sources":["../../src/events/caller-response-channel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,SAAS,CAAqC;IAEtD,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IAIjC,QAAQ,IAAI,cAAc,EAAE;CAG7B"}
@@ -1,10 +0,0 @@
1
- export class CallerResponseChannel {
2
- snapshots = new Map();
3
- upsert(env) {
4
- this.snapshots.set(env.taskIndex, env);
5
- }
6
- snapshot() {
7
- return [...this.snapshots.values()].sort((a, b) => a.taskIndex - b.taskIndex);
8
- }
9
- }
10
- //# sourceMappingURL=caller-response-channel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"caller-response-channel.js","sourceRoot":"","sources":["../../src/events/caller-response-channel.ts"],"names":[],"mappings":"AAaA,MAAM,OAAO,qBAAqB;IACxB,SAAS,GAAG,IAAI,GAAG,EAA0B,CAAC;IAEtD,MAAM,CAAC,GAAmB;QACxB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACzC,CAAC;IAED,QAAQ;QACN,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;IAChF,CAAC;CACF"}
@@ -1,13 +0,0 @@
1
- export declare const clampStageCost: (n: number) => number;
2
- export declare const clampTaskCost: (n: number) => number;
3
- export declare const clampInputTokens: (n: number) => number;
4
- export declare const clampOutputTokens: (n: number) => number;
5
- export declare const clampCachedTokens: (n: number) => number;
6
- export declare const clampReasoningTokens: (n: number) => number;
7
- export declare const clampToolCallCount: (n: number) => number;
8
- export declare const clampFilesReadCount: (n: number) => number;
9
- export declare const clampFilesWrittenCount: (n: number) => number;
10
- export declare const clampTurnCount: (n: number) => number;
11
- export declare const clampDurationMsStage: (n: number) => number;
12
- export declare const clampDurationMsTotal: (n: number) => number;
13
- //# sourceMappingURL=clamp.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"clamp.d.ts","sourceRoot":"","sources":["../../src/events/clamp.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,cAAc,GAAI,GAAG,MAAM,KAAG,MACwB,CAAC;AAEpE,eAAO,MAAM,aAAa,GAAI,GAAG,MAAM,KAAG,MACT,CAAC;AAElC,eAAO,MAAM,gBAAgB,GAAI,GAAG,MAAM,KAAG,MACN,CAAC;AAExC,eAAO,MAAM,iBAAiB,GAAI,GAAG,MAAM,KAAG,MACT,CAAC;AAEtC,eAAO,MAAM,iBAAiB,GAAI,GAAG,MAAM,KAAG,MACP,CAAC;AAExC,eAAO,MAAM,oBAAoB,GAAI,GAAG,MAAM,KAAG,MACZ,CAAC;AAEtC,eAAO,MAAM,kBAAkB,GAAI,GAAG,MAAM,KAAG,MACf,CAAC;AAEjC,eAAO,MAAM,mBAAmB,GAAI,GAAG,MAAM,KAAG,MAChB,CAAC;AAEjC,eAAO,MAAM,sBAAsB,GAAI,GAAG,MAAM,KAAG,MACnB,CAAC;AAEjC,eAAO,MAAM,cAAc,GAAI,GAAG,MAAM,KAAG,MACZ,CAAC;AAEhC,eAAO,MAAM,oBAAoB,GAAI,GAAG,MAAM,KAAG,MACZ,CAAC;AAEtC,eAAO,MAAM,oBAAoB,GAAI,GAAG,MAAM,KAAG,MACX,CAAC"}
@@ -1,24 +0,0 @@
1
- // Telemetry clamp helpers.
2
- //
3
- // Defensive ceilings against corrupted / runaway values from provider
4
- // adapters before persistence. Ceilings were raised in 2026-05 from the
5
- // 2025-era 5M-input / 500K-output / $100-stage limits to current-era
6
- // scale — codex with 1M-context plus heavy cached prefixes routinely
7
- // exceeds 5M input tokens, and audit `subtype:plan` runs at this scale
8
- // cost $20-$50 per stage.
9
- //
10
- // If you need to raise these again: bump these constants AND the
11
- // matching `.max(...)` bounds in `telemetry-types.ts` (Zod schema).
12
- export const clampStageCost = (n) => Math.max(0, Math.min(Math.round(n * 1_000_000) / 1_000_000, 500));
13
- export const clampTaskCost = (n) => Math.max(0, Math.min(n, 5_000));
14
- export const clampInputTokens = (n) => Math.min(Math.max(0, n), 100_000_000);
15
- export const clampOutputTokens = (n) => Math.min(Math.max(0, n), 2_000_000);
16
- export const clampCachedTokens = (n) => Math.min(Math.max(0, n), 100_000_000);
17
- export const clampReasoningTokens = (n) => Math.min(Math.max(0, n), 2_000_000);
18
- export const clampToolCallCount = (n) => Math.min(Math.max(0, n), 5000);
19
- export const clampFilesReadCount = (n) => Math.min(Math.max(0, n), 5000);
20
- export const clampFilesWrittenCount = (n) => Math.min(Math.max(0, n), 5000);
21
- export const clampTurnCount = (n) => Math.min(Math.max(0, n), 250);
22
- export const clampDurationMsStage = (n) => Math.min(Math.max(0, n), 3_600_000);
23
- export const clampDurationMsTotal = (n) => Math.min(Math.max(0, n), 86_400_000);
24
- //# sourceMappingURL=clamp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"clamp.js","sourceRoot":"","sources":["../../src/events/clamp.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,EAAE;AACF,sEAAsE;AACtE,wEAAwE;AACxE,qEAAqE;AACrE,qEAAqE;AACrE,uEAAuE;AACvE,0BAA0B;AAC1B,EAAE;AACF,iEAAiE;AACjE,oEAAoE;AAEpE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAS,EAAU,EAAE,CAClD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;AAEpE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAS,EAAU,EAAE,CACjD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAElC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAS,EAAU,EAAE,CACpD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;AAExC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAS,EAAU,EAAE,CACrD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAEtC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAS,EAAU,EAAE,CACrD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;AAExC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAS,EAAU,EAAE,CACxD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAEtC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAS,EAAU,EAAE,CACtD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAEjC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAS,EAAU,EAAE,CACvD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAEjC,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAS,EAAU,EAAE,CAC1D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAEjC,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAS,EAAU,EAAE,CAClD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAEhC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAS,EAAU,EAAE,CACxD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAEtC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAS,EAAU,EAAE,CACxD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC"}
@@ -1,108 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const TaskCompletedCloudEvent: z.ZodObject<{
3
- event: z.ZodLiteral<"task.completed">;
4
- ts: z.ZodString;
5
- route: z.ZodEnum<{
6
- review: "review";
7
- delegate: "delegate";
8
- audit: "audit";
9
- debug: "debug";
10
- "execute-plan": "execute-plan";
11
- retry: "retry";
12
- investigate: "investigate";
13
- "register-context-block": "register-context-block";
14
- research: "research";
15
- }>;
16
- agentType: z.ZodEnum<{
17
- standard: "standard";
18
- complex: "complex";
19
- }>;
20
- toolMode: z.ZodEnum<{
21
- full: "full";
22
- none: "none";
23
- readonly: "readonly";
24
- "no-shell": "no-shell";
25
- }>;
26
- client: z.ZodString;
27
- fileCountBucket: z.ZodEnum<{
28
- 0: "0";
29
- "1-5": "1-5";
30
- "6-20": "6-20";
31
- "21-50": "21-50";
32
- "51+": "51+";
33
- }>;
34
- durationBucket: z.ZodEnum<{
35
- "<10s": "<10s";
36
- "10s-1m": "10s-1m";
37
- "1m-5m": "1m-5m";
38
- "5m-30m": "5m-30m";
39
- "30m+": "30m+";
40
- }>;
41
- costBucket: z.ZodEnum<{
42
- $0: "$0";
43
- "<$0.01": "<$0.01";
44
- "$0.01-$0.10": "$0.01-$0.10";
45
- "$0.10-$1": "$0.10-$1";
46
- "$1+": "$1+";
47
- }>;
48
- savedCostBucket: z.ZodEnum<{
49
- $0: "$0";
50
- "$0.10-$1": "$0.10-$1";
51
- "$1+": "$1+";
52
- "<$0.10": "<$0.10";
53
- unknown: "unknown";
54
- }>;
55
- implementerModelFamily: z.ZodString;
56
- implementerModel: z.ZodString;
57
- terminalStatus: z.ZodEnum<{
58
- error: "error";
59
- ok: "ok";
60
- incomplete: "incomplete";
61
- timeout: "timeout";
62
- brief_too_vague: "brief_too_vague";
63
- unavailable: "unavailable";
64
- }>;
65
- workerStatus: z.ZodEnum<{
66
- failed: "failed";
67
- done: "done";
68
- done_with_concerns: "done_with_concerns";
69
- needs_context: "needs_context";
70
- blocked: "blocked";
71
- review_loop_capped: "review_loop_capped";
72
- }>;
73
- errorCode: z.ZodNullable<z.ZodString>;
74
- escalated: z.ZodBoolean;
75
- fallbackTriggered: z.ZodBoolean;
76
- topToolNames: z.ZodArray<z.ZodString>;
77
- stages: z.ZodRecord<z.ZodString, z.ZodUnknown>;
78
- }, z.core.$loose>;
79
- export declare const SessionStartedCloudEvent: z.ZodObject<{
80
- event: z.ZodLiteral<"session.started">;
81
- ts: z.ZodString;
82
- configFlavor: z.ZodRecord<z.ZodString, z.ZodUnknown>;
83
- providersConfigured: z.ZodArray<z.ZodEnum<{
84
- claude: "claude";
85
- codex: "codex";
86
- "openai-compatible": "openai-compatible";
87
- }>>;
88
- }, z.core.$loose>;
89
- export declare const InstallChangedCloudEvent: z.ZodObject<{
90
- event: z.ZodLiteral<"install.changed">;
91
- ts: z.ZodString;
92
- fromVersion: z.ZodNullable<z.ZodString>;
93
- toVersion: z.ZodString;
94
- trigger: z.ZodEnum<{
95
- fresh_install: "fresh_install";
96
- upgrade: "upgrade";
97
- downgrade: "downgrade";
98
- }>;
99
- }, z.core.$loose>;
100
- export declare const SkillInstalledCloudEvent: z.ZodObject<{
101
- event: z.ZodLiteral<"skill.installed">;
102
- ts: z.ZodString;
103
- skill: z.ZodString;
104
- client: z.ZodString;
105
- }, z.core.$loose>;
106
- /** Cloud-bound event discriminator values — used by TelemetrySink to filter. */
107
- export declare const CLOUD_EVENT_NAMES: Set<"task.completed" | "session.started" | "install.changed" | "skill.installed">;
108
- //# sourceMappingURL=cloud-events.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cloud-events.d.ts","sourceRoot":"","sources":["../../src/events/cloud-events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwBpB,CAAC;AAEjB,eAAO,MAAM,wBAAwB;;;;;;;;;iBAKrB,CAAC;AAEjB,eAAO,MAAM,wBAAwB;;;;;;;;;;iBAMrB,CAAC;AAEjB,eAAO,MAAM,wBAAwB;;;;;iBAKrB,CAAC;AAEjB,gFAAgF;AAChF,eAAO,MAAM,iBAAiB,mFAKnB,CAAC"}
@@ -1,58 +0,0 @@
1
- import { z } from 'zod';
2
- import { RouteEnum, TierEnum, WorkerStatusEnum } from './event-base.js';
3
- // Mirror the existing telemetry/types.ts schemas but use `event` as the
4
- // discriminator so they fit into the discriminated union. The TelemetrySink
5
- // filters these by event name; fields match the v1 upload shapes.
6
- // Task 6 extends task.completed with 11 new v2 fields.
7
- export const TaskCompletedCloudEvent = z.object({
8
- event: z.literal('task.completed'),
9
- ts: z.string().datetime({ offset: true }),
10
- // v1 core fields (mirror telemetry/types.ts TaskCompletedEvent)
11
- route: RouteEnum,
12
- agentType: TierEnum,
13
- toolMode: z.enum(['none', 'readonly', 'no-shell', 'full']),
14
- client: z.string(),
15
- fileCountBucket: z.enum(['0', '1-5', '6-20', '21-50', '51+']),
16
- durationBucket: z.enum(['<10s', '10s-1m', '1m-5m', '5m-30m', '30m+']),
17
- costBucket: z.enum(['$0', '<$0.01', '$0.01-$0.10', '$0.10-$1', '$1+']),
18
- savedCostBucket: z.enum(['$0', '<$0.10', '$0.10-$1', '$1+', 'unknown']),
19
- implementerModelFamily: z.string(),
20
- implementerModel: z.string(),
21
- terminalStatus: z.enum([
22
- 'ok', 'incomplete', 'timeout', 'error',
23
- 'brief_too_vague', 'unavailable',
24
- ]),
25
- workerStatus: WorkerStatusEnum,
26
- errorCode: z.string().nullable(),
27
- escalated: z.boolean(),
28
- fallbackTriggered: z.boolean(),
29
- topToolNames: z.array(z.string()).max(20),
30
- stages: z.record(z.string(), z.unknown()),
31
- }).passthrough();
32
- export const SessionStartedCloudEvent = z.object({
33
- event: z.literal('session.started'),
34
- ts: z.string().datetime({ offset: true }),
35
- configFlavor: z.record(z.string(), z.unknown()),
36
- providersConfigured: z.array(z.enum(['claude', 'openai-compatible', 'codex'])).max(3),
37
- }).passthrough();
38
- export const InstallChangedCloudEvent = z.object({
39
- event: z.literal('install.changed'),
40
- ts: z.string().datetime({ offset: true }),
41
- fromVersion: z.string().nullable(),
42
- toVersion: z.string(),
43
- trigger: z.enum(['fresh_install', 'upgrade', 'downgrade']),
44
- }).passthrough();
45
- export const SkillInstalledCloudEvent = z.object({
46
- event: z.literal('skill.installed'),
47
- ts: z.string().datetime({ offset: true }),
48
- skill: z.string(),
49
- client: z.string(),
50
- }).passthrough();
51
- /** Cloud-bound event discriminator values — used by TelemetrySink to filter. */
52
- export const CLOUD_EVENT_NAMES = new Set([
53
- 'task.completed',
54
- 'session.started',
55
- 'install.changed',
56
- 'skill.installed',
57
- ]);
58
- //# sourceMappingURL=cloud-events.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cloud-events.js","sourceRoot":"","sources":["../../src/events/cloud-events.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import type { ConcernCategoryType } from '../types/enums.js';
2
- interface RawConcern {
3
- source: string;
4
- severity: string;
5
- message: string;
6
- }
7
- export declare function classifyConcern(c: RawConcern): ConcernCategoryType;
8
- export {};
9
- //# sourceMappingURL=concern-classifier.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"concern-classifier.d.ts","sourceRoot":"","sources":["../../src/events/concern-classifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,UAAU,UAAU;IAClB,MAAM,EAAI,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAG,MAAM,CAAC;CAClB;AAsBD,wBAAgB,eAAe,CAAC,CAAC,EAAE,UAAU,GAAG,mBAAmB,CAGlE"}
@@ -1,26 +0,0 @@
1
- // Each pattern is fully parenthesized to avoid alternation-precedence bugs
2
- // (e.g. `\bmissing|no\s+test` parses as `(\bmissing) | (no\s+test)` — the
3
- // word-boundary applies only to "missing", which silently matches "no known
4
- // issue"). Wrap the alternation explicitly so `\b` covers every branch.
5
- const PATTERNS = [
6
- [/\b(?:(?:missing|no)\s+(?:unit\s+)?tests?|untested)\b/i, 'missing_test'],
7
- [/\b(?:sqli?|sql\s*injection|xss|secret|api[\s_-]*key|token|cred(?:ential)?s?)\b/i, 'security'],
8
- [/\b(?:O\([^)]+\)|hot\s*path|n\^?2|quadratic|slow\s+loop)\b/i, 'performance'],
9
- [/\b(?:unrelated\s+(?:refactor|change)|scope[\s_-]*creep|out\s+of\s+scope)\b/i, 'scope_creep'],
10
- [/\b(?:TODO|FIXME|incomplete|not\s+implemented|stub)\b/i, 'incomplete_impl'],
11
- [/\b(?:style|naming|camelCase|snake_case|formatting|lint(?:er)?)\b/i, 'style_lint'],
12
- [/\b(?:readme|doc(?:ument(?:ing|ation)?|s)?|comment|jsdoc)\b/i, 'doc_gap'],
13
- [/\b(?:extract(?:ing)?|refactor|maintain|coupl(?:ing)?|cohes(?:ion)?)\b/i, 'maintainability'],
14
- [/\b(?:stale|out[\s-]*of[\s-]*date|obsolete|no longer accurate)\b/i, 'doc_drift'],
15
- [/\b(?:envelope|contract|wire[\s-]*format|public[\s-]*api|gate(?:s|d)?)\b/i, 'contract_violation'],
16
- [/\b(?:missing[\s-]*coverage|coverage[\s-]*gap|skipped\b[\s\w-]*\btest|(?:no|without)[\s-]+(?:an?\s+)?(?:active\s+)?replacement)\b/i, 'coverage_gap'],
17
- [/\b(?:dead[\s-]*code|unused[\s-]*(?:seam|export|symbol)|stale[\s-]*comment|legacy[\s-]*field)\b/i, 'dead_code'],
18
- [/\b(?:queue|tracker|prq|backlog)\b.*\b(?:hygiene|stale|cleanup|historical)\b/i, 'queue_hygiene'],
19
- ];
20
- export function classifyConcern(c) {
21
- for (const [re, cat] of PATTERNS)
22
- if (re.test(c.message))
23
- return cat;
24
- return 'other';
25
- }
26
- //# sourceMappingURL=concern-classifier.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"concern-classifier.js","sourceRoot":"","sources":["../../src/events/concern-classifier.ts"],"names":[],"mappings":"AAQA,2EAA2E;AAC3E,0EAA0E;AAC1E,4EAA4E;AAC5E,wEAAwE;AACxE,MAAM,QAAQ,GAAyC;IACrD,CAAC,uDAAuD,EAAwB,cAAc,CAAC;IAC/F,CAAC,iFAAiF,EAAE,UAAU,CAAC;IAC/F,CAAC,4DAA4D,EAAmB,aAAa,CAAC;IAC9F,CAAC,6EAA6E,EAAE,aAAa,CAAC;IAC9F,CAAC,uDAAuD,EAAwB,iBAAiB,CAAC;IAClG,CAAC,mEAAmE,EAAY,YAAY,CAAC;IAC7F,CAAC,6DAA6D,EAAkB,SAAS,CAAC;IAC1F,CAAC,wEAAwE,EAAQ,iBAAiB,CAAC;IACnG,CAAC,kEAAkE,EAAe,WAAW,CAAC;IAC9F,CAAC,0EAA0E,EAAO,oBAAoB,CAAC;IACvG,CAAC,mIAAmI,EAAE,cAAc,CAAC;IACrJ,CAAC,iGAAiG,EAAE,WAAW,CAAC;IAChH,CAAC,8EAA8E,EAAG,eAAe,CAAC;CACnG,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,CAAa;IAC3C,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,QAAQ;QAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YAAE,OAAO,GAAG,CAAC;IACrE,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1,65 +0,0 @@
1
- import type { RunStatus } from '../providers/runner-types.js';
2
- import type { AgentType } from '../types.js';
3
- export type ShutdownCause = 'stdin_end' | 'stdout_epipe' | 'stdout_other_error' | 'uncaughtException' | 'unhandledRejection' | 'SIGTERM' | 'SIGINT' | 'SIGPIPE' | 'SIGHUP' | 'SIGABRT' | 'event_loop_empty' | 'SIGTERM_drain_timeout';
4
- export type SessionCloseReason = 'client_closed' | 'transport_error' | 'session_expired' | 'daemon_shutdown' | 'handshake_failed';
5
- export type EventPrimitive = string | number | boolean | null;
6
- export interface TaskEvent {
7
- event: string;
8
- batchId: string;
9
- taskIndex: number;
10
- [key: string]: EventPrimitive | undefined;
11
- }
12
- export type DiagLoop = 'spec' | 'quality' | 'diff';
13
- export type DiagRole = 'implementer' | 'specReviewer' | 'qualityReviewer' | 'diffReviewer';
14
- export type DiagReason = 'transport_failure' | 'not_configured';
15
- export interface EscalationEventParams {
16
- batchId: string;
17
- taskIndex: number;
18
- loop: DiagLoop;
19
- attempt: number;
20
- baseTier: AgentType;
21
- implTier: AgentType;
22
- reviewerTier: AgentType;
23
- }
24
- export interface EscalationUnavailableEventParams {
25
- batchId: string;
26
- taskIndex: number;
27
- loop: DiagLoop;
28
- attempt: number;
29
- role: DiagRole;
30
- wantedTier: AgentType;
31
- reason: DiagReason;
32
- }
33
- export interface FallbackEventParams {
34
- batchId: string;
35
- taskIndex: number;
36
- loop: DiagLoop;
37
- attempt: number;
38
- role: DiagRole;
39
- assignedTier: AgentType;
40
- usedTier: AgentType;
41
- reason: DiagReason;
42
- triggeringStatus?: RunStatus;
43
- violatesSeparation: boolean;
44
- fallbackSeparationRespected?: boolean;
45
- assignedIdentity?: {
46
- providerType: string;
47
- normalizedEndpoint: string;
48
- modelId: string;
49
- } | null;
50
- usedIdentity?: {
51
- providerType: string;
52
- normalizedEndpoint: string;
53
- modelId: string;
54
- } | null;
55
- }
56
- export interface FallbackUnavailableEventParams {
57
- batchId: string;
58
- taskIndex: number;
59
- loop: DiagLoop;
60
- attempt: number;
61
- role: DiagRole;
62
- assignedTier: AgentType;
63
- reason: DiagReason;
64
- }
65
- //# sourceMappingURL=diagnostics-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"diagnostics-types.d.ts","sourceRoot":"","sources":["../../src/events/diagnostics-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,MAAM,aAAa,GACrB,WAAW,GACX,cAAc,GACd,oBAAoB,GACpB,mBAAmB,GACnB,oBAAoB,GACpB,SAAS,GACT,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,SAAS,GACT,kBAAkB,GAClB,uBAAuB,CAAC;AAE5B,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;AAElI,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAC9D,MAAM,WAAW,SAAS;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;CAAE;AAE5H,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AACnD,MAAM,MAAM,QAAQ,GAAG,aAAa,GAAG,cAAc,GAAG,iBAAiB,GAAG,cAAc,CAAC;AAC3F,MAAM,MAAM,UAAU,GAAG,mBAAmB,GAAG,gBAAgB,CAAC;AAEhE,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,YAAY,EAAE,SAAS,CAAC;CACzB;AAED,MAAM,WAAW,gCAAgC;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,SAAS,CAAC;IACtB,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,YAAY,EAAE,SAAS,CAAC;IACxB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,gBAAgB,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAChG,YAAY,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC7F;AAED,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,YAAY,EAAE,SAAS,CAAC;IACxB,MAAM,EAAE,UAAU,CAAC;CACpB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=diagnostics-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"diagnostics-types.js","sourceRoot":"","sources":["../../src/events/diagnostics-types.ts"],"names":[],"mappings":""}
@@ -1,14 +0,0 @@
1
- import { z } from 'zod';
2
- /** Shared base for task-level events (has taskIndex). */
3
- export declare const TaskBase: z.ZodObject<{
4
- ts: z.ZodString;
5
- batchId: z.ZodString;
6
- taskIndex: z.ZodNumber;
7
- }, z.core.$strip>;
8
- /** Shared base for batch-level events (no taskIndex). */
9
- export declare const BatchBase: z.ZodObject<{
10
- ts: z.ZodString;
11
- batchId: z.ZodString;
12
- }, z.core.$strip>;
13
- export { TierEnum, RouteEnum, ProviderTypeEnum, InternalRunStatusEnum, ReviewVerdictEnum, VerifyOutcomeEnum, VerifySkipReasonEnum, WorkerStatusEnum, ReviewEngineTypeEnum, EvidenceKindEnum, IncompleteReasonEnum, InvestigationConfidenceEnum, FindingConfidenceSchema, ResearchAdapterEnum, EventTypeEnum, DiagLoopEnum, DiagRoleEnum, DiagReasonEnum, } from '../types/enums.js';
14
- //# sourceMappingURL=event-base.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-base.d.ts","sourceRoot":"","sources":["../../src/events/event-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,yDAAyD;AACzD,eAAO,MAAM,QAAQ;;;;iBAInB,CAAC;AAEH,yDAAyD;AACzD,eAAO,MAAM,SAAS;;;iBAGpB,CAAC;AAMH,OAAO,EACL,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,2BAA2B,EAC3B,uBAAuB,EACvB,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,cAAc,GACf,MAAM,mBAAmB,CAAC"}
@@ -1,24 +0,0 @@
1
- import { z } from 'zod';
2
- // Event-specific Zod base schemas. Closed enums used by these schemas
3
- // live at types/enums.ts (the canonical location per architecture.md:209
4
- // — "types/enums.ts mirrors enums.md (Zod schemas)"). This file keeps
5
- // only the per-event-family object bases (TaskBase, BatchBase) plus
6
- // re-exports of the enums that observability-events.ts and
7
- // cloud-events.ts compose into event schemas.
8
- /** Shared base for task-level events (has taskIndex). */
9
- export const TaskBase = z.object({
10
- ts: z.string().datetime({ offset: true }),
11
- batchId: z.string().uuid(),
12
- taskIndex: z.number().int().min(0),
13
- });
14
- /** Shared base for batch-level events (no taskIndex). */
15
- export const BatchBase = z.object({
16
- ts: z.string().datetime({ offset: true }),
17
- batchId: z.string().uuid(),
18
- });
19
- // Re-export enums from the canonical types/enums.ts. Production callers
20
- // already import from this file; the re-export keeps those imports stable
21
- // while enabling new code (and the closed-enum ratchet tests under
22
- // tests/events/) to import from types/enums.ts directly.
23
- export { TierEnum, RouteEnum, ProviderTypeEnum, InternalRunStatusEnum, ReviewVerdictEnum, VerifyOutcomeEnum, VerifySkipReasonEnum, WorkerStatusEnum, ReviewEngineTypeEnum, EvidenceKindEnum, IncompleteReasonEnum, InvestigationConfidenceEnum, FindingConfidenceSchema, ResearchAdapterEnum, EventTypeEnum, DiagLoopEnum, DiagRoleEnum, DiagReasonEnum, } from '../types/enums.js';
24
- //# sourceMappingURL=event-base.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-base.js","sourceRoot":"","sources":["../../src/events/event-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,sEAAsE;AACtE,yEAAyE;AACzE,sEAAsE;AACtE,oEAAoE;AACpE,2DAA2D;AAC3D,8CAA8C;AAE9C,yDAAyD;AACzD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACnC,CAAC,CAAC;AAEH,yDAAyD;AACzD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;CAC3B,CAAC,CAAC;AAEH,wEAAwE;AACxE,0EAA0E;AAC1E,mEAAmE;AACnE,yDAAyD;AACzD,OAAO,EACL,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,2BAA2B,EAC3B,uBAAuB,EACvB,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,cAAc,GACf,MAAM,mBAAmB,CAAC"}
@@ -1,55 +0,0 @@
1
- import type { RuntimeRunResult } from '../types.js';
2
- import type { StageGate } from '../lifecycle/stage-io.js';
3
- import { type WireTelemetryRecord } from './telemetry-types.js';
4
- /**
5
- * Thrown when a stage marked `isLlmStage: true` arrives at the builder
6
- * with no model identifier. Caught one level up by the stage-build loop
7
- * (Task A5b) and converted into a `validation_warnings` diagnostic; the
8
- * offending stage is dropped from the emitted event but the rest of the
9
- * event still ships. Per spec D5 + §6.
10
- */
11
- export declare class StageModelMissingError extends Error {
12
- readonly stageName: string;
13
- constructor(stageName: string);
14
- }
15
- export interface BuildContext {
16
- route: 'delegate' | 'audit' | 'review' | 'debug' | 'execute-plan' | 'retry' | 'investigate' | 'research' | 'register-context-block';
17
- taskSpec: {
18
- filePaths?: string[];
19
- subtype?: string;
20
- };
21
- runResult: RuntimeRunResult;
22
- realFilesChanged: string[];
23
- client: string;
24
- mainModel: string | null;
25
- reviewPolicy?: 'full' | 'quality_only' | 'diff_only' | 'none';
26
- verifyCommandPresent?: boolean;
27
- /**
28
- * v5 — per-stage gates from LifecycleState. When present, the wire builder
29
- * cross-checks each stage's runResult.stageStats against gates[name].telemetry
30
- * and prefers the gate's values for `costUSD`, `durationMs`, `turnsUsed`,
31
- * `stopReason` (the canonical v5 source). stageStats supplies the remaining
32
- * fields (tokens, tool calls, files read/written) because they're not on the
33
- * gate's telemetry block.
34
- */
35
- gates?: Record<string, StageGate<unknown>>;
36
- }
37
- export declare function buildTaskCompletedEvent(ctx: BuildContext): WireTelemetryRecord;
38
- /**
39
- * Wire payload builder. Internal record fields match the wire schema 1:1
40
- * after the v4.0.3 rename (mainModel/mainModelFamily everywhere — DB column
41
- * is `main_model`, header is `X-MMA-Main-Model`).
42
- *
43
- * v5 — this used to be a `as unknown as WireTelemetryRecord` passthrough.
44
- * The translator is now real: the internal record is passed through Zod
45
- * (`WireTelemetryRecordSchema`) so the wire payload is schema-validated at
46
- * the egress boundary. When the schema rejects, we fall back to the
47
- * passthrough to preserve "best-effort telemetry" semantics — but the
48
- * validation failure is observable on bus emits so backend can detect drift
49
- * before the warehouse 400s. Callers that need strict validation should
50
- * call `WireTelemetryRecordSchema.parse` directly.
51
- */
52
- export declare function buildWirePayload(internalRecord: Record<string, unknown>, opts?: {
53
- onValidationError?: (err: unknown) => void;
54
- }): WireTelemetryRecord;
55
- //# sourceMappingURL=event-builder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-builder.d.ts","sourceRoot":"","sources":["../../src/events/event-builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAiB,MAAM,aAAa,CAAC;AAEnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAG1D,OAAO,EAAkH,KAAK,mBAAmB,EAA6B,MAAM,sBAAsB,CAAC;AAmB3M;;;;;;GAMG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;aACnB,SAAS,EAAE,MAAM;gBAAjB,SAAS,EAAE,MAAM;CAI9C;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,cAAc,GAAG,OAAO,GAAG,aAAa,GAAG,UAAU,GAAG,wBAAwB,CAAC;IACpI,QAAQ,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrD,SAAS,EAAE,gBAAgB,CAAC;IAC5B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,WAAW,GAAG,MAAM,CAAC;IAC9D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;CAC5C;AA0ED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,YAAY,GAAG,mBAAmB,CAuL9E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAC9B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvC,IAAI,CAAC,EAAE;IAAE,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAA;CAAE,GACpD,mBAAmB,CAcrB"}