@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
@@ -5,8 +5,8 @@
5
5
  * dies between two of them sees a parked session rather than a lost one:
6
6
  *
7
7
  * 1. **Commit.** The record is written — by the tool seam (`archmax_advance`
8
- * into a human state, `archmax_wait`, a delegated child's suspension) or by a
9
- * hook — with `parkPhase: "closing"`.
8
+ * into a human state, `archmax_wait`, a delegated child's suspension) or by
9
+ * an automated state's move into a human state — with `parkPhase: "closing"`.
10
10
  * 2. **Close.** The run owes the person one message and may take no action:
11
11
  * `servePark` sets `replyOnly` and moves the phase to `suspend`; the model
12
12
  * speaks (any tool call it makes is refused); the hook after it marks the
@@ -21,12 +21,11 @@
21
21
  */
22
22
  import { HumanMessage } from "@langchain/core/messages";
23
23
  import { interrupt, isGraphInterrupt } from "@langchain/langgraph";
24
- import { contentToString, isAiMessage, isHumanMessage, isRuntimeNote, lastMessageIsHuman, runtimeNote, } from "../core/messages.js";
24
+ import { contentToString, isAiMessage, isHumanMessage, isRuntimeNote, lastMessageIsHuman, runtimeNote, runtimeNoteKind, } from "../core/messages.js";
25
25
  import { isMessageResume } from "../sessions/resume.js";
26
26
  import { normalizeTitle, TITLE_VARIABLE, titleWriteError, TRIGGER_VARIABLE, } from "../machine/variables.js";
27
27
  import { currentWorkflowState, isReplyOnly, NO_PENDING_FAILURE, parkedStateOf, pendingParkOf, readWorkflowState, WORKFLOW_STATUSES, isDecisionPark, } from "./state.js";
28
28
  import { SubWorkflowError, subWorkflowParkOf } from "./sub-workflow.js";
29
- import { messagesIn, visitStart } from "./visits.js";
30
29
  // --- Records ------------------------------------------------------------------
31
30
  /**
32
31
  * The pending-decision record for a human state: its declared transitions and
@@ -84,8 +83,9 @@ function isPersonsMessage(message) {
84
83
  }
85
84
  /**
86
85
  * What a reply-only turn is told. Four shapes of park reach this — handing the
87
- * run to a person, being routed to one by a decision, waiting for something
88
- * from outside, and answering someone while a person decides — each with its
86
+ * run to a person, being routed to one (by a decision or an automated state),
87
+ * waiting for something from outside, and answering someone while a person
88
+ * decides — each with its
89
89
  * own first sentence. The last paragraph is the same in all: it is what stands
90
90
  * between a parked run and a model that would rather keep working.
91
91
  */
@@ -109,8 +109,11 @@ export function replyOnlyDirective(machine, state) {
109
109
  `talking to what you have done and what you are waiting for.`;
110
110
  }
111
111
  else if (isRuntimeNote(last)) {
112
+ // A person's decision, or one of the workflow's own automated states, moved the run here.
113
+ const kind = runtimeNoteKind(last);
114
+ const mover = kind === "grader" || kind === "code" ? "The workflow's own check" : "A decision";
112
115
  opening =
113
- `A decision has routed this run to ${stateLabel(machine, position)}, which is now ` +
116
+ `${mover} has routed this run to ${stateLabel(machine, position)}, which is now ` +
114
117
  `waiting for a person's decision. Tell whoever you are talking to where the run stands ` +
115
118
  `and that it is with a reviewer — do not promise what they will decide.`;
116
119
  }
@@ -133,8 +136,12 @@ function lastReplyCallsTools(messages) {
133
136
  const last = messages[messages.length - 1];
134
137
  return last !== undefined && isAiMessage(last) && Array.isArray(last.tool_calls) && last.tool_calls.length > 0;
135
138
  }
136
- /** The update that starts a closing turn: one reply-only model call, after which the next hook site suspends. */
137
- function closingTurn() {
139
+ /**
140
+ * The update that starts a closing turn: one reply-only model call, after which
141
+ * the next hook site suspends. Applied directly where the park opens on a jump
142
+ * to the model, which skips the `beforeModel` site that would otherwise start it.
143
+ */
144
+ export function closingTurn() {
138
145
  return { parkPhase: "suspend", replyOnly: true };
139
146
  }
140
147
  /**
@@ -330,7 +337,6 @@ function applyDecision(ctx, state, runtime, decision, site) {
330
337
  stateTurns: null,
331
338
  ...NO_PENDING_FAILURE,
332
339
  auditTrail: [humanStep],
333
- visits: visitStart(target, messagesIn(state)),
334
340
  ...continueToModel(site),
335
341
  };
336
342
  // Routed straight into another human state: present it. The run owes the person
@@ -1 +1 @@
1
- {"version":3,"file":"parks.js","sourceRoot":"","sources":["../../src/workflow/parks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parks.js","sourceRoot":"","sources":["../../src/workflow/parks.ts"],"names":[],"mappings":"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"}
@@ -14,18 +14,18 @@ export declare function workflowPaths(workflow: string): {
14
14
  /** Optional prose addendum, appended after the spec-rendered prompt section. Never a machine source. */
15
15
  workflow: string;
16
16
  testsDir: string;
17
- /** Lifecycle hook scripts: the runtime's code, which the agent can neither read nor execute. */
18
- hooksDir: string;
17
+ /** Code-state scripts: the workflow's own code, which the agent can neither read nor execute. */
18
+ scriptsDir: string;
19
19
  };
20
- /** Where a hook script must live, relative to its workflow directory. */
21
- export declare const HOOKS_DIR = "hooks";
20
+ /** Where a code state's script must live, relative to its workflow directory. */
21
+ export declare const SCRIPTS_DIR = "scripts";
22
22
  /**
23
- * Resolve a hook's declared `script:` to an authoring-backend path. A hook path
24
- * is workflow-relative and confined to the workflow's own `hooks/`; anything
25
- * leaving it is refused with a reason. This keeps the two script classes
26
- * disjoint: a hook can never be an `archmax_run` target.
23
+ * Resolve a code state's declared `script:` to an authoring-backend path. The
24
+ * path is workflow-relative and confined to the workflow's own `scripts/`;
25
+ * anything leaving it is refused with a reason. This keeps the two script
26
+ * classes disjoint: a code state's script can never be an `archmax_run` target.
27
27
  */
28
- export declare function resolveHookScript(workflow: string, declared: string): {
28
+ export declare function resolveCodeScript(workflow: string, declared: string): {
29
29
  ok: true;
30
30
  path: string;
31
31
  } | {
@@ -17,50 +17,50 @@ export function workflowPaths(workflow) {
17
17
  /** Optional prose addendum, appended after the spec-rendered prompt section. Never a machine source. */
18
18
  workflow: `${base}/WORKFLOW.md`,
19
19
  testsDir: `${base}/tests`,
20
- /** Lifecycle hook scripts: the runtime's code, which the agent can neither read nor execute. */
21
- hooksDir: `${base}/hooks`,
20
+ /** Code-state scripts: the workflow's own code, which the agent can neither read nor execute. */
21
+ scriptsDir: `${base}/scripts`,
22
22
  };
23
23
  }
24
- /** Where a hook script must live, relative to its workflow directory. */
25
- export const HOOKS_DIR = "hooks";
24
+ /** Where a code state's script must live, relative to its workflow directory. */
25
+ export const SCRIPTS_DIR = "scripts";
26
26
  /**
27
- * Resolve a hook's declared `script:` to an authoring-backend path. A hook path
28
- * is workflow-relative and confined to the workflow's own `hooks/`; anything
29
- * leaving it is refused with a reason. This keeps the two script classes
30
- * disjoint: a hook can never be an `archmax_run` target.
27
+ * Resolve a code state's declared `script:` to an authoring-backend path. The
28
+ * path is workflow-relative and confined to the workflow's own `scripts/`;
29
+ * anything leaving it is refused with a reason. This keeps the two script
30
+ * classes disjoint: a code state's script can never be an `archmax_run` target.
31
31
  */
32
- export function resolveHookScript(workflow, declared) {
32
+ export function resolveCodeScript(workflow, declared) {
33
33
  const raw = declared.trim();
34
34
  if (raw === "")
35
- return { ok: false, reason: "hook script path is empty" };
35
+ return { ok: false, reason: "the code state's script path is empty" };
36
36
  if (raw.startsWith("/")) {
37
37
  return {
38
38
  ok: false,
39
- reason: `hook script '${declared}' is an absolute path; a hook script path is relative to its ` +
40
- `workflow directory (e.g. '${HOOKS_DIR}/check.js')`,
39
+ reason: `script '${declared}' is an absolute path; a code state's script path is relative to its ` +
40
+ `workflow directory (e.g. '${SCRIPTS_DIR}/check.js')`,
41
41
  };
42
42
  }
43
43
  const segments = [];
44
44
  for (const segment of raw.split("/")) {
45
45
  if (segment === "" || segment === ".")
46
46
  continue;
47
- // A `..` climb that leaves `hooks/` is caught by the prefix check below.
47
+ // A `..` climb that leaves `scripts/` is caught by the prefix check below.
48
48
  if (segment === "..")
49
49
  segments.pop();
50
50
  else
51
51
  segments.push(segment);
52
52
  }
53
53
  const rel = segments.join("/");
54
- if (rel !== HOOKS_DIR && !rel.startsWith(`${HOOKS_DIR}/`)) {
54
+ if (rel !== SCRIPTS_DIR && !rel.startsWith(`${SCRIPTS_DIR}/`)) {
55
55
  return {
56
56
  ok: false,
57
- reason: `hook script '${declared}' resolves outside '${HOOKS_DIR}/'; hook scripts live in ` +
58
- `'workflows/${workflow}/${HOOKS_DIR}/' and are wired workflow-relative ` +
59
- `(e.g. '${HOOKS_DIR}/check.js').`,
57
+ reason: `script '${declared}' resolves outside '${SCRIPTS_DIR}/'; a code state's script lives in ` +
58
+ `'workflows/${workflow}/${SCRIPTS_DIR}/' and is named workflow-relative ` +
59
+ `(e.g. '${SCRIPTS_DIR}/check.js').`,
60
60
  };
61
61
  }
62
- if (rel === HOOKS_DIR) {
63
- return { ok: false, reason: `hook script '${declared}' names the '${HOOKS_DIR}/' directory, not a file` };
62
+ if (rel === SCRIPTS_DIR) {
63
+ return { ok: false, reason: `script '${declared}' names the '${SCRIPTS_DIR}/' directory, not a file` };
64
64
  }
65
65
  return { ok: true, path: `workflows/${workflow}/${rel}` };
66
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/workflow/paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/workflow/paths.ts"],"names":[],"mappings":"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"}
@@ -11,16 +11,18 @@
11
11
  * function of the header alone, so the prefix does not grow with the state
12
12
  * count. Authored `WORKFLOW.md` prose is appended after it by the caller.
13
13
  * - {@link renderStateGraph} is the **volatile** half, re-rendered per model
14
- * call for the state in force: its outgoing edges, its own markers and hooks,
15
- * and the run's trigger signature.
14
+ * call for the state in force: its outgoing edges with their markers, and
15
+ * the run's trigger signature.
16
16
  *
17
- * No other state's slug, `title`, `summary`, hooks, budget or transitions is
17
+ * No other state's slug, `title`, `summary`, budget or transitions is
18
18
  * rendered anywhere, and neither is a count of the states: a state the agent
19
19
  * cannot advance to is a state it cannot name. A state's `instructions` body is
20
20
  * surfaced for the active state, by the caller, and — quoted, for choosing — for
21
21
  * the target of an undescribed edge of the active state, by this renderer.
22
22
  */
23
23
  import type { WorkflowMachine } from "../machine/machine.js";
24
+ /** The lines of `state`'s outgoing edges, one per transition, as the graph section and a grader's task render them. */
25
+ export declare function renderTransitions(machine: WorkflowMachine, state: string): string[];
24
26
  /** What {@link renderStateGraph} needs about the run, beyond the state it is in. */
25
27
  export interface StateGraphContext {
26
28
  /** The id of the trigger this session was started by, when one is recorded. */
@@ -29,8 +31,8 @@ export interface StateGraphContext {
29
31
  child?: boolean;
30
32
  }
31
33
  /**
32
- * The active state's half of the graph: its hooks, the run's trigger signature,
33
- * and either its outgoing edges or the statement that it has none.
34
+ * The active state's half of the graph: the run's trigger signature, and either
35
+ * its outgoing edges or the statement that it has none.
34
36
  *
35
37
  * Terminality is stated rather than left to be inferred from an absent list —
36
38
  * the old whole-graph section taught "a state listed with no transitions is
@@ -11,33 +11,34 @@
11
11
  * function of the header alone, so the prefix does not grow with the state
12
12
  * count. Authored `WORKFLOW.md` prose is appended after it by the caller.
13
13
  * - {@link renderStateGraph} is the **volatile** half, re-rendered per model
14
- * call for the state in force: its outgoing edges, its own markers and hooks,
15
- * and the run's trigger signature.
14
+ * call for the state in force: its outgoing edges with their markers, and
15
+ * the run's trigger signature.
16
16
  *
17
- * No other state's slug, `title`, `summary`, hooks, budget or transitions is
17
+ * No other state's slug, `title`, `summary`, budget or transitions is
18
18
  * rendered anywhere, and neither is a count of the states: a state the agent
19
19
  * cannot advance to is a state it cannot name. A state's `instructions` body is
20
20
  * surfaced for the active state, by the caller, and — quoted, for choosing — for
21
21
  * the target of an undescribed edge of the active state, by this renderer.
22
22
  */
23
- import { afterHookLabel, hookKind, normalizeHooks } from "../lifecycle/hook-shape.js";
24
23
  import { ADVANCE_TOOL, SET_VARIABLES_TOOL } from "../machine/tool-names.js";
25
24
  /**
26
25
  * One outgoing edge: the target's slug (the exact token `archmax_advance` takes),
27
26
  * its declared `type`, and the `description` the agent routes on.
28
27
  *
29
- * The two markers a target may carry are disclosed because each changes what the
30
- * call must carry or what follows it — `evidence` is accepted only when the
31
- * target is a human state, and both markers mean *stop* rather than *continue*.
32
- * They disclose the **consequence of taking the edge**, not the state on the
33
- * other side of it: nothing of the target's own title, summary, hooks or
34
- * transitions is rendered.
28
+ * The markers a target may carry are disclosed because each changes what the
29
+ * call must carry or what follows it: `evidence` is accepted only when the
30
+ * target is a human state; a grader or a code state runs on its own and may send
31
+ * the run straight back with a note saying what to change; a human or terminal
32
+ * target means *stop* rather than *continue*. They disclose the **consequence of
33
+ * taking the edge**, not the state on the other side of it: nothing of the
34
+ * target's own title, summary, script or transitions is rendered.
35
35
  *
36
36
  * An **undescribed** edge (no description, or a blank one) is transparent: the
37
37
  * target's `instructions` stand in for the description, quoted under the line
38
38
  * and framed as what the agent will do once there — given for choosing the edge,
39
39
  * not to be followed now. The author opts in per edge by leaving it undescribed;
40
- * the schema refuses one whose target has no instructions to show.
40
+ * the schema refuses one whose target has no instructions to show, and one into
41
+ * a grader state, whose instructions are criteria the graded agent never reads.
41
42
  */
42
43
  function renderTransition(machine, edge) {
43
44
  const notes = [];
@@ -45,6 +46,10 @@ function renderTransition(machine, edge) {
45
46
  notes.push(edge.type);
46
47
  if (machine.isHumanState(edge.to))
47
48
  notes.push("human decision node");
49
+ if (machine.isGraderState(edge.to))
50
+ notes.push("grader");
51
+ if (machine.isCodeState(edge.to))
52
+ notes.push("code");
48
53
  if (machine.isTerminal(edge.to))
49
54
  notes.push("terminal");
50
55
  const suffix = notes.length ? ` (${notes.join(", ")})` : "";
@@ -62,26 +67,9 @@ function renderTransition(machine, edge) {
62
67
  ...(instructions ? quoted : []),
63
68
  ].join("\n");
64
69
  }
65
- /**
66
- * The active state's hooks, by phase. A **rubric** hook renders as its bare kind
67
- * — never the rubric's name, and never any of its declaration.
68
- *
69
- * Presence is disclosed because it is actionable: a graded exit can come back
70
- * with a correction the agent must act on. Identity is withheld because it is
71
- * not: no disclosed tool takes a rubric name, and the name is a handle into
72
- * content the agent may not read. Nothing here can reach the criteria, the
73
- * budget or the model — they live in a block this renderer never reads.
74
- */
75
- function renderHooks(state) {
76
- const parts = [];
77
- for (const phase of ["before", "after"]) {
78
- const hooks = normalizeHooks(state[phase]);
79
- if (hooks.length === 0)
80
- continue;
81
- const labels = hooks.map((hook, index) => hookKind(hook) === "rubric" ? "rubric" : afterHookLabel(hook, index));
82
- parts.push(`${phase}: ${labels.join(", ")}`);
83
- }
84
- return parts.length ? parts.join("; ") : null;
70
+ /** The lines of `state`'s outgoing edges, one per transition, as the graph section and a grader's task render them. */
71
+ export function renderTransitions(machine, state) {
72
+ return (machine.spec.states[state]?.transitions ?? []).map((edge) => renderTransition(machine, edge));
85
73
  }
86
74
  /**
87
75
  * When a return is written. The returns are rendered in every state, so they
@@ -139,8 +127,8 @@ function renderEntry(entry) {
139
127
  return `- ${entry.name}${type}${description}`;
140
128
  }
141
129
  /**
142
- * The active state's half of the graph: its hooks, the run's trigger signature,
143
- * and either its outgoing edges or the statement that it has none.
130
+ * The active state's half of the graph: the run's trigger signature, and either
131
+ * its outgoing edges or the statement that it has none.
144
132
  *
145
133
  * Terminality is stated rather than left to be inferred from an absent list —
146
134
  * the old whole-graph section taught "a state listed with no transitions is
@@ -152,15 +140,12 @@ export function renderStateGraph(machine, state, ctx = {}) {
152
140
  if (!declared)
153
141
  return null;
154
142
  const sections = [];
155
- const hooks = renderHooks(declared);
156
- if (hooks)
157
- sections.push(`Hooks: ${hooks}`);
158
143
  sections.push(...renderSignature(machine, ctx.trigger, ctx.child === true));
159
144
  const transitions = declared.transitions ?? [];
160
145
  sections.push(transitions.length > 0
161
146
  ? [
162
147
  `Transitions — choose one with \`${ADVANCE_TOOL}\` when this state's work is done:`,
163
- ...transitions.map((edge) => renderTransition(machine, edge)),
148
+ ...renderTransitions(machine, state),
164
149
  ].join("\n")
165
150
  : `This state is terminal: no transition leads out of it. Finish its work and stop.`);
166
151
  return sections.length > 0 ? sections.join("\n\n") : null;
@@ -1 +1 @@
1
- {"version":3,"file":"render-prompt.js","sourceRoot":"","sources":["../../src/workflow/render-prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render-prompt.js","sourceRoot":"","sources":["../../src/workflow/render-prompt.ts"],"names":[],"mappings":"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"}
@@ -17,8 +17,8 @@ export type InvalidValueIssue = Extract<SignatureValueIssue, {
17
17
  /**
18
18
  * What the file check asks of the session a `file` value belongs to: what a
19
19
  * path names in its workspace, and why it may not read it on runtime authority
20
- * (the rules that bind a hook — the zone rules and every workflow-wide denial,
21
- * inherited ones included), or `undefined` when it may.
20
+ * (the rules that bind runtime authority — the zone rules and every
21
+ * workflow-wide denial, inherited ones included), or `undefined` when it may.
22
22
  */
23
23
  export interface FileValueCheck {
24
24
  kind(path: string): Promise<"file" | "directory" | "missing">;
@@ -24,43 +24,19 @@ function withoutMetadata(value) {
24
24
  const { metadata: _metadata, ...rest } = value;
25
25
  return rest;
26
26
  }
27
- /**
28
- * Strip `metadata` from every inline rubric in one `before`/`after` field,
29
- * preserving the field's own shape (a single hook stays a single hook).
30
- */
31
- function hooksWithoutMetadata(field) {
32
- const strip = (hook) => {
33
- const declaration = hook?.rubric;
34
- if (!declaration || typeof declaration !== "object" || declaration.metadata === undefined) {
35
- return hook;
36
- }
37
- return { ...hook, rubric: withoutMetadata(declaration) };
38
- };
39
- return Array.isArray(field) ? field.map(strip) : strip(field);
40
- }
41
27
  /**
42
28
  * The spec as a machine: every runtime-inert `metadata` block removed — at the
43
- * root, on each state, and on each rubric inlined in a state's hooks — so a
44
- * canvas edit does not mint a new spec version. Returns the spec itself when
45
- * there is nothing to drop, so specs without the block hash unchanged.
29
+ * root and on each state — so a canvas edit does not mint a new spec version.
30
+ * Returns the spec itself when there is nothing to drop, so specs without the
31
+ * block hash unchanged.
46
32
  */
47
33
  function governingSpec(spec) {
48
- const stateHasMetadata = ([, state]) => state?.metadata !== undefined ||
49
- ["before", "after"].some((phase) => hooksWithoutMetadata(state?.[phase]) !== state?.[phase]);
50
34
  const states = Object.entries(spec.states ?? {});
51
- if (spec.metadata === undefined && !states.some(stateHasMetadata))
35
+ if (spec.metadata === undefined && !states.some(([, state]) => state?.metadata !== undefined))
52
36
  return spec;
53
37
  return {
54
38
  ...withoutMetadata(spec),
55
- states: Object.fromEntries(states.map(([slug, state]) => {
56
- const governed = withoutMetadata(state ?? {});
57
- for (const phase of ["before", "after"]) {
58
- if (governed[phase] === undefined)
59
- continue;
60
- governed[phase] = hooksWithoutMetadata(governed[phase]);
61
- }
62
- return [slug, governed];
63
- })),
39
+ states: Object.fromEntries(states.map(([slug, state]) => [slug, withoutMetadata(state ?? {})])),
64
40
  };
65
41
  }
66
42
  /** A stable content hash of the machine spec, normalized so cosmetic edits do not change it. */
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/workflow/snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/workflow/snapshot.ts"],"names":[],"mappings":"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"}