@qduc/term2 0.29.1 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent.d.ts +13 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +73 -2
- package/dist/agent.js.map +1 -1
- package/dist/build-info.json +2 -2
- package/dist/cli.js +17 -0
- package/dist/cli.js.map +1 -1
- package/dist/components/message/SubagentActivityMessage.d.ts +2 -2
- package/dist/components/message/SubagentActivityMessage.d.ts.map +1 -1
- package/dist/components/message/SubagentActivityMessage.js +2 -13
- package/dist/components/message/SubagentActivityMessage.js.map +1 -1
- package/dist/components/message/command-message-helpers.d.ts +2 -2
- package/dist/components/message/command-message-helpers.d.ts.map +1 -1
- package/dist/core/index.d.ts +2 -3
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -7
- package/dist/core/index.js.map +1 -1
- package/dist/core/session-runtime.d.ts +72 -0
- package/dist/core/session-runtime.d.ts.map +1 -1
- package/dist/gateway/contracts.d.ts +1 -1
- package/dist/gateway/contracts.d.ts.map +1 -1
- package/dist/gateway/gateway.d.ts +32 -0
- package/dist/gateway/gateway.d.ts.map +1 -1
- package/dist/gateway/gateway.js +36 -1
- package/dist/gateway/gateway.js.map +1 -1
- package/dist/gateway/persistence/contracts.d.ts +3 -10
- package/dist/gateway/persistence/contracts.d.ts.map +1 -1
- package/dist/gateway/persistence/contracts.js +2 -31
- package/dist/gateway/persistence/contracts.js.map +1 -1
- package/dist/gateway/runtime-factory.d.ts.map +1 -1
- package/dist/gateway/runtime-factory.js +4 -0
- package/dist/gateway/runtime-factory.js.map +1 -1
- package/dist/gateway/server-session.d.ts +3 -0
- package/dist/gateway/server-session.d.ts.map +1 -1
- package/dist/gateway/server-session.js +17 -20
- package/dist/gateway/server-session.js.map +1 -1
- package/dist/gateway/settings-rpc.d.ts +1 -1
- package/dist/gateway/settings-rpc.d.ts.map +1 -1
- package/dist/gateway/settings-rpc.js +4 -1
- package/dist/gateway/settings-rpc.js.map +1 -1
- package/dist/lib/agent-client.d.ts +8 -0
- package/dist/lib/agent-client.d.ts.map +1 -1
- package/dist/lib/agent-client.js +5 -1
- package/dist/lib/agent-client.js.map +1 -1
- package/dist/lib/agent-configuration.d.ts +9 -0
- package/dist/lib/agent-configuration.d.ts.map +1 -1
- package/dist/lib/agent-configuration.js +14 -0
- package/dist/lib/agent-configuration.js.map +1 -1
- package/dist/lib/agent-factory.d.ts +25 -4
- package/dist/lib/agent-factory.d.ts.map +1 -1
- package/dist/lib/agent-factory.js +6 -0
- package/dist/lib/agent-factory.js.map +1 -1
- package/dist/lib/subagent-bridge.d.ts +47 -5
- package/dist/lib/subagent-bridge.d.ts.map +1 -1
- package/dist/lib/subagent-bridge.js +112 -4
- package/dist/lib/subagent-bridge.js.map +1 -1
- package/dist/node_modules/@qduc/agent-wire/index.d.ts +73 -0
- package/dist/node_modules/@qduc/agent-wire/index.js +212 -0
- package/dist/node_modules/@qduc/agent-wire/package.json +1 -0
- package/dist/prompts/orchestrator-prompt.test.ts +9 -0
- package/dist/prompts/orchestrator.md +2 -0
- package/dist/prompts/subagent-delegation.d.ts.map +1 -1
- package/dist/prompts/subagent-delegation.js +3 -2
- package/dist/prompts/subagent-delegation.js.map +1 -1
- package/dist/prompts/subagent-delegation.test.ts +1 -0
- package/dist/prompts/subagent-delegation.ts +6 -2
- package/dist/providers/codex.provider.d.ts +3 -0
- package/dist/providers/codex.provider.d.ts.map +1 -1
- package/dist/providers/codex.provider.js +6 -4
- package/dist/providers/codex.provider.js.map +1 -1
- package/dist/providers/grok-auth.d.ts +3 -0
- package/dist/providers/grok-auth.d.ts.map +1 -1
- package/dist/providers/grok-auth.js +3 -1
- package/dist/providers/grok-auth.js.map +1 -1
- package/dist/providers/grok.provider.js +3 -3
- package/dist/providers/grok.provider.js.map +1 -1
- package/dist/providers/index.d.ts +1 -1
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +1 -1
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/oauth-session-account.d.ts +16 -2
- package/dist/providers/oauth-session-account.d.ts.map +1 -1
- package/dist/providers/oauth-session-account.js +8 -17
- package/dist/providers/oauth-session-account.js.map +1 -1
- package/dist/providers/openai.provider.js +1 -1
- package/dist/providers/openai.provider.js.map +1 -1
- package/dist/providers/openrouter.provider.js +1 -1
- package/dist/providers/openrouter.provider.js.map +1 -1
- package/dist/providers/registry.d.ts +20 -1
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js +33 -16
- package/dist/providers/registry.js.map +1 -1
- package/dist/providers/web-search/exa.provider.d.ts.map +1 -1
- package/dist/providers/web-search/exa.provider.js +6 -3
- package/dist/providers/web-search/exa.provider.js.map +1 -1
- package/dist/providers/web-search/firecrawl.provider.d.ts +8 -0
- package/dist/providers/web-search/firecrawl.provider.d.ts.map +1 -0
- package/dist/providers/web-search/firecrawl.provider.js +59 -0
- package/dist/providers/web-search/firecrawl.provider.js.map +1 -0
- package/dist/providers/web-search/index.d.ts +5 -2
- package/dist/providers/web-search/index.d.ts.map +1 -1
- package/dist/providers/web-search/index.js +3 -1
- package/dist/providers/web-search/index.js.map +1 -1
- package/dist/providers/web-search/registry.d.ts +14 -0
- package/dist/providers/web-search/registry.d.ts.map +1 -1
- package/dist/providers/web-search/registry.js +45 -15
- package/dist/providers/web-search/registry.js.map +1 -1
- package/dist/providers/web-search/searxng.provider.d.ts +8 -0
- package/dist/providers/web-search/searxng.provider.d.ts.map +1 -0
- package/dist/providers/web-search/searxng.provider.js +56 -0
- package/dist/providers/web-search/searxng.provider.js.map +1 -0
- package/dist/providers/web-search/tavily.provider.d.ts.map +1 -1
- package/dist/providers/web-search/tavily.provider.js +8 -3
- package/dist/providers/web-search/tavily.provider.js.map +1 -1
- package/dist/providers/web-search/types.d.ts +14 -1
- package/dist/providers/web-search/types.d.ts.map +1 -1
- package/dist/services/agent-runtime/agent-resolver.d.ts.map +1 -1
- package/dist/services/agent-runtime/agent-resolver.js +1 -0
- package/dist/services/agent-runtime/agent-resolver.js.map +1 -1
- package/dist/services/agent-runtime/agent-runtime.d.ts +6 -1
- package/dist/services/agent-runtime/agent-runtime.d.ts.map +1 -1
- package/dist/services/agent-runtime/agent-runtime.js +11 -2
- package/dist/services/agent-runtime/agent-runtime.js.map +1 -1
- package/dist/services/agent-runtime/agent-spec.d.ts +14 -0
- package/dist/services/agent-runtime/agent-spec.d.ts.map +1 -0
- package/dist/services/agent-runtime/agent-spec.js +49 -0
- package/dist/services/agent-runtime/agent-spec.js.map +1 -0
- package/dist/services/agent-runtime/index.d.ts +3 -1
- package/dist/services/agent-runtime/index.d.ts.map +1 -1
- package/dist/services/agent-runtime/index.js +2 -0
- package/dist/services/agent-runtime/index.js.map +1 -1
- package/dist/services/agent-runtime/legacy-adapter.d.ts.map +1 -1
- package/dist/services/agent-runtime/legacy-adapter.js +5 -1
- package/dist/services/agent-runtime/legacy-adapter.js.map +1 -1
- package/dist/services/agent-runtime/permission-boundary.d.ts +95 -0
- package/dist/services/agent-runtime/permission-boundary.d.ts.map +1 -0
- package/dist/services/agent-runtime/permission-boundary.js +538 -0
- package/dist/services/agent-runtime/permission-boundary.js.map +1 -0
- package/dist/services/agent-runtime/resolved-agent.d.ts +2 -0
- package/dist/services/agent-runtime/resolved-agent.d.ts.map +1 -1
- package/dist/services/agent-runtime/types.d.ts +22 -1
- package/dist/services/agent-runtime/types.d.ts.map +1 -1
- package/dist/services/approval/non-interactive-approval-policy.d.ts.map +1 -1
- package/dist/services/approval/non-interactive-approval-policy.js +10 -0
- package/dist/services/approval/non-interactive-approval-policy.js.map +1 -1
- package/dist/services/approval/shell-auto-approval-resolver.d.ts +2 -0
- package/dist/services/approval/shell-auto-approval-resolver.d.ts.map +1 -1
- package/dist/services/approval/shell-auto-approval-resolver.js +4 -2
- package/dist/services/approval/shell-auto-approval-resolver.js.map +1 -1
- package/dist/services/conversation/conversation-adapter-factory.d.ts +1 -1
- package/dist/services/conversation/conversation-adapter-factory.d.ts.map +1 -1
- package/dist/services/conversation/conversation-adapter.d.ts +1 -1
- package/dist/services/conversation/conversation-adapter.d.ts.map +1 -1
- package/dist/services/conversation/conversation-runtime-factory.d.ts +1 -1
- package/dist/services/conversation/conversation-runtime-factory.d.ts.map +1 -1
- package/dist/services/conversation/conversation-runtime-factory.js +1 -1
- package/dist/services/conversation/conversation-runtime-factory.js.map +1 -1
- package/dist/services/conversation/conversation-service.d.ts +4 -1
- package/dist/services/conversation/conversation-service.d.ts.map +1 -1
- package/dist/services/conversation/conversation-service.js +25 -0
- package/dist/services/conversation/conversation-service.js.map +1 -1
- package/dist/services/conversation/session-index/session-index-service.d.ts +1 -1
- package/dist/services/conversation/session-index/session-index-service.d.ts.map +1 -1
- package/dist/services/conversation/session-index/session-index-service.js +1 -1
- package/dist/services/conversation/session-index/session-index-service.js.map +1 -1
- package/dist/services/retry/provider-failure-classification.d.ts +2 -0
- package/dist/services/retry/provider-failure-classification.d.ts.map +1 -1
- package/dist/services/retry/provider-failure-classification.js +43 -0
- package/dist/services/retry/provider-failure-classification.js.map +1 -1
- package/dist/services/sandboxed-code-host/host-worker.d.ts.map +1 -1
- package/dist/services/sandboxed-code-host/host-worker.js +3 -1
- package/dist/services/sandboxed-code-host/host-worker.js.map +1 -1
- package/dist/services/session/session-composition.d.ts +3 -0
- package/dist/services/session/session-composition.d.ts.map +1 -1
- package/dist/services/session/session-composition.js +2 -1
- package/dist/services/session/session-composition.js.map +1 -1
- package/dist/services/session/session-input-planner.d.ts +2 -0
- package/dist/services/session/session-input-planner.d.ts.map +1 -1
- package/dist/services/session/session-input-planner.js +4 -6
- package/dist/services/session/session-input-planner.js.map +1 -1
- package/dist/services/settings/settings-env.d.ts.map +1 -1
- package/dist/services/settings/settings-env.js +9 -0
- package/dist/services/settings/settings-env.js.map +1 -1
- package/dist/services/settings/settings-schema.d.ts +24 -0
- package/dist/services/settings/settings-schema.d.ts.map +1 -1
- package/dist/services/settings/settings-schema.js +16 -0
- package/dist/services/settings/settings-schema.js.map +1 -1
- package/dist/services/settings/settings-sources.d.ts +2 -0
- package/dist/services/settings/settings-sources.d.ts.map +1 -1
- package/dist/services/settings/settings-sources.js +2 -0
- package/dist/services/settings/settings-sources.js.map +1 -1
- package/dist/services/settings/settings-ui-metadata.d.ts.map +1 -1
- package/dist/services/settings/settings-ui-metadata.js +4 -1
- package/dist/services/settings/settings-ui-metadata.js.map +1 -1
- package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts +1 -1
- package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts.map +1 -1
- package/dist/services/settings/test-helpers/settings-consumer-inventory.js +3 -0
- package/dist/services/settings/test-helpers/settings-consumer-inventory.js.map +1 -1
- package/dist/services/subagents/execution-runner.d.ts.map +1 -1
- package/dist/services/subagents/execution-runner.js +2 -1
- package/dist/services/subagents/execution-runner.js.map +1 -1
- package/dist/services/subagents/foreground-subagent-lease.d.ts +15 -0
- package/dist/services/subagents/foreground-subagent-lease.d.ts.map +1 -1
- package/dist/services/subagents/foreground-subagent-lease.js +42 -2
- package/dist/services/subagents/foreground-subagent-lease.js.map +1 -1
- package/dist/services/subagents/nested-runner.d.ts +1 -1
- package/dist/services/subagents/nested-runner.d.ts.map +1 -1
- package/dist/services/subagents/nested-runner.js +89 -22
- package/dist/services/subagents/nested-runner.js.map +1 -1
- package/dist/services/subagents/runtime.d.ts.map +1 -1
- package/dist/services/subagents/runtime.js +30 -4
- package/dist/services/subagents/runtime.js.map +1 -1
- package/dist/services/subagents/subagent-async-registry.d.ts +3 -0
- package/dist/services/subagents/subagent-async-registry.d.ts.map +1 -1
- package/dist/services/subagents/subagent-async-registry.js +53 -8
- package/dist/services/subagents/subagent-async-registry.js.map +1 -1
- package/dist/services/subagents/subagent-manager.d.ts.map +1 -1
- package/dist/services/subagents/subagent-manager.js +65 -3
- package/dist/services/subagents/subagent-manager.js.map +1 -1
- package/dist/services/subagents/subagent-role-pool-selector.d.ts +5 -1
- package/dist/services/subagents/subagent-role-pool-selector.d.ts.map +1 -1
- package/dist/services/subagents/subagent-role-pool-selector.js +24 -5
- package/dist/services/subagents/subagent-role-pool-selector.js.map +1 -1
- package/dist/services/subagents/tool-policy.d.ts +2 -2
- package/dist/services/subagents/tool-policy.d.ts.map +1 -1
- package/dist/services/subagents/tool-policy.js +8 -2
- package/dist/services/subagents/tool-policy.js.map +1 -1
- package/dist/services/subagents/types.d.ts +15 -2
- package/dist/services/subagents/types.d.ts.map +1 -1
- package/dist/services/subagents/types.js.map +1 -1
- package/dist/services/subagents/worker-worktree.d.ts +19 -1
- package/dist/services/subagents/worker-worktree.d.ts.map +1 -1
- package/dist/services/subagents/worker-worktree.js +128 -4
- package/dist/services/subagents/worker-worktree.js.map +1 -1
- package/dist/services/workspace/worktree-inventory.d.ts +6 -0
- package/dist/services/workspace/worktree-inventory.d.ts.map +1 -1
- package/dist/services/workspace/worktree-inventory.js +29 -1
- package/dist/services/workspace/worktree-inventory.js.map +1 -1
- package/dist/tools/agent/propose-goal.d.ts +17 -0
- package/dist/tools/agent/propose-goal.d.ts.map +1 -0
- package/dist/tools/agent/propose-goal.js +64 -0
- package/dist/tools/agent/propose-goal.js.map +1 -0
- package/dist/tools/agent/run-subagent-async.d.ts +61 -3
- package/dist/tools/agent/run-subagent-async.d.ts.map +1 -1
- package/dist/tools/agent/run-subagent-async.js +13 -4
- package/dist/tools/agent/run-subagent-async.js.map +1 -1
- package/dist/tools/agent/run-subagent.d.ts +73 -7
- package/dist/tools/agent/run-subagent.d.ts.map +1 -1
- package/dist/tools/agent/run-subagent.js +84 -22
- package/dist/tools/agent/run-subagent.js.map +1 -1
- package/dist/tools/system/run-code/index.d.ts +1 -1
- package/dist/tools/system/run-code/index.d.ts.map +1 -1
- package/dist/tools/system/run-code/index.js +1 -1
- package/dist/tools/system/run-code/index.js.map +1 -1
- package/dist/tools/system/run-code/run-code-agent-capability.d.ts +99 -0
- package/dist/tools/system/run-code/run-code-agent-capability.d.ts.map +1 -0
- package/dist/tools/system/run-code/run-code-agent-capability.js +384 -0
- package/dist/tools/system/run-code/run-code-agent-capability.js.map +1 -0
- package/dist/tools/system/run-code/run-code-runtime.d.ts +9 -0
- package/dist/tools/system/run-code/run-code-runtime.d.ts.map +1 -1
- package/dist/tools/system/run-code/run-code-runtime.js +54 -1
- package/dist/tools/system/run-code/run-code-runtime.js.map +1 -1
- package/dist/tools/system/run-code/run-code.d.ts +12 -1
- package/dist/tools/system/run-code/run-code.d.ts.map +1 -1
- package/dist/tools/system/run-code/run-code.js +48 -1
- package/dist/tools/system/run-code/run-code.js.map +1 -1
- package/dist/tools/tool-names.d.ts +1 -0
- package/dist/tools/tool-names.d.ts.map +1 -1
- package/dist/tools/tool-names.js +1 -0
- package/dist/tools/tool-names.js.map +1 -1
- package/dist/tools/web/web-search.d.ts +18 -0
- package/dist/tools/web/web-search.d.ts.map +1 -1
- package/dist/tools/web/web-search.js +29 -4
- package/dist/tools/web/web-search.js.map +1 -1
- package/dist/types/message.d.ts +1 -0
- package/dist/types/message.d.ts.map +1 -1
- package/dist/types/message.js +13 -0
- package/dist/types/message.js.map +1 -1
- package/dist/utils/conversation/conversation-event-handler.js +1 -1
- package/dist/utils/conversation/conversation-event-handler.js.map +1 -1
- package/dist/utils/value-suggestions.d.ts.map +1 -1
- package/dist/utils/value-suggestions.js +2 -0
- package/dist/utils/value-suggestions.js.map +1 -1
- package/package.json +4 -2
|
@@ -40,6 +40,12 @@ export class ForegroundSubagentLease {
|
|
|
40
40
|
get model() {
|
|
41
41
|
return this.#model;
|
|
42
42
|
}
|
|
43
|
+
/** Update the launch model only before ownership transfers to the background registry. */
|
|
44
|
+
setModel(model) {
|
|
45
|
+
if (this.#adopted || this.#settled)
|
|
46
|
+
throw new Error('Cannot change the model of an adopted subagent');
|
|
47
|
+
this.#model = model;
|
|
48
|
+
}
|
|
43
49
|
get settled() {
|
|
44
50
|
return this.#settled;
|
|
45
51
|
}
|
|
@@ -96,6 +102,33 @@ export class ForegroundSubagentLease {
|
|
|
96
102
|
async waitForBackgroundContinuation(handle, interruption, resume, onPending) {
|
|
97
103
|
return this.#waitForBackgroundApproval(handle, interruption, resume, onPending);
|
|
98
104
|
}
|
|
105
|
+
/** Keeps a host-arbitrated child pause inside its original foreground call. */
|
|
106
|
+
async waitForForegroundContinuation(handle, interruption, resume, onPending, onPause) {
|
|
107
|
+
if (this.#adopted || this.#settled || this.#controller.signal.aborted)
|
|
108
|
+
return false;
|
|
109
|
+
if (this.#pending)
|
|
110
|
+
throw new Error(`Foreground subagent lease ${this.#runId} already has a pending approval.`);
|
|
111
|
+
let pending;
|
|
112
|
+
const resumed = new Promise((resolve, reject) => {
|
|
113
|
+
this.#generation += 1;
|
|
114
|
+
pending = { handle, interruption, owner: 'foreground', resume, resolve, reject };
|
|
115
|
+
this.#pending = pending;
|
|
116
|
+
});
|
|
117
|
+
const snapshot = { runId: this.#runId, generation: this.#generation, interruption };
|
|
118
|
+
onPending(snapshot);
|
|
119
|
+
void Promise.resolve()
|
|
120
|
+
.then(() => onPause(snapshot))
|
|
121
|
+
.then(() => {
|
|
122
|
+
if (this.#pending === pending)
|
|
123
|
+
this.#releasePending(false);
|
|
124
|
+
})
|
|
125
|
+
.catch((error) => {
|
|
126
|
+
if (this.#pending === pending)
|
|
127
|
+
this.#pending = undefined;
|
|
128
|
+
pending.reject(error);
|
|
129
|
+
});
|
|
130
|
+
return (await resumed) && !this.#controller.signal.aborted;
|
|
131
|
+
}
|
|
99
132
|
async #waitForBackgroundApproval(handle, interruption, resume, onPending) {
|
|
100
133
|
if (!this.#adopted)
|
|
101
134
|
return false;
|
|
@@ -103,7 +136,7 @@ export class ForegroundSubagentLease {
|
|
|
103
136
|
throw new Error(`Foreground subagent lease ${this.#runId} already has a pending approval.`);
|
|
104
137
|
const resumed = await new Promise((resolve, reject) => {
|
|
105
138
|
this.#generation += 1;
|
|
106
|
-
this.#pending = { handle, interruption, resolve, reject, ...(resume ? { resume } : {}) };
|
|
139
|
+
this.#pending = { handle, interruption, owner: 'background', resolve, reject, ...(resume ? { resume } : {}) };
|
|
107
140
|
onPending?.({ runId: this.#runId, generation: this.#generation, interruption });
|
|
108
141
|
});
|
|
109
142
|
return resumed && !this.#controller.signal.aborted;
|
|
@@ -123,9 +156,16 @@ export class ForegroundSubagentLease {
|
|
|
123
156
|
* exception leaves the pause intact, letting its queue retain ownership.
|
|
124
157
|
*/
|
|
125
158
|
applyBackgroundApproval(expected, apply) {
|
|
159
|
+
return this.#applyApproval(expected, 'background', apply);
|
|
160
|
+
}
|
|
161
|
+
applyForegroundApproval(expected, apply) {
|
|
162
|
+
return this.#applyApproval(expected, 'foreground', apply);
|
|
163
|
+
}
|
|
164
|
+
#applyApproval(expected, owner, apply) {
|
|
126
165
|
const pending = this.#pending;
|
|
127
166
|
if (!pending ||
|
|
128
|
-
|
|
167
|
+
pending.owner !== owner ||
|
|
168
|
+
(owner === 'background' ? !this.#adopted : this.#adopted) ||
|
|
129
169
|
expected.runId !== this.#runId ||
|
|
130
170
|
expected.generation !== this.#generation ||
|
|
131
171
|
expected.interruption !== pending.interruption ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foreground-subagent-lease.js","sourceRoot":"","sources":["../../../source/services/subagents/foreground-subagent-lease.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"foreground-subagent-lease.js","sourceRoot":"","sources":["../../../source/services/subagents/foreground-subagent-lease.ts"],"names":[],"mappings":"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"}
|
|
@@ -76,7 +76,7 @@ export declare class NestedSubagentRunner {
|
|
|
76
76
|
* ledger from `toolContext.approvals`, so parent decisions are honored (F5)
|
|
77
77
|
* and the run's own decisions accumulate on the same ledger.
|
|
78
78
|
*/
|
|
79
|
-
createSubagentTool(role:
|
|
79
|
+
createSubagentTool(role: string, definition: SubagentDefinition, agent: ApplicationAgent): AnyToolDefinition;
|
|
80
80
|
runAsTool(request: SubagentRequest, context?: unknown, details?: unknown): Promise<NestedSubagentResult>;
|
|
81
81
|
}
|
|
82
82
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nested-runner.d.ts","sourceRoot":"","sources":["../../../source/services/subagents/nested-runner.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,0CAA0C,CAAC;AAGlD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EAEf,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,EAAE,mBAAmB,EAAkD,MAAM,kBAAkB,CAAC;AAEvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAgB5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAG/E,OAAO,
|
|
1
|
+
{"version":3,"file":"nested-runner.d.ts","sourceRoot":"","sources":["../../../source/services/subagents/nested-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,8 +15,10 @@ import { replayApprovals } from '../approval/approval-replay.js';
|
|
|
15
15
|
import { AcquiredChildSlot } from '../agent-runtime/execution-budget.js';
|
|
16
16
|
import { getCallIdFromObject } from '../interruption-info.js';
|
|
17
17
|
import { normalizeToolParameters } from '../../lib/tool-invoke.js';
|
|
18
|
-
import { ForegroundSubagentLease } from './foreground-subagent-lease.js';
|
|
18
|
+
import { ForegroundSubagentLease, } from './foreground-subagent-lease.js';
|
|
19
19
|
import { pinWorkerWorktree } from './worker-worktree.js';
|
|
20
|
+
import { classifyPoolEntryFailure } from '../retry/provider-failure-classification.js';
|
|
21
|
+
import { streamHasCommittedOutput } from '../agent-stream.js';
|
|
20
22
|
const AGENT_TOOL_ERROR_PREFIX = 'An error occurred while running the tool. Please try again. Error:';
|
|
21
23
|
// Turn counting used to live here as a `callModelInputFilter` hook, which the
|
|
22
24
|
// SDK-shaped tool wrapper dropped on the floor. `ApplicationRunLoop` owns it
|
|
@@ -181,6 +183,9 @@ export class NestedSubagentRunner {
|
|
|
181
183
|
if (options?.applyPool) {
|
|
182
184
|
definition = this.#rolePoolSelector.resolveForSpawn(role, definition);
|
|
183
185
|
}
|
|
186
|
+
return this.#buildDefinitionTool(definition, role, options);
|
|
187
|
+
}
|
|
188
|
+
#buildDefinitionTool(definition, role, options) {
|
|
184
189
|
const searchViaShell = resolveSubagentSearchViaShell(this.#settings, definition.canRunShell);
|
|
185
190
|
const runExecutionContext = options?.executionContext ?? this.#executionContext;
|
|
186
191
|
const toolDefinitions = this.#toolFactory.buildToolDefinitions(definition, [], '', searchViaShell, true, undefined, undefined, undefined, options?.executionContext ? { executionContext: options.executionContext } : undefined);
|
|
@@ -353,25 +358,40 @@ export class NestedSubagentRunner {
|
|
|
353
358
|
agentId: runContext.agentId,
|
|
354
359
|
role,
|
|
355
360
|
});
|
|
356
|
-
if (!stream.interruptions?.length || !
|
|
361
|
+
if (!stream.interruptions?.length || !stream.state)
|
|
357
362
|
break;
|
|
358
363
|
let resumed;
|
|
359
|
-
const
|
|
364
|
+
const continueOriginalStream = () => {
|
|
360
365
|
resumed = trafficContext
|
|
361
366
|
? this.#sessionContextService.runWithContext(trafficContext, () => loop.continueRunStream(stream.state))
|
|
362
367
|
: loop.continueRunStream(stream.state);
|
|
363
|
-
}
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
368
|
+
};
|
|
369
|
+
const continued = foregroundLease?.adopted
|
|
370
|
+
? await foregroundLease.waitForBackgroundContinuation(stream.state, stream.interruptions[0], continueOriginalStream, (snapshot) => {
|
|
371
|
+
this.#onEvent?.({
|
|
372
|
+
type: 'subagent_approval_required',
|
|
373
|
+
agentId: runContext.agentId,
|
|
374
|
+
role,
|
|
375
|
+
});
|
|
376
|
+
this.#backgroundApprovalPauseSink?.({
|
|
377
|
+
...snapshot,
|
|
378
|
+
role,
|
|
379
|
+
apply: (callback) => foregroundLease.applyBackgroundApproval(snapshot, callback),
|
|
380
|
+
});
|
|
381
|
+
})
|
|
382
|
+
: foregroundLease && detailsRecord?.foregroundChildApproval
|
|
383
|
+
? await foregroundLease.waitForForegroundContinuation(stream.state, stream.interruptions[0], continueOriginalStream, (_snapshot) => {
|
|
384
|
+
this.#onEvent?.({
|
|
385
|
+
type: 'subagent_approval_required',
|
|
386
|
+
agentId: runContext.agentId,
|
|
387
|
+
role,
|
|
388
|
+
});
|
|
389
|
+
}, (snapshot) => detailsRecord.foregroundChildApproval({
|
|
390
|
+
...snapshot,
|
|
391
|
+
role,
|
|
392
|
+
apply: (callback) => foregroundLease.applyForegroundApproval(snapshot, callback),
|
|
393
|
+
}))
|
|
394
|
+
: false;
|
|
375
395
|
if (!continued || !resumed)
|
|
376
396
|
break;
|
|
377
397
|
stream = resumed;
|
|
@@ -434,6 +454,9 @@ export class NestedSubagentRunner {
|
|
|
434
454
|
};
|
|
435
455
|
return JSON.stringify(failureResult);
|
|
436
456
|
}
|
|
457
|
+
if (error && typeof error === 'object' && !streamHasCommittedOutput(stream) && toolCallCount === 0) {
|
|
458
|
+
error.poolFailoverSafe = true;
|
|
459
|
+
}
|
|
437
460
|
throw error;
|
|
438
461
|
}
|
|
439
462
|
const interrupted = Boolean(stream.interruptions?.length);
|
|
@@ -458,19 +481,22 @@ export class NestedSubagentRunner {
|
|
|
458
481
|
};
|
|
459
482
|
}
|
|
460
483
|
async runAsTool(request, context, details) {
|
|
461
|
-
|
|
484
|
+
const generic = request.resolvedDefinition !== undefined;
|
|
485
|
+
if (!generic && !SUBAGENT_ROLES.includes(request.role)) {
|
|
462
486
|
throw new Error(`Unsupported subagent role: "${request.role}"`);
|
|
463
487
|
}
|
|
464
488
|
const role = request.role;
|
|
465
489
|
const detailsRecord = details;
|
|
466
490
|
let worktreePath;
|
|
467
491
|
let pinnedRoleTool;
|
|
492
|
+
let pinnedExecutionContext;
|
|
468
493
|
if (request.worktree) {
|
|
469
494
|
const pin = await pinWorkerWorktree({
|
|
470
495
|
name: request.worktree,
|
|
471
496
|
role: request.role,
|
|
472
497
|
homeRoot: this.#executionContext?.getHomeWorkspace() ?? process.cwd(),
|
|
473
498
|
isRemote: this.#executionContext?.isRemote() ?? false,
|
|
499
|
+
authorizedPath: request.authorizedWorktreePath,
|
|
474
500
|
});
|
|
475
501
|
if (!pin.ok) {
|
|
476
502
|
const agentId = detailsRecord?.toolCall?.callId ?? randomUUID();
|
|
@@ -487,7 +513,12 @@ export class NestedSubagentRunner {
|
|
|
487
513
|
return failed;
|
|
488
514
|
}
|
|
489
515
|
worktreePath = pin.worktreePath;
|
|
490
|
-
|
|
516
|
+
pinnedExecutionContext = pin.executionContext;
|
|
517
|
+
pinnedRoleTool = generic
|
|
518
|
+
? this.#buildDefinitionTool(request.resolvedDefinition, request.role, {
|
|
519
|
+
executionContext: pin.executionContext,
|
|
520
|
+
})
|
|
521
|
+
: this.#buildRoleTool(role, { executionContext: pin.executionContext, applyPool: true });
|
|
491
522
|
}
|
|
492
523
|
// ── Budget enforcement ──
|
|
493
524
|
// Only acquire a slot for fresh runs, not resumed ones (resumed runs
|
|
@@ -510,8 +541,12 @@ export class NestedSubagentRunner {
|
|
|
510
541
|
// this same tool call (SDK-level continuation), not a new spawn: it must
|
|
511
542
|
// reuse whatever tool the original call resolved to rather than drawing
|
|
512
543
|
// another pool entry, so it always takes the cache path.
|
|
513
|
-
|
|
514
|
-
(
|
|
544
|
+
let roleTool = pinnedRoleTool ??
|
|
545
|
+
(generic
|
|
546
|
+
? this.#buildDefinitionTool(request.resolvedDefinition, request.role)
|
|
547
|
+
: detailsRecord?.resumeState
|
|
548
|
+
? this.#getOrCreateRoleTool(role)
|
|
549
|
+
: this.#resolveRoleToolForSpawn(role));
|
|
515
550
|
const lease = new ForegroundSubagentLease({
|
|
516
551
|
runId: candidateRunId,
|
|
517
552
|
parentSignal: parentComposite?.signal,
|
|
@@ -565,8 +600,7 @@ export class NestedSubagentRunner {
|
|
|
565
600
|
let abortListener;
|
|
566
601
|
let transferredToBackground = false;
|
|
567
602
|
try {
|
|
568
|
-
|
|
569
|
-
replayApprovals(nestedLedger, readParentApprovals(context), roleAgent);
|
|
603
|
+
replayApprovals(nestedLedger, readParentApprovals(context), roleTool.agent);
|
|
570
604
|
const nestedToolContext = {
|
|
571
605
|
context: runContext,
|
|
572
606
|
approvals: nestedLedger,
|
|
@@ -579,7 +613,40 @@ export class NestedSubagentRunner {
|
|
|
579
613
|
signal.addEventListener('abort', abortListener, { once: true });
|
|
580
614
|
})
|
|
581
615
|
: null;
|
|
582
|
-
const execution =
|
|
616
|
+
const execution = (async () => {
|
|
617
|
+
for (;;) {
|
|
618
|
+
try {
|
|
619
|
+
return await roleTool.tool.execute(normalizeToolParameters({ role, task: request.task }, roleTool.tool.parameters), nestedToolContext, effectiveDetails);
|
|
620
|
+
}
|
|
621
|
+
catch (error) {
|
|
622
|
+
const failure = classifyPoolEntryFailure(error);
|
|
623
|
+
if (generic ||
|
|
624
|
+
detailsRecord?.resumeState ||
|
|
625
|
+
!this.#rolePoolSelector.hasPool(role) ||
|
|
626
|
+
!failure ||
|
|
627
|
+
!error?.poolFailoverSafe ||
|
|
628
|
+
lease.adopted ||
|
|
629
|
+
signal?.aborted)
|
|
630
|
+
throw error;
|
|
631
|
+
const previous = roleTool.model;
|
|
632
|
+
this.#rolePoolSelector.markUnhealthy({ provider: previous.provider, model: previous.id }, failure);
|
|
633
|
+
roleTool = this.#buildRoleTool(role, {
|
|
634
|
+
...(pinnedExecutionContext ? { executionContext: pinnedExecutionContext } : {}),
|
|
635
|
+
applyPool: true,
|
|
636
|
+
});
|
|
637
|
+
lease.setModel(roleTool.model);
|
|
638
|
+
const candidate = this.#foregroundLeases.get(candidateRunId);
|
|
639
|
+
if (candidate)
|
|
640
|
+
candidate.model = roleTool.model;
|
|
641
|
+
this.#logger.warn('Subagent pool failover', {
|
|
642
|
+
role,
|
|
643
|
+
from: `${previous.provider}/${previous.id}`,
|
|
644
|
+
failure,
|
|
645
|
+
to: `${roleTool.model.provider}/${roleTool.model.id}`,
|
|
646
|
+
});
|
|
647
|
+
}
|
|
648
|
+
}
|
|
649
|
+
})();
|
|
583
650
|
const promises = [execution];
|
|
584
651
|
if (abortPromise) {
|
|
585
652
|
promises.push(abortPromise);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nested-runner.js","sourceRoot":"","sources":["../../../source/services/subagents/nested-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nested-runner.js","sourceRoot":"","sources":["../../../source/services/subagents/nested-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../source/services/subagents/runtime.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAuB,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAGrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,gCAAgC,CAAC;AAE1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../source/services/subagents/runtime.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAuB,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAGrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,gCAAgC,CAAC;AAE1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGzE,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,eAAe,CAAC;IACxB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,qBAAqB,EAAE,sBAAsB,CAAC;IAC9C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7C,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,YAAY,CAAC,EAAE,sBAAsB,CAAC,cAAc,CAAC,CAAC;IACtD,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa,EAAE,qBAAqB,CAAC;IACrC,2EAA2E;IAC3E,mBAAmB,CAAC,EAAE,4BAA4B,CAAC;IACnD,2EAA2E;IAC3E,2BAA2B,CAAC,EAAE,mCAAmC,CAAC;IAClE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,WAAW,EAAE,mBAAmB,CAAC;IACjC,YAAY,EAAE,oBAAoB,CAAC;IACnC,eAAe,EAAE,uBAAuB,CAAC;IACzC,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,qBAAqB,CAAC;IACrC,sEAAsE;IACtE,mBAAmB,EAAE,4BAA4B,CAAC;CACnD;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,GAAG,eAAe,CAoLhF"}
|
|
@@ -8,6 +8,7 @@ import { SubagentSession } from './subagent-session.js';
|
|
|
8
8
|
import { loadRoleDefinition } from './role-loader.js';
|
|
9
9
|
import { NestedToolCompatibilityState } from '../session/nested-tool-compatibility-state.js';
|
|
10
10
|
import { SubagentRolePoolSelector } from './subagent-role-pool-selector.js';
|
|
11
|
+
import { classifyPoolEntryFailure } from '../retry/provider-failure-classification.js';
|
|
11
12
|
export function createSubagentRuntime(deps) {
|
|
12
13
|
const nestedCompatibility = deps.nestedCompatibility ?? new NestedToolCompatibilityState(deps.settings);
|
|
13
14
|
// Peek (get_subagent_status): route subagent_tool_started events into the
|
|
@@ -75,10 +76,33 @@ export function createSubagentRuntime(deps) {
|
|
|
75
76
|
});
|
|
76
77
|
// Reviewer explorers are fresh, contained child runs: their events are not
|
|
77
78
|
// forwarded, so they never surface as orphan activity in the parent session.
|
|
78
|
-
toolFactory.setExplorerRunner((task, signal) => {
|
|
79
|
+
toolFactory.setExplorerRunner(async (task, signal) => {
|
|
79
80
|
const agentId = randomUUID();
|
|
80
|
-
const
|
|
81
|
-
|
|
81
|
+
const session = new SubagentSession(agentId, 'explorer');
|
|
82
|
+
let definition = rolePoolSelector.resolveForSpawn('explorer', loadRoleDefinition('explorer', deps.settings));
|
|
83
|
+
for (;;) {
|
|
84
|
+
let receivedOutput = false;
|
|
85
|
+
const result = await executionRunner.runInSession(agentId, { role: 'explorer', task, signal, parentTool: 'run_explorer' }, definition, session, undefined, signal, (event) => {
|
|
86
|
+
if (event.type === 'subagent_streaming_text' || event.type === 'subagent_tool_started')
|
|
87
|
+
receivedOutput = true;
|
|
88
|
+
});
|
|
89
|
+
const failure = result.status === 'failed' ? classifyPoolEntryFailure(result.error) : undefined;
|
|
90
|
+
if (!failure ||
|
|
91
|
+
receivedOutput ||
|
|
92
|
+
result.toolsUsed.length > 0 ||
|
|
93
|
+
signal?.aborted ||
|
|
94
|
+
!rolePoolSelector.hasPool('explorer'))
|
|
95
|
+
return result;
|
|
96
|
+
rolePoolSelector.markUnhealthy(definition, failure);
|
|
97
|
+
const next = rolePoolSelector.resolveForSpawn('explorer', loadRoleDefinition('explorer', deps.settings));
|
|
98
|
+
deps.logger.warn('Subagent pool failover', {
|
|
99
|
+
role: 'explorer',
|
|
100
|
+
from: `${definition.provider}/${definition.model}`,
|
|
101
|
+
failure,
|
|
102
|
+
to: `${next.provider}/${next.model}`,
|
|
103
|
+
});
|
|
104
|
+
definition = next;
|
|
105
|
+
}
|
|
82
106
|
});
|
|
83
107
|
const mentorSession = new SubagentSession('mentor', 'mentor');
|
|
84
108
|
const mentorRunner = new MentorRunner({
|
|
@@ -101,7 +125,7 @@ export function createSubagentRuntime(deps) {
|
|
|
101
125
|
// recomputing per segment would draw another pool entry per turn
|
|
102
126
|
// instead of once per spawn. The fallback only covers callers that
|
|
103
127
|
// never went through `resolveDefinition` (e.g. a bare test double).
|
|
104
|
-
const resolvedDefinition = definition ?? loadRoleDefinition(request.role, deps.settings);
|
|
128
|
+
const resolvedDefinition = definition ?? request.resolvedDefinition ?? loadRoleDefinition(request.role, deps.settings);
|
|
105
129
|
return executionRunner.runInSession(runId, { ...request, signal }, {
|
|
106
130
|
...resolvedDefinition,
|
|
107
131
|
...(request.executionBudget ? { executionBudget: request.executionBudget } : {}),
|
|
@@ -118,6 +142,8 @@ export function createSubagentRuntime(deps) {
|
|
|
118
142
|
const base = loadRoleDefinition(role, deps.settings);
|
|
119
143
|
return rolePoolSelector.resolveForSpawn(role, base);
|
|
120
144
|
},
|
|
145
|
+
markPoolEntryUnhealthy: (definition, failure) => rolePoolSelector.markUnhealthy(definition, failure),
|
|
146
|
+
hasModelPool: (role) => role !== 'agent' && rolePoolSelector.hasPool(role),
|
|
121
147
|
modelForRole: (role) => {
|
|
122
148
|
const mentorPool = role === 'mentor' ? deps.settings.get('agent.mentorPool') : undefined;
|
|
123
149
|
if (Array.isArray(mentorPool) && mentorPool.length > 0)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../source/services/subagents/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKzC,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAuB,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAE7F,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../source/services/subagents/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import type { ConversationEvent } from '../conversation/conversation-events.js';
|
|
|
3
3
|
import type { SubagentDefinition, SubagentRequest, SubagentResult, SubagentRunHandle, SubagentRunStatus, SubagentSegmentControl, SubagentCancelAcknowledgement, SubagentSteerAcknowledgement } from './types.js';
|
|
4
4
|
import { SubagentSession } from './subagent-session.js';
|
|
5
5
|
import { ForegroundSubagentLease } from './foreground-subagent-lease.js';
|
|
6
|
+
import type { PoolEntryFailure } from './subagent-role-pool-selector.js';
|
|
6
7
|
export declare const SUBAGENT_RUN_NAME_PATTERN: RegExp;
|
|
7
8
|
export type SubagentRegistryErrorCode = 'not_found' | 'role_mismatch' | 'not_continuable' | 'already_active' | 'worker_blocked' | 'evicted' | 'invalid_name' | 'name_in_use';
|
|
8
9
|
export declare class SubagentRegistryError extends Error {
|
|
@@ -45,6 +46,8 @@ export interface SubagentAsyncRegistryDeps {
|
|
|
45
46
|
* that pool's cursor here — see `SubagentRolePoolSelector`.
|
|
46
47
|
*/
|
|
47
48
|
resolveDefinition?: (role: string) => SubagentDefinition;
|
|
49
|
+
markPoolEntryUnhealthy?: (definition: SubagentDefinition, failure: PoolEntryFailure) => void;
|
|
50
|
+
hasModelPool?: (role: string) => boolean;
|
|
48
51
|
setInterval?: (callback: () => void, delay: number) => ReturnType<typeof setInterval>;
|
|
49
52
|
clearInterval?: (timer: ReturnType<typeof setInterval>) => void;
|
|
50
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagent-async-registry.d.ts","sourceRoot":"","sources":["../../../source/services/subagents/subagent-async-registry.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAyB,MAAM,0BAA0B,CAAC;AAC/G,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,OAAO,KAAK,EAEV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,6BAA6B,EAC7B,4BAA4B,EAE7B,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAGzE,eAAO,MAAM,yBAAyB,QAA4B,CAAC;AAanE,MAAM,MAAM,yBAAyB,GACjC,WAAW,GACX,eAAe,GACf,iBAAiB,GACjB,gBAAgB,GAChB,gBAAgB,GAChB,SAAS,GACT,cAAc,GACd,aAAa,CAAC;AAElB,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC;IACzC,YAAY,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,EAI3D;CACF;
|
|
1
|
+
{"version":3,"file":"subagent-async-registry.d.ts","sourceRoot":"","sources":["../../../source/services/subagents/subagent-async-registry.ts"],"names":[],"mappings":"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"}
|