@duetso/agent 0.1.169 → 0.1.171
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.
- package/dist/package.json +1 -1
- package/dist/src/turn-runner/prompts.d.ts.map +1 -1
- package/dist/src/turn-runner/prompts.js +13 -24
- package/dist/src/turn-runner/prompts.js.map +1 -1
- package/dist/src/turn-runner/state-machine-controller.d.ts +24 -3
- package/dist/src/turn-runner/state-machine-controller.d.ts.map +1 -1
- package/dist/src/turn-runner/state-machine-controller.js +47 -8
- package/dist/src/turn-runner/state-machine-controller.js.map +1 -1
- package/dist/src/turn-runner/state-machine-session.js +1 -1
- package/dist/src/turn-runner/state-machine-session.js.map +1 -1
- package/dist/src/turn-runner/tools.d.ts +2 -0
- package/dist/src/turn-runner/tools.d.ts.map +1 -1
- package/dist/src/turn-runner/tools.js +126 -16
- package/dist/src/turn-runner/tools.js.map +1 -1
- package/dist/src/turn-runner/turn-runner.d.ts +9 -0
- package/dist/src/turn-runner/turn-runner.d.ts.map +1 -1
- package/dist/src/turn-runner/turn-runner.js +61 -36
- package/dist/src/turn-runner/turn-runner.js.map +1 -1
- package/dist/src/types/state-machine.d.ts +16 -3
- package/dist/src/types/state-machine.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { createCodingTools, createLocalBashOperations, } from "@earendil-works/pi-coding-agent";
|
|
2
2
|
import { Ajv } from "ajv";
|
|
3
3
|
import dedent from "dedent";
|
|
4
|
+
import { statSync } from "node:fs";
|
|
5
|
+
import { isAbsolute, resolve } from "node:path";
|
|
4
6
|
import { Type } from "typebox";
|
|
5
7
|
import { Value } from "typebox/value";
|
|
6
8
|
import { toXML } from "../lib/xml.js";
|
|
@@ -83,7 +85,7 @@ const agentOverrideSchema = Type.Partial(Type.Object({
|
|
|
83
85
|
description: "Skill names to inject into this sub-agent. Omit to inject all available skills.",
|
|
84
86
|
}),
|
|
85
87
|
cwd: Type.String({
|
|
86
|
-
description: "Replacement working directory for this sub-agent's coding tools (bash, read, write, edit).",
|
|
88
|
+
description: "Replacement working directory for this sub-agent's coding tools (bash, read, write, edit). Set this whenever the work happens outside the session cwd — a git worktree, clone, or scratch dir a previous state created — instead of telling the sub-agent to `cd` in the prompt; the tools start here, so a path written into the prompt does not redirect them.",
|
|
87
89
|
}),
|
|
88
90
|
inputSchema: Type.Record(Type.String(), Type.Any(), {
|
|
89
91
|
description: 'Replacement valid JSON Schema object for transition input accepted by this state, such as { "type": "object", "properties": { "email": { "type": "string" }, "followUpCount": { "type": "integer" } }, "required": ["email"] }. Fields omitted from required are optional.',
|
|
@@ -91,7 +93,9 @@ const agentOverrideSchema = Type.Partial(Type.Object({
|
|
|
91
93
|
}));
|
|
92
94
|
const scriptOverrideSchema = Type.Partial(Type.Object({
|
|
93
95
|
command: Type.String({ description: "Replacement shell command for this script state." }),
|
|
94
|
-
cwd: Type.String({
|
|
96
|
+
cwd: Type.String({
|
|
97
|
+
description: "Replacement working directory for the command.",
|
|
98
|
+
}),
|
|
95
99
|
timeoutMs: Type.Number({ description: "Replacement command timeout in milliseconds." }),
|
|
96
100
|
successCodes: Type.Array(Type.Number(), {
|
|
97
101
|
description: "Replacement exit codes treated as successful completion.",
|
|
@@ -108,7 +112,9 @@ const pollOverrideSchema = Type.Partial(Type.Object({
|
|
|
108
112
|
command: Type.String({
|
|
109
113
|
description: "Replacement shell command for one poll attempt.",
|
|
110
114
|
}),
|
|
111
|
-
cwd: Type.String({
|
|
115
|
+
cwd: Type.String({
|
|
116
|
+
description: "Replacement working directory for the poll command.",
|
|
117
|
+
}),
|
|
112
118
|
successCodes: Type.Array(Type.Number(), {
|
|
113
119
|
description: "Replacement exit codes that mean this poll attempt found a result.",
|
|
114
120
|
}),
|
|
@@ -151,7 +157,7 @@ const agentStateSchema = Type.Object({
|
|
|
151
157
|
description: "Skill names to inject into this sub-agent. Omit to inject all available skills.",
|
|
152
158
|
})),
|
|
153
159
|
cwd: Type.Optional(Type.String({
|
|
154
|
-
description: "Working directory for this sub-agent's coding tools. Defaults to the state-machine session cwd.",
|
|
160
|
+
description: "Working directory for this sub-agent's coding tools (bash, read, write, edit). Set this whenever the work happens outside the session cwd — a git worktree, clone, or scratch dir a previous state created — instead of telling the sub-agent to `cd` in the prompt; the tools start here, so a path written into the prompt does not redirect them. Defaults to the state-machine session cwd.",
|
|
155
161
|
})),
|
|
156
162
|
});
|
|
157
163
|
const scriptStateSchema = Type.Object({
|
|
@@ -160,7 +166,9 @@ const scriptStateSchema = Type.Object({
|
|
|
160
166
|
command: Type.String({
|
|
161
167
|
description: "Shell command to execute. May use templates like {{ input.email }}.",
|
|
162
168
|
}),
|
|
163
|
-
cwd: Type.Optional(Type.String({
|
|
169
|
+
cwd: Type.Optional(Type.String({
|
|
170
|
+
description: "Working directory for the command. Defaults to the state-machine session cwd.",
|
|
171
|
+
})),
|
|
164
172
|
timeoutMs: Type.Optional(Type.Number({ description: "Command timeout in milliseconds." })),
|
|
165
173
|
successCodes: Type.Optional(Type.Array(Type.Number(), {
|
|
166
174
|
description: "Exit codes treated as successful completion. Defaults to [0].",
|
|
@@ -176,7 +184,9 @@ const pollStateSchema = Type.Object({
|
|
|
176
184
|
command: Type.String({
|
|
177
185
|
description: "Shell command for one poll attempt. Return non-empty JSON only when polling found a result.",
|
|
178
186
|
}),
|
|
179
|
-
cwd: Type.Optional(Type.String({
|
|
187
|
+
cwd: Type.Optional(Type.String({
|
|
188
|
+
description: "Working directory for the poll command. Defaults to the state-machine session cwd.",
|
|
189
|
+
})),
|
|
180
190
|
successCodes: Type.Optional(Type.Array(Type.Number(), {
|
|
181
191
|
description: "Exit codes that mean this poll attempt found a result.",
|
|
182
192
|
})),
|
|
@@ -224,6 +234,9 @@ const stateMachineDefinitionSchema = Type.Object({
|
|
|
224
234
|
const createDefinitionSchema = Type.Object({
|
|
225
235
|
definition: stateMachineDefinitionSchema,
|
|
226
236
|
firstState: Type.Optional(Type.String({ description: "Optional state name to run first after creating the definition." })),
|
|
237
|
+
replaceActive: Type.Optional(Type.Boolean({
|
|
238
|
+
description: "Set to true ONLY to deliberately abandon the state machine that is currently running and replace it with this new one. Creating a definition while a machine is still active is otherwise rejected: the active machine must first reach a terminal (advance or end it with select_state_machine_state). When this is true the runner cancels the active machine and starts this one in its place. Defaults to false, so an agent that did not realize a machine was running cannot clobber it by accident.",
|
|
239
|
+
})),
|
|
227
240
|
});
|
|
228
241
|
const selectStateSchema = Type.Object({
|
|
229
242
|
decision: Type.Object({
|
|
@@ -276,15 +289,36 @@ export function createTurnRunnerTools(input) {
|
|
|
276
289
|
return tools;
|
|
277
290
|
}
|
|
278
291
|
if (input.mode === "auto") {
|
|
279
|
-
tools.push(createStateMachineDefinitionTool());
|
|
292
|
+
tools.push(createStateMachineDefinitionTool(input.getStateMachine, input.cwd));
|
|
280
293
|
}
|
|
281
294
|
const getDefinition = typeof input.mode === "object"
|
|
282
295
|
? () => input.mode
|
|
283
296
|
: input.getDefinition;
|
|
284
|
-
tools.push(createSelectStateTool(getDefinition));
|
|
297
|
+
tools.push(createSelectStateTool(getDefinition, input.cwd));
|
|
285
298
|
tools.push(createCurrentStateMachineStateTool(input.getStateMachine, input.getActiveStateOutput));
|
|
286
299
|
return tools;
|
|
287
300
|
}
|
|
301
|
+
/**
|
|
302
|
+
* Builds the agent-facing error thrown when `create_state_machine_definition`
|
|
303
|
+
* is called while a machine is still running and `replaceActive` was not set.
|
|
304
|
+
* The message names the active machine and its current state so the agent —
|
|
305
|
+
* which may not have realized a machine was running — can decide whether to
|
|
306
|
+
* advance/end it with select_state_machine_state or deliberately replace it
|
|
307
|
+
* with `replaceActive: true`.
|
|
308
|
+
*/
|
|
309
|
+
function activeStateMachineCreateError(session) {
|
|
310
|
+
const name = session.definition.name;
|
|
311
|
+
const currentState = session.currentState ?? "unknown";
|
|
312
|
+
const kind = session.definition.states.find((state) => state.name === currentState)?.kind;
|
|
313
|
+
const stateDescription = kind ? `${currentState} (${kind})` : currentState;
|
|
314
|
+
return dedent `
|
|
315
|
+
Cannot create a new state machine: a state machine is already active.
|
|
316
|
+
|
|
317
|
+
Active machine: "${name}", currently at state "${stateDescription}".
|
|
318
|
+
|
|
319
|
+
Advance or end it with select_state_machine_state before creating a new one. If you instead intend to abandon this machine and run a different one in its place, call create_state_machine_definition again with replaceActive: true to cancel the active machine and replace it.
|
|
320
|
+
`;
|
|
321
|
+
}
|
|
288
322
|
export function applyStateOverride(state, override) {
|
|
289
323
|
if (!override || override.kind !== state.kind) {
|
|
290
324
|
return state;
|
|
@@ -578,7 +612,10 @@ export function formatCarriedTodosReminder(todos) {
|
|
|
578
612
|
</system-reminder>
|
|
579
613
|
`;
|
|
580
614
|
}
|
|
581
|
-
function createStateMachineDefinitionTool(
|
|
615
|
+
function createStateMachineDefinitionTool(getStateMachine,
|
|
616
|
+
// Base directory used to resolve a relative state `cwd` before checking it
|
|
617
|
+
// exists, matching the resolution used when the state actually runs.
|
|
618
|
+
baseCwd) {
|
|
582
619
|
return {
|
|
583
620
|
name: "create_state_machine_definition",
|
|
584
621
|
label: "Create state machine definition",
|
|
@@ -603,11 +640,25 @@ function createStateMachineDefinitionTool() {
|
|
|
603
640
|
|
|
604
641
|
State prompts and script commands may use \`{{ input.foo }}\` templates — declare \`inputSchema\` on those states and pass matching \`input\` when selecting them via select_state_machine_state. Agent states may set \`allowedSkills\` to restrict the skill set for that sub-agent.
|
|
605
642
|
|
|
606
|
-
|
|
643
|
+
A per-state \`cwd\` must resolve to an existing directory at creation time, and a relative \`cwd\` resolves against the session working directory shown in the \`<cwd>\` block of the system prompt. If an earlier state creates that directory at runtime (a worktree, clone, or scratch dir), omit \`cwd\` here and set it via \`override.cwd\` on select_state_machine_state once the directory exists — do not point \`cwd\` at a path that does not exist yet.
|
|
644
|
+
|
|
645
|
+
Only use this when no state machine is active or the previous one has reached a terminal state; otherwise call select_state_machine_state. Creating a definition while a machine is still active is rejected unless you set \`replaceActive: true\` to deliberately cancel the running machine and replace it.
|
|
607
646
|
`,
|
|
608
647
|
parameters: createDefinitionSchema,
|
|
609
648
|
async execute(_toolCallId, params) {
|
|
610
|
-
|
|
649
|
+
// Reject create-while-active unless the agent explicitly opts into
|
|
650
|
+
// replacing the running machine. The control tools terminate the worker
|
|
651
|
+
// turn after one call, so the agent could not end the old machine in this
|
|
652
|
+
// same turn — requiring replaceActive forces it to acknowledge the active
|
|
653
|
+
// machine instead of clobbering one it may not know is running. Throwing
|
|
654
|
+
// (rather than returning) keeps the worker turn alive so the agent can
|
|
655
|
+
// react to the error and either advance the active machine or retry with
|
|
656
|
+
// replaceActive: true.
|
|
657
|
+
const active = getStateMachine?.();
|
|
658
|
+
if (active && !active.terminal && params.replaceActive !== true) {
|
|
659
|
+
throw new Error(activeStateMachineCreateError(active));
|
|
660
|
+
}
|
|
661
|
+
assertValidDefinition(params.definition, baseCwd);
|
|
611
662
|
const result = {
|
|
612
663
|
type: "create_state_machine_definition",
|
|
613
664
|
definition: params.definition,
|
|
@@ -621,7 +672,12 @@ function createStateMachineDefinitionTool() {
|
|
|
621
672
|
},
|
|
622
673
|
};
|
|
623
674
|
}
|
|
624
|
-
function createSelectStateTool(getDefinition
|
|
675
|
+
function createSelectStateTool(getDefinition,
|
|
676
|
+
// Base directory used to resolve a relative state/override `cwd` before
|
|
677
|
+
// checking it exists. Mirrors how the runner resolves a per-state cwd
|
|
678
|
+
// (`cwdOverride ?? config.cwd ?? process.cwd()`) so validation rejects the
|
|
679
|
+
// same missing directory the sub-agent's tools would otherwise start in.
|
|
680
|
+
baseCwd) {
|
|
625
681
|
return {
|
|
626
682
|
name: "select_state_machine_state",
|
|
627
683
|
label: "Select state machine state",
|
|
@@ -630,7 +686,9 @@ function createSelectStateTool(getDefinition) {
|
|
|
630
686
|
|
|
631
687
|
Carry forward what the orchestrator now knows. Each agent state runs in a fresh sub-agent context with no view of the previous state's transcript, tool output, or output value — it only sees the rendered prompt and the input you pass here. So when a previous state surfaced facts the next state will need (file paths, IDs, error messages, decisions, summaries, root causes), either pass them as \`input\` (when the state's inputSchema has matching fields) or use \`override.prompt\` to inline the findings into the next state's prompt before running it. A static prompt that says "using the findings from the previous step" without inputs or an override is a bug: the sub-agent has no way to read those findings.
|
|
632
688
|
|
|
633
|
-
|
|
689
|
+
The working directory is part of that carry-forward, and the most common thing orchestrators get wrong. The moment a state operates anywhere other than the session cwd — a git worktree, clone, sub-package, or scratch directory whose path an earlier state returned — set \`override.cwd\` (agent states) or the script/poll \`cwd\` to that path. Do this aggressively and by default for any out-of-tree work rather than waiting for the sub-agent to orient itself. Do NOT convey the location by writing "cd into /path" or "work in the worktree at /path" in the prompt: a sub-agent's coding tools (bash, read, write, edit) start in the \`cwd\` you set, not wherever the prompt mentions, so an inlined path leaves the tools pointed at the wrong tree while the narration reads correct. The path almost always comes from a previous state's output (e.g. a worktree path printed by an implement step) — capture it and pass it as \`override.cwd\` on that transition. A relative cwd resolves against the session working directory shown in the \`<cwd>\` block of the system prompt, so prefer an absolute path for a worktree or clone that lives outside it.
|
|
690
|
+
|
|
691
|
+
Overrides persist by default. When you pass \`override\`, the merged state (prompt, command, schedule — whichever fields you set) is written back into the active definition, so every future run of that state uses the tuned version. This is the right shape when you are tightening a sub-agent prompt that hallucinated, fixing a script command that misbehaved, or tuning poll/timer cadence. Set \`persistOverride: false\` when you want a one-shot variation that does not commit — for example, probing a different prompt to see if the sub-agent recovers before deciding whether to keep the change. Persistence is a no-op for terminal states. \`override.kind\` must match the target state's kind; a mismatch is rejected outright (rather than silently dropping the override), and a per-state \`cwd\` that does not resolve to an existing directory is rejected too — fix the kind or the path before re-selecting.
|
|
634
692
|
|
|
635
693
|
Selecting a terminal state ends the state machine. Every definition is guaranteed to have the auto-injected \`failed\` and \`cancelled\` terminals available, so to fail or cancel, just select one of those by name and optionally attach a \`reason\`. After a terminal you will be woken once more for an acknowledgment turn — the runner re-prompts you with the terminal details (state, status, reason) so you can reply to the user in plain text and, if appropriate, kick off a follow-up state machine via create_state_machine_definition. Do not call select_state_machine_state on that acknowledgment turn; the state machine is already terminal.
|
|
636
694
|
`,
|
|
@@ -644,7 +702,7 @@ function createSelectStateTool(getDefinition) {
|
|
|
644
702
|
persistOverride: params.decision.persistOverride,
|
|
645
703
|
input: params.decision.input,
|
|
646
704
|
};
|
|
647
|
-
assertValidSelectedState(decision, definition);
|
|
705
|
+
assertValidSelectedState(decision, definition, baseCwd);
|
|
648
706
|
const result = { type: "select_state_machine_state", decision };
|
|
649
707
|
return {
|
|
650
708
|
content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
|
|
@@ -681,7 +739,7 @@ function createCurrentStateMachineStateTool(getStateMachine, getActiveStateOutpu
|
|
|
681
739
|
},
|
|
682
740
|
};
|
|
683
741
|
}
|
|
684
|
-
function assertValidSelectedState(decision, definition) {
|
|
742
|
+
function assertValidSelectedState(decision, definition, baseCwd) {
|
|
685
743
|
if (!definition)
|
|
686
744
|
return;
|
|
687
745
|
const validStates = definition.states.map((state) => state.name);
|
|
@@ -695,10 +753,61 @@ function assertValidSelectedState(decision, definition) {
|
|
|
695
753
|
// decision is always accepted.
|
|
696
754
|
if (selectedState.kind === "terminal")
|
|
697
755
|
return;
|
|
756
|
+
// A kind-mismatched override is silently discarded by applyStateOverride —
|
|
757
|
+
// prompt, cwd, and all — leaving the sub-agent to run with the original
|
|
758
|
+
// definition state instead of the tuned one the caller thought they sent.
|
|
759
|
+
// Reject it loudly so the caller fixes the override kind rather than
|
|
760
|
+
// shipping work the runner quietly ignored.
|
|
761
|
+
if (decision.override && decision.override.kind !== selectedState.kind) {
|
|
762
|
+
throw new Error(`Override kind "${decision.override.kind}" does not match state "${selectedState.name}", which is a "${selectedState.kind}" state. Set override.kind to "${selectedState.kind}" so the override is applied instead of silently dropped.`);
|
|
763
|
+
}
|
|
698
764
|
const effectiveState = applyStateOverride(selectedState, decision.override);
|
|
699
765
|
assertValidStateInputSchema(effectiveState);
|
|
700
766
|
assertValidStateSchedule(effectiveState);
|
|
701
767
|
assertValidStateInput(effectiveState, decision.input);
|
|
768
|
+
assertValidStateCwd(effectiveState, baseCwd, SELECT_CWD_GUIDANCE);
|
|
769
|
+
}
|
|
770
|
+
// Appended to the "cwd does not exist" error depending on where validation
|
|
771
|
+
// runs. At selection time the directory should already exist (an earlier
|
|
772
|
+
// state had a chance to create it). At creation time it often does not exist
|
|
773
|
+
// yet, so the right move is usually to omit cwd now and set it via
|
|
774
|
+
// override.cwd on select_state_machine_state once the directory is created.
|
|
775
|
+
const SELECT_CWD_GUIDANCE = "Set the override/state cwd to a directory that exists — typically the worktree or clone an earlier state created.";
|
|
776
|
+
const CREATE_CWD_GUIDANCE = "If an earlier state creates this directory at runtime, omit cwd here and set it via override.cwd on select_state_machine_state once the directory exists. Otherwise point it at a directory that already exists.";
|
|
777
|
+
// Resolve a per-state `cwd` (from a state definition or an override) against
|
|
778
|
+
// the runner's base cwd. A relative path resolves against `baseCwd` — the
|
|
779
|
+
// runner's config.cwd, set by --workDir, falling back to process.cwd() — so it
|
|
780
|
+
// lands in the directory the `<cwd>` system-prompt block advertises rather than
|
|
781
|
+
// the launching process's cwd, which Node would otherwise use. Used by both the
|
|
782
|
+
// runtime (agent/script/poll execution) and the select/create validators so a
|
|
783
|
+
// cwd is resolved identically wherever it is checked or run. `undefined`
|
|
784
|
+
// (no per-state cwd) falls back to the base.
|
|
785
|
+
export function resolveStateCwd(cwd, baseCwd) {
|
|
786
|
+
if (cwd === undefined)
|
|
787
|
+
return baseCwd;
|
|
788
|
+
return isAbsolute(cwd) ? cwd : resolve(baseCwd, cwd);
|
|
789
|
+
}
|
|
790
|
+
// A per-state `cwd` (from the definition or an override) becomes the working
|
|
791
|
+
// directory the sub-agent's coding tools start in. A path that does not exist
|
|
792
|
+
// or is not a directory lands the sub-agent in a broken/empty tree where it
|
|
793
|
+
// finds none of the files it was told to work on and reports "nothing to do".
|
|
794
|
+
function assertValidStateCwd(state, baseCwd, guidance) {
|
|
795
|
+
const cwd = state.kind === "agent" || state.kind === "script" || state.kind === "poll"
|
|
796
|
+
? state.cwd
|
|
797
|
+
: undefined;
|
|
798
|
+
if (!cwd)
|
|
799
|
+
return;
|
|
800
|
+
const resolved = resolveStateCwd(cwd, baseCwd);
|
|
801
|
+
let stats;
|
|
802
|
+
try {
|
|
803
|
+
stats = statSync(resolved);
|
|
804
|
+
}
|
|
805
|
+
catch {
|
|
806
|
+
throw new Error(`cwd "${cwd}" for state "${state.name}" does not exist (resolved to "${resolved}"). ${guidance}`);
|
|
807
|
+
}
|
|
808
|
+
if (!stats.isDirectory()) {
|
|
809
|
+
throw new Error(`cwd "${cwd}" for state "${state.name}" is not a directory (resolved to "${resolved}").`);
|
|
810
|
+
}
|
|
702
811
|
}
|
|
703
812
|
function assertValidStateInput(state, input) {
|
|
704
813
|
if (!state.inputSchema)
|
|
@@ -717,7 +826,7 @@ function assertValidStateInput(state, input) {
|
|
|
717
826
|
// than this should be performed directly in the parent turn rather than paid
|
|
718
827
|
// for with the orchestration overhead of a state machine.
|
|
719
828
|
const MINIMUM_STATE_MACHINE_DELAY_MS = 15 * 60 * 1000;
|
|
720
|
-
function assertValidDefinition(definition) {
|
|
829
|
+
function assertValidDefinition(definition, baseCwd) {
|
|
721
830
|
for (const state of definition.states) {
|
|
722
831
|
if (state.name === INTERRUPTED_STATE_MACHINE_STATE) {
|
|
723
832
|
throw new Error(`State name "${INTERRUPTED_STATE_MACHINE_STATE}" is reserved.`);
|
|
@@ -725,6 +834,7 @@ function assertValidDefinition(definition) {
|
|
|
725
834
|
assertValidStateInputSchema(state);
|
|
726
835
|
assertValidStateSchedule(state);
|
|
727
836
|
assertValidStateScheduleMinimum(state);
|
|
837
|
+
assertValidStateCwd(state, baseCwd, CREATE_CWD_GUIDANCE);
|
|
728
838
|
}
|
|
729
839
|
injectMissingTerminalEscapeHatches(definition);
|
|
730
840
|
assertHasCompletedTerminal(definition);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/turn-runner/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/turn-runner/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -284,6 +284,15 @@ export declare class TurnRunner {
|
|
|
284
284
|
images?: ImageContent[];
|
|
285
285
|
mode: Exclude<TurnMode, "agent">;
|
|
286
286
|
}): Promise<TurnTerminalEvent>;
|
|
287
|
+
/**
|
|
288
|
+
* Turns a parent worker turn's control output into the state-machine
|
|
289
|
+
* execution result the turn runner should drive next, or `undefined` when
|
|
290
|
+
* the parent emitted no control tool call. Whether that `undefined` is
|
|
291
|
+
* benign (a top-level agent turn just answering) or a violation (it owed a
|
|
292
|
+
* select_state_machine_state) is the caller's decision. A valid control
|
|
293
|
+
* action — select a state, ask the user, or create a machine (including a
|
|
294
|
+
* replaceActive reset of an active machine) — returns its result.
|
|
295
|
+
*/
|
|
287
296
|
private controllerResultFromWorkerResult;
|
|
288
297
|
protected createTools(mode: TurnMode, cwdOverride?: string): {
|
|
289
298
|
tools: AgentTool[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turn-runner.d.ts","sourceRoot":"","sources":["../../../src/turn-runner/turn-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAqB,KAAK,YAAY,EAAE,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEzF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAiBlD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAMxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAM3D,OAAO,KAAK,EACV,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,4BAA4B,EAC5B,SAAS,EACT,eAAe,EAEf,oBAAoB,EACpB,QAAQ,EACR,iBAAiB,EAEjB,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,WAAW,EAEZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAaxE,OAAO,
|
|
1
|
+
{"version":3,"file":"turn-runner.d.ts","sourceRoot":"","sources":["../../../src/turn-runner/turn-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ import { COMPACT_MESSAGE_TOKENS_RATIO, compactTurnState, } from "./state-compact
|
|
|
15
15
|
import { agentEventToTurnEvents, agentMessageText } from "./agent-events.js";
|
|
16
16
|
import { createRecallMemorySystemPromptLayer, createSourceOfTruthSystemPromptLayer, createStateMachineSystemPromptLayer, } from "./prompts.js";
|
|
17
17
|
import { applyEvictionHorizon, calculateWireTokens, createInitialHorizon, findEvictionHorizon, } from "./wire-shaping.js";
|
|
18
|
-
import { createDefaultTurnRunnerTools, createTurnRunnerTools, formatCarriedTodosReminder, formatStateMachineTerminalAcknowledgmentPrompt, isTurnRunnerControlResult, } from "./tools.js";
|
|
18
|
+
import { createDefaultTurnRunnerTools, createTurnRunnerTools, resolveStateCwd, formatCarriedTodosReminder, formatStateMachineTerminalAcknowledgmentPrompt, isTurnRunnerControlResult, } from "./tools.js";
|
|
19
19
|
import { connectMcpServers } from "./mcp.js";
|
|
20
20
|
import { SkillContext } from "./skill-context.js";
|
|
21
21
|
import { currentScheduledState, isWaitingOnScheduledState } from "./state-machine-session.js";
|
|
@@ -720,7 +720,26 @@ export class TurnRunner {
|
|
|
720
720
|
case "interrupted":
|
|
721
721
|
return { type: "interrupted", state: { ...state, status: "interrupted" } };
|
|
722
722
|
case "terminal":
|
|
723
|
-
|
|
723
|
+
if (result.status === "error") {
|
|
724
|
+
// A runtime failure (poll timeout, unknown/invalid selected state,
|
|
725
|
+
// agent/script state failure, misconfigured-poll gate, or exhausted
|
|
726
|
+
// protocol-violation retries) is the ONLY state-machine outcome that
|
|
727
|
+
// fails the turn. The user-facing message rides on event.error; the
|
|
728
|
+
// same string is also recorded on state.stateMachine.terminal.reason
|
|
729
|
+
// by recordStateFailed, so the parent's acknowledgment turn and the
|
|
730
|
+
// board/relay see the identical reason.
|
|
731
|
+
return completeTurn(state, "failed", undefined, result.error);
|
|
732
|
+
}
|
|
733
|
+
// A deliberately selected terminal (completed/failed/cancelled, incl.
|
|
734
|
+
// the auto-injected `cancelled` that `wont do` maps to) is a
|
|
735
|
+
// successful turn outcome — not a user abort. Report turn-completion
|
|
736
|
+
// status "completed" so the backend never surfaces "Error: cancelled —
|
|
737
|
+
// try again". The machine's own status survives on
|
|
738
|
+
// state.stateMachine.terminal.status (set by recordStateMachineCompleted),
|
|
739
|
+
// which is what the board column resolves from. Only an explicit user
|
|
740
|
+
// stop — type:"interrupted" via interrupt() — surfaces the cancel
|
|
741
|
+
// message.
|
|
742
|
+
return completeTurn(state, "completed", result.result);
|
|
724
743
|
}
|
|
725
744
|
}
|
|
726
745
|
async driveStateMachineResult(result, baseState = this.requireRunnerState()) {
|
|
@@ -818,8 +837,14 @@ export class TurnRunner {
|
|
|
818
837
|
return { type: "interrupted", state: workerResult.outcome.state };
|
|
819
838
|
}
|
|
820
839
|
const followUp = await this.controllerResultFromWorkerResult(workerResult, workerResult.outcome.state);
|
|
821
|
-
|
|
840
|
+
// On the acknowledgment turn the prior machine is already terminal, so a
|
|
841
|
+
// create_state_machine_definition here is legal follow-up work, not a
|
|
842
|
+
// violation — controllerResultFromWorkerResult returns it as a result.
|
|
843
|
+
// A plain-text reply returns undefined so the caller renders the original
|
|
844
|
+
// terminal with the parent's summary as the final assistant message.
|
|
845
|
+
if (followUp) {
|
|
822
846
|
return this.driveStateMachineResult(followUp, workerResult.outcome.state);
|
|
847
|
+
}
|
|
823
848
|
return undefined;
|
|
824
849
|
}
|
|
825
850
|
async selectNextStateAfterCompletion(stateName, output) {
|
|
@@ -853,16 +878,14 @@ export class TurnRunner {
|
|
|
853
878
|
});
|
|
854
879
|
this.setState(workerResult.outcome.state);
|
|
855
880
|
const result = await this.controllerResultFromWorkerResult(workerResult, workerResult.outcome.state);
|
|
856
|
-
if (!result)
|
|
881
|
+
if (!result)
|
|
857
882
|
continue;
|
|
858
|
-
}
|
|
859
883
|
return result;
|
|
860
884
|
}
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
};
|
|
885
|
+
// The parent owed a select_state_machine_state after the state completed
|
|
886
|
+
// but never emitted one across the bounded retry budget. That is a runtime
|
|
887
|
+
// failure of the machine, so record an `error` terminal on the session.
|
|
888
|
+
return this.stateMachineController.failActiveSession(this.stateMachineController.getSession()?.currentState ?? "", "State completed, but the runner did not call select_state_machine_state.");
|
|
866
889
|
}
|
|
867
890
|
createStateAgentHandle(input) {
|
|
868
891
|
let control = { type: "none" };
|
|
@@ -1116,49 +1139,51 @@ export class TurnRunner {
|
|
|
1116
1139
|
return this.outcomeToTerminal(workerResult.outcome);
|
|
1117
1140
|
return this.driveStateMachineResult(result, workerResult.outcome.state);
|
|
1118
1141
|
}
|
|
1142
|
+
/**
|
|
1143
|
+
* Turns a parent worker turn's control output into the state-machine
|
|
1144
|
+
* execution result the turn runner should drive next, or `undefined` when
|
|
1145
|
+
* the parent emitted no control tool call. Whether that `undefined` is
|
|
1146
|
+
* benign (a top-level agent turn just answering) or a violation (it owed a
|
|
1147
|
+
* select_state_machine_state) is the caller's decision. A valid control
|
|
1148
|
+
* action — select a state, ask the user, or create a machine (including a
|
|
1149
|
+
* replaceActive reset of an active machine) — returns its result.
|
|
1150
|
+
*/
|
|
1119
1151
|
async controllerResultFromWorkerResult(workerResult, state) {
|
|
1120
|
-
|
|
1152
|
+
const control = workerResult.control;
|
|
1153
|
+
if (control.type === "none")
|
|
1121
1154
|
return undefined;
|
|
1122
|
-
if (
|
|
1123
|
-
return { type: "ask", questions:
|
|
1155
|
+
if (control.type === "ask_user_question") {
|
|
1156
|
+
return { type: "ask", questions: control.questions };
|
|
1124
1157
|
}
|
|
1125
|
-
if (
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1158
|
+
if (control.type === "create_state_machine_definition") {
|
|
1159
|
+
// A create that reaches here was authorized by the tool: it only emits
|
|
1160
|
+
// this control result when no machine is active OR the agent opted into
|
|
1161
|
+
// replaceActive. So an active, non-terminal session at this point means
|
|
1162
|
+
// the agent deliberately chose to replace it — supersede it (recording a
|
|
1163
|
+
// `cancelled` terminal) before installing the new machine in its place.
|
|
1164
|
+
const active = this.stateMachineController.getSession();
|
|
1165
|
+
if (active && !active.terminal) {
|
|
1166
|
+
this.stateMachineController.supersedeActiveSession(`Superseded by a new state machine ("${control.definition.name}").`);
|
|
1133
1167
|
}
|
|
1134
|
-
const firstState =
|
|
1168
|
+
const firstState = control.firstState ?? control.definition.states[0]?.name ?? "";
|
|
1135
1169
|
this.stateMachineController.startSession({
|
|
1136
1170
|
prompt: workerResult.outcome.type === "complete" ? (workerResult.outcome.result ?? "") : "",
|
|
1137
|
-
definition:
|
|
1171
|
+
definition: control.definition,
|
|
1138
1172
|
currentState: firstState,
|
|
1139
1173
|
});
|
|
1140
|
-
return this.stateMachineController.runDecision({
|
|
1141
|
-
state: firstState,
|
|
1142
|
-
});
|
|
1143
|
-
}
|
|
1144
|
-
if (workerResult.control.type !== "select_state_machine_state") {
|
|
1145
|
-
return {
|
|
1146
|
-
type: "terminal",
|
|
1147
|
-
status: "failed",
|
|
1148
|
-
error: "Unsupported state-machine control result.",
|
|
1149
|
-
};
|
|
1174
|
+
return this.stateMachineController.runDecision({ state: firstState });
|
|
1150
1175
|
}
|
|
1151
1176
|
if (!this.stateMachineController.getSession() && typeof state.mode === "object") {
|
|
1152
1177
|
this.stateMachineController.startSession({
|
|
1153
1178
|
prompt: workerResult.outcome.type === "complete" ? (workerResult.outcome.result ?? "") : "",
|
|
1154
1179
|
definition: state.mode,
|
|
1155
|
-
currentState:
|
|
1180
|
+
currentState: control.decision.state,
|
|
1156
1181
|
});
|
|
1157
1182
|
}
|
|
1158
|
-
return this.stateMachineController.runDecision(
|
|
1183
|
+
return this.stateMachineController.runDecision(control.decision);
|
|
1159
1184
|
}
|
|
1160
1185
|
createTools(mode, cwdOverride) {
|
|
1161
|
-
const cwd = cwdOverride
|
|
1186
|
+
const cwd = resolveStateCwd(cwdOverride, this.config.cwd ?? process.cwd());
|
|
1162
1187
|
const todoStorage = {
|
|
1163
1188
|
getTodos: () => this.getTodos(),
|
|
1164
1189
|
setTodos: (todos) => {
|