@cat-factory/contracts 0.355.1 → 0.356.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 (217) hide show
  1. package/dist/agent-failure-kinds.d.ts +3 -1
  2. package/dist/agent-failure-kinds.d.ts.map +1 -1
  3. package/dist/agent-failure-kinds.js +9 -0
  4. package/dist/agent-failure-kinds.js.map +1 -1
  5. package/dist/agent-presentation.d.ts +45 -0
  6. package/dist/agent-presentation.d.ts.map +1 -1
  7. package/dist/agent-presentation.js +43 -0
  8. package/dist/agent-presentation.js.map +1 -1
  9. package/dist/bootstrap.d.ts +2 -2
  10. package/dist/debug-api.d.ts +21 -3
  11. package/dist/debug-api.d.ts.map +1 -1
  12. package/dist/debug-api.js +13 -1
  13. package/dist/debug-api.js.map +1 -1
  14. package/dist/env-config-repair.d.ts +1 -1
  15. package/dist/errors.d.ts +2 -2
  16. package/dist/errors.d.ts.map +1 -1
  17. package/dist/errors.js +30 -0
  18. package/dist/errors.js.map +1 -1
  19. package/dist/execution.d.ts +96 -54
  20. package/dist/execution.d.ts.map +1 -1
  21. package/dist/execution.js +24 -31
  22. package/dist/execution.js.map +1 -1
  23. package/dist/observability.d.ts +28 -0
  24. package/dist/observability.d.ts.map +1 -1
  25. package/dist/observability.js +27 -0
  26. package/dist/observability.js.map +1 -1
  27. package/dist/public-provisioning.d.ts +1 -1
  28. package/dist/routes/accounts.d.ts +4 -4
  29. package/dist/routes/accounts.d.ts.map +1 -1
  30. package/dist/routes/accounts.js +5 -5
  31. package/dist/routes/accounts.js.map +1 -1
  32. package/dist/routes/agent-runs.d.ts +66 -8
  33. package/dist/routes/agent-runs.d.ts.map +1 -1
  34. package/dist/routes/api-keys.d.ts +2 -3
  35. package/dist/routes/api-keys.d.ts.map +1 -1
  36. package/dist/routes/api-keys.js +3 -3
  37. package/dist/routes/api-keys.js.map +1 -1
  38. package/dist/routes/auth.d.ts +10 -10
  39. package/dist/routes/auth.d.ts.map +1 -1
  40. package/dist/routes/auth.js +13 -13
  41. package/dist/routes/auth.js.map +1 -1
  42. package/dist/routes/board.d.ts +1 -1
  43. package/dist/routes/board.d.ts.map +1 -1
  44. package/dist/routes/board.js +2 -2
  45. package/dist/routes/board.js.map +1 -1
  46. package/dist/routes/bootstrap.d.ts +5 -6
  47. package/dist/routes/bootstrap.d.ts.map +1 -1
  48. package/dist/routes/bootstrap.js +2 -2
  49. package/dist/routes/bootstrap.js.map +1 -1
  50. package/dist/routes/bug-hunt.d.ts +62 -4
  51. package/dist/routes/bug-hunt.d.ts.map +1 -1
  52. package/dist/routes/capability-credentials.d.ts +1 -2
  53. package/dist/routes/capability-credentials.d.ts.map +1 -1
  54. package/dist/routes/capability-credentials.js +2 -2
  55. package/dist/routes/capability-credentials.js.map +1 -1
  56. package/dist/routes/consensus.d.ts +1 -2
  57. package/dist/routes/consensus.d.ts.map +1 -1
  58. package/dist/routes/consensus.js +2 -2
  59. package/dist/routes/consensus.js.map +1 -1
  60. package/dist/routes/debug-api.d.ts +10 -2
  61. package/dist/routes/debug-api.d.ts.map +1 -1
  62. package/dist/routes/documents.d.ts +2 -3
  63. package/dist/routes/documents.d.ts.map +1 -1
  64. package/dist/routes/documents.js +3 -3
  65. package/dist/routes/documents.js.map +1 -1
  66. package/dist/routes/environmentUserHandlers.d.ts +1 -2
  67. package/dist/routes/environmentUserHandlers.d.ts.map +1 -1
  68. package/dist/routes/environmentUserHandlers.js +2 -2
  69. package/dist/routes/environmentUserHandlers.js.map +1 -1
  70. package/dist/routes/environments.d.ts +3 -3
  71. package/dist/routes/environments.d.ts.map +1 -1
  72. package/dist/routes/environments.js +4 -4
  73. package/dist/routes/environments.js.map +1 -1
  74. package/dist/routes/execution.d.ts +310 -20
  75. package/dist/routes/execution.d.ts.map +1 -1
  76. package/dist/routes/foundational-services.d.ts +4 -4
  77. package/dist/routes/foundational-services.d.ts.map +1 -1
  78. package/dist/routes/foundational-services.js +5 -5
  79. package/dist/routes/foundational-services.js.map +1 -1
  80. package/dist/routes/fragment-library.d.ts +2 -2
  81. package/dist/routes/fragment-library.d.ts.map +1 -1
  82. package/dist/routes/fragment-library.js +3 -3
  83. package/dist/routes/fragment-library.js.map +1 -1
  84. package/dist/routes/github.d.ts +3 -4
  85. package/dist/routes/github.d.ts.map +1 -1
  86. package/dist/routes/github.js +4 -4
  87. package/dist/routes/github.js.map +1 -1
  88. package/dist/routes/gitlab.d.ts +1 -2
  89. package/dist/routes/gitlab.d.ts.map +1 -1
  90. package/dist/routes/gitlab.js +2 -2
  91. package/dist/routes/gitlab.js.map +1 -1
  92. package/dist/routes/human-review.d.ts +31 -2
  93. package/dist/routes/human-review.d.ts.map +1 -1
  94. package/dist/routes/human-test.d.ts +155 -10
  95. package/dist/routes/human-test.d.ts.map +1 -1
  96. package/dist/routes/incident-enrichment.d.ts +1 -2
  97. package/dist/routes/incident-enrichment.d.ts.map +1 -1
  98. package/dist/routes/incident-enrichment.js +2 -2
  99. package/dist/routes/incident-enrichment.js.map +1 -1
  100. package/dist/routes/localModels.d.ts +1 -2
  101. package/dist/routes/localModels.d.ts.map +1 -1
  102. package/dist/routes/localModels.js +2 -2
  103. package/dist/routes/localModels.js.map +1 -1
  104. package/dist/routes/merge.d.ts +3 -3
  105. package/dist/routes/merge.d.ts.map +1 -1
  106. package/dist/routes/merge.js +4 -4
  107. package/dist/routes/merge.js.map +1 -1
  108. package/dist/routes/model-presets.d.ts +1 -1
  109. package/dist/routes/model-presets.d.ts.map +1 -1
  110. package/dist/routes/model-presets.js +2 -2
  111. package/dist/routes/model-presets.js.map +1 -1
  112. package/dist/routes/notification-webhooks.d.ts +4 -5
  113. package/dist/routes/notification-webhooks.d.ts.map +1 -1
  114. package/dist/routes/notification-webhooks.js +5 -5
  115. package/dist/routes/notification-webhooks.js.map +1 -1
  116. package/dist/routes/package-registries.d.ts +1 -2
  117. package/dist/routes/package-registries.d.ts.map +1 -1
  118. package/dist/routes/package-registries.js +2 -2
  119. package/dist/routes/package-registries.js.map +1 -1
  120. package/dist/routes/personal-subscriptions.d.ts +1 -2
  121. package/dist/routes/personal-subscriptions.d.ts.map +1 -1
  122. package/dist/routes/personal-subscriptions.js +2 -2
  123. package/dist/routes/personal-subscriptions.js.map +1 -1
  124. package/dist/routes/pipelines.d.ts +1 -1
  125. package/dist/routes/pipelines.d.ts.map +1 -1
  126. package/dist/routes/pipelines.js +2 -2
  127. package/dist/routes/pipelines.js.map +1 -1
  128. package/dist/routes/public-api.d.ts +3 -3
  129. package/dist/routes/public-api.d.ts.map +1 -1
  130. package/dist/routes/public-api.js +4 -4
  131. package/dist/routes/public-api.js.map +1 -1
  132. package/dist/routes/public-board.d.ts +2 -3
  133. package/dist/routes/public-board.d.ts.map +1 -1
  134. package/dist/routes/public-board.js +3 -3
  135. package/dist/routes/public-board.js.map +1 -1
  136. package/dist/routes/public-provisioning.d.ts +2 -2
  137. package/dist/routes/recurring.d.ts +1 -1
  138. package/dist/routes/recurring.d.ts.map +1 -1
  139. package/dist/routes/recurring.js +2 -2
  140. package/dist/routes/recurring.js.map +1 -1
  141. package/dist/routes/release.d.ts +2 -3
  142. package/dist/routes/release.d.ts.map +1 -1
  143. package/dist/routes/release.js +3 -3
  144. package/dist/routes/release.js.map +1 -1
  145. package/dist/routes/runners.d.ts +1 -2
  146. package/dist/routes/runners.d.ts.map +1 -1
  147. package/dist/routes/runners.js +2 -2
  148. package/dist/routes/runners.js.map +1 -1
  149. package/dist/routes/sandbox.d.ts +2 -2
  150. package/dist/routes/sandbox.d.ts.map +1 -1
  151. package/dist/routes/sandbox.js +3 -3
  152. package/dist/routes/sandbox.js.map +1 -1
  153. package/dist/routes/service-catalog.d.ts +1 -1
  154. package/dist/routes/service-catalog.d.ts.map +1 -1
  155. package/dist/routes/service-catalog.js +2 -2
  156. package/dist/routes/service-catalog.js.map +1 -1
  157. package/dist/routes/services.d.ts +1 -2
  158. package/dist/routes/services.d.ts.map +1 -1
  159. package/dist/routes/services.js +2 -2
  160. package/dist/routes/services.js.map +1 -1
  161. package/dist/routes/shared-stacks.d.ts +1 -1
  162. package/dist/routes/shared-stacks.d.ts.map +1 -1
  163. package/dist/routes/shared-stacks.js +2 -2
  164. package/dist/routes/shared-stacks.js.map +1 -1
  165. package/dist/routes/skill-library.d.ts +1 -1
  166. package/dist/routes/skill-library.d.ts.map +1 -1
  167. package/dist/routes/skill-library.js +2 -2
  168. package/dist/routes/skill-library.js.map +1 -1
  169. package/dist/routes/slack.d.ts +1 -2
  170. package/dist/routes/slack.d.ts.map +1 -1
  171. package/dist/routes/slack.js +2 -2
  172. package/dist/routes/slack.js.map +1 -1
  173. package/dist/routes/tasks.d.ts +3 -3
  174. package/dist/routes/tasks.d.ts.map +1 -1
  175. package/dist/routes/tasks.js +4 -4
  176. package/dist/routes/tasks.js.map +1 -1
  177. package/dist/routes/test-secrets.d.ts +1 -2
  178. package/dist/routes/test-secrets.d.ts.map +1 -1
  179. package/dist/routes/test-secrets.js +2 -2
  180. package/dist/routes/test-secrets.js.map +1 -1
  181. package/dist/routes/tool-servers.d.ts +1 -1
  182. package/dist/routes/tool-servers.d.ts.map +1 -1
  183. package/dist/routes/tool-servers.js +2 -2
  184. package/dist/routes/tool-servers.js.map +1 -1
  185. package/dist/routes/tutorial.d.ts +1 -2
  186. package/dist/routes/tutorial.d.ts.map +1 -1
  187. package/dist/routes/tutorial.js +2 -2
  188. package/dist/routes/tutorial.js.map +1 -1
  189. package/dist/routes/user-secret.d.ts +1 -2
  190. package/dist/routes/user-secret.d.ts.map +1 -1
  191. package/dist/routes/user-secret.js +2 -2
  192. package/dist/routes/user-secret.js.map +1 -1
  193. package/dist/routes/validation-checks.d.ts +1 -2
  194. package/dist/routes/validation-checks.d.ts.map +1 -1
  195. package/dist/routes/validation-checks.js +2 -2
  196. package/dist/routes/validation-checks.js.map +1 -1
  197. package/dist/routes/vendor-credentials.d.ts +1 -2
  198. package/dist/routes/vendor-credentials.d.ts.map +1 -1
  199. package/dist/routes/vendor-credentials.js +2 -2
  200. package/dist/routes/vendor-credentials.js.map +1 -1
  201. package/dist/routes/visual-confirm.d.ts +93 -6
  202. package/dist/routes/visual-confirm.d.ts.map +1 -1
  203. package/dist/routes/workspace-members.d.ts +1 -2
  204. package/dist/routes/workspace-members.d.ts.map +1 -1
  205. package/dist/routes/workspace-members.js +2 -2
  206. package/dist/routes/workspace-members.js.map +1 -1
  207. package/dist/routes/workspaces.d.ts +83 -10
  208. package/dist/routes/workspaces.d.ts.map +1 -1
  209. package/dist/routes/workspaces.js +2 -2
  210. package/dist/routes/workspaces.js.map +1 -1
  211. package/dist/run-execution-surface.d.ts +196 -0
  212. package/dist/run-execution-surface.d.ts.map +1 -0
  213. package/dist/run-execution-surface.js +201 -0
  214. package/dist/run-execution-surface.js.map +1 -0
  215. package/dist/snapshot.d.ts +41 -4
  216. package/dist/snapshot.d.ts.map +1 -1
  217. package/package.json +3 -3
@@ -0,0 +1,201 @@
1
+ import * as v from 'valibot';
2
+ // ---------------------------------------------------------------------------
3
+ // WHERE a step's work is running, and what the platform can therefore see of it.
4
+ //
5
+ // Two records, one per executor class that has a machine somewhere: the per-run CONTAINER a
6
+ // container agent runs in, and the DELEGATION an external executor runs as. They live together
7
+ // because a reader asking "what is this step doing and where do I go to look" is asking about
8
+ // exactly one of them, and because the pair is where the honesty rule bites hardest: a delegated
9
+ // step has no phase, no container id and no reachable address, so a shared shape would have it
10
+ // render as a container that reports nothing rather than as work the platform is only watching.
11
+ //
12
+ // Extracted from `execution.ts` (the file-size ratchet: split, never grow) when the delegation
13
+ // record joined the container one.
14
+ // ---------------------------------------------------------------------------
15
+ /**
16
+ * The lifecycle status of the per-run container backing a container agent step:
17
+ * `starting` (dispatching / cold-booting), `up` (running the agent's job),
18
+ * `errored` (the container failed to start, was evicted, or its job faulted), and
19
+ * `destroyed` (the run's container has been reclaimed). The SPA additionally derives
20
+ * `destroyed` for a finished run's container steps (the container is reclaimed as a
21
+ * unit when the run terminates), so the backend only ever persists the first three.
22
+ */
23
+ export const runContainerStatusSchema = v.picklist(['starting', 'up', 'errored', 'destroyed']);
24
+ /**
25
+ * The compact, non-secret projection of the per-run container a container agent step
26
+ * runs in, so a run's details can show WHAT the container is doing and WHERE it lives
27
+ * instead of a step's "spinning up container…" badge vanishing into a blank "working"
28
+ * state once the container is up. Populated by the engine across the dispatch + poll
29
+ * lifecycle of an async (container) step; only ever set on container-backed steps.
30
+ */
31
+ export const runContainerSchema = v.object({
32
+ /** The container lifecycle status; see {@link runContainerStatusSchema}. */
33
+ status: runContainerStatusSchema,
34
+ /**
35
+ * The coarse phase the agent's job is in while the container is `up` (`clone` →
36
+ * `agent` → `push`, seeded `starting`), forwarded from the harness. Lets the details
37
+ * distinguish "still preparing the checkout" from "the agent is making calls". Absent
38
+ * until the first poll, or when the runner doesn't report a phase.
39
+ */
40
+ phase: v.optional(v.nullable(v.string())),
41
+ /** Provider container/runner id (Cloudflare DO id, docker container id), when known. */
42
+ id: v.optional(v.nullable(v.string())),
43
+ /** A reachable address for the running container (the local docker host URL), when one exists. */
44
+ url: v.optional(v.nullable(v.string())),
45
+ });
46
+ /**
47
+ * The lifecycle of one unit of DELEGATED work: `starting` (the claim is committed, the executor
48
+ * has not answered yet), `running`, the two terminal outcomes, and `cancelled`.
49
+ *
50
+ * `starting` is load-bearing rather than cosmetic. It is written and COMMITTED before the
51
+ * executor's `start` is called, so a replay of the dispatch finds it and polls by correlation
52
+ * instead of starting a second external run: the claim-before-effect rule, which for a delegated
53
+ * step is the difference between one pull request and two.
54
+ */
55
+ export const runDelegationStatusSchema = v.picklist([
56
+ 'starting',
57
+ 'running',
58
+ 'done',
59
+ 'failed',
60
+ 'cancelled',
61
+ ]);
62
+ const RUN_DELEGATION_STATUS_SET = new Set(runDelegationStatusSchema.options);
63
+ /**
64
+ * Whether a stored status is still a member of this build's vocabulary, DERIVED from the picklist
65
+ * so it cannot drift from it.
66
+ *
67
+ * The vocabulary is CLOSED and PERSISTED, which is the pairing that makes an exhaustive
68
+ * `Record<RunDelegationStatus, …>` total against the TYPE and partial against the DATA: retiring a
69
+ * member does not rewrite the rows that hold it, and the reader that meets one first is the step
70
+ * panel whose whole job is to say what happened to the run. Indexed bare, that is `undefined.cls`
71
+ * and a white screen over the one surface with the answer on it.
72
+ *
73
+ * The negative case is RENDERED as the unrecognised value it is, never guessed onto a current
74
+ * member: nothing can know which one was meant, and a status silently re-pointed reports the wrong
75
+ * outcome for external work a person is deciding whether to go and stop.
76
+ */
77
+ export function isRunDelegationStatus(value) {
78
+ return RUN_DELEGATION_STATUS_SET.has(value);
79
+ }
80
+ /** One attempt at the external work: when it started, what it was, and where to read about it. */
81
+ export const runDelegationAttemptSchema = v.object({
82
+ startedAt: v.number(),
83
+ externalId: v.optional(v.nullable(v.string())),
84
+ url: v.optional(v.nullable(v.string())),
85
+ /** How the attempt ended, in the executor's own words. Absent while it is still running. */
86
+ outcome: v.optional(v.nullable(v.string())),
87
+ });
88
+ /**
89
+ * The DELEGATION record: the compact, non-secret projection of the external work a delegated step
90
+ * dispatched, and the delegated sibling of {@link runContainerSchema}.
91
+ *
92
+ * Its own field rather than a fourth `runContainerStatus` value, because nothing about it is a
93
+ * container: there is no phase, no id, no reachable address, and the one affordance that matters
94
+ * (a link to the executor's own logs) has no counterpart there. Sharing the field would also make
95
+ * every existing container reader (the board badge, the reclaim path, the SPA's derived
96
+ * `destroyed`) silently speak for runs whose containers are somebody else's.
97
+ *
98
+ * The attempt LOG is kept across a re-run on purpose: the previous attempt's logs are the evidence
99
+ * for why the step is being re-run, and the platform holds nothing else about it.
100
+ */
101
+ export const runDelegationSchema = v.object({
102
+ /** The registered `DelegatedExecutorDefinition.id` this work was dispatched to. */
103
+ executor: v.string(),
104
+ status: runDelegationStatusSchema,
105
+ /**
106
+ * The key the executor was asked to make its own run recoverable by, and the step's `jobId` at
107
+ * the moment of the claim.
108
+ *
109
+ * Persisted rather than re-derived because it is what tells the poll site WHICH job is in flight
110
+ * on this step. A helper re-dispatch (a fixer round) overwrites `jobId` with a container job's,
111
+ * and a cadence or a route read off a stale delegation record would then address the wrong
112
+ * thing entirely.
113
+ */
114
+ correlationKey: v.string(),
115
+ /**
116
+ * The poll cadence this run was dispatched under, copied from the executor's declaration at the
117
+ * claim.
118
+ *
119
+ * On the RECORD rather than looked up per poll because anything the poll needs must be on the
120
+ * step: the durable driver rebuilds everything from it, in another process, and the driver's own
121
+ * park loop has no registry in scope at all. Copying also means an in-flight run keeps the
122
+ * cadence it started under when a deployment re-tunes its executor, which is the honest answer
123
+ * for work already running somewhere else.
124
+ *
125
+ * NULL is a real state and not a default: a record opened by a dispatch site that never claimed
126
+ * has no executor declaration within reach, and the driver then polls the step on the
127
+ * DEPLOYMENT's own job cadence, exactly as it polls a container job. Recorded as absence rather
128
+ * than as a zero window, which derived a budget of no polls at all and failed the step as
129
+ * un-settled before it was ever asked how it was going.
130
+ */
131
+ poll: v.optional(v.nullable(v.object({ intervalMs: v.number(), maxDurationMs: v.number() }))),
132
+ /** The executor's own id for the work. Absent between the claim and the executor's answer. */
133
+ externalId: v.optional(v.nullable(v.string())),
134
+ /** Where a human watches it. The primary affordance on the step card. */
135
+ url: v.optional(v.nullable(v.string())),
136
+ /** A coarse phase in the executor's own vocabulary, when it reports one. */
137
+ phase: v.optional(v.nullable(v.string())),
138
+ /**
139
+ * The branch pair this dispatch handed the executor, persisted because the POLL needs it and
140
+ * cannot derive it: the work branch is named from the BLOCK, and a poll rebuilds its handle from
141
+ * the step and the run alone. An executor reading what its workflow produced would otherwise
142
+ * guess, and the wrong branch means the wrong pull request recorded on this block.
143
+ */
144
+ branches: v.optional(v.nullable(v.object({ base: v.string(), work: v.string() }))),
145
+ /**
146
+ * The repository the work TARGETS, persisted beside the branches and for the same reason: the
147
+ * poll rebuilds its handle from the step, and the executor's own configured repository is
148
+ * routinely a different one (an automation repo holding the workflow, dispatching against many
149
+ * product repos). Without it, an executor reading back what it produced looks in the wrong place
150
+ * and reports every run as having produced nothing.
151
+ */
152
+ repo: v.optional(v.nullable(v.object({ owner: v.string(), name: v.string() }))),
153
+ /**
154
+ * The branch the external work actually LANDED on, as the executor reported it at settlement.
155
+ *
156
+ * Distinct from `branches.work`, which is what the dispatch ASKED for: this is what came back,
157
+ * and it is the whole product of a step whose executor pushes without opening a pull request (a
158
+ * seed-only step, or a policy of letting a later step open the PR). Absent means the executor
159
+ * reported none, which for a run that opened a pull request is the ordinary case.
160
+ */
161
+ branch: v.optional(v.nullable(v.string())),
162
+ /** Every attempt on this step, oldest first. A re-run APPENDS; it never clears. */
163
+ attempts: v.array(runDelegationAttemptSchema),
164
+ /**
165
+ * One line of context the platform could not otherwise state: how an id was recovered, or that
166
+ * a cancelled run's executor declares no `cancel` and the external work is still alive. Never a
167
+ * credential.
168
+ */
169
+ note: v.optional(v.nullable(v.string())),
170
+ });
171
+ /**
172
+ * Whether a delegated step's model spend is MISSING from the platform's totals.
173
+ *
174
+ * Here rather than in the engine because both sides have to agree about the answer: the backend
175
+ * folds it into the debug overview's reporting gaps, and the SPA prints "usage not reported by
176
+ * <executor>" on the step card. Stated twice, the two drifted in both directions at once, which is
177
+ * what this seam exists to make impossible (see the contracts rule in CLAUDE.md).
178
+ *
179
+ * Read off the STEP's own record, never off the executor's declared `telemetry`. The declaration
180
+ * is a deployment's INTENTION, and what a reader needs is what actually landed: an executor
181
+ * declaring `self-reported` that silently stops filing is precisely the case a declaration-based
182
+ * check reports as covered, and one declaring `not-reported` that does fill
183
+ * `DelegationResult.usage` would have the card deny a number printed beside it.
184
+ *
185
+ * Work still IN FLIGHT is not a gap, and that is the check that keeps the two counts apart: a
186
+ * `self-reported` executor files with its RESULT, so between the claim and the settlement it has
187
+ * reported nothing and is supposed to have. Counting it would merge "has not filed yet" with
188
+ * "never will" on exactly the reads a person takes while watching a run.
189
+ */
190
+ export function delegatedSpendUnreported(step) {
191
+ const record = step.delegated;
192
+ if (!record)
193
+ return false;
194
+ if (record.status === 'starting' || record.status === 'running')
195
+ return false;
196
+ // `metrics` is the per-step LLM rollup the observability sink folds. Absent, or present with no
197
+ // calls in it, both mean the same thing here: nothing about this step's model work reached the
198
+ // platform.
199
+ return (step.metrics?.calls ?? 0) === 0;
200
+ }
201
+ //# sourceMappingURL=run-execution-surface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-execution-surface.js","sourceRoot":"","sources":["../src/run-execution-surface.ts"],"names":[],"mappings":"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"}
@@ -832,6 +832,34 @@ export declare const workspaceSnapshotSchema: v.ObjectSchema<{
832
832
  readonly id: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
833
833
  readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
834
834
  }, undefined>, undefined>, undefined>;
835
+ readonly delegated: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
836
+ readonly executor: v.StringSchema<undefined>;
837
+ readonly status: v.PicklistSchema<["starting", "running", "done", "failed", "cancelled"], undefined>;
838
+ readonly correlationKey: v.StringSchema<undefined>;
839
+ readonly poll: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
840
+ readonly intervalMs: v.NumberSchema<undefined>;
841
+ readonly maxDurationMs: v.NumberSchema<undefined>;
842
+ }, undefined>, undefined>, undefined>;
843
+ readonly externalId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
844
+ readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
845
+ readonly phase: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
846
+ readonly branches: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
847
+ readonly base: v.StringSchema<undefined>;
848
+ readonly work: v.StringSchema<undefined>;
849
+ }, undefined>, undefined>, undefined>;
850
+ readonly repo: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
851
+ readonly owner: v.StringSchema<undefined>;
852
+ readonly name: v.StringSchema<undefined>;
853
+ }, undefined>, undefined>, undefined>;
854
+ readonly branch: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
855
+ readonly attempts: v.ArraySchema<v.ObjectSchema<{
856
+ readonly startedAt: v.NumberSchema<undefined>;
857
+ readonly externalId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
858
+ readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
859
+ readonly outcome: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
860
+ }, undefined>, undefined>;
861
+ readonly note: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
862
+ }, undefined>, undefined>, undefined>;
835
863
  readonly search: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
836
864
  readonly available: v.BooleanSchema<undefined>;
837
865
  readonly provider: v.NullableSchema<v.PicklistSchema<["brave", "searxng"], undefined>, undefined>;
@@ -1421,6 +1449,7 @@ export declare const workspaceSnapshotSchema: v.ObjectSchema<{
1421
1449
  readonly evictionRecoveries: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1422
1450
  readonly transientEvictionRecoveries: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1423
1451
  readonly branchContentionRecoveries: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1452
+ readonly delegatedRetries: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1424
1453
  readonly firstEvictionDetail: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1425
1454
  readonly deployProvisioning: v.OptionalSchema<v.ObjectSchema<{
1426
1455
  readonly type: v.PicklistSchema<["kubernetes", "docker-compose", "cloudflare", "custom", "infraless"], undefined>;
@@ -1698,7 +1727,7 @@ export declare const workspaceSnapshotSchema: v.ObjectSchema<{
1698
1727
  readonly currentStep: v.NumberSchema<undefined>;
1699
1728
  readonly status: v.PicklistSchema<["running", "blocked", "done", "paused", "failed"], undefined>;
1700
1729
  readonly failure: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
1701
- readonly kind: v.PicklistSchema<["preflight", "dispatch", "environment", "evicted", "harness_shutdown", "timeout", "agent", "job_failed", "rejected", "companion_rejected", "stalled", "state_unreadable", "cancelled", "unknown"], undefined>;
1730
+ readonly kind: v.PicklistSchema<["preflight", "dispatch", "environment", "evicted", "harness_shutdown", "timeout", "agent", "job_failed", "delegated_failed", "rejected", "companion_rejected", "stalled", "state_unreadable", "cancelled", "unknown"], undefined>;
1702
1731
  readonly message: v.StringSchema<undefined>;
1703
1732
  readonly detail: v.NullableSchema<v.StringSchema<undefined>, undefined>;
1704
1733
  readonly hint: v.NullableSchema<v.StringSchema<undefined>, undefined>;
@@ -1716,7 +1745,7 @@ export declare const workspaceSnapshotSchema: v.ObjectSchema<{
1716
1745
  readonly stepIndex: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1717
1746
  }, undefined>, undefined>, undefined>;
1718
1747
  readonly failureHistory: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1719
- readonly kind: v.PicklistSchema<["preflight", "dispatch", "environment", "evicted", "harness_shutdown", "timeout", "agent", "job_failed", "rejected", "companion_rejected", "stalled", "state_unreadable", "cancelled", "unknown"], undefined>;
1748
+ readonly kind: v.PicklistSchema<["preflight", "dispatch", "environment", "evicted", "harness_shutdown", "timeout", "agent", "job_failed", "delegated_failed", "rejected", "companion_rejected", "stalled", "state_unreadable", "cancelled", "unknown"], undefined>;
1720
1749
  readonly message: v.StringSchema<undefined>;
1721
1750
  readonly detail: v.NullableSchema<v.StringSchema<undefined>, undefined>;
1722
1751
  readonly hint: v.NullableSchema<v.StringSchema<undefined>, undefined>;
@@ -1819,7 +1848,7 @@ export declare const workspaceSnapshotSchema: v.ObjectSchema<{
1819
1848
  }, undefined>, undefined>;
1820
1849
  readonly error: v.NullableSchema<v.StringSchema<undefined>, undefined>;
1821
1850
  readonly failure: v.NullableSchema<v.ObjectSchema<{
1822
- readonly kind: v.PicklistSchema<["preflight", "dispatch", "environment", "evicted", "harness_shutdown", "timeout", "agent", "job_failed", "rejected", "companion_rejected", "stalled", "state_unreadable", "cancelled", "unknown"], undefined>;
1851
+ readonly kind: v.PicklistSchema<["preflight", "dispatch", "environment", "evicted", "harness_shutdown", "timeout", "agent", "job_failed", "delegated_failed", "rejected", "companion_rejected", "stalled", "state_unreadable", "cancelled", "unknown"], undefined>;
1823
1852
  readonly message: v.StringSchema<undefined>;
1824
1853
  readonly detail: v.NullableSchema<v.StringSchema<undefined>, undefined>;
1825
1854
  readonly hint: v.NullableSchema<v.StringSchema<undefined>, undefined>;
@@ -1934,7 +1963,7 @@ export declare const workspaceSnapshotSchema: v.ObjectSchema<{
1934
1963
  }, undefined>, undefined>;
1935
1964
  readonly error: v.NullableSchema<v.StringSchema<undefined>, undefined>;
1936
1965
  readonly failure: v.NullableSchema<v.ObjectSchema<{
1937
- readonly kind: v.PicklistSchema<["preflight", "dispatch", "environment", "evicted", "harness_shutdown", "timeout", "agent", "job_failed", "rejected", "companion_rejected", "stalled", "state_unreadable", "cancelled", "unknown"], undefined>;
1966
+ readonly kind: v.PicklistSchema<["preflight", "dispatch", "environment", "evicted", "harness_shutdown", "timeout", "agent", "job_failed", "delegated_failed", "rejected", "companion_rejected", "stalled", "state_unreadable", "cancelled", "unknown"], undefined>;
1938
1967
  readonly message: v.StringSchema<undefined>;
1939
1968
  readonly detail: v.NullableSchema<v.StringSchema<undefined>, undefined>;
1940
1969
  readonly hint: v.NullableSchema<v.StringSchema<undefined>, undefined>;
@@ -3524,6 +3553,14 @@ export declare const workspaceSnapshotSchema: v.ObjectSchema<{
3524
3553
  readonly container: v.BooleanSchema<undefined>;
3525
3554
  readonly binaryOutput: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
3526
3555
  readonly companionTargets: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>, undefined>;
3556
+ readonly executor: v.OptionalSchema<v.PicklistSchema<["inline", "container", "delegated"], undefined>, undefined>;
3557
+ readonly delegatedExecutor: v.OptionalSchema<v.ObjectSchema<{
3558
+ readonly id: v.StringSchema<undefined>;
3559
+ readonly label: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
3560
+ readonly icon: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
3561
+ readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
3562
+ readonly telemetry: v.OptionalSchema<v.PicklistSchema<["not-reported", "self-reported"], undefined>, undefined>;
3563
+ }, undefined>, undefined>;
3527
3564
  }, undefined>, undefined>, undefined>;
3528
3565
  /**
3529
3566
  * Registered VARIATIONS of existing agent kinds (id + base kind + label) a deployment mixed in
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAyC5B;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;aAGhC,CAAA;AACF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAE7E,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB;;;IAGlC;;;;;OAKG;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKlC;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;OAGG;;;;IAEH;;;;;;OAMG;;;;;;IAEH;;;;OAIG;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;OAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;OAQG;;;;;IAOH;;;OAGG;;;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;OAGG;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;IAGH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;IAEH;;;;;;;;;;OAUG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;;;OAWG;;IAEH;;;;;;;;OAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;OASG;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;OAQG;;IAEH;;;;;;;;;OASG;;;;QA5PH;;;;;WAKG;;;;;;QALH;;;;;WAKG;;;IA0PH;;;;;;;;;;;;;OAaG;;IAEH;;;;;;;;;;;;;;;;;;OAkBG;;IAEH;;;;;;;;;;;;;;;OAeG;;;;;IAEH;;;;;;;OAOG;;IAEH;;;;;;;OAOG;;IAEH;;;;;;;;;;;;;OAaG;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;OAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;OAOG;;;;;;IAEH;;;;;;;OAOG;;;;;;;IAEH;;;;;OAKG;;;;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAyC5B;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;aAGhC,CAAA;AACF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAE7E,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB;;;IAGlC;;;;;OAKG;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKlC;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;OAGG;;;;IAEH;;;;;;OAMG;;;;;;IAEH;;;;OAIG;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;OAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;OAQG;;;;;IAOH;;;OAGG;;;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;OAGG;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;IAGH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;IAEH;;;;;;;;;;OAUG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;;;OAWG;;IAEH;;;;;;;;OAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;OASG;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;OAQG;;IAEH;;;;;;;;;OASG;;;;QA5PH;;;;;WAKG;;;;;;QALH;;;;;WAKG;;;IA0PH;;;;;;;;;;;;;OAaG;;IAEH;;;;;;;;;;;;;;;;;;OAkBG;;IAEH;;;;;;;;;;;;;;;OAeG;;;;;IAEH;;;;;;;OAOG;;IAEH;;;;;;;OAOG;;IAEH;;;;;;;;;;;;;OAaG;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;OAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;OAOG;;;;;;IAEH;;;;;;;OAOG;;;;;;;IAEH;;;;;OAKG;;;;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/contracts",
3
- "version": "0.355.1",
3
+ "version": "0.356.0",
4
4
  "description": "Valibot wire contract shared between the Agent Architecture Board frontend and backend.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -24,8 +24,8 @@
24
24
  "access": "public"
25
25
  },
26
26
  "dependencies": {
27
- "@toad-contracts/core": "0.4.0",
28
- "@toad-contracts/valibot": "0.5.0",
27
+ "@toad-contracts/core": "1.0.0",
28
+ "@toad-contracts/valibot": "1.0.0",
29
29
  "valibot": "^1.5.0"
30
30
  },
31
31
  "devDependencies": {