@archmax-ai/harness 0.9.0 → 1.0.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 (207) hide show
  1. package/README.md +58 -14
  2. package/dist/agent.d.ts +4 -6
  3. package/dist/agent.js +4 -6
  4. package/dist/agent.js.map +1 -1
  5. package/dist/assembly/compose.d.ts +5 -24
  6. package/dist/assembly/compose.js +28 -42
  7. package/dist/assembly/compose.js.map +1 -1
  8. package/dist/assembly/delegation-registry.js +3 -14
  9. package/dist/assembly/delegation-registry.js.map +1 -1
  10. package/dist/assembly/index.d.ts +8 -15
  11. package/dist/assembly/index.js +21 -28
  12. package/dist/assembly/index.js.map +1 -1
  13. package/dist/assembly/plain.js +1 -2
  14. package/dist/assembly/plain.js.map +1 -1
  15. package/dist/authoring-skill/archmax-harness/README.md +5 -5
  16. package/dist/authoring-skill/archmax-harness/SKILL.md +72 -30
  17. package/dist/authoring-skill/archmax-harness/references/backend-integration.md +33 -24
  18. package/dist/authoring-skill/archmax-harness/references/cases.md +41 -8
  19. package/dist/authoring-skill/archmax-harness/references/{hook-and-test-scripts.md → code-state-and-test-scripts.md} +599 -339
  20. package/dist/authoring-skill/archmax-harness/references/code-states-and-scripts.md +115 -0
  21. package/dist/authoring-skill/archmax-harness/references/diagnostics.md +40 -7
  22. package/dist/authoring-skill/archmax-harness/references/wiring.md +19 -10
  23. package/dist/authoring-skill/archmax-harness/references/workflow-schema.md +404 -293
  24. package/dist/authoring-skill/archmax-harness/references/workflow-yaml.md +151 -62
  25. package/dist/cli/state-flow.d.ts +1 -1
  26. package/dist/cli/state-flow.js +18 -28
  27. package/dist/cli/state-flow.js.map +1 -1
  28. package/dist/cli/turn.d.ts +1 -1
  29. package/dist/cli/turn.js +1 -1
  30. package/dist/core/code-description.d.ts +3 -3
  31. package/dist/core/code-description.js +3 -3
  32. package/dist/core/deepagents.d.ts +5 -12
  33. package/dist/core/deepagents.js +4 -17
  34. package/dist/core/deepagents.js.map +1 -1
  35. package/dist/core/events.d.ts +23 -42
  36. package/dist/core/events.js +21 -24
  37. package/dist/core/events.js.map +1 -1
  38. package/dist/core/message-readers.d.ts +4 -5
  39. package/dist/core/message-readers.js +3 -8
  40. package/dist/core/message-readers.js.map +1 -1
  41. package/dist/core/messages.d.ts +0 -22
  42. package/dist/core/messages.js +1 -32
  43. package/dist/core/messages.js.map +1 -1
  44. package/dist/core/mounts.js +3 -3
  45. package/dist/core/platform-prompt.generated.js +1 -1
  46. package/dist/core/platform-prompt.generated.js.map +1 -1
  47. package/dist/core/session-zone.d.ts +1 -1
  48. package/dist/core/session-zone.js +1 -1
  49. package/dist/core/workspace-context.d.ts +1 -1
  50. package/dist/core/workspace.d.ts +1 -1
  51. package/dist/core/workspace.js +1 -1
  52. package/dist/core/zones.d.ts +4 -4
  53. package/dist/core/zones.js +5 -5
  54. package/dist/core/zones.js.map +1 -1
  55. package/dist/env.d.ts +9 -9
  56. package/dist/index.d.ts +3 -7
  57. package/dist/index.js +2 -4
  58. package/dist/index.js.map +1 -1
  59. package/dist/kernel/kernel.d.ts +31 -61
  60. package/dist/kernel/kernel.js +54 -112
  61. package/dist/kernel/kernel.js.map +1 -1
  62. package/dist/machine/lint-spec.js +53 -12
  63. package/dist/machine/lint-spec.js.map +1 -1
  64. package/dist/machine/machine.d.ts +36 -18
  65. package/dist/machine/machine.js +62 -51
  66. package/dist/machine/machine.js.map +1 -1
  67. package/dist/machine/spec-schema.d.ts +32 -180
  68. package/dist/machine/spec-schema.js +52 -113
  69. package/dist/machine/spec-schema.js.map +1 -1
  70. package/dist/machine/tool-names.d.ts +34 -16
  71. package/dist/machine/tool-names.js +41 -16
  72. package/dist/machine/tool-names.js.map +1 -1
  73. package/dist/machine/types.d.ts +14 -46
  74. package/dist/machine/types.js +0 -2
  75. package/dist/machine/types.js.map +1 -1
  76. package/dist/machine/validate-spec.d.ts +1 -1
  77. package/dist/public/sandbox.d.ts +59 -95
  78. package/dist/public/sandbox.js +22 -23
  79. package/dist/public/sandbox.js.map +1 -1
  80. package/dist/public/spec.d.ts +13 -20
  81. package/dist/public/spec.js +12 -20
  82. package/dist/public/spec.js.map +1 -1
  83. package/dist/runtime/contract.d.ts +11 -12
  84. package/dist/runtime/contract.js +16 -16
  85. package/dist/runtime/contract.js.map +1 -1
  86. package/dist/sandbox/assets/parts/code-state.js +17 -0
  87. package/dist/sandbox/executor.d.ts +25 -7
  88. package/dist/sandbox/executor.js +56 -57
  89. package/dist/sandbox/executor.js.map +1 -1
  90. package/dist/sandbox/imports.d.ts +10 -10
  91. package/dist/sandbox/imports.js +11 -11
  92. package/dist/sandbox/imports.js.map +1 -1
  93. package/dist/sandbox/prelude.d.ts +5 -6
  94. package/dist/sandbox/prelude.js +38 -35
  95. package/dist/sandbox/prelude.js.map +1 -1
  96. package/dist/sandbox/ptc-gateway.d.ts +19 -18
  97. package/dist/sandbox/ptc-gateway.js +26 -22
  98. package/dist/sandbox/ptc-gateway.js.map +1 -1
  99. package/dist/sessions/resume.d.ts +2 -2
  100. package/dist/sessions/resume.js +1 -1
  101. package/dist/sessions/resume.js.map +1 -1
  102. package/dist/sessions/scope.d.ts +0 -10
  103. package/dist/sessions/scope.js +0 -17
  104. package/dist/sessions/scope.js.map +1 -1
  105. package/dist/sessions/summary.d.ts +1 -1
  106. package/dist/testing/assertions.js +9 -4
  107. package/dist/testing/assertions.js.map +1 -1
  108. package/dist/testing/driver.js +3 -0
  109. package/dist/testing/driver.js.map +1 -1
  110. package/dist/testing/interpreter.d.ts +2 -2
  111. package/dist/testing/runner.d.ts +2 -2
  112. package/dist/validate/validate.d.ts +1 -1
  113. package/dist/validate/validate.js +39 -70
  114. package/dist/validate/validate.js.map +1 -1
  115. package/dist/workflow/automated-controls.d.ts +63 -0
  116. package/dist/workflow/automated-controls.js +158 -0
  117. package/dist/workflow/automated-controls.js.map +1 -0
  118. package/dist/workflow/automated.d.ts +112 -0
  119. package/dist/workflow/automated.js +163 -0
  120. package/dist/workflow/automated.js.map +1 -0
  121. package/dist/workflow/code-state.d.ts +46 -0
  122. package/dist/workflow/code-state.js +26 -0
  123. package/dist/workflow/code-state.js.map +1 -0
  124. package/dist/workflow/control-tools.d.ts +54 -23
  125. package/dist/workflow/control-tools.js +99 -79
  126. package/dist/workflow/control-tools.js.map +1 -1
  127. package/dist/workflow/file-values.d.ts +4 -4
  128. package/dist/workflow/file-values.js +1 -1
  129. package/dist/workflow/file-values.js.map +1 -1
  130. package/dist/workflow/governance.d.ts +11 -22
  131. package/dist/workflow/governance.js +47 -104
  132. package/dist/workflow/governance.js.map +1 -1
  133. package/dist/workflow/grader-state.d.ts +55 -0
  134. package/dist/workflow/grader-state.js +182 -0
  135. package/dist/workflow/grader-state.js.map +1 -0
  136. package/dist/workflow/history.d.ts +11 -0
  137. package/dist/{lifecycle/transcript.js → workflow/history.js} +24 -8
  138. package/dist/workflow/history.js.map +1 -0
  139. package/dist/workflow/middleware.d.ts +14 -17
  140. package/dist/workflow/middleware.js +109 -95
  141. package/dist/workflow/middleware.js.map +1 -1
  142. package/dist/workflow/move-events.d.ts +21 -0
  143. package/dist/workflow/move-events.js +20 -0
  144. package/dist/workflow/move-events.js.map +1 -0
  145. package/dist/workflow/on-error.js +0 -2
  146. package/dist/workflow/on-error.js.map +1 -1
  147. package/dist/workflow/parks.d.ts +9 -2
  148. package/dist/workflow/parks.js +16 -10
  149. package/dist/workflow/parks.js.map +1 -1
  150. package/dist/workflow/paths.d.ts +9 -9
  151. package/dist/workflow/paths.js +19 -19
  152. package/dist/workflow/paths.js.map +1 -1
  153. package/dist/workflow/render-prompt.d.ts +7 -5
  154. package/dist/workflow/render-prompt.js +22 -37
  155. package/dist/workflow/render-prompt.js.map +1 -1
  156. package/dist/workflow/signature-checks.d.ts +2 -2
  157. package/dist/workflow/snapshot.js +5 -29
  158. package/dist/workflow/snapshot.js.map +1 -1
  159. package/dist/workflow/state.d.ts +14 -42
  160. package/dist/workflow/state.js +20 -33
  161. package/dist/workflow/state.js.map +1 -1
  162. package/dist/workflow/sub-workflow.d.ts +3 -3
  163. package/dist/workflow/sub-workflow.js +3 -7
  164. package/dist/workflow/sub-workflow.js.map +1 -1
  165. package/dist/workflow/tool-service.d.ts +1 -9
  166. package/dist/workflow/tool-service.js +21 -24
  167. package/dist/workflow/tool-service.js.map +1 -1
  168. package/dist/workflow/turn-boundary.d.ts +2 -2
  169. package/dist/workflow/turn-boundary.js +10 -15
  170. package/dist/workflow/turn-boundary.js.map +1 -1
  171. package/dist/workflow/turn-runner.js +5 -6
  172. package/dist/workflow/turn-runner.js.map +1 -1
  173. package/package.json +2 -2
  174. package/skills/archmax-harness/README.md +5 -5
  175. package/skills/archmax-harness/SKILL.md +72 -30
  176. package/skills/archmax-harness/references/backend-integration.md +33 -24
  177. package/skills/archmax-harness/references/cases.md +41 -8
  178. package/skills/archmax-harness/references/{hook-and-test-scripts.md → code-state-and-test-scripts.md} +599 -339
  179. package/skills/archmax-harness/references/code-states-and-scripts.md +115 -0
  180. package/skills/archmax-harness/references/diagnostics.md +40 -7
  181. package/skills/archmax-harness/references/wiring.md +19 -10
  182. package/skills/archmax-harness/references/workflow-schema.md +404 -293
  183. package/skills/archmax-harness/references/workflow-yaml.md +151 -62
  184. package/dist/authoring-skill/archmax-harness/references/hooks-and-scripts.md +0 -89
  185. package/dist/lifecycle/hook-shape.d.ts +0 -44
  186. package/dist/lifecycle/hook-shape.js +0 -66
  187. package/dist/lifecycle/hook-shape.js.map +0 -1
  188. package/dist/lifecycle/runner.d.ts +0 -197
  189. package/dist/lifecycle/runner.js +0 -419
  190. package/dist/lifecycle/runner.js.map +0 -1
  191. package/dist/lifecycle/tool-calls.d.ts +0 -9
  192. package/dist/lifecycle/tool-calls.js +0 -57
  193. package/dist/lifecycle/tool-calls.js.map +0 -1
  194. package/dist/lifecycle/transcript.d.ts +0 -31
  195. package/dist/lifecycle/transcript.js.map +0 -1
  196. package/dist/rubrics/rubrics.d.ts +0 -135
  197. package/dist/rubrics/rubrics.js +0 -145
  198. package/dist/rubrics/rubrics.js.map +0 -1
  199. package/dist/sandbox/assets/parts/core.js +0 -22
  200. package/dist/sandbox/assets/parts/lifecycle-hook.js +0 -47
  201. package/dist/sandbox/bridge.d.ts +0 -16
  202. package/dist/sandbox/bridge.js +0 -95
  203. package/dist/sandbox/bridge.js.map +0 -1
  204. package/dist/workflow/visits.d.ts +0 -21
  205. package/dist/workflow/visits.js +0 -45
  206. package/dist/workflow/visits.js.map +0 -1
  207. package/skills/archmax-harness/references/hooks-and-scripts.md +0 -89
@@ -8,7 +8,6 @@
8
8
  */
9
9
  import { z } from "zod";
10
10
  import { normalizeAllowEntry } from "./allow.js";
11
- import { normalizeHooks } from "../lifecycle/hook-shape.js";
12
11
  import { isSlug } from "./slug.js";
13
12
  import { SIGNATURE_TYPES } from "./signature.js";
14
13
  import { MANUAL_TRIGGER, parseSessionPath, stateTriggerIds } from "./triggers.js";
@@ -28,7 +27,7 @@ const POSITIVE = "must be a positive number";
28
27
  const positiveInt = z.number({ error: POSITIVE }).int(POSITIVE).positive(POSITIVE);
29
28
  /**
30
29
  * A model id, and only an id: the one spelling of "which model runs this" in the
31
- * schema, shared by `settings.model`, a state's `model` and a rubric's. Never an
30
+ * schema, shared by `settings.model` and a state's `model`. Never an
32
31
  * endpoint, credentials or sampling knobs — a declared id is resolved over the
33
32
  * endpoint and credentials the assembly is already configured with, so an object
34
33
  * value is refused with the sentence that says where those belong. The id itself
@@ -130,95 +129,26 @@ const sessionPath = z
130
129
  *
131
130
  * One loose, named slot for host data the runtime never reads (an authoring UI's
132
131
  * canvas state, a node's position) — rather than a `.catchall()`, which would
133
- * switch off the strictness this file exists for. Accepted at three positions:
134
- * the spec root, a state, and a rubric declaration.
132
+ * switch off the strictness this file exists for. Accepted at two positions:
133
+ * the spec root and a state.
135
134
  */
136
135
  export const specMetadataSchema = z.looseObject({});
136
+ // --- Code-state scripts ---------------------------------------------------------
137
+ const CODE_SCRIPT_PATH = /^scripts\/[^/].*\.(js|mjs)$/;
137
138
  /**
138
- * @see RubricDeclaration
139
- *
140
- * A grading rubric: the standard a state's exit is measured against, declared
141
- * **inline on the hook that applies it**. `instructions` is the only required
142
- * key — the same word a state uses for the prose telling a model what to do.
143
- *
144
- * There is deliberately no name: a rubric is not a first-order item a hook
145
- * points at, it is part of the state's own declaration, so reading the state
146
- * tells you the whole standard without a lookup. The cost is duplication when
147
- * two states want the same grader, which is accepted: a state is legible on its
148
- * own, and nothing silently changes what one state grades against by editing
149
- * something elsewhere. There is no `title` either (nothing routes to a rubric)
150
- * and no `description`; a host label goes in `metadata`.
139
+ * Whether a code state's script path stays inside the workflow's `scripts/`
140
+ * directory. Checked by segment, not only by prefix: `scripts/../escape.js`
141
+ * satisfies a naive "starts with scripts/" rule while resolving outside it.
151
142
  */
152
- export const rubricDeclarationSchema = z
153
- .object({
154
- instructions: nonEmptyString,
155
- max_iterations: z.number().int().min(0).optional(),
156
- model: modelId.optional(),
157
- metadata: specMetadataSchema.optional(),
158
- })
159
- .strict();
160
- // --- Hooks ---------------------------------------------------------------------
161
- /** Keys a hook may carry *alongside* its kind, which therefore never name one. */
162
- const RESERVED_HOOK_KEYS = new Set(["max_iterations"]);
163
- const HOOK_SCRIPT_PATH = /^hooks\/[^/].*\.(js|mjs)$/;
164
- /**
165
- * Whether a hook script path stays inside the workflow's `hooks/` directory.
166
- * Checked by segment, not only by prefix: `hooks/../escape.js` satisfies a naive
167
- * "starts with hooks/" rule while resolving outside it.
168
- */
169
- function isConfinedHookScript(path) {
170
- return HOOK_SCRIPT_PATH.test(path) && !path.split("/").includes("..");
171
- }
172
- const hookScriptPath = z
173
- .string()
174
- .refine(isConfinedHookScript, "must be a workflow-relative path inside 'hooks/' ending in .js or .mjs, with " +
175
- "no '..' segment (e.g. 'hooks/check-requester.js'). Runtime scripts the agent " +
176
- "runs with archmax_run live in a skill bundle instead.");
177
- /**
178
- * The one wording for a hook that is not a usable tagged object.
179
- *
180
- * Deliberately free of per-key special cases: a retired spelling
181
- * (`subagent`, `max_corrections`) is reported as the unrecognized key it is, the
182
- * way a typo is, so the schema carries no memory of every name it ever had.
183
- */
184
- function describeHookInput(input) {
185
- if (!input || typeof input !== "object" || Array.isArray(input)) {
186
- return "must be a { script } or { rubric } entry";
187
- }
188
- const record = input;
189
- const kinds = Object.keys(record).filter((key) => !RESERVED_HOOK_KEYS.has(key));
190
- if (kinds.length !== 1) {
191
- return "must be a single-key tagged object (plus an optional 'max_iterations' sidecar)";
192
- }
193
- return ("must be a hook: { script: 'hooks/<file>.js' }, { rubric: { instructions: … } }, or " +
194
- "{ <custom-kind>: '<target>' } for an executor registered at assembly");
143
+ function isConfinedCodeScript(path) {
144
+ return CODE_SCRIPT_PATH.test(path) && !path.split("/").includes("..");
195
145
  }
196
- /**
197
- * One lifecycle hook. The built-in kinds are strict; the custom-kind branch (a
198
- * record of strings, for an executor registered at assembly) is fenced so it
199
- * cannot rescue a malformed built-in — `{ script: <bad path> }` must fail the
200
- * script branch and stay failed.
201
- */
202
- export const hookSchema = z.union([
203
- z
204
- .object({ script: hookScriptPath, max_iterations: z.number().int().min(0).optional() })
205
- .strict(),
206
- // A rubric hook carries the whole grader inline, so its budget is declared
207
- // inside the declaration rather than as a sidecar beside it: there is only
208
- // one place to put it, which is the point of inlining.
209
- z.object({ rubric: rubricDeclarationSchema }).strict(),
210
- z
211
- .record(z.string(), z.string())
212
- .refine((value) => !("script" in value) &&
213
- !("rubric" in value) &&
214
- Object.keys(value).filter((key) => !RESERVED_HOOK_KEYS.has(key)).length === 1, { error: (issue) => describeHookInput(issue.input) }),
215
- ], { error: (issue) => describeHookInput(issue.input) });
216
- /** @see HookSpec */
217
- export const hookSpecSchema = z.union([hookSchema, z.array(hookSchema)], {
218
- error: (issue) => Array.isArray(issue.input)
219
- ? "every entry must be a { script } or { rubric } entry"
220
- : describeHookInput(issue.input),
221
- });
146
+ /** @see MachineState.script — the file a code state runs. */
147
+ export const codeScriptPathSchema = z
148
+ .string({ error: "must be a workflow-relative path string (e.g. 'scripts/check-refund.js')" })
149
+ .refine(isConfinedCodeScript, "must be a workflow-relative path inside 'scripts/' ending in .js or .mjs, with no '..' " +
150
+ "segment (e.g. 'scripts/check-refund.js'). Scripts the agent runs with archmax_run live in " +
151
+ "a skill bundle instead.");
222
152
  // --- States --------------------------------------------------------------------
223
153
  /** @see TransitionType */
224
154
  export const transitionTypeSchema = z.enum(["approve", "reject", "refine", "none"], {
@@ -230,10 +160,14 @@ export const transitionTypeSchema = z.enum(["approve", "reject", "refine", "none
230
160
  * **undescribed** edge (absent, empty or blank) — the target state's own
231
161
  * `instructions`, which the edge then discloses in its place. An edge with
232
162
  * neither hands the agent a bare slug and asks it to route: an unnavigable graph,
233
- * which is worse to warn about than to refuse, so {@link refineSpec} refuses it,
234
- * and refuses an undescribed transition of a human state, where the description
235
- * is the person's button label. A non-string is a typo and refused here. The
236
- * issue path (`states.<slug>.transitions.<index>.description`) names the edge.
163
+ * which is worse to warn about than to refuse, so {@link refineSpec} refuses it.
164
+ * It refuses an undescribed transition of a human state, where the description
165
+ * is the person's button label, and an undescribed edge into a grader or a code
166
+ * state: a grader's instructions are its criteria, which the work it judges is
167
+ * never shown, and a code state has none. A code state's own edges are exempt —
168
+ * its script routes, and nothing reads their descriptions. A non-string is a
169
+ * typo and refused here. The issue path
170
+ * (`states.<slug>.transitions.<index>.description`) names the edge.
237
171
  */
238
172
  const TRANSITION_DESCRIPTION = `must be a string: what the agent routes on when it considers this edge. Say when to take it ` +
239
173
  `(e.g. 'Refunds over $50'), not where it goes — or omit it to route on the target state's ` +
@@ -244,6 +178,15 @@ function undescribedEdgeMessage(target) {
244
178
  `none, on the target state's instructions — and '${target}' declares none. Say when to take ` +
245
179
  `this edge (e.g. 'Refunds over $50'), or give '${target}' instructions.`);
246
180
  }
181
+ /** An undescribed edge into an automated state: there are no instructions the agent may be shown. */
182
+ function undescribedAutomatedEdgeMessage(target, type) {
183
+ const why = type === "grader"
184
+ ? `'${target}' is a grader, whose instructions are its criteria and never shown to the work it judges`
185
+ : `'${target}' is a code state, which has none`;
186
+ return (`must be a non-empty string here: the agent routes on an edge's description, or, when it has ` +
187
+ `none, on the target state's instructions — and ${why}. Say when to take this edge ` +
188
+ `(e.g. 'The reply is drafted').`);
189
+ }
247
190
  /** An undescribed transition on a human state: the decision's button has no label. */
248
191
  const HUMAN_TRANSITION_DESCRIPTION = `must be a non-empty string on a human state's transition: it is the label of the decision's ` +
249
192
  `button for the person deciding, and a target's instructions do not tell them what choosing it ` +
@@ -268,12 +211,6 @@ export const stateBudgetSchema = z
268
211
  maxParks: positiveInt.optional(),
269
212
  })
270
213
  .strict();
271
- /** @see WorkflowBudget */
272
- export const workflowBudgetSchema = z
273
- .object({
274
- maxModelCalls: positiveInt.optional(),
275
- })
276
- .strict();
277
214
  /** @see AllowEntry */
278
215
  export const allowEntrySchema = z.union([
279
216
  z.string(),
@@ -358,8 +295,8 @@ export const mountsBlockSchema = z
358
295
  })
359
296
  .strict();
360
297
  /** @see StateType */
361
- export const stateTypeSchema = z.enum(["agent", "human"], {
362
- error: (issue) => `unknown state type '${String(issue.input)}' (expected 'agent' or 'human')`,
298
+ export const stateTypeSchema = z.enum(["agent", "human", "grader", "code"], {
299
+ error: (issue) => `unknown state type '${String(issue.input)}' (expected 'agent', 'human', 'grader' or 'code')`,
363
300
  });
364
301
  // --- Triggers ------------------------------------------------------------------
365
302
  /** The keys a signature entry object may carry, as a refusal lists them. */
@@ -542,8 +479,7 @@ export const machineStateSchema = z
542
479
  evidence: z.array(z.string()).optional(),
543
480
  approvers: z.array(z.string()).optional(),
544
481
  triggers: stateTriggersSchema.optional(),
545
- before: hookSpecSchema.optional(),
546
- after: hookSpecSchema.optional(),
482
+ script: codeScriptPathSchema.optional(),
547
483
  budget: stateBudgetSchema.optional(),
548
484
  model: modelId.optional(),
549
485
  on_error: nonEmptyString.optional(),
@@ -656,10 +592,6 @@ export const runtimeMetadataSchema = z
656
592
  version: z.union([z.string(), z.number()]).optional(),
657
593
  })
658
594
  .strict();
659
- /** @see SpecExtensions */
660
- export const specExtensionsSchema = z
661
- .object({ hooks: z.array(z.string()).optional() })
662
- .strict();
663
595
  /** The whole of `workflow.yaml`. @see MachineSpec */
664
596
  export const machineSpecSchema = z
665
597
  .object({
@@ -673,13 +605,11 @@ export const machineSpecSchema = z
673
605
  })
674
606
  .optional(),
675
607
  runtime: runtimeMetadataSchema.optional(),
676
- budget: workflowBudgetSchema.optional(),
677
608
  settings: machineSettingsSchema.optional(),
678
609
  tools: workflowToolsConfigSchema.optional(),
679
610
  skills: workflowSkillsConfigSchema.optional(),
680
611
  mounts: workflowMountsConfigSchema.optional(),
681
612
  tests: workflowTestsConfigSchema.optional(),
682
- extensions: specExtensionsSchema.optional(),
683
613
  metadata: specMetadataSchema.optional(),
684
614
  states: z.record(z.string(), authoredStateSchema, {
685
615
  error: "Machine spec is missing or has empty 'states'",
@@ -745,23 +675,32 @@ export function refineSpec(spec) {
745
675
  issue(`${at}.transitions.${index}.to`, `State '${slug}' transitions to undefined state '${transition.to}'`);
746
676
  return;
747
677
  }
748
- if (!isUndescribed(transition))
678
+ // A code state's script routes: nothing reads its edges' descriptions.
679
+ if (!isUndescribed(transition) || state.type === "code")
749
680
  return;
681
+ const target = states[transition.to];
750
682
  if (state.type === "human") {
751
683
  issue(`${at}.transitions.${index}.description`, HUMAN_TRANSITION_DESCRIPTION);
752
684
  }
753
- else if (!states[transition.to]?.instructions?.trim()) {
685
+ else if (target?.type === "grader" || target?.type === "code") {
686
+ issue(`${at}.transitions.${index}.description`, undescribedAutomatedEdgeMessage(transition.to, target.type));
687
+ }
688
+ else if (!target?.instructions?.trim()) {
754
689
  issue(`${at}.transitions.${index}.description`, undescribedEdgeMessage(transition.to));
755
690
  }
756
691
  });
757
692
  if (state.on_error !== undefined && !(state.on_error in states)) {
758
693
  issue(`${at}.on_error`, `State '${slug}' on_error routes to undefined state '${state.on_error}'`);
759
694
  }
760
- // Before hooks gate entry with ok/veto only — there is no retry loop for an
761
- // iteration budget to bound, so the sidecar would enforce nothing.
762
- if (normalizeHooks(state.before).some((hook) => "max_iterations" in hook)) {
763
- issue(`${at}.before`, `State '${slug}' 'before' hook declares 'max_iterations', but before hooks are ok/veto ` +
764
- `only ('correct' is treated as a veto); the budget applies to 'after' hooks`);
695
+ // A code state *is* its script: without one there is nothing to run, and a
696
+ // script anywhere else would be read by nothing.
697
+ if (state.type === "code" && state.script === undefined) {
698
+ issue(`${at}.script`, `Code state '${slug}' declares no 'script': a code state runs the file it names ` +
699
+ `(e.g. 'script: scripts/${slug}.js'), and without one it has nothing to run.`);
700
+ }
701
+ if (state.type !== "code" && state.script !== undefined) {
702
+ issue(`${at}.script`, `State '${slug}' declares 'script', which only a code state runs; this state is ` +
703
+ `type '${state.type ?? "agent"}'. Declare 'type: code' to run the script, or drop the key.`);
765
704
  }
766
705
  for (const [index, entry] of (state.tools?.allow ?? []).entries()) {
767
706
  for (const message of guardReferenceIssues(`State '${slug}'`, entry)) {
@@ -1 +1 @@
1
- {"version":3,"file":"spec-schema.js","sourceRoot":"","sources":["../../src/machine/spec-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spec-schema.js","sourceRoot":"","sources":["../../src/machine/spec-schema.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,8 @@ export declare const RUN_TOOL = "archmax_run";
24
24
  export declare const GET_VARIABLES_TOOL = "archmax_get_variables";
25
25
  /** Create, update, and lock the run's variables. */
26
26
  export declare const SET_VARIABLES_TOOL = "archmax_set_variables";
27
+ /** Read the session's history: its whole transcript and its trail. A grader state's tool. */
28
+ export declare const GET_HISTORY_TOOL = "archmax_get_history";
27
29
  /**
28
30
  * The runtime's own file operations, beside Deep Agents' built-ins and named
29
31
  * like them (they act on the workspace, not on the run). Each works on one file
@@ -68,24 +70,26 @@ export declare function isWorkflowToolName(name: string): boolean;
68
70
  * Reserved-prefixed so no host tool can claim the name.
69
71
  */
70
72
  export declare const NOTE_TOOL = "archmax_note";
71
- /**
72
- * The host function behind a hook's `toolCalls`, handed to the hooks' own
73
- * sandbox only and hidden from their `tools`. **Not a tool** the agent can see
74
- * or call; reserved-prefixed so no host tool can claim the name.
75
- */
76
- export declare const TOOL_CALLS_QUERY = "archmax_tool_calls";
77
73
  /** Every harness-owned control tool, by canonical name. */
78
74
  export declare const HARNESS_CONTROL_TOOLS: ReadonlySet<string>;
79
75
  /** Whether a name is reserved for harness-owned controls. */
80
76
  export declare function isReservedToolName(name: string): boolean;
81
77
  /**
82
- * Tools permitted in every state regardless of its `tools` governance: the
83
- * runtime's own controls. `archmax_advance`'s target is still checked against the
78
+ * The controls an **agent** or **human** state is offered regardless of its
79
+ * `tools` governance. `archmax_advance`'s target is still checked against the
84
80
  * state's `transitions`, and a variable write is decided by whether the target
85
81
  * is locked. `tools.forbid_always` (or a state's `tools.forbid`) can still block
86
82
  * any of them.
87
83
  */
88
84
  export declare const ALWAYS_ALLOWED_TOOLS: ReadonlySet<string>;
85
+ /**
86
+ * The controls an **automated** state (a grader or a code state) is offered: it
87
+ * moves (`archmax_advance`), fails (`archmax_raise`), keeps the session's
88
+ * variables, and reads the session it checks (`archmax_get_history`). It never
89
+ * parks — a script frame is not durable, and a grader judges rather than waits —
90
+ * and never resets, so `archmax_wait` and `archmax_reset` are not among them.
91
+ */
92
+ export declare const AUTOMATED_STATE_CONTROL_TOOLS: ReadonlySet<string>;
89
93
  /**
90
94
  * The default tools: the workflow-wide grant of a workflow that does not declare
91
95
  * `tools.allow_always` — the file tools (the runtime's file operations among
@@ -97,15 +101,29 @@ export declare const ALWAYS_ALLOWED_TOOLS: ReadonlySet<string>;
97
101
  */
98
102
  export declare const DEFAULT_TOOLS: ReadonlySet<string>;
99
103
  /**
100
- * The framework's subagent-dispatch tool, which the runtime uses only to
101
- * dispatch its own grading rubrics.
104
+ * The always-on tools an **automated** state (a grader or a code state) is never
105
+ * offered, whatever its grants: the planning scratchpad, which only a model's
106
+ * own loop reads back, and the two sandbox entry points — a code state *is* a
107
+ * script, and a grader judges rather than computes. A `tools.allow` entry naming
108
+ * one in such a state is a `validate` error.
109
+ */
110
+ export declare const AGENT_ONLY_TOOLS: ReadonlySet<string>;
111
+ /**
112
+ * Every tool an automated state is never offered, whatever its own or the
113
+ * workflow-wide grant names: the agent-only tools, and parking and resetting —
114
+ * an automated state cannot park, and a reset is the agent's way back. The one
115
+ * set the machine filters a grant by and `validate` reports a grant against.
116
+ */
117
+ export declare const NOT_OFFERED_TO_AUTOMATED: ReadonlySet<string>;
118
+ /**
119
+ * Deep Agents' subagent-dispatch tool, which Deep Agents registers whatever the
120
+ * assembly passes (it always builds its general-purpose subagent).
102
121
  *
103
- * It is never disclosed and never grantable. A rubric grades the agent rather
104
- * than serving it, so the agent has no use for the tool: naming it in a
105
- * `tools.allow` or `tools.allow_always` entry is a `validate` error, and the
106
- * kernel refuses an agent-initiated call in every state. Registered rubrics make
107
- * the tool *exist* in the assembled tool list — the runtime needs a runnable —
108
- * so withholding it is enforced rather than incidental.
122
+ * It is never grantable: grading is a grader state and delegating work is a
123
+ * sub-workflow, so no state has a use for it. Naming it in a `tools.allow` or
124
+ * `tools.allow_always` entry is a `validate` error, and the kernel refuses a
125
+ * call to it in every state, whatever an entry discloses — withholding it is
126
+ * enforced rather than incidental.
109
127
  */
110
128
  export declare const UNGRANTABLE_TOOLS: ReadonlySet<string>;
111
129
  /**
@@ -24,6 +24,8 @@ export const RUN_TOOL = "archmax_run";
24
24
  export const GET_VARIABLES_TOOL = "archmax_get_variables";
25
25
  /** Create, update, and lock the run's variables. */
26
26
  export const SET_VARIABLES_TOOL = "archmax_set_variables";
27
+ /** Read the session's history: its whole transcript and its trail. A grader state's tool. */
28
+ export const GET_HISTORY_TOOL = "archmax_get_history";
27
29
  /**
28
30
  * The runtime's own file operations, beside Deep Agents' built-ins and named
29
31
  * like them (they act on the workspace, not on the run). Each works on one file
@@ -76,12 +78,6 @@ export function isWorkflowToolName(name) {
76
78
  * Reserved-prefixed so no host tool can claim the name.
77
79
  */
78
80
  export const NOTE_TOOL = "archmax_note";
79
- /**
80
- * The host function behind a hook's `toolCalls`, handed to the hooks' own
81
- * sandbox only and hidden from their `tools`. **Not a tool** the agent can see
82
- * or call; reserved-prefixed so no host tool can claim the name.
83
- */
84
- export const TOOL_CALLS_QUERY = "archmax_tool_calls";
85
81
  /** Every harness-owned control tool, by canonical name. */
86
82
  export const HARNESS_CONTROL_TOOLS = new Set([
87
83
  ADVANCE_TOOL,
@@ -92,14 +88,15 @@ export const HARNESS_CONTROL_TOOLS = new Set([
92
88
  RUN_TOOL,
93
89
  GET_VARIABLES_TOOL,
94
90
  SET_VARIABLES_TOOL,
91
+ GET_HISTORY_TOOL,
95
92
  ]);
96
93
  /** Whether a name is reserved for harness-owned controls. */
97
94
  export function isReservedToolName(name) {
98
95
  return name.startsWith(ARCHMAX_TOOL_PREFIX);
99
96
  }
100
97
  /**
101
- * Tools permitted in every state regardless of its `tools` governance: the
102
- * runtime's own controls. `archmax_advance`'s target is still checked against the
98
+ * The controls an **agent** or **human** state is offered regardless of its
99
+ * `tools` governance. `archmax_advance`'s target is still checked against the
103
100
  * state's `transitions`, and a variable write is decided by whether the target
104
101
  * is locked. `tools.forbid_always` (or a state's `tools.forbid`) can still block
105
102
  * any of them.
@@ -112,6 +109,20 @@ export const ALWAYS_ALLOWED_TOOLS = new Set([
112
109
  GET_VARIABLES_TOOL,
113
110
  SET_VARIABLES_TOOL,
114
111
  ]);
112
+ /**
113
+ * The controls an **automated** state (a grader or a code state) is offered: it
114
+ * moves (`archmax_advance`), fails (`archmax_raise`), keeps the session's
115
+ * variables, and reads the session it checks (`archmax_get_history`). It never
116
+ * parks — a script frame is not durable, and a grader judges rather than waits —
117
+ * and never resets, so `archmax_wait` and `archmax_reset` are not among them.
118
+ */
119
+ export const AUTOMATED_STATE_CONTROL_TOOLS = new Set([
120
+ ADVANCE_TOOL,
121
+ RAISE_TOOL,
122
+ GET_VARIABLES_TOOL,
123
+ SET_VARIABLES_TOOL,
124
+ GET_HISTORY_TOOL,
125
+ ]);
115
126
  /**
116
127
  * The default tools: the workflow-wide grant of a workflow that does not declare
117
128
  * `tools.allow_always` — the file tools (the runtime's file operations among
@@ -136,15 +147,29 @@ export const DEFAULT_TOOLS = new Set([
136
147
  RUN_TOOL,
137
148
  ]);
138
149
  /**
139
- * The framework's subagent-dispatch tool, which the runtime uses only to
140
- * dispatch its own grading rubrics.
150
+ * The always-on tools an **automated** state (a grader or a code state) is never
151
+ * offered, whatever its grants: the planning scratchpad, which only a model's
152
+ * own loop reads back, and the two sandbox entry points — a code state *is* a
153
+ * script, and a grader judges rather than computes. A `tools.allow` entry naming
154
+ * one in such a state is a `validate` error.
155
+ */
156
+ export const AGENT_ONLY_TOOLS = new Set([TODO_TOOL, EVAL_TOOL, RUN_TOOL]);
157
+ /**
158
+ * Every tool an automated state is never offered, whatever its own or the
159
+ * workflow-wide grant names: the agent-only tools, and parking and resetting —
160
+ * an automated state cannot park, and a reset is the agent's way back. The one
161
+ * set the machine filters a grant by and `validate` reports a grant against.
162
+ */
163
+ export const NOT_OFFERED_TO_AUTOMATED = new Set([...AGENT_ONLY_TOOLS, WAIT_TOOL, RESET_TOOL]);
164
+ /**
165
+ * Deep Agents' subagent-dispatch tool, which Deep Agents registers whatever the
166
+ * assembly passes (it always builds its general-purpose subagent).
141
167
  *
142
- * It is never disclosed and never grantable. A rubric grades the agent rather
143
- * than serving it, so the agent has no use for the tool: naming it in a
144
- * `tools.allow` or `tools.allow_always` entry is a `validate` error, and the
145
- * kernel refuses an agent-initiated call in every state. Registered rubrics make
146
- * the tool *exist* in the assembled tool list — the runtime needs a runnable —
147
- * so withholding it is enforced rather than incidental.
168
+ * It is never grantable: grading is a grader state and delegating work is a
169
+ * sub-workflow, so no state has a use for it. Naming it in a `tools.allow` or
170
+ * `tools.allow_always` entry is a `validate` error, and the kernel refuses a
171
+ * call to it in every state, whatever an entry discloses — withholding it is
172
+ * enforced rather than incidental.
148
173
  */
149
174
  export const UNGRANTABLE_TOOLS = new Set(["task"]);
150
175
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"tool-names.js","sourceRoot":"","sources":["../../src/machine/tool-names.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-names.js","sourceRoot":"","sources":["../../src/machine/tool-names.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,gFAAgF;AAChF,MAAM,CAAC,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAE9C,0EAA0E;AAC1E,MAAM,CAAC,MAAM,YAAY,GAAG,iBAAiB,CAAC;AAC9C,qDAAqD;AACrD,MAAM,CAAC,MAAM,UAAU,GAAG,eAAe,CAAC;AAC1C,iFAAiF;AACjF,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC;AACxC,6EAA6E;AAC7E,MAAM,CAAC,MAAM,UAAU,GAAG,eAAe,CAAC;AAC1C,wFAAwF;AACxF,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC;AACxC,gEAAgE;AAChE,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,CAAC;AACtC,gCAAgC;AAChC,MAAM,CAAC,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAC1D,oDAAoD;AACpD,MAAM,CAAC,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAC1D,6FAA6F;AAC7F,MAAM,CAAC,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC;AAC1C,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC;AAC1C,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAE9C,uFAAuF;AACvF,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,CAAC;AAEvC,+EAA+E;AAC/E,MAAM,CAAC,MAAM,kBAAkB,GAAwB,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAEnH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AAExD,gEAAgE;AAChE,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,GAAG,oBAAoB,GAAG,IAAI,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;QAC1C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC;QACzC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC;AAExC,2DAA2D;AAC3D,MAAM,CAAC,MAAM,qBAAqB,GAAwB,IAAI,GAAG,CAAC;IAChE,YAAY;IACZ,UAAU;IACV,SAAS;IACT,UAAU;IACV,SAAS;IACT,QAAQ;IACR,kBAAkB;IAClB,kBAAkB;IAClB,gBAAgB;CACjB,CAAC,CAAC;AAEH,6DAA6D;AAC7D,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAwB,IAAI,GAAG,CAAC;IAC/D,YAAY;IACZ,UAAU;IACV,SAAS;IACT,UAAU;IACV,kBAAkB;IAClB,kBAAkB;CACnB,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAwB,IAAI,GAAG,CAAC;IACxE,YAAY;IACZ,UAAU;IACV,kBAAkB;IAClB,kBAAkB;IAClB,gBAAgB;CACjB,CAAC,CAAC;AAEH;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAwB,IAAI,GAAG,CAAC;IACxD,IAAI;IACJ,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,cAAc;IACd,gBAAgB;IAChB,MAAM;IACN,MAAM;IACN,SAAS;IACT,SAAS;IACT,QAAQ;CACT,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAwB,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;AAE/F;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAwB,IAAI,GAAG,CAAC,CAAC,GAAG,gBAAgB,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;AAEnH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAwB,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAExE;;;GAGG;AACH,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAEnC;IAEA;IAHX,YACW,KAAe;IACxB,kGAAkG;IACzF,cAA2C,QAAQ;QAE5D,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrD,KAAK,CACH,WAAW,KAAK,QAAQ;YACtB,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB;gBACvE,IAAI,mBAAmB,yDAAyD;gBAChF,UAAU,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG;YACpC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,iCAAiC;gBACzF,iBAAiB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,kBAAkB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB;gBACvF,2BAA2B,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,CAC1F,CAAC;QAdO,UAAK,GAAL,KAAK,CAAU;QAEf,gBAAW,GAAX,WAAW,CAAwC;QAa5D,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAgD;IACxF,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC;IAChH,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IACjD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACvE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,qBAAqB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;AACzF,CAAC"}