@claudexor/schema 5.0.2 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) hide show
  1. package/dist/account-routing-evidence.d.ts +324 -0
  2. package/dist/account-routing-evidence.d.ts.map +1 -1
  3. package/dist/account-routing-evidence.js +27 -2
  4. package/dist/account-routing-evidence.js.map +1 -1
  5. package/dist/agent-capabilities.d.ts +3 -0
  6. package/dist/agent-capabilities.d.ts.map +1 -1
  7. package/dist/agent-capabilities.js +6 -2
  8. package/dist/agent-capabilities.js.map +1 -1
  9. package/dist/attachment.d.ts +103 -6
  10. package/dist/attachment.d.ts.map +1 -1
  11. package/dist/attachment.js +32 -6
  12. package/dist/attachment.js.map +1 -1
  13. package/dist/attempt-execution.d.ts +23 -0
  14. package/dist/attempt-execution.d.ts.map +1 -1
  15. package/dist/attempt-execution.js +2 -0
  16. package/dist/attempt-execution.js.map +1 -1
  17. package/dist/browser-evidence.d.ts +85 -0
  18. package/dist/browser-evidence.d.ts.map +1 -0
  19. package/dist/browser-evidence.js +72 -0
  20. package/dist/browser-evidence.js.map +1 -0
  21. package/dist/config.d.ts.map +1 -1
  22. package/dist/config.js +1 -1
  23. package/dist/config.js.map +1 -1
  24. package/dist/control-gc.d.ts +30 -0
  25. package/dist/control-gc.d.ts.map +1 -1
  26. package/dist/control-gc.js +28 -1
  27. package/dist/control-gc.js.map +1 -1
  28. package/dist/control-harness-list.d.ts +34 -0
  29. package/dist/control-harness-list.d.ts.map +1 -1
  30. package/dist/control-harness-models.d.ts +122 -0
  31. package/dist/control-harness-models.d.ts.map +1 -1
  32. package/dist/control-harness-models.js +2 -0
  33. package/dist/control-harness-models.js.map +1 -1
  34. package/dist/control-operation-responses.d.ts +459 -36
  35. package/dist/control-operation-responses.d.ts.map +1 -1
  36. package/dist/control-operation-responses.js +11 -2
  37. package/dist/control-operation-responses.js.map +1 -1
  38. package/dist/control-pending-interaction.d.ts +96 -0
  39. package/dist/control-pending-interaction.d.ts.map +1 -0
  40. package/dist/control-pending-interaction.js +42 -0
  41. package/dist/control-pending-interaction.js.map +1 -0
  42. package/dist/control-process-scope.d.ts +34 -0
  43. package/dist/control-process-scope.d.ts.map +1 -1
  44. package/dist/control-process-scope.js +13 -0
  45. package/dist/control-process-scope.js.map +1 -1
  46. package/dist/control-run-detail.d.ts +877 -89
  47. package/dist/control-run-detail.d.ts.map +1 -1
  48. package/dist/control-run-detail.js +2 -1
  49. package/dist/control-run-detail.js.map +1 -1
  50. package/dist/control-run-failure.d.ts +40 -6
  51. package/dist/control-run-failure.d.ts.map +1 -1
  52. package/dist/control-run-failure.js +34 -3
  53. package/dist/control-run-failure.js.map +1 -1
  54. package/dist/control-run-message.js +1 -1
  55. package/dist/control-run-message.js.map +1 -1
  56. package/dist/control-trust.d.ts +8 -0
  57. package/dist/control-trust.d.ts.map +1 -1
  58. package/dist/control-trust.js +4 -0
  59. package/dist/control-trust.js.map +1 -1
  60. package/dist/control-web-evidence.d.ts +125 -0
  61. package/dist/control-web-evidence.d.ts.map +1 -0
  62. package/dist/control-web-evidence.js +109 -0
  63. package/dist/control-web-evidence.js.map +1 -0
  64. package/dist/control.d.ts +322 -179
  65. package/dist/control.d.ts.map +1 -1
  66. package/dist/control.js +52 -75
  67. package/dist/control.js.map +1 -1
  68. package/dist/credential-profile-snapshot.d.ts +136 -0
  69. package/dist/credential-profile-snapshot.d.ts.map +1 -1
  70. package/dist/credential-profile.d.ts +4 -3
  71. package/dist/credential-profile.d.ts.map +1 -1
  72. package/dist/credential-profile.js +4 -3
  73. package/dist/credential-profile.js.map +1 -1
  74. package/dist/decision.d.ts +9 -9
  75. package/dist/decision.d.ts.map +1 -1
  76. package/dist/decision.js +2 -0
  77. package/dist/decision.js.map +1 -1
  78. package/dist/deferred-message.d.ts +646 -0
  79. package/dist/deferred-message.d.ts.map +1 -1
  80. package/dist/deferred-message.js +16 -2
  81. package/dist/deferred-message.js.map +1 -1
  82. package/dist/events.d.ts +6 -6
  83. package/dist/events.d.ts.map +1 -1
  84. package/dist/events.js +1 -0
  85. package/dist/events.js.map +1 -1
  86. package/dist/harness-confinement.js +1 -1
  87. package/dist/harness-confinement.js.map +1 -1
  88. package/dist/harness-input.d.ts +12 -0
  89. package/dist/harness-input.d.ts.map +1 -1
  90. package/dist/harness-input.js +11 -1
  91. package/dist/harness-input.js.map +1 -1
  92. package/dist/harness-interaction.d.ts +32 -0
  93. package/dist/harness-interaction.d.ts.map +1 -1
  94. package/dist/harness-interaction.js +47 -0
  95. package/dist/harness-interaction.js.map +1 -1
  96. package/dist/harness-maintenance.d.ts +3561 -717
  97. package/dist/harness-maintenance.d.ts.map +1 -1
  98. package/dist/harness-maintenance.js +107 -111
  99. package/dist/harness-maintenance.js.map +1 -1
  100. package/dist/harness-program.d.ts +2164 -0
  101. package/dist/harness-program.d.ts.map +1 -0
  102. package/dist/harness-program.js +110 -0
  103. package/dist/harness-program.js.map +1 -0
  104. package/dist/harness.d.ts +162 -19
  105. package/dist/harness.d.ts.map +1 -1
  106. package/dist/harness.js +25 -15
  107. package/dist/harness.js.map +1 -1
  108. package/dist/index.d.ts +6 -0
  109. package/dist/index.d.ts.map +1 -1
  110. package/dist/index.js +6 -0
  111. package/dist/index.js.map +1 -1
  112. package/dist/mcp-run-result.d.ts +453 -50
  113. package/dist/mcp-run-result.d.ts.map +1 -1
  114. package/dist/mcp-run-wait.d.ts +131 -0
  115. package/dist/mcp-run-wait.d.ts.map +1 -1
  116. package/dist/mcp-run-wait.js +3 -2
  117. package/dist/mcp-run-wait.js.map +1 -1
  118. package/dist/model-operation.d.ts +107 -0
  119. package/dist/model-operation.d.ts.map +1 -1
  120. package/dist/model-operation.js +3 -0
  121. package/dist/model-operation.js.map +1 -1
  122. package/dist/operation.d.ts +1 -1
  123. package/dist/operation.d.ts.map +1 -1
  124. package/dist/operation.js +1 -1
  125. package/dist/operation.js.map +1 -1
  126. package/dist/process-scope.d.ts +154 -0
  127. package/dist/process-scope.d.ts.map +1 -1
  128. package/dist/process-scope.js +16 -1
  129. package/dist/process-scope.js.map +1 -1
  130. package/dist/quota.d.ts +15 -0
  131. package/dist/quota.d.ts.map +1 -1
  132. package/dist/quota.js +15 -0
  133. package/dist/quota.js.map +1 -1
  134. package/dist/rate-limit.d.ts +3 -0
  135. package/dist/rate-limit.d.ts.map +1 -1
  136. package/dist/rate-limit.js +4 -0
  137. package/dist/rate-limit.js.map +1 -1
  138. package/dist/raw.d.ts.map +1 -1
  139. package/dist/raw.js +11 -5
  140. package/dist/raw.js.map +1 -1
  141. package/dist/readiness.d.ts +26 -0
  142. package/dist/readiness.d.ts.map +1 -1
  143. package/dist/route-controls.d.ts +49 -0
  144. package/dist/route-controls.d.ts.map +1 -0
  145. package/dist/route-controls.js +53 -0
  146. package/dist/route-controls.js.map +1 -0
  147. package/dist/route-health.d.ts +23 -23
  148. package/dist/route-health.js +1 -1
  149. package/dist/route-health.js.map +1 -1
  150. package/dist/run-continuation.d.ts +6 -6
  151. package/dist/run-continuity.d.ts +7 -7
  152. package/dist/run-continuity.d.ts.map +1 -1
  153. package/dist/run-continuity.js +2 -1
  154. package/dist/run-continuity.js.map +1 -1
  155. package/dist/run-facts.d.ts +5 -5
  156. package/dist/run-facts.js +1 -1
  157. package/dist/run-facts.js.map +1 -1
  158. package/dist/run-observation.d.ts +70 -0
  159. package/dist/run-observation.d.ts.map +1 -1
  160. package/dist/run-observation.js +31 -12
  161. package/dist/run-observation.js.map +1 -1
  162. package/dist/status-projection.d.ts +3 -2
  163. package/dist/status-projection.d.ts.map +1 -1
  164. package/dist/status-projection.js +5 -2
  165. package/dist/status-projection.js.map +1 -1
  166. package/dist/task-group.d.ts +3 -0
  167. package/dist/task-group.d.ts.map +1 -1
  168. package/dist/task-group.js +11 -1
  169. package/dist/task-group.js.map +1 -1
  170. package/dist/task.d.ts +2 -2
  171. package/dist/task.d.ts.map +1 -1
  172. package/dist/task.js +4 -4
  173. package/dist/task.js.map +1 -1
  174. package/dist/telemetry.d.ts +658 -117
  175. package/dist/telemetry.d.ts.map +1 -1
  176. package/dist/telemetry.js +19 -88
  177. package/dist/telemetry.js.map +1 -1
  178. package/dist/thread-export.d.ts +847 -0
  179. package/dist/thread-export.d.ts.map +1 -0
  180. package/dist/thread-export.js +238 -0
  181. package/dist/thread-export.js.map +1 -0
  182. package/dist/thread-history.d.ts +356 -132
  183. package/dist/thread-history.d.ts.map +1 -1
  184. package/dist/thread.d.ts +72 -6
  185. package/dist/thread.d.ts.map +1 -1
  186. package/dist/thread.js +19 -3
  187. package/dist/thread.js.map +1 -1
  188. package/dist/tool-ref.d.ts +172 -21
  189. package/dist/tool-ref.d.ts.map +1 -1
  190. package/dist/tool-ref.js +114 -29
  191. package/dist/tool-ref.js.map +1 -1
  192. package/dist/web-evidence.d.ts +91 -0
  193. package/dist/web-evidence.d.ts.map +1 -0
  194. package/dist/web-evidence.js +77 -0
  195. package/dist/web-evidence.js.map +1 -0
  196. package/dist/workspace.js +1 -1
  197. package/dist/workspace.js.map +1 -1
  198. package/generated/AgentCapabilityCatalog.schema.json +20 -2
  199. package/generated/AttemptExecutionEvidence.schema.json +35 -0
  200. package/generated/ConformanceReport.schema.json +26 -0
  201. package/generated/ControlAccountRoutingEvidenceResponse.schema.json +61 -1
  202. package/generated/ControlCredentialProfilesQueryResponse.schema.json +28 -2
  203. package/generated/ControlCredentialProfilesResourcesResponse.schema.json +28 -2
  204. package/generated/ControlCredentialProfilesSnapshotResponse.schema.json +28 -2
  205. package/generated/ControlGcLastResponse.schema.json +22 -0
  206. package/generated/ControlGcReceipt.schema.json +13 -1
  207. package/generated/ControlHarnessAccountCatalog.schema.json +27 -0
  208. package/generated/ControlHarnessAccountModelsResponse.schema.json +27 -0
  209. package/generated/ControlHarnessListResponse.schema.json +28 -2
  210. package/generated/ControlHarnessMaintenanceCreateRequest.schema.json +2 -28
  211. package/generated/ControlHarnessMaintenanceInventory.schema.json +547 -184
  212. package/generated/ControlHarnessMaintenanceOperation.schema.json +211 -63
  213. package/generated/ControlHarnessModelsQueryResponse.schema.json +30 -0
  214. package/generated/ControlHarnessModelsResponse.schema.json +27 -0
  215. package/generated/ControlModelAccountCatalogResponse.schema.json +27 -0
  216. package/generated/ControlModelCatalogQueryResponse.schema.json +27 -0
  217. package/generated/ControlModelCatalogResponse.schema.json +27 -0
  218. package/generated/ControlPendingInteraction.schema.json +10 -1
  219. package/generated/ControlQueuedRunInfo.schema.json +1 -1
  220. package/generated/ControlResource.schema.json +5 -0
  221. package/generated/ControlResourceRelease.schema.json +44 -0
  222. package/generated/ControlResourceReleaseRequest.schema.json +27 -0
  223. package/generated/ControlRetainedEnvelope.schema.json +2 -1
  224. package/generated/ControlRouteHealth.schema.json +13 -1
  225. package/generated/ControlRunControlResponse.schema.json +41 -3
  226. package/generated/ControlRunDecisionRequest.schema.json +8 -2
  227. package/generated/ControlRunDecisionResponse.schema.json +4 -3
  228. package/generated/ControlRunDetail.schema.json +403 -11
  229. package/generated/ControlRunListResponse.schema.json +317 -7
  230. package/generated/ControlRunMessageResponse.schema.json +1 -1
  231. package/generated/ControlRunRetryResponse.schema.json +1 -1
  232. package/generated/ControlRunStartInfo.schema.json +1 -1
  233. package/generated/ControlRunStartResponse.schema.json +2 -2
  234. package/generated/ControlRunSummary.schema.json +317 -7
  235. package/generated/ControlThreadDetail.schema.json +6 -0
  236. package/generated/ControlThreadTurnResponse.schema.json +9 -0
  237. package/generated/ControlTrustListResponse.schema.json +8 -0
  238. package/generated/ControlTrustState.schema.json +8 -0
  239. package/generated/ControlUploadImport.schema.json +12 -2
  240. package/generated/ControlUploadImportRequest.schema.json +5 -0
  241. package/generated/DecisionRecord.schema.json +1 -0
  242. package/generated/DeferredMessageDetail.schema.json +43 -7
  243. package/generated/DeferredMessageProjection.schema.json +41 -3
  244. package/generated/DeferredMessageReadResult.schema.json +42 -4
  245. package/generated/DeferredMessageReceipt.schema.json +41 -3
  246. package/generated/EnvelopeCustody.schema.json +3 -2
  247. package/generated/GlobalConfig.schema.json +1 -1
  248. package/generated/HarnessEvent.schema.json +181 -4
  249. package/generated/HarnessManifest.schema.json +28 -2
  250. package/generated/HarnessProgram.schema.json +278 -0
  251. package/generated/HarnessProgramIdentity.schema.json +25 -0
  252. package/generated/HarnessStatusDto.schema.json +28 -2
  253. package/generated/McpAccountsToolResult.schema.json +88 -2
  254. package/generated/McpRunHandleResult.schema.json +141 -6
  255. package/generated/McpRunToolResult.schema.json +140 -6
  256. package/generated/McpRunWaitResult.schema.json +52 -5
  257. package/generated/McpThreadTurnResult.schema.json +9 -0
  258. package/generated/NativeProgramEvidence.schema.json +38 -0
  259. package/generated/RawContextPacket.schema.json +6 -4
  260. package/generated/RawGitPatchEnvelope.schema.json +1 -1
  261. package/generated/RoutePoolDegradedPayload.schema.json +2 -1
  262. package/generated/RunContinuityReceipt.schema.json +2 -1
  263. package/generated/RunFacts.schema.json +1 -0
  264. package/generated/RunFailure.schema.json +62 -2
  265. package/generated/RunResumable.schema.json +2 -1
  266. package/generated/RunTelemetry.schema.json +323 -7
  267. package/generated/RunWaitManyInput.schema.json +4 -0
  268. package/generated/RunWaitManyResult.schema.json +30 -0
  269. package/generated/SelectedHarnessProgram.schema.json +56 -0
  270. package/generated/TaskContract.schema.json +3 -3
  271. package/generated/TaskGroupReceipt.schema.json +1 -1
  272. package/generated/Thread.schema.json +41 -0
  273. package/generated/ThreadExportManifest.schema.json +461 -0
  274. package/generated/ThreadExportReceipt.schema.json +94 -0
  275. package/generated/ThreadHistoryPage.schema.json +71 -2
  276. package/generated/ThreadRetireAbandonRequest.schema.json +21 -0
  277. package/generated/ThreadRetireRequest.schema.json +41 -0
  278. package/generated/ThreadRetirement.schema.json +175 -0
  279. package/generated/ThreadTurn.schema.json +1 -1
  280. package/generated/WorkspaceEnvelope.schema.json +1 -1
  281. package/package.json +2 -2
@@ -17,149 +17,88 @@
17
17
  "harness": {
18
18
  "type": "string"
19
19
  },
20
- "mechanism": {
21
- "type": "string",
22
- "enum": [
23
- "managed_npm",
24
- "vendor_updater",
25
- "vendor_script"
26
- ],
27
- "description": "managed_npm installs one exact registry version in place; vendor_updater runs the vendor's own `update` on its canonical launcher (latest only); vendor_script has no engine-run update."
28
- },
29
- "maintainable": {
30
- "type": "boolean",
31
- "description": "Whether the engine can run an operation for it now."
32
- },
33
- "canCheckLatest": {
34
- "type": "boolean",
35
- "description": "Whether checkLatest can observe the newest release for this mechanism (npm registry); false for vendor updaters, whose Update still targets latest."
36
- },
37
- "targets": {
38
- "type": "array",
39
- "items": {
40
- "type": "string",
41
- "enum": [
42
- "latest",
43
- "version",
44
- "previous",
45
- "baseline"
46
- ]
47
- },
48
- "description": "Targets an operation may name; empty when not maintainable."
49
- },
50
- "remedy": {
51
- "type": [
52
- "string",
53
- "null"
54
- ],
55
- "description": "Manual remedy when not maintainable."
56
- },
57
20
  "selection": {
58
21
  "type": "object",
59
22
  "properties": {
60
- "kind": {
61
- "type": "string",
62
- "enum": [
63
- "managed",
64
- "override",
65
- "path",
66
- "missing"
67
- ],
68
- "description": "managed = Claudexor's managed npm copy; override = the explicit CLAUDEXOR_<HARNESS>_BIN program; path = another copy found on the harness PATH; missing = nothing launchable."
69
- },
70
- "binary": {
23
+ "path": {
71
24
  "type": [
72
25
  "string",
73
26
  "null"
74
- ],
75
- "description": "The program the harness resolves and runs."
27
+ ]
76
28
  },
77
- "version": {
29
+ "realPath": {
78
30
  "type": [
79
31
  "string",
80
32
  "null"
81
- ],
82
- "description": "That selected program's own --version answer; never the managed copy's."
33
+ ]
83
34
  },
84
- "overrideEnv": {
35
+ "version": {
85
36
  "type": [
86
37
  "string",
87
38
  "null"
88
39
  ]
89
- }
90
- },
91
- "required": [
92
- "kind",
93
- "binary",
94
- "version",
95
- "overrideEnv"
96
- ],
97
- "additionalProperties": false
98
- },
99
- "installed": {
100
- "type": "object",
101
- "properties": {
102
- "version": {
40
+ },
41
+ "versionOutput": {
103
42
  "type": [
104
43
  "string",
105
44
  "null"
106
- ],
107
- "description": "The managed npm copy's package version."
45
+ ]
108
46
  },
109
- "binary": {
47
+ "overrideEnv": {
110
48
  "type": [
111
49
  "string",
112
50
  "null"
113
51
  ]
114
52
  },
115
- "proved": {
116
- "type": "boolean",
117
- "description": "The managed launcher reported exactly that version."
118
- }
119
- },
120
- "required": [
121
- "version",
122
- "binary",
123
- "proved"
124
- ],
125
- "additionalProperties": false
126
- },
127
- "releaseTested": {
128
- "type": "object",
129
- "properties": {
130
- "version": {
53
+ "overrideValue": {
131
54
  "type": [
132
55
  "string",
133
56
  "null"
134
57
  ]
135
- },
136
- "verification": {
137
- "anyOf": [
138
- {
139
- "type": "string",
140
- "enum": [
141
- "release_verified",
142
- "deterministic_only"
143
- ]
144
- },
145
- {
146
- "type": "null"
147
- }
148
- ]
149
58
  }
150
59
  },
151
60
  "required": [
61
+ "path",
62
+ "realPath",
152
63
  "version",
153
- "verification"
64
+ "versionOutput",
65
+ "overrideEnv",
66
+ "overrideValue"
154
67
  ],
155
- "additionalProperties": false,
156
- "description": "This release's tested pin: a separate fact, never the selected target."
68
+ "additionalProperties": false
157
69
  },
158
- "available": {
70
+ "newest": {
159
71
  "anyOf": [
160
72
  {
161
73
  "type": "object",
162
74
  "properties": {
75
+ "status": {
76
+ "type": "string",
77
+ "const": "not_read"
78
+ },
79
+ "source": {
80
+ "type": [
81
+ "string",
82
+ "null"
83
+ ]
84
+ }
85
+ },
86
+ "required": [
87
+ "status",
88
+ "source"
89
+ ],
90
+ "additionalProperties": false
91
+ },
92
+ {
93
+ "type": "object",
94
+ "properties": {
95
+ "status": {
96
+ "type": "string",
97
+ "const": "available"
98
+ },
99
+ "source": {
100
+ "type": "string"
101
+ },
163
102
  "version": {
164
103
  "type": "string"
165
104
  },
@@ -168,121 +107,533 @@
168
107
  }
169
108
  },
170
109
  "required": [
110
+ "status",
111
+ "source",
171
112
  "version",
172
113
  "observedAt"
173
114
  ],
174
115
  "additionalProperties": false
175
116
  },
176
- {
177
- "type": "null"
178
- }
179
- ],
180
- "description": "Last observed newest release; null = not checked (not 'up to date')."
181
- },
182
- "availableProblem": {
183
- "anyOf": [
184
117
  {
185
118
  "type": "object",
186
119
  "properties": {
187
- "code": {
120
+ "status": {
188
121
  "type": "string",
189
- "minLength": 1
122
+ "const": "unavailable"
190
123
  },
191
- "message": {
192
- "type": "string"
124
+ "source": {
125
+ "type": [
126
+ "string",
127
+ "null"
128
+ ]
193
129
  },
194
- "retryable": {
195
- "type": "boolean"
130
+ "observedAt": {
131
+ "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/observedAt"
196
132
  },
197
- "fieldErrors": {
133
+ "problem": {
198
134
  "type": "object",
199
- "additionalProperties": {
200
- "type": "array",
201
- "items": {
135
+ "properties": {
136
+ "code": {
137
+ "type": "string",
138
+ "minLength": 1
139
+ },
140
+ "message": {
202
141
  "type": "string"
142
+ },
143
+ "retryable": {
144
+ "type": "boolean"
145
+ },
146
+ "fieldErrors": {
147
+ "type": "object",
148
+ "additionalProperties": {
149
+ "type": "array",
150
+ "items": {
151
+ "type": "string"
152
+ }
153
+ },
154
+ "default": {}
155
+ },
156
+ "requiredActions": {
157
+ "type": "array",
158
+ "items": {
159
+ "type": "string",
160
+ "minLength": 1
161
+ },
162
+ "default": []
163
+ },
164
+ "evidenceRefs": {
165
+ "type": "array",
166
+ "items": {
167
+ "type": "string",
168
+ "minLength": 1
169
+ },
170
+ "default": []
171
+ },
172
+ "context": {
173
+ "type": "object",
174
+ "additionalProperties": {},
175
+ "default": {},
176
+ "description": "Typed route-specific recovery context; never a duplicate error message."
203
177
  }
204
178
  },
205
- "default": {}
206
- },
207
- "requiredActions": {
208
- "type": "array",
209
- "items": {
210
- "type": "string",
211
- "minLength": 1
212
- },
213
- "default": []
214
- },
215
- "evidenceRefs": {
216
- "type": "array",
217
- "items": {
218
- "type": "string",
219
- "minLength": 1
220
- },
221
- "default": []
222
- },
223
- "context": {
224
- "type": "object",
225
- "additionalProperties": {},
226
- "default": {},
227
- "description": "Typed route-specific recovery context; never a duplicate error message."
179
+ "required": [
180
+ "code",
181
+ "message",
182
+ "retryable"
183
+ ],
184
+ "additionalProperties": false
228
185
  }
229
186
  },
230
187
  "required": [
231
- "code",
232
- "message",
233
- "retryable"
188
+ "status",
189
+ "source",
190
+ "observedAt",
191
+ "problem"
234
192
  ],
235
193
  "additionalProperties": false
194
+ }
195
+ ]
196
+ },
197
+ "updateAvailable": {
198
+ "type": "string",
199
+ "enum": [
200
+ "yes",
201
+ "no",
202
+ "cannot_tell"
203
+ ]
204
+ },
205
+ "releaseNotesUrl": {
206
+ "anyOf": [
207
+ {
208
+ "type": "string",
209
+ "format": "uri"
236
210
  },
237
211
  {
238
212
  "type": "null"
239
213
  }
240
214
  ]
241
215
  },
242
- "previous": {
243
- "anyOf": [
244
- {
216
+ "actions": {
217
+ "type": "object",
218
+ "properties": {
219
+ "install": {
245
220
  "type": "object",
246
221
  "properties": {
247
- "version": {
248
- "type": "string"
222
+ "available": {
223
+ "type": "boolean"
249
224
  },
250
- "operationId": {
251
- "type": "string"
225
+ "reason": {
226
+ "type": [
227
+ "string",
228
+ "null"
229
+ ]
230
+ },
231
+ "commands": {
232
+ "type": "array",
233
+ "items": {
234
+ "anyOf": [
235
+ {
236
+ "type": "object",
237
+ "properties": {
238
+ "kind": {
239
+ "type": "string",
240
+ "const": "exec"
241
+ },
242
+ "command": {
243
+ "type": "string"
244
+ },
245
+ "args": {
246
+ "type": "array",
247
+ "items": {
248
+ "type": "string"
249
+ }
250
+ },
251
+ "env": {
252
+ "type": "object",
253
+ "additionalProperties": {
254
+ "type": "string"
255
+ }
256
+ }
257
+ },
258
+ "required": [
259
+ "kind",
260
+ "command",
261
+ "args"
262
+ ],
263
+ "additionalProperties": false
264
+ },
265
+ {
266
+ "type": "object",
267
+ "properties": {
268
+ "kind": {
269
+ "type": "string",
270
+ "const": "script"
271
+ },
272
+ "url": {
273
+ "type": "string",
274
+ "format": "uri",
275
+ "pattern": "^https:\\/\\/"
276
+ },
277
+ "interpreter": {
278
+ "type": "string"
279
+ },
280
+ "interpreterArgs": {
281
+ "type": "array",
282
+ "items": {
283
+ "type": "string"
284
+ }
285
+ },
286
+ "args": {
287
+ "type": "array",
288
+ "items": {
289
+ "type": "string"
290
+ }
291
+ },
292
+ "env": {
293
+ "type": "object",
294
+ "additionalProperties": {
295
+ "type": "string"
296
+ }
297
+ }
298
+ },
299
+ "required": [
300
+ "kind",
301
+ "url",
302
+ "interpreter",
303
+ "interpreterArgs",
304
+ "args"
305
+ ],
306
+ "additionalProperties": false
307
+ }
308
+ ]
309
+ }
252
310
  }
253
311
  },
254
312
  "required": [
255
- "version",
256
- "operationId"
313
+ "available",
314
+ "reason",
315
+ "commands"
257
316
  ],
258
317
  "additionalProperties": false
259
318
  },
260
- {
261
- "type": "null"
319
+ "update": {
320
+ "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/harnesses/items/properties/actions/properties/install"
321
+ },
322
+ "exactVersion": {
323
+ "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/harnesses/items/properties/actions/properties/install"
262
324
  }
325
+ },
326
+ "required": [
327
+ "install",
328
+ "update",
329
+ "exactVersion"
263
330
  ],
264
- "description": "Proved earlier version from retained operation evidence; null when unknown."
331
+ "additionalProperties": false
265
332
  },
266
333
  "operation": {
267
334
  "anyOf": [
268
335
  {
269
336
  "type": "object",
270
337
  "properties": {
271
- "id": {
272
- "type": "string"
338
+ "phase": {
339
+ "type": "string",
340
+ "enum": [
341
+ "accepted",
342
+ "preparing",
343
+ "installing",
344
+ "settled"
345
+ ]
273
346
  },
274
- "state": {
275
- "type": "string"
347
+ "target": {
348
+ "anyOf": [
349
+ {
350
+ "type": "object",
351
+ "properties": {
352
+ "kind": {
353
+ "type": "string",
354
+ "const": "latest"
355
+ },
356
+ "version": {
357
+ "type": "null"
358
+ }
359
+ },
360
+ "required": [
361
+ "kind",
362
+ "version"
363
+ ],
364
+ "additionalProperties": false
365
+ },
366
+ {
367
+ "type": "object",
368
+ "properties": {
369
+ "kind": {
370
+ "type": "string",
371
+ "const": "version"
372
+ },
373
+ "version": {
374
+ "type": "string",
375
+ "pattern": "^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*)?(?:\\+[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*)?$",
376
+ "description": "One exact vendor version, never a range or a release fixture stamp."
377
+ }
378
+ },
379
+ "required": [
380
+ "kind",
381
+ "version"
382
+ ],
383
+ "additionalProperties": false
384
+ }
385
+ ]
276
386
  },
277
- "phase": {
278
- "type": "string"
387
+ "requester": {
388
+ "type": "object",
389
+ "properties": {
390
+ "source": {
391
+ "type": "string"
392
+ },
393
+ "requestId": {
394
+ "type": [
395
+ "string",
396
+ "null"
397
+ ]
398
+ }
399
+ },
400
+ "required": [
401
+ "source",
402
+ "requestId"
403
+ ],
404
+ "additionalProperties": false
279
405
  },
280
- "targetVersion": {
406
+ "installationHome": {
281
407
  "type": [
282
408
  "string",
283
409
  "null"
284
410
  ]
285
411
  },
412
+ "commands": {
413
+ "type": "array",
414
+ "items": {
415
+ "type": "object",
416
+ "properties": {
417
+ "binary": {
418
+ "type": "string"
419
+ },
420
+ "args": {
421
+ "type": "array",
422
+ "items": {
423
+ "type": "string"
424
+ }
425
+ },
426
+ "env": {
427
+ "type": "object",
428
+ "additionalProperties": {
429
+ "type": "string"
430
+ }
431
+ },
432
+ "script": {
433
+ "anyOf": [
434
+ {
435
+ "type": "object",
436
+ "properties": {
437
+ "url": {
438
+ "type": "string"
439
+ },
440
+ "size": {
441
+ "type": "integer",
442
+ "exclusiveMinimum": 0
443
+ },
444
+ "sha256": {
445
+ "type": "string"
446
+ }
447
+ },
448
+ "required": [
449
+ "url",
450
+ "size",
451
+ "sha256"
452
+ ],
453
+ "additionalProperties": false
454
+ },
455
+ {
456
+ "type": "null"
457
+ }
458
+ ]
459
+ }
460
+ },
461
+ "required": [
462
+ "binary",
463
+ "args",
464
+ "env",
465
+ "script"
466
+ ],
467
+ "additionalProperties": false
468
+ }
469
+ },
470
+ "profileCleanup": {
471
+ "type": "object",
472
+ "properties": {
473
+ "plannedPaths": {
474
+ "type": "array",
475
+ "items": {
476
+ "type": "string"
477
+ }
478
+ },
479
+ "removedPaths": {
480
+ "type": "array",
481
+ "items": {
482
+ "type": "string"
483
+ }
484
+ }
485
+ },
486
+ "required": [
487
+ "plannedPaths",
488
+ "removedPaths"
489
+ ],
490
+ "additionalProperties": false
491
+ },
492
+ "before": {
493
+ "anyOf": [
494
+ {
495
+ "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/harnesses/items/properties/selection"
496
+ },
497
+ {
498
+ "type": "null"
499
+ }
500
+ ]
501
+ },
502
+ "after": {
503
+ "anyOf": [
504
+ {
505
+ "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/harnesses/items/properties/selection"
506
+ },
507
+ {
508
+ "type": "null"
509
+ }
510
+ ]
511
+ },
512
+ "elsewhere": {
513
+ "anyOf": [
514
+ {
515
+ "type": "object",
516
+ "properties": {
517
+ "before": {
518
+ "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/harnesses/items/properties/selection"
519
+ },
520
+ "after": {
521
+ "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/harnesses/items/properties/selection"
522
+ }
523
+ },
524
+ "required": [
525
+ "before",
526
+ "after"
527
+ ],
528
+ "additionalProperties": false
529
+ },
530
+ {
531
+ "type": "null"
532
+ }
533
+ ]
534
+ },
535
+ "activeRunsAtStart": {
536
+ "anyOf": [
537
+ {
538
+ "type": "integer",
539
+ "minimum": 0
540
+ },
541
+ {
542
+ "type": "null"
543
+ }
544
+ ],
545
+ "description": "A fact, never permission to proceed; null when the CLI has no daemon run census."
546
+ },
547
+ "exitCode": {
548
+ "anyOf": [
549
+ {
550
+ "type": "integer"
551
+ },
552
+ {
553
+ "type": "null"
554
+ }
555
+ ]
556
+ },
557
+ "outcome": {
558
+ "type": "string",
559
+ "enum": [
560
+ "changed",
561
+ "not_changed",
562
+ "changed_elsewhere",
563
+ "unknown"
564
+ ]
565
+ },
566
+ "mutation": {
567
+ "type": "string",
568
+ "enum": [
569
+ "none",
570
+ "applied",
571
+ "unknown"
572
+ ]
573
+ },
574
+ "termination": {
575
+ "type": "string",
576
+ "enum": [
577
+ "not_applicable",
578
+ "confirmed",
579
+ "unconfirmed"
580
+ ]
581
+ },
582
+ "limitations": {
583
+ "type": "array",
584
+ "items": {
585
+ "type": "string"
586
+ }
587
+ },
588
+ "progress": {
589
+ "type": "array",
590
+ "items": {
591
+ "type": "string"
592
+ },
593
+ "maxItems": 40,
594
+ "description": "Bounded, redacted vendor diagnostics, including advice when nothing changed."
595
+ },
596
+ "problem": {
597
+ "anyOf": [
598
+ {
599
+ "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/harnesses/items/properties/newest/anyOf/2/properties/problem"
600
+ },
601
+ {
602
+ "type": "null"
603
+ }
604
+ ]
605
+ },
606
+ "id": {
607
+ "type": "string"
608
+ },
609
+ "harness": {
610
+ "type": "string"
611
+ },
612
+ "state": {
613
+ "type": "string",
614
+ "enum": [
615
+ "queued",
616
+ "running",
617
+ "succeeded",
618
+ "failed",
619
+ "cancelled",
620
+ "interrupted"
621
+ ]
622
+ },
623
+ "createdAt": {
624
+ "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/observedAt"
625
+ },
626
+ "startedAt": {
627
+ "anyOf": [
628
+ {
629
+ "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/observedAt"
630
+ },
631
+ {
632
+ "type": "null"
633
+ }
634
+ ],
635
+ "description": "ISO-8601 timestamp string."
636
+ },
286
637
  "finishedAt": {
287
638
  "anyOf": [
288
639
  {
@@ -296,18 +647,37 @@
296
647
  }
297
648
  },
298
649
  "required": [
650
+ "phase",
651
+ "target",
652
+ "requester",
653
+ "installationHome",
654
+ "commands",
655
+ "before",
656
+ "after",
657
+ "elsewhere",
658
+ "activeRunsAtStart",
659
+ "exitCode",
660
+ "outcome",
661
+ "mutation",
662
+ "termination",
663
+ "limitations",
664
+ "progress",
665
+ "problem",
299
666
  "id",
667
+ "harness",
300
668
  "state",
301
- "phase",
302
- "targetVersion",
669
+ "createdAt",
670
+ "startedAt",
303
671
  "finishedAt"
304
672
  ],
305
- "additionalProperties": false
673
+ "additionalProperties": false,
674
+ "description": "A durable maintenance operation; acceptance is a handle, not completion."
306
675
  },
307
676
  {
308
677
  "type": "null"
309
678
  }
310
- ]
679
+ ],
680
+ "description": "A durable maintenance operation; acceptance is a handle, not completion."
311
681
  },
312
682
  "observedAt": {
313
683
  "$ref": "#/definitions/ControlHarnessMaintenanceInventory/properties/observedAt"
@@ -315,17 +685,11 @@
315
685
  },
316
686
  "required": [
317
687
  "harness",
318
- "mechanism",
319
- "maintainable",
320
- "canCheckLatest",
321
- "targets",
322
- "remedy",
323
688
  "selection",
324
- "installed",
325
- "releaseTested",
326
- "available",
327
- "availableProblem",
328
- "previous",
689
+ "newest",
690
+ "updateAvailable",
691
+ "releaseNotesUrl",
692
+ "actions",
329
693
  "operation",
330
694
  "observedAt"
331
695
  ],
@@ -337,8 +701,7 @@
337
701
  "observedAt",
338
702
  "harnesses"
339
703
  ],
340
- "additionalProperties": false,
341
- "description": "Response for GET /v2/maintenance/harnesses."
704
+ "additionalProperties": false
342
705
  }
343
706
  },
344
707
  "$schema": "http://json-schema.org/draft-07/schema#"