@claudexor/schema 1.0.1 → 2.1.1

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 (278) hide show
  1. package/dist/agent-capabilities.d.ts +102 -30
  2. package/dist/agent-capabilities.d.ts.map +1 -1
  3. package/dist/agent-capabilities.js +49 -18
  4. package/dist/agent-capabilities.js.map +1 -1
  5. package/dist/apply-eligibility.d.ts.map +1 -1
  6. package/dist/apply-eligibility.js +22 -6
  7. package/dist/apply-eligibility.js.map +1 -1
  8. package/dist/attachment.d.ts +117 -52
  9. package/dist/attachment.d.ts.map +1 -1
  10. package/dist/attachment.js +60 -45
  11. package/dist/attachment.js.map +1 -1
  12. package/dist/auth.d.ts +1444 -0
  13. package/dist/auth.d.ts.map +1 -0
  14. package/dist/auth.js +371 -0
  15. package/dist/auth.js.map +1 -0
  16. package/dist/budget.d.ts +147 -18
  17. package/dist/budget.d.ts.map +1 -1
  18. package/dist/budget.js +80 -22
  19. package/dist/budget.js.map +1 -1
  20. package/dist/config.d.ts +829 -135
  21. package/dist/config.d.ts.map +1 -1
  22. package/dist/config.js +195 -41
  23. package/dist/config.js.map +1 -1
  24. package/dist/context.d.ts +6 -6
  25. package/dist/context.d.ts.map +1 -1
  26. package/dist/context.js +31 -7
  27. package/dist/context.js.map +1 -1
  28. package/dist/control-gc.d.ts +185 -0
  29. package/dist/control-gc.d.ts.map +1 -0
  30. package/dist/control-gc.js +81 -0
  31. package/dist/control-gc.js.map +1 -0
  32. package/dist/control-operation-responses.d.ts +1298 -0
  33. package/dist/control-operation-responses.d.ts.map +1 -0
  34. package/dist/control-operation-responses.js +35 -0
  35. package/dist/control-operation-responses.js.map +1 -0
  36. package/dist/control-run-detail.d.ts +556 -247
  37. package/dist/control-run-detail.d.ts.map +1 -1
  38. package/dist/control-run-detail.js +72 -17
  39. package/dist/control-run-detail.js.map +1 -1
  40. package/dist/control-run-retry.d.ts +88 -0
  41. package/dist/control-run-retry.d.ts.map +1 -0
  42. package/dist/control-run-retry.js +40 -0
  43. package/dist/control-run-retry.js.map +1 -0
  44. package/dist/control-run-scope.d.ts +25 -0
  45. package/dist/control-run-scope.d.ts.map +1 -0
  46. package/dist/control-run-scope.js +22 -0
  47. package/dist/control-run-scope.js.map +1 -0
  48. package/dist/control-secret.d.ts +90 -0
  49. package/dist/control-secret.d.ts.map +1 -0
  50. package/dist/control-secret.js +35 -0
  51. package/dist/control-secret.js.map +1 -0
  52. package/dist/control-spec.d.ts +592 -0
  53. package/dist/control-spec.d.ts.map +1 -0
  54. package/dist/control-spec.js +85 -0
  55. package/dist/control-spec.js.map +1 -0
  56. package/dist/control-thread-apply.d.ts +175 -0
  57. package/dist/control-thread-apply.d.ts.map +1 -0
  58. package/dist/control-thread-apply.js +31 -0
  59. package/dist/control-thread-apply.js.map +1 -0
  60. package/dist/control-trust.d.ts +74 -10
  61. package/dist/control-trust.d.ts.map +1 -1
  62. package/dist/control-trust.js +31 -11
  63. package/dist/control-trust.js.map +1 -1
  64. package/dist/control.d.ts +1688 -1334
  65. package/dist/control.d.ts.map +1 -1
  66. package/dist/control.js +592 -333
  67. package/dist/control.js.map +1 -1
  68. package/dist/credential-profile.d.ts +454 -0
  69. package/dist/credential-profile.d.ts.map +1 -0
  70. package/dist/credential-profile.js +140 -0
  71. package/dist/credential-profile.js.map +1 -0
  72. package/dist/decision.d.ts +10 -10
  73. package/dist/decision.d.ts.map +1 -1
  74. package/dist/decision.js +62 -15
  75. package/dist/decision.js.map +1 -1
  76. package/dist/delivery.d.ts +99 -0
  77. package/dist/delivery.d.ts.map +1 -0
  78. package/dist/delivery.js +19 -0
  79. package/dist/delivery.js.map +1 -0
  80. package/dist/events.d.ts +41 -4
  81. package/dist/events.d.ts.map +1 -1
  82. package/dist/events.js +47 -4
  83. package/dist/events.js.map +1 -1
  84. package/dist/gate.d.ts +5 -5
  85. package/dist/gate.d.ts.map +1 -1
  86. package/dist/gate.js +25 -5
  87. package/dist/gate.js.map +1 -1
  88. package/dist/harness.d.ts +775 -237
  89. package/dist/harness.d.ts.map +1 -1
  90. package/dist/harness.js +314 -111
  91. package/dist/harness.js.map +1 -1
  92. package/dist/index.d.ts +19 -0
  93. package/dist/index.d.ts.map +1 -1
  94. package/dist/index.js +19 -0
  95. package/dist/index.js.map +1 -1
  96. package/dist/operation.d.ts +185 -0
  97. package/dist/operation.d.ts.map +1 -0
  98. package/dist/operation.js +50 -0
  99. package/dist/operation.js.map +1 -0
  100. package/dist/orchestrate.d.ts +150 -22
  101. package/dist/orchestrate.d.ts.map +1 -1
  102. package/dist/orchestrate.js +117 -7
  103. package/dist/orchestrate.js.map +1 -1
  104. package/dist/primitives.d.ts.map +1 -1
  105. package/dist/primitives.js +4 -1
  106. package/dist/primitives.js.map +1 -1
  107. package/dist/problem.d.ts +29 -0
  108. package/dist/problem.d.ts.map +1 -0
  109. package/dist/problem.js +17 -0
  110. package/dist/problem.js.map +1 -0
  111. package/dist/project.d.ts +97 -0
  112. package/dist/project.d.ts.map +1 -0
  113. package/dist/project.js +27 -0
  114. package/dist/project.js.map +1 -0
  115. package/dist/quota.d.ts +269 -0
  116. package/dist/quota.d.ts.map +1 -0
  117. package/dist/quota.js +58 -0
  118. package/dist/quota.js.map +1 -0
  119. package/dist/raw.d.ts +195 -0
  120. package/dist/raw.d.ts.map +1 -0
  121. package/dist/raw.js +58 -0
  122. package/dist/raw.js.map +1 -0
  123. package/dist/readiness.d.ts +596 -0
  124. package/dist/readiness.d.ts.map +1 -0
  125. package/dist/readiness.js +87 -0
  126. package/dist/readiness.js.map +1 -0
  127. package/dist/recovery.d.ts +515 -0
  128. package/dist/recovery.d.ts.map +1 -0
  129. package/dist/recovery.js +93 -0
  130. package/dist/recovery.js.map +1 -0
  131. package/dist/request-requirements.d.ts +36 -0
  132. package/dist/request-requirements.d.ts.map +1 -0
  133. package/dist/request-requirements.js +29 -0
  134. package/dist/request-requirements.js.map +1 -0
  135. package/dist/review.d.ts +26 -26
  136. package/dist/review.d.ts.map +1 -1
  137. package/dist/review.js +50 -10
  138. package/dist/review.js.map +1 -1
  139. package/dist/route.d.ts +13 -13
  140. package/dist/route.d.ts.map +1 -1
  141. package/dist/route.js +19 -4
  142. package/dist/route.js.map +1 -1
  143. package/dist/setup.d.ts +9811 -0
  144. package/dist/setup.d.ts.map +1 -0
  145. package/dist/setup.js +475 -0
  146. package/dist/setup.js.map +1 -0
  147. package/dist/spec.d.ts +178 -61
  148. package/dist/spec.d.ts.map +1 -1
  149. package/dist/spec.js +69 -16
  150. package/dist/spec.js.map +1 -1
  151. package/dist/surface-run-controls.d.ts.map +1 -1
  152. package/dist/surface-run-controls.js +25 -21
  153. package/dist/surface-run-controls.js.map +1 -1
  154. package/dist/task.d.ts +1657 -60
  155. package/dist/task.d.ts.map +1 -1
  156. package/dist/task.js +144 -18
  157. package/dist/task.js.map +1 -1
  158. package/dist/telemetry.d.ts +487 -72
  159. package/dist/telemetry.d.ts.map +1 -1
  160. package/dist/telemetry.js +194 -16
  161. package/dist/telemetry.js.map +1 -1
  162. package/dist/thread.d.ts +89 -51
  163. package/dist/thread.d.ts.map +1 -1
  164. package/dist/thread.js +56 -11
  165. package/dist/thread.js.map +1 -1
  166. package/dist/tool-ref.d.ts +45 -0
  167. package/dist/tool-ref.d.ts.map +1 -0
  168. package/dist/tool-ref.js +45 -0
  169. package/dist/tool-ref.js.map +1 -0
  170. package/dist/workproduct.d.ts +3 -3
  171. package/dist/workproduct.d.ts.map +1 -1
  172. package/dist/workproduct.js.map +1 -1
  173. package/dist/workspace.d.ts +3 -3
  174. package/dist/workspace.d.ts.map +1 -1
  175. package/dist/workspace.js +12 -3
  176. package/dist/workspace.js.map +1 -1
  177. package/generated/AgentCapabilityCatalog.schema.json +53 -11
  178. package/generated/BudgetLease.schema.json +55 -6
  179. package/generated/BudgetObservation.schema.json +44 -7
  180. package/generated/ConformanceReport.schema.json +49 -0
  181. package/generated/ControlApplyCheckResponse.schema.json +34 -0
  182. package/generated/ControlArtifactListResponse.schema.json +57 -0
  183. package/generated/ControlAuthReadinessRefreshRequest.schema.json +38 -0
  184. package/generated/ControlAuthReadinessRefreshResponse.schema.json +85 -0
  185. package/generated/ControlCredentialProfileCreateRequest.schema.json +32 -0
  186. package/generated/ControlCredentialProfileCreateResponse.schema.json +142 -0
  187. package/generated/ControlCredentialProfileDeleteResponse.schema.json +107 -0
  188. package/generated/ControlCredentialProfilesResponse.schema.json +155 -0
  189. package/generated/ControlDeliveryResponse.schema.json +136 -0
  190. package/generated/ControlGcReceipt.schema.json +170 -0
  191. package/generated/ControlGcRequest.schema.json +18 -0
  192. package/generated/ControlHandshakeRequest.schema.json +26 -0
  193. package/generated/ControlHandshakeResponse.schema.json +30 -0
  194. package/generated/ControlHarnessListResponse.schema.json +198 -14
  195. package/generated/ControlHarnessModelsResponse.schema.json +19 -0
  196. package/generated/ControlHarnessSettingsPatch.schema.json +9 -12
  197. package/generated/ControlJournalEvent.schema.json +42 -0
  198. package/generated/ControlJournalExportReceipt.schema.json +49 -0
  199. package/generated/ControlJournalInspection.schema.json +149 -0
  200. package/generated/ControlJournalQuarantineReceipt.schema.json +55 -0
  201. package/generated/ControlJournalQuarantineRequest.schema.json +24 -0
  202. package/generated/ControlJournalValidation.schema.json +181 -0
  203. package/generated/ControlOperationCatalog.schema.json +128 -0
  204. package/generated/ControlOperationDescriptor.schema.json +110 -0
  205. package/generated/ControlProblem.schema.json +59 -0
  206. package/generated/ControlProject.schema.json +42 -0
  207. package/generated/ControlProjectListResponse.schema.json +54 -0
  208. package/generated/ControlProjectRegisterRequest.schema.json +19 -0
  209. package/generated/ControlProjectRelinkRequest.schema.json +19 -0
  210. package/generated/ControlQueuedRunInfo.schema.json +4 -2
  211. package/generated/ControlQuotaResponse.schema.json +177 -0
  212. package/generated/ControlResource.schema.json +59 -0
  213. package/generated/ControlRunAgainDraft.schema.json +539 -0
  214. package/generated/ControlRunDetail.schema.json +373 -34
  215. package/generated/ControlRunListResponse.schema.json +968 -0
  216. package/generated/ControlRunRetryResponse.schema.json +54 -0
  217. package/generated/ControlRunStartRequest.schema.json +123 -55
  218. package/generated/ControlRunStartResponse.schema.json +78 -0
  219. package/generated/ControlRunSummary.schema.json +312 -21
  220. package/generated/ControlSecretListResponse.schema.json +8 -14
  221. package/generated/ControlSecretMutationResponse.schema.json +32 -0
  222. package/generated/ControlSecretSetRequest.schema.json +27 -0
  223. package/generated/ControlSettingsSnapshot.schema.json +128 -44
  224. package/generated/ControlSettingsUpdateRequest.schema.json +119 -40
  225. package/generated/ControlSetupJob.schema.json +770 -64
  226. package/generated/ControlSetupJobCreateRequest.schema.json +16 -13
  227. package/generated/ControlSetupJobEvent.schema.json +869 -5
  228. package/generated/ControlSetupJobListFilter.schema.json +35 -0
  229. package/generated/ControlSetupJobListResponse.schema.json +770 -64
  230. package/generated/ControlSetupJobSnapshot.schema.json +878 -0
  231. package/generated/ControlSpecAnswersRequest.schema.json +74 -0
  232. package/generated/ControlSpecQuestionsRequest.schema.json +128 -2
  233. package/generated/ControlSpecSession.schema.json +249 -0
  234. package/generated/ControlSpecSessionListResponse.schema.json +261 -0
  235. package/generated/ControlThread.schema.json +36 -6
  236. package/generated/ControlThreadApplyResponse.schema.json +139 -0
  237. package/generated/ControlThreadCreateRequest.schema.json +6 -2
  238. package/generated/ControlThreadDetail.schema.json +64 -12
  239. package/generated/ControlThreadListResponse.schema.json +36 -6
  240. package/generated/ControlThreadTurnRequest.schema.json +413 -0
  241. package/generated/ControlThreadTurnResponse.schema.json +73 -0
  242. package/generated/ControlThreadUpdateRequest.schema.json +12 -1
  243. package/generated/ControlTrustListResponse.schema.json +6 -0
  244. package/generated/ControlTrustState.schema.json +6 -0
  245. package/generated/ControlTrustUpdateRequest.schema.json +65 -3
  246. package/generated/ControlUploadCreateRequest.schema.json +37 -0
  247. package/generated/ControlUploadFinalizeRequest.schema.json +17 -0
  248. package/generated/ControlUploadStatus.schema.json +40 -0
  249. package/generated/CredentialProfile.schema.json +78 -0
  250. package/generated/CredentialProfileStatus.schema.json +61 -0
  251. package/generated/DecisionRecord.schema.json +6 -3
  252. package/generated/GlobalConfig.schema.json +238 -55
  253. package/generated/HarnessEvent.schema.json +259 -11
  254. package/generated/HarnessManifest.schema.json +96 -14
  255. package/generated/HarnessModel.schema.json +19 -0
  256. package/generated/HarnessStatusDto.schema.json +198 -14
  257. package/generated/OrchestrateContract.schema.json +32 -6
  258. package/generated/OrchestratePlan.schema.json +20 -0
  259. package/generated/OrchestratePlanProgress.schema.json +61 -0
  260. package/generated/PaidBudget.schema.json +42 -0
  261. package/generated/Project.schema.json +45 -0
  262. package/generated/ProjectConfig.schema.json +45 -18
  263. package/generated/RawContextPacket.schema.json +184 -0
  264. package/generated/RawGitPatchEnvelope.schema.json +70 -0
  265. package/generated/RunEvent.schema.json +3 -0
  266. package/generated/RunTelemetry.schema.json +280 -0
  267. package/generated/SecretMetadata.schema.json +4 -7
  268. package/generated/Session.schema.json +14 -0
  269. package/generated/SpecPack.schema.json +118 -7
  270. package/generated/TaskContract.schema.json +224 -30
  271. package/generated/TestCommandInvocation.schema.json +45 -0
  272. package/generated/Thread.schema.json +74 -6
  273. package/generated/ThreadHeadPing.schema.json +40 -0
  274. package/generated/ThreadTurn.schema.json +24 -11
  275. package/generated/TrustConfig.schema.json +77 -0
  276. package/package.json +3 -2
  277. package/generated/ControlSetupJobConfirmRequest.schema.json +0 -18
  278. package/generated/ControlSpecFreezeRequest.schema.json +0 -83
package/dist/thread.js CHANGED
@@ -12,11 +12,11 @@ import { Attachment } from "./attachment.js";
12
12
  * serializes a `SessionReboundLineage` and emits a typed `session.rebound`
13
13
  * event (honest, lossy disclosure — never silent).
14
14
  */
15
- /** A thread is open or explicitly closed (archived). "Blocked" is not a thread
16
- * state — it is a live projection of whether the head turn's run needs a human. */
15
+ /** A thread is open, archived, in 30-day trash, or terminally purged.
16
+ * "Blocked" is not a thread state — it is a live run projection. */
17
17
  export const ThreadState = z
18
- .enum(["active", "closed"])
19
- .describe("Thread lifecycle state: active or explicitly closed (archived). Blocked is a live projection, not a thread state.");
18
+ .enum(["active", "closed", "trashed", "purged"])
19
+ .describe("Thread lifecycle state: active, closed, trashed for recovery, or terminally purged.");
20
20
  export const SessionState = z
21
21
  .enum(["live", "stale", "rebound"])
22
22
  .describe("Vendor session cache state: live (resumable), stale, or rebound (re-hosted elsewhere).");
@@ -49,7 +49,14 @@ export const ThreadWorkspace = z
49
49
  .default(null)
50
50
  .describe("Persistent worktree path; set lazily on the first write turn of an isolated thread."),
51
51
  /** Snapshot SHA the isolated worktree (or last apply) is based on. */
52
- base_sha: z.string().nullable().default(null).describe("Snapshot SHA the isolated worktree (or last apply) is based on."),
52
+ base_sha: z
53
+ .string()
54
+ .nullable()
55
+ .default(null)
56
+ .describe("Snapshot SHA the isolated worktree (or last apply) is based on."),
57
+ delivered_through_run_id: Id.nullable()
58
+ .default(null)
59
+ .describe("Last run in the lineage prefix already delivered from this isolated thread."),
53
60
  })
54
61
  .describe("How the thread's turns touch files (in-place live tree vs isolated worktree).");
55
62
  /** The Claudexor-owned conversation. SSOT for lineage; vendor sessions are caches. */
@@ -73,6 +80,11 @@ export const Thread = z
73
80
  mode: ModeKind.default("agent").describe("Default mode for new turns; individual turns may override."),
74
81
  /** Per-thread auth preference override (subscription/api_key/auto). */
75
82
  auth_preference: AuthPreference.default("auto"),
83
+ /** Sticky credential profile for the thread (INV-135): turns inherit it
84
+ * unless they carry an explicit per-turn profile; null = engine default. */
85
+ credential_profile_id: Id.nullable()
86
+ .default(null)
87
+ .describe("Sticky credential profile for the thread; per-turn selection wins, null = engine-default credentials."),
76
88
  /** Sticky orchestrate/primary harness for the thread (re-routable). A bias /
77
89
  * ordering hint, NOT a privileged role — orderPool just pins it first. */
78
90
  primary_harness: z
@@ -91,8 +103,21 @@ export const Thread = z
91
103
  workspace: ThreadWorkspace.default({}),
92
104
  /** Ordered run lineage (each run is a turn move). */
93
105
  run_ids: z.array(Id).default([]).describe("Ordered run lineage (each run is a turn move)."),
94
- head_run_id: Id.nullable().default(null).describe("Most recent run of the thread; null before the first turn runs."),
106
+ head_run_id: Id.nullable()
107
+ .default(null)
108
+ .describe("Most recent run of the thread; null before the first turn runs."),
95
109
  state: ThreadState.default("active"),
110
+ trashed_at: IsoTimestamp.nullable()
111
+ .default(null)
112
+ .describe("When the thread entered recoverable trash."),
113
+ purge_after: IsoTimestamp.nullable()
114
+ .default(null)
115
+ .describe("Earliest automatic purge time; 30 days after trash."),
116
+ pre_trash_state: z
117
+ .enum(["active", "closed"])
118
+ .nullable()
119
+ .default(null)
120
+ .describe("Lifecycle state restored while the trash retention window remains open."),
96
121
  })
97
122
  .describe("The Claudexor-owned conversation about a project; runs are turns inside it. SSOT for lineage; vendor sessions are caches.");
98
123
  /** A re-hostable pointer to one harness's native CLI session for a thread. */
@@ -108,7 +133,17 @@ export const Session = z
108
133
  .default(null)
109
134
  .describe("The vendor CLI session id (codex thread id / claude session uuid / ...); null when none exists."),
110
135
  resume_kind: SessionResumeKind.default("none"),
111
- last_observed_model: z.string().nullable().default(null).describe("Model last observed on the session's stream."),
136
+ /** Credential profile the vendor session was created under (INV-135).
137
+ * Resume must never cross profiles: a session recorded under profile A is
138
+ * ineligible for a turn running as profile B (or as the null default). */
139
+ profile_id: Id.nullable()
140
+ .default(null)
141
+ .describe("Credential profile the vendor session was created under; resume never crosses profiles (null = engine-default credentials)."),
142
+ last_observed_model: z
143
+ .string()
144
+ .nullable()
145
+ .default(null)
146
+ .describe("Model last observed on the session's stream."),
112
147
  state: SessionState.default("live"),
113
148
  created_at: IsoTimestamp.describe("When the session was created."),
114
149
  updated_at: IsoTimestamp.describe("When the session was last updated."),
@@ -158,11 +193,16 @@ export const ThreadTurn = z
158
193
  run_id: Id.nullable().default(null).describe("Run backing this turn; null while unbound."),
159
194
  parent_run_id: Id.nullable().default(null).describe("Run this turn follows up on, when any."),
160
195
  /** Set when this turn implements an approved plan from an earlier plan run. */
161
- plan_run_id: Id.nullable().default(null).describe("Set when this turn implements an approved plan from an earlier plan run."),
196
+ plan_run_id: Id.nullable()
197
+ .default(null)
198
+ .describe("Set when this turn implements an approved plan from an earlier plan run."),
162
199
  kind: ThreadTurnKind.default("followup"),
163
200
  prompt: z.string().default("").describe("The user's message for this turn."),
164
201
  /** Files/images the user attached to this turn (resolved scoped paths). */
165
- attachments: z.array(Attachment).default([]).describe("Files/images the user attached to this turn (resolved scoped paths)."),
202
+ attachments: z
203
+ .array(Attachment)
204
+ .default([])
205
+ .describe("Files/images the user attached to this turn (resolved scoped paths)."),
166
206
  /** Why this turn has no run (enqueue/preflight refusal); null once a run binds. */
167
207
  enqueue_error: TurnEnqueueError.nullable()
168
208
  .default(null)
@@ -186,8 +226,13 @@ export const SessionReboundLineage = z
186
226
  .nullable()
187
227
  .default(null)
188
228
  .describe("The vendor native session id being left behind (not a Claudexor id); null when none existed."),
189
- to_session_id: Id.nullable().default(null).describe("New Claudexor session id; null when no new session was created."),
190
- summary: z.string().default("").describe("Carried-over conversation summary injected into the new session."),
229
+ to_session_id: Id.nullable()
230
+ .default(null)
231
+ .describe("New Claudexor session id; null when no new session was created."),
232
+ summary: z
233
+ .string()
234
+ .default("")
235
+ .describe("Carried-over conversation summary injected into the new session."),
191
236
  reason: FallbackReason.default("not_portable"),
192
237
  })
193
238
  .describe("The lossy payload serialized when a turn cannot resume the native session in place (isolated candidates or re-hosting onto a different harness); carried by the session.rebound event.");
@@ -1 +1 @@
1
- {"version":3,"file":"thread.js","sourceRoot":"","sources":["../src/thread.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thread.js","sourceRoot":"","sources":["../src/thread.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,cAAc,EACd,cAAc,EACd,EAAE,EACF,YAAY,EACZ,QAAQ,EACR,aAAa,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;;GAUG;AAEH;oEACoE;AACpE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACzB,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;KAC/C,QAAQ,CAAC,qFAAqF,CAAC,CAAC;AAGnG,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC;KAC1B,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;KAClC,QAAQ,CACP,wFAAwF,CACzF,CAAC;AAGJ;;2CAE2C;AAC3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,IAAI,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;KAC9B,QAAQ,CACP,mHAAmH,CACpH,CAAC;AAGJ,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;KACzC,QAAQ,CAAC,qFAAqF,CAAC,CAAC;AAGnG;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC;KAC3B,IAAI,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;KAC9B,QAAQ,CACP,mLAAmL,CACpL,CAAC;AAGJ,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC;IACvC,gEAAgE;IAChE,aAAa,EAAE,CAAC;SACb,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,qFAAqF,CACtF;IACH,sEAAsE;IACtE,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,iEAAiE,CAAC;IAC9E,wBAAwB,EAAE,EAAE,CAAC,QAAQ,EAAE;SACpC,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,6EAA6E,CAAC;CAC3F,CAAC;KACD,QAAQ,CAAC,+EAA+E,CAAC,CAAC;AAG7F,sFAAsF;AACtF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC;KACpB,MAAM,CAAC;IACN,cAAc,EAAE,aAAa;IAC7B,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IAC7B,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IACjE,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IACtE,2EAA2E;IAC3E,IAAI,EAAE,CAAC;SACJ,MAAM,CAAC;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;QAC/D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KACnE,CAAC;SACD,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,sEAAsE,CAAC;IACnF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IACpF,iEAAiE;IACjE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CACtC,4DAA4D,CAC7D;IACD,uEAAuE;IACvE,eAAe,EAAE,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC;IAC/C;gFAC4E;IAC5E,qBAAqB,EAAE,EAAE,CAAC,QAAQ,EAAE;SACjC,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,uGAAuG,CACxG;IACH;8EAC0E;IAC1E,eAAe,EAAE,CAAC;SACf,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,+FAA+F,CAChG;IACH;;kFAE8E;IAC9E,kBAAkB,EAAE,CAAC;SAClB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,2IAA2I,CAC5I;IACH,uEAAuE;IACvE,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;IACtC,qDAAqD;IACrD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IAC3F,WAAW,EAAE,EAAE,CAAC,QAAQ,EAAE;SACvB,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,iEAAiE,CAAC;IAC9E,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC;IACpC,UAAU,EAAE,YAAY,CAAC,QAAQ,EAAE;SAChC,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,4CAA4C,CAAC;IACzD,WAAW,EAAE,YAAY,CAAC,QAAQ,EAAE;SACjC,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,qDAAqD,CAAC;IAClE,eAAe,EAAE,CAAC;SACf,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;SAC1B,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,yEAAyE,CAAC;CACvF,CAAC;KACD,QAAQ,CACP,2HAA2H,CAC5H,CAAC;AAGJ,8EAA8E;AAC9E,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC;KACrB,MAAM,CAAC;IACN,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC9B,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IACxD,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC3D,+EAA+E;IAC/E,iBAAiB,EAAE,CAAC;SACjB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,iGAAiG,CAClG;IACH,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC;IAC9C;;8EAE0E;IAC1E,UAAU,EAAE,EAAE,CAAC,QAAQ,EAAE;SACtB,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,6HAA6H,CAC9H;IACH,mBAAmB,EAAE,CAAC;SACnB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,8CAA8C,CAAC;IAC3D,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;IACnC,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAClE,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,oCAAoC,CAAC;CACxE,CAAC;KACD,QAAQ,CACP,4GAA4G,CAC7G,CAAC;AAGJ;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,4BAA4B,CAAC;AAEnE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IAC/D;2EACuE;IACvE,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,wGAAwG,CACzG;IACH;;;6CAGyC;IACzC,SAAS,EAAE,CAAC;SACT,OAAO,EAAE;SACT,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,mHAAmH,CACpH;IACH,SAAS,EAAE,YAAY,CAAC,QAAQ,CAAC,0BAA0B,CAAC;CAC7D,CAAC;KACD,QAAQ,CACP,sKAAsK,CACvK,CAAC;AAGJ,2EAA2E;AAC3E,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC;KACxB,MAAM,CAAC;IACN,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;IAC3B,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IACrD,MAAM,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,4CAA4C,CAAC;IAC1F,aAAa,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAC7F,+EAA+E;IAC/E,WAAW,EAAE,EAAE,CAAC,QAAQ,EAAE;SACvB,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,0EAA0E,CAAC;IACvF,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IAC5E,2EAA2E;IAC3E,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,UAAU,CAAC;SACjB,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CAAC,sEAAsE,CAAC;IACnF,mFAAmF;IACnF,aAAa,EAAE,gBAAgB,CAAC,QAAQ,EAAE;SACvC,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,8EAA8E,CAAC;IAC3F,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,4BAA4B,CAAC;CAChE,CAAC;KACD,QAAQ,CAAC,qEAAqE,CAAC,CAAC;AAGnF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACnC,MAAM,CAAC;IACN,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IAC7D,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC3D,+EAA+E;IAC/E,sBAAsB,EAAE,CAAC;SACtB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,8FAA8F,CAC/F;IACH,aAAa,EAAE,EAAE,CAAC,QAAQ,EAAE;SACzB,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,iEAAiE,CAAC;IAC9E,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CAAC,kEAAkE,CAAC;IAC/E,MAAM,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC;CAC/C,CAAC;KACD,QAAQ,CACP,wLAAwL,CACzL,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Coarse tool classification used for typed governance (no tool-name string
4
+ * matching outside adapters). Adapters map native tool names to a kind.
5
+ */
6
+ export declare const ToolKind: z.ZodEnum<["web", "file", "command", "mcp", "search", "other"]>;
7
+ export type ToolKind = z.infer<typeof ToolKind>;
8
+ /**
9
+ * Typed tool reference attached to `tool_call` / `tool_result` events.
10
+ * `status` is REQUIRED on `tool_result` events (adapter conformance enforces it);
11
+ * a missing status on a result is treated as a dropped/diagnostic event, never as ok.
12
+ */
13
+ export declare const ToolRef: z.ZodObject<{
14
+ name: z.ZodString;
15
+ kind: z.ZodDefault<z.ZodEnum<["web", "file", "command", "mcp", "search", "other"]>>;
16
+ use_id: z.ZodOptional<z.ZodString>;
17
+ /** Redacted, bounded human-readable target (query/url/path/command). */
18
+ target: z.ZodOptional<z.ZodString>;
19
+ status: z.ZodOptional<z.ZodEnum<["ok", "error", "cancelled", "denied"]>>;
20
+ /** Redacted, bounded error detail for status=error results. */
21
+ error_summary: z.ZodOptional<z.ZodString>;
22
+ /** Redacted, bounded content detail for results (success or failure). */
23
+ content_summary: z.ZodOptional<z.ZodString>;
24
+ exit_code: z.ZodOptional<z.ZodNumber>;
25
+ }, "strip", z.ZodTypeAny, {
26
+ name: string;
27
+ kind: "web" | "file" | "command" | "mcp" | "search" | "other";
28
+ status?: "cancelled" | "ok" | "error" | "denied" | undefined;
29
+ use_id?: string | undefined;
30
+ target?: string | undefined;
31
+ error_summary?: string | undefined;
32
+ content_summary?: string | undefined;
33
+ exit_code?: number | undefined;
34
+ }, {
35
+ name: string;
36
+ status?: "cancelled" | "ok" | "error" | "denied" | undefined;
37
+ kind?: "web" | "file" | "command" | "mcp" | "search" | "other" | undefined;
38
+ use_id?: string | undefined;
39
+ target?: string | undefined;
40
+ error_summary?: string | undefined;
41
+ content_summary?: string | undefined;
42
+ exit_code?: number | undefined;
43
+ }>;
44
+ export type ToolRef = z.infer<typeof ToolRef>;
45
+ //# sourceMappingURL=tool-ref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-ref.d.ts","sourceRoot":"","sources":["../src/tool-ref.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,QAAQ,iEAIlB,CAAC;AACJ,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD;;;;GAIG;AACH,eAAO,MAAM,OAAO;;;;IAKhB,wEAAwE;;;IAWxE,+DAA+D;;IAK/D,yEAAyE;;;;;;;;;;;;;;;;;;;;;EAWA,CAAC;AAC9E,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Coarse tool classification used for typed governance (no tool-name string
4
+ * matching outside adapters). Adapters map native tool names to a kind.
5
+ */
6
+ export const ToolKind = z
7
+ .enum(["web", "file", "command", "mcp", "search", "other"])
8
+ .describe("Coarse tool classification used for typed governance; adapters map native tool names to a kind.");
9
+ /**
10
+ * Typed tool reference attached to `tool_call` / `tool_result` events.
11
+ * `status` is REQUIRED on `tool_result` events (adapter conformance enforces it);
12
+ * a missing status on a result is treated as a dropped/diagnostic event, never as ok.
13
+ */
14
+ export const ToolRef = z
15
+ .object({
16
+ name: z.string().describe("Native tool name as the harness reports it."),
17
+ kind: ToolKind.default("other"),
18
+ use_id: z.string().optional().describe("Correlates a tool_result with its tool_call."),
19
+ /** Redacted, bounded human-readable target (query/url/path/command). */
20
+ target: z
21
+ .string()
22
+ .optional()
23
+ .describe("Redacted, bounded human-readable target (query/url/path/command)."),
24
+ status: z
25
+ .enum(["ok", "error", "cancelled", "denied"])
26
+ .optional()
27
+ .describe("Outcome of the tool use; required on tool_result events (a missing status is never treated as ok)."),
28
+ /** Redacted, bounded error detail for status=error results. */
29
+ error_summary: z
30
+ .string()
31
+ .optional()
32
+ .describe("Redacted, bounded error detail for status=error results."),
33
+ /** Redacted, bounded content detail for results (success or failure). */
34
+ content_summary: z
35
+ .string()
36
+ .optional()
37
+ .describe("Redacted, bounded content detail for results (success or failure)."),
38
+ exit_code: z
39
+ .number()
40
+ .int()
41
+ .optional()
42
+ .describe("Process exit code for command tools, when known."),
43
+ })
44
+ .describe("Typed tool reference attached to tool_call/tool_result events.");
45
+ //# sourceMappingURL=tool-ref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-ref.js","sourceRoot":"","sources":["../src/tool-ref.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC;KACtB,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;KAC1D,QAAQ,CACP,iGAAiG,CAClG,CAAC;AAGJ;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC;KACrB,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IACxE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;IAC/B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;IACtF,wEAAwE;IACxE,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mEAAmE,CAAC;IAChF,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;SAC5C,QAAQ,EAAE;SACV,QAAQ,CACP,oGAAoG,CACrG;IACH,+DAA+D;IAC/D,aAAa,EAAE,CAAC;SACb,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,0DAA0D,CAAC;IACvE,yEAAyE;IACzE,eAAe,EAAE,CAAC;SACf,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,oEAAoE,CAAC;IACjF,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;CAChE,CAAC;KACD,QAAQ,CAAC,gEAAgE,CAAC,CAAC"}
@@ -11,16 +11,16 @@ export declare const WorkProduct: z.ZodObject<{
11
11
  files: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
12
12
  meta: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
13
13
  }, "strip", z.ZodTypeAny, {
14
- id: string;
15
- kind: "patch" | "new_repo" | "report";
14
+ kind: "patch" | "report" | "new_repo";
16
15
  files: Record<string, string>;
16
+ id: string;
17
17
  source_task_id: string;
18
18
  meta: Record<string, unknown>;
19
19
  producer_attempt_id?: string | undefined;
20
20
  evidence_dir?: string | undefined;
21
21
  }, {
22
+ kind: "patch" | "report" | "new_repo";
22
23
  id: string;
23
- kind: "patch" | "new_repo" | "report";
24
24
  source_task_id: string;
25
25
  files?: Record<string, string> | undefined;
26
26
  producer_attempt_id?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"workproduct.d.ts","sourceRoot":"","sources":["../src/workproduct.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,eAAe,4CAEwG,CAAC;AACrI,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,eAAO,MAAM,WAAW;;;;;;IAOpB,uFAAuF;;;;;;;;;;;;;;;;;;;EAOoB,CAAC;AAChH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"workproduct.d.ts","sourceRoot":"","sources":["../src/workproduct.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,eAAe,4CAIzB,CAAC;AACJ,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,eAAO,MAAM,WAAW;;;;;;IAOpB,uFAAuF;;;;;;;;;;;;;;;;;;;EAWxF,CAAC;AACJ,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"workproduct.js","sourceRoot":"","sources":["../src/workproduct.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,qEAAqE;AACrE,4EAA4E;AAC5E,6EAA6E;AAC7E,sEAAsE;AACtE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;KACrC,QAAQ,CAAC,uHAAuH,CAAC,CAAC;AAGrI,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACzB,MAAM,CAAC;IACN,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACnC,IAAI,EAAE,eAAe;IACrB,cAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC/D,mBAAmB,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IACpF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IACzF,uFAAuF;IACvF,KAAK,EAAE,CAAC;SACL,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9B,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CAAC,mHAAmH,CAAC;IAChI,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;CACxF,CAAC;KACD,QAAQ,CAAC,kGAAkG,CAAC,CAAC"}
1
+ {"version":3,"file":"workproduct.js","sourceRoot":"","sources":["../src/workproduct.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,qEAAqE;AACrE,4EAA4E;AAC5E,6EAA6E;AAC7E,sEAAsE;AACtE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;KACrC,QAAQ,CACP,uHAAuH,CACxH,CAAC;AAGJ,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACzB,MAAM,CAAC;IACN,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACnC,IAAI,EAAE,eAAe;IACrB,cAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC/D,mBAAmB,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IACpF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IACzF,uFAAuF;IACvF,KAAK,EAAE,CAAC;SACL,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9B,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,mHAAmH,CACpH;IACH,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;CACxF,CAAC;KACD,QAAQ,CACP,kGAAkG,CACnG,CAAC"}
@@ -21,23 +21,23 @@ export declare const WorkspaceEnvelope: z.ZodObject<{
21
21
  dirty_policy: z.ZodDefault<z.ZodEnum<["refuse", "snapshot"]>>;
22
22
  created_at: z.ZodString;
23
23
  }, "strip", z.ZodTypeAny, {
24
+ created_at: string;
24
25
  id: string;
25
26
  worktree_path: string;
26
27
  base_sha: string | null;
27
- created_at: string;
28
28
  base_ref: string;
29
29
  task_id: string;
30
30
  attempt_id: string;
31
- repo_root: string;
32
31
  dirty_policy: "refuse" | "snapshot";
32
+ repo_root: string;
33
33
  branch_name: string;
34
34
  home_dir: string;
35
35
  harness_config_dirs: Record<string, string>;
36
36
  policy_profile: string;
37
37
  }, {
38
+ created_at: string;
38
39
  id: string;
39
40
  worktree_path: string;
40
- created_at: string;
41
41
  base_ref: string;
42
42
  task_id: string;
43
43
  attempt_id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBwF,CAAC;AACvH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgC3B,CAAC;AACJ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
package/dist/workspace.js CHANGED
@@ -14,15 +14,24 @@ export const WorkspaceEnvelope = z
14
14
  attempt_id: Id.describe("Attempt the envelope belongs to."),
15
15
  repo_root: z.string().describe("Absolute path of the source repository root."),
16
16
  base_ref: z.string().describe("Git ref the worktree was created from."),
17
- base_sha: z.string().nullable().default(null).describe("Resolved base commit SHA; null when not recorded."),
17
+ base_sha: z
18
+ .string()
19
+ .nullable()
20
+ .default(null)
21
+ .describe("Resolved base commit SHA; null when not recorded."),
18
22
  worktree_path: z.string().describe("Absolute path of the isolated git worktree."),
19
23
  branch_name: z.string().describe("Branch created for the worktree."),
20
- home_dir: z.string().describe("Scoped HOME directory for the harness process (kept outside the worktree)."),
24
+ home_dir: z
25
+ .string()
26
+ .describe("Scoped HOME directory for the harness process (kept outside the worktree)."),
21
27
  harness_config_dirs: z
22
28
  .record(z.string(), z.string())
23
29
  .default({})
24
30
  .describe("Scoped per-harness config directories keyed by harness id (kept outside the worktree)."),
25
- policy_profile: z.string().default("workspace_write").describe("Access profile the envelope enforces."),
31
+ policy_profile: z
32
+ .string()
33
+ .default("workspace_write")
34
+ .describe("Access profile the envelope enforces."),
26
35
  dirty_policy: DirtyPolicy.default("refuse"),
27
36
  created_at: IsoTimestamp.describe("When the envelope was created."),
28
37
  })
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC/B,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IACrD,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC3D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;IAC9E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IACvE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,mDAAmD,CAAC;IAC3G,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IACjF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IACpE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4EAA4E,CAAC;IAC3G,mBAAmB,EAAE,CAAC;SACnB,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9B,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CAAC,wFAAwF,CAAC;IACrG,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IACvG,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC3C,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,gCAAgC,CAAC;CACpE,CAAC;KACD,QAAQ,CAAC,yGAAyG,CAAC,CAAC"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC/B,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IACrD,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC3D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;IAC9E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IACvE,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,mDAAmD,CAAC;IAChE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IACjF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IACpE,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,CAAC,4EAA4E,CAAC;IACzF,mBAAmB,EAAE,CAAC;SACnB,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9B,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,wFAAwF,CACzF;IACH,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,OAAO,CAAC,iBAAiB,CAAC;SAC1B,QAAQ,CAAC,uCAAuC,CAAC;IACpD,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC3C,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,gCAAgC,CAAC;CACpE,CAAC;KACD,QAAQ,CACP,yGAAyG,CAC1G,CAAC"}
@@ -135,15 +135,57 @@
135
135
  ],
136
136
  "description": "How external web/search is controlled for this harness."
137
137
  },
138
- "imageInput": {
139
- "type": "string",
140
- "enum": [
141
- "file_path",
142
- "base64_stream",
143
- "base64_inline",
144
- "none"
145
- ],
146
- "description": "Attachment/vision delivery mechanism the adapter supports."
138
+ "attachmentInputs": {
139
+ "type": "array",
140
+ "items": {
141
+ "type": "object",
142
+ "properties": {
143
+ "kind": {
144
+ "type": "string",
145
+ "enum": [
146
+ "image",
147
+ "file"
148
+ ],
149
+ "description": "Kind of attached resource: image input or generic file bytes."
150
+ },
151
+ "mime_types": {
152
+ "type": "array",
153
+ "items": {
154
+ "type": "string",
155
+ "minLength": 1
156
+ },
157
+ "minItems": 1
158
+ },
159
+ "max_bytes": {
160
+ "type": "integer",
161
+ "exclusiveMinimum": 0
162
+ },
163
+ "max_count": {
164
+ "type": "integer",
165
+ "exclusiveMinimum": 0
166
+ },
167
+ "transport": {
168
+ "type": "string",
169
+ "enum": [
170
+ "file_path",
171
+ "base64_stream",
172
+ "base64_inline",
173
+ "text_inline"
174
+ ],
175
+ "description": "Native adapter transport used for one supported attachment class."
176
+ }
177
+ },
178
+ "required": [
179
+ "kind",
180
+ "mime_types",
181
+ "max_bytes",
182
+ "max_count",
183
+ "transport"
184
+ ],
185
+ "additionalProperties": false,
186
+ "description": "Finite MIME, size, count and transport limits declared by one adapter."
187
+ },
188
+ "description": "Finite media/MIME/size/count/transport declarations for this adapter."
147
189
  },
148
190
  "effortLevels": {
149
191
  "type": "array",
@@ -199,7 +241,7 @@
199
241
  "configuredModelValid",
200
242
  "models",
201
243
  "webPolicy",
202
- "imageInput",
244
+ "attachmentInputs",
203
245
  "effortLevels",
204
246
  "accessProfilesSupported",
205
247
  "readonlyMechanism"
@@ -264,7 +306,7 @@
264
306
  "live"
265
307
  ]
266
308
  },
267
- "description": "Run isolation: envelope = isolated worktree under .claudexor/workspaces (default), live = the project tree itself."
309
+ "description": "Run isolation: envelope = isolated worktree in the external per-project runtime namespace (default), live = the project tree itself."
268
310
  },
269
311
  "workspaceModes": {
270
312
  "type": "array",
@@ -49,13 +49,61 @@
49
49
  "default": null,
50
50
  "description": "Requested model for the reserved call; null = harness default."
51
51
  },
52
- "max_usd": {
53
- "type": [
54
- "number",
55
- "null"
52
+ "cost": {
53
+ "type": "object",
54
+ "properties": {
55
+ "knowledge": {
56
+ "type": "string",
57
+ "enum": [
58
+ "exact",
59
+ "estimated",
60
+ "unknown"
61
+ ],
62
+ "description": "Quality of incremental-cash cost evidence for an operation."
63
+ },
64
+ "billing": {
65
+ "type": "string",
66
+ "enum": [
67
+ "proven_zero",
68
+ "subscription_entitlement",
69
+ "metered",
70
+ "unknown"
71
+ ],
72
+ "description": "What is actually known about incremental billing; a native credential route alone never proves entitlement or zero cost."
73
+ },
74
+ "source": {
75
+ "type": "string",
76
+ "minLength": 1
77
+ },
78
+ "provenance": {
79
+ "type": "array",
80
+ "items": {
81
+ "type": "string",
82
+ "minLength": 1
83
+ },
84
+ "minItems": 1
85
+ },
86
+ "estimatedUsd": {
87
+ "anyOf": [
88
+ {
89
+ "type": "number",
90
+ "minimum": 0
91
+ },
92
+ {
93
+ "type": "null"
94
+ }
95
+ ],
96
+ "default": null
97
+ }
98
+ },
99
+ "required": [
100
+ "knowledge",
101
+ "billing",
102
+ "source",
103
+ "provenance"
56
104
  ],
57
- "default": null,
58
- "description": "USD cap reserved for the call; null = no cap."
105
+ "additionalProperties": false,
106
+ "description": "Incremental-cash cost knowledge with its source and evidence provenance."
59
107
  },
60
108
  "reason": {
61
109
  "type": "array",
@@ -85,6 +133,7 @@
85
133
  "task_id",
86
134
  "intent",
87
135
  "harness_id",
136
+ "cost",
88
137
  "created_at"
89
138
  ],
90
139
  "additionalProperties": false,
@@ -9,6 +9,22 @@
9
9
  "minLength": 1,
10
10
  "description": "Harness the observation is about."
11
11
  },
12
+ "credential_route": {
13
+ "type": "string",
14
+ "enum": [
15
+ "vendor_native",
16
+ "managed_api_key",
17
+ "local"
18
+ ],
19
+ "description": "Credential route the signal was observed on, when known."
20
+ },
21
+ "subject_id": {
22
+ "type": [
23
+ "string",
24
+ "null"
25
+ ],
26
+ "description": "Credential-profile subject of the signal; null = engine default."
27
+ },
12
28
  "ts": {
13
29
  "type": "string",
14
30
  "description": "When the signal was observed."
@@ -29,19 +45,40 @@
29
45
  "enum": [
30
46
  "spend",
31
47
  "rate_limited",
32
- "used_percent",
33
- "cooldown",
34
- "manual"
48
+ "quota_constraint",
49
+ "cooldown"
35
50
  ],
36
- "description": "What was observed: spend, a rate-limit hit, a used-percent reading, a cooldown, or a manual entry."
51
+ "description": "What was observed: spend, a rate-limit hit, one independent quota constraint, or a cooldown."
37
52
  },
38
53
  "usd": {
39
54
  "type": "number",
40
55
  "description": "Observed spend in USD, for spend observations."
41
56
  },
42
- "used_percent": {
43
- "type": "number",
44
- "description": "Consumed share of the rate window (0-100), for used_percent observations."
57
+ "constraint_id": {
58
+ "type": "string"
59
+ },
60
+ "used_ratio": {
61
+ "anyOf": [
62
+ {
63
+ "type": "number",
64
+ "minimum": 0,
65
+ "maximum": 1
66
+ },
67
+ {
68
+ "type": "null"
69
+ }
70
+ ]
71
+ },
72
+ "window_seconds": {
73
+ "anyOf": [
74
+ {
75
+ "type": "number",
76
+ "exclusiveMinimum": 0
77
+ },
78
+ {
79
+ "type": "null"
80
+ }
81
+ ]
45
82
  },
46
83
  "resets_at": {
47
84
  "type": [