@action-llama/action-llama 0.27.5 → 0.29.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/agents/credential-setup.d.ts +0 -1
- package/dist/agents/credential-setup.d.ts.map +1 -1
- package/dist/agents/credential-setup.js +2 -23
- package/dist/agents/credential-setup.js.map +1 -1
- package/dist/agents/prompt.d.ts.map +1 -1
- package/dist/agents/prompt.js +12 -50
- package/dist/agents/prompt.js.map +1 -1
- package/dist/agents/scheduler-tools.d.ts +47 -0
- package/dist/agents/scheduler-tools.d.ts.map +1 -0
- package/dist/agents/scheduler-tools.js +276 -0
- package/dist/agents/scheduler-tools.js.map +1 -0
- package/dist/agents/status-reporter.d.ts +1 -1
- package/dist/agents/status-reporter.js +1 -1
- package/dist/agents/transport-runner.d.ts +123 -0
- package/dist/agents/transport-runner.d.ts.map +1 -0
- package/dist/agents/transport-runner.js +791 -0
- package/dist/agents/transport-runner.js.map +1 -0
- package/dist/build-info.json +1 -1
- package/dist/cli/commands/add.d.ts +1 -0
- package/dist/cli/commands/add.d.ts.map +1 -1
- package/dist/cli/commands/add.js +24 -9
- package/dist/cli/commands/add.js.map +1 -1
- package/dist/cli/commands/agent.d.ts +0 -3
- package/dist/cli/commands/agent.d.ts.map +1 -1
- package/dist/cli/commands/agent.js +3 -67
- package/dist/cli/commands/agent.js.map +1 -1
- package/dist/cli/commands/logs.d.ts.map +1 -1
- package/dist/cli/commands/logs.js +51 -339
- package/dist/cli/commands/logs.js.map +1 -1
- package/dist/cli/main.js +1 -30
- package/dist/cli/main.js.map +1 -1
- package/dist/control/routes/dashboard-api.d.ts.map +1 -1
- package/dist/control/routes/dashboard-api.js +3 -2
- package/dist/control/routes/dashboard-api.js.map +1 -1
- package/dist/control/routes/log-helpers.d.ts +4 -4
- package/dist/control/routes/log-helpers.d.ts.map +1 -1
- package/dist/control/routes/log-helpers.js +12 -7
- package/dist/control/routes/log-helpers.js.map +1 -1
- package/dist/control/routes/logs.d.ts.map +1 -1
- package/dist/control/routes/logs.js +10 -10
- package/dist/control/routes/logs.js.map +1 -1
- package/dist/control/session-store.js +1 -1
- package/dist/control/session-store.js.map +1 -1
- package/dist/docker/image.d.ts +26 -12
- package/dist/docker/image.d.ts.map +1 -1
- package/dist/docker/image.js +80 -88
- package/dist/docker/image.js.map +1 -1
- package/dist/docker/local-runtime.js +1 -1
- package/dist/docker/local-runtime.js.map +1 -1
- package/dist/docker/providers/index.d.ts +0 -4
- package/dist/docker/providers/index.d.ts.map +1 -1
- package/dist/docker/providers/index.js +0 -38
- package/dist/docker/providers/index.js.map +1 -1
- package/dist/docker/ssh-docker-runtime.js +1 -1
- package/dist/docker/ssh-docker-runtime.js.map +1 -1
- package/dist/execution/execution.d.ts +4 -2
- package/dist/execution/execution.d.ts.map +1 -1
- package/dist/execution/execution.js +14 -9
- package/dist/execution/execution.js.map +1 -1
- package/dist/execution/index.d.ts +1 -11
- package/dist/execution/index.d.ts.map +1 -1
- package/dist/execution/index.js +1 -8
- package/dist/execution/index.js.map +1 -1
- package/dist/execution/lifecycle/agent-lifecycle.d.ts +7 -0
- package/dist/execution/lifecycle/agent-lifecycle.d.ts.map +1 -1
- package/dist/execution/lifecycle/agent-lifecycle.js +65 -5
- package/dist/execution/lifecycle/agent-lifecycle.js.map +1 -1
- package/dist/execution/lifecycle/index.d.ts +2 -2
- package/dist/execution/lifecycle/index.d.ts.map +1 -1
- package/dist/execution/lifecycle/index.js +4 -2
- package/dist/execution/lifecycle/index.js.map +1 -1
- package/dist/execution/lifecycle/instance-lifecycle.d.ts +24 -0
- package/dist/execution/lifecycle/instance-lifecycle.d.ts.map +1 -1
- package/dist/execution/lifecycle/instance-lifecycle.js +41 -3
- package/dist/execution/lifecycle/instance-lifecycle.js.map +1 -1
- package/dist/execution/runner-setup.d.ts +9 -11
- package/dist/execution/runner-setup.d.ts.map +1 -1
- package/dist/execution/runner-setup.js +19 -14
- package/dist/execution/runner-setup.js.map +1 -1
- package/dist/execution/runtime-factory.d.ts +1 -15
- package/dist/execution/runtime-factory.d.ts.map +1 -1
- package/dist/execution/runtime-factory.js +1 -18
- package/dist/execution/runtime-factory.js.map +1 -1
- package/dist/execution/waiting-registry.d.ts +84 -0
- package/dist/execution/waiting-registry.d.ts.map +1 -0
- package/dist/execution/waiting-registry.js +185 -0
- package/dist/execution/waiting-registry.js.map +1 -0
- package/dist/frontend/assets/index-Bij4b7-g.js +16 -0
- package/dist/frontend/assets/index-Bij4b7-g.js.map +1 -0
- package/dist/frontend/assets/index-D11bfFWQ.css +2 -0
- package/dist/frontend/index.html +2 -2
- package/dist/gateway/index.d.ts +1 -1
- package/dist/gateway/index.d.ts.map +1 -1
- package/dist/gateway/index.js +6 -47
- package/dist/gateway/index.js.map +1 -1
- package/dist/gateway/routes/system.d.ts +1 -4
- package/dist/gateway/routes/system.d.ts.map +1 -1
- package/dist/gateway/routes/system.js +3 -8
- package/dist/gateway/routes/system.js.map +1 -1
- package/dist/gateway/stores.d.ts +0 -4
- package/dist/gateway/stores.d.ts.map +1 -1
- package/dist/gateway/stores.js +2 -10
- package/dist/gateway/stores.js.map +1 -1
- package/dist/gateway/types.d.ts +0 -13
- package/dist/gateway/types.d.ts.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +11 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/scheduler/gateway-setup.d.ts +0 -2
- package/dist/scheduler/gateway-setup.d.ts.map +1 -1
- package/dist/scheduler/gateway-setup.js +2 -11
- package/dist/scheduler/gateway-setup.js.map +1 -1
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +113 -55
- package/dist/scheduler/index.js.map +1 -1
- package/dist/scheduler/types.d.ts +1 -1
- package/dist/scheduler/types.d.ts.map +1 -1
- package/dist/scheduler/validation.js +1 -1
- package/dist/scheduler/validation.js.map +1 -1
- package/dist/scheduler/watcher.d.ts +2 -8
- package/dist/scheduler/watcher.d.ts.map +1 -1
- package/dist/scheduler/watcher.js +7 -104
- package/dist/scheduler/watcher.js.map +1 -1
- package/dist/shared/config/load-agent.js +2 -2
- package/dist/shared/config/load-agent.js.map +1 -1
- package/dist/shared/config/load-project.js +2 -2
- package/dist/shared/config/load-project.js.map +1 -1
- package/dist/shared/config/types.d.ts +12 -2
- package/dist/shared/config/types.d.ts.map +1 -1
- package/dist/shared/constants.d.ts +3 -1
- package/dist/shared/constants.d.ts.map +1 -1
- package/dist/shared/constants.js +4 -2
- package/dist/shared/constants.js.map +1 -1
- package/dist/shared/credential-refs.js +1 -1
- package/dist/shared/credential-refs.js.map +1 -1
- package/dist/shared/paths.d.ts.map +1 -1
- package/dist/shared/paths.js +2 -2
- package/dist/shared/paths.js.map +1 -1
- package/dist/shared/validation.js +1 -1
- package/dist/shared/validation.js.map +1 -1
- package/dist/transport/docker-exec.d.ts +41 -0
- package/dist/transport/docker-exec.d.ts.map +1 -0
- package/dist/transport/docker-exec.js +243 -0
- package/dist/transport/docker-exec.js.map +1 -0
- package/dist/transport/host-user.d.ts +37 -0
- package/dist/transport/host-user.d.ts.map +1 -0
- package/dist/transport/host-user.js +232 -0
- package/dist/transport/host-user.js.map +1 -0
- package/dist/transport/index.d.ts +8 -0
- package/dist/transport/index.d.ts.map +1 -0
- package/dist/transport/index.js +7 -0
- package/dist/transport/index.js.map +1 -0
- package/dist/transport/memory.d.ts +36 -0
- package/dist/transport/memory.d.ts.map +1 -0
- package/dist/transport/memory.js +113 -0
- package/dist/transport/memory.js.map +1 -0
- package/dist/transport/operations.d.ts +68 -0
- package/dist/transport/operations.d.ts.map +1 -0
- package/dist/transport/operations.js +164 -0
- package/dist/transport/operations.js.map +1 -0
- package/dist/transport/ssh.d.ts +43 -0
- package/dist/transport/ssh.d.ts.map +1 -0
- package/dist/transport/ssh.js +225 -0
- package/dist/transport/ssh.js.map +1 -0
- package/dist/transport/transport.d.ts +61 -0
- package/dist/transport/transport.d.ts.map +1 -0
- package/dist/transport/transport.js +29 -0
- package/dist/transport/transport.js.map +1 -0
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +5 -4
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/status-tracker.d.ts +11 -2
- package/dist/tui/status-tracker.d.ts.map +1 -1
- package/dist/tui/status-tracker.js +44 -0
- package/dist/tui/status-tracker.js.map +1 -1
- package/package.json +7 -2
- package/dist/agents/bash-prefix.d.ts +0 -9
- package/dist/agents/bash-prefix.d.ts.map +0 -1
- package/dist/agents/bash-prefix.js +0 -25
- package/dist/agents/bash-prefix.js.map +0 -1
- package/dist/agents/container-entry.d.ts +0 -31
- package/dist/agents/container-entry.d.ts.map +0 -1
- package/dist/agents/container-entry.js +0 -302
- package/dist/agents/container-entry.js.map +0 -1
- package/dist/agents/container-runner.d.ts +0 -59
- package/dist/agents/container-runner.d.ts.map +0 -1
- package/dist/agents/container-runner.js +0 -472
- package/dist/agents/container-runner.js.map +0 -1
- package/dist/agents/harness/claude-cli-harness.d.ts +0 -15
- package/dist/agents/harness/claude-cli-harness.d.ts.map +0 -1
- package/dist/agents/harness/claude-cli-harness.js +0 -260
- package/dist/agents/harness/claude-cli-harness.js.map +0 -1
- package/dist/agents/harness/consumer.d.ts +0 -31
- package/dist/agents/harness/consumer.d.ts.map +0 -1
- package/dist/agents/harness/consumer.js +0 -165
- package/dist/agents/harness/consumer.js.map +0 -1
- package/dist/agents/harness/factory.d.ts +0 -9
- package/dist/agents/harness/factory.d.ts.map +0 -1
- package/dist/agents/harness/factory.js +0 -25
- package/dist/agents/harness/factory.js.map +0 -1
- package/dist/agents/harness/index.d.ts +0 -9
- package/dist/agents/harness/index.d.ts.map +0 -1
- package/dist/agents/harness/index.js +0 -5
- package/dist/agents/harness/index.js.map +0 -1
- package/dist/agents/harness/pi-harness.d.ts +0 -18
- package/dist/agents/harness/pi-harness.d.ts.map +0 -1
- package/dist/agents/harness/pi-harness.js +0 -278
- package/dist/agents/harness/pi-harness.js.map +0 -1
- package/dist/agents/harness/types.d.ts +0 -57
- package/dist/agents/harness/types.d.ts.map +0 -1
- package/dist/agents/harness/types.js +0 -2
- package/dist/agents/harness/types.js.map +0 -1
- package/dist/agents/session-loop.d.ts +0 -36
- package/dist/agents/session-loop.d.ts.map +0 -1
- package/dist/agents/session-loop.js +0 -216
- package/dist/agents/session-loop.js.map +0 -1
- package/dist/agents/signals.d.ts +0 -34
- package/dist/agents/signals.d.ts.map +0 -1
- package/dist/agents/signals.js +0 -122
- package/dist/agents/signals.js.map +0 -1
- package/dist/cli/commands/claude.d.ts +0 -4
- package/dist/cli/commands/claude.d.ts.map +0 -1
- package/dist/cli/commands/claude.js +0 -6
- package/dist/cli/commands/claude.js.map +0 -1
- package/dist/cli/commands/run-agent.d.ts +0 -14
- package/dist/cli/commands/run-agent.d.ts.map +0 -1
- package/dist/cli/commands/run-agent.js +0 -270
- package/dist/cli/commands/run-agent.js.map +0 -1
- package/dist/docker/cloud-run-runtime.d.ts +0 -48
- package/dist/docker/cloud-run-runtime.d.ts.map +0 -1
- package/dist/docker/cloud-run-runtime.js +0 -490
- package/dist/docker/cloud-run-runtime.js.map +0 -1
- package/dist/execution/call-dispatcher.d.ts +0 -11
- package/dist/execution/call-dispatcher.d.ts.map +0 -1
- package/dist/execution/call-dispatcher.js +0 -75
- package/dist/execution/call-dispatcher.js.map +0 -1
- package/dist/execution/container-registry.d.ts +0 -42
- package/dist/execution/container-registry.d.ts.map +0 -1
- package/dist/execution/container-registry.js +0 -76
- package/dist/execution/container-registry.js.map +0 -1
- package/dist/execution/image-builder.d.ts +0 -48
- package/dist/execution/image-builder.d.ts.map +0 -1
- package/dist/execution/image-builder.js +0 -155
- package/dist/execution/image-builder.js.map +0 -1
- package/dist/execution/routes/calls.d.ts +0 -18
- package/dist/execution/routes/calls.d.ts.map +0 -1
- package/dist/execution/routes/calls.js +0 -74
- package/dist/execution/routes/calls.js.map +0 -1
- package/dist/execution/routes/locks.d.ts +0 -10
- package/dist/execution/routes/locks.d.ts.map +0 -1
- package/dist/execution/routes/locks.js +0 -166
- package/dist/execution/routes/locks.js.map +0 -1
- package/dist/execution/routes/shutdown.d.ts +0 -5
- package/dist/execution/routes/shutdown.d.ts.map +0 -1
- package/dist/execution/routes/shutdown.js +0 -24
- package/dist/execution/routes/shutdown.js.map +0 -1
- package/dist/execution/routes/signals.d.ts +0 -12
- package/dist/execution/routes/signals.d.ts.map +0 -1
- package/dist/execution/routes/signals.js +0 -123
- package/dist/execution/routes/signals.js.map +0 -1
- package/dist/execution/types.d.ts +0 -23
- package/dist/execution/types.d.ts.map +0 -1
- package/dist/execution/types.js +0 -2
- package/dist/execution/types.js.map +0 -1
- package/dist/frontend/assets/index-DnSu-8Kw.js +0 -16
- package/dist/frontend/assets/index-DnSu-8Kw.js.map +0 -1
- package/dist/frontend/assets/index-Z0IOXEax.css +0 -2
- package/dist/gateway/routes/execution.d.ts +0 -24
- package/dist/gateway/routes/execution.d.ts.map +0 -1
- package/dist/gateway/routes/execution.js +0 -13
- package/dist/gateway/routes/execution.js.map +0 -1
- package/dist/scheduler/orphan-recovery.d.ts +0 -25
- package/dist/scheduler/orphan-recovery.d.ts.map +0 -1
- package/dist/scheduler/orphan-recovery.js +0 -144
- package/dist/scheduler/orphan-recovery.js.map +0 -1
- package/docker/bin/_http-exit +0 -35
- package/docker/bin/al-exit +0 -4
- package/docker/bin/al-export +0 -50
- package/docker/bin/al-rerun +0 -8
- package/docker/bin/al-return +0 -14
- package/docker/bin/al-shutdown +0 -5
- package/docker/bin/al-status +0 -9
- package/docker/bin/al-subagent +0 -13
- package/docker/bin/al-subagent-check +0 -10
- package/docker/bin/al-subagent-wait +0 -37
- package/docker/bin/rlock +0 -12
- package/docker/bin/rlock-heartbeat +0 -12
- package/docker/bin/runlock +0 -12
|
@@ -2,22 +2,12 @@ export { LockStore } from "./lock-store.js";
|
|
|
2
2
|
export type { LockEntry, AcquireResult } from "./lock-store.js";
|
|
3
3
|
export { CallStore } from "./call-store.js";
|
|
4
4
|
export type { CallStatus, CallEntry } from "./call-store.js";
|
|
5
|
-
export { ContainerRegistry } from "./container-registry.js";
|
|
6
|
-
export type { ContainerRegistration, RerunRequest, StatusRequest, TriggerRequest, ReturnRequest } from "./types.js";
|
|
7
5
|
export { RunnerPool } from "./runner-pool.js";
|
|
8
6
|
export type { PoolRunner } from "./runner-pool.js";
|
|
9
|
-
export { registerLockRoutes } from "./routes/locks.js";
|
|
10
|
-
export { registerCallRoutes } from "./routes/calls.js";
|
|
11
|
-
export type { CallDispatcher } from "./routes/calls.js";
|
|
12
|
-
export { registerSignalRoutes } from "./routes/signals.js";
|
|
13
|
-
export type { SignalContext } from "./routes/signals.js";
|
|
14
|
-
export { registerShutdownRoute } from "./routes/shutdown.js";
|
|
15
7
|
export { executeRun, dispatchTriggers, drainQueues, runWithReruns, makeScheduledPrompt, makeWebhookPrompt, makeTriggeredPrompt, DEFAULT_MAX_RERUNS, DEFAULT_MAX_TRIGGER_DEPTH, } from "./execution.js";
|
|
16
8
|
export type { SchedulerContext, WorkItem, RunCompleteEvent } from "./execution.js";
|
|
17
9
|
export { createRunnerPools } from "./runner-setup.js";
|
|
18
|
-
export { createContainerRuntime
|
|
19
|
-
export { buildAllImages, buildSingleAgentImage } from "./image-builder.js";
|
|
20
|
-
export { wireCallDispatcher } from "./call-dispatcher.js";
|
|
10
|
+
export { createContainerRuntime } from "./runtime-factory.js";
|
|
21
11
|
export { dispatchOrQueue } from "./dispatch-policy.js";
|
|
22
12
|
export type { DispatchResult, DispatchOptions } from "./dispatch-policy.js";
|
|
23
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/execution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/execution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EACL,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EACxD,mBAAmB,EAAE,iBAAiB,EAAE,mBAAmB,EAC3D,kBAAkB,EAAE,yBAAyB,GAC9C,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/execution/index.js
CHANGED
|
@@ -1,15 +1,8 @@
|
|
|
1
1
|
export { LockStore } from "./lock-store.js";
|
|
2
2
|
export { CallStore } from "./call-store.js";
|
|
3
|
-
export { ContainerRegistry } from "./container-registry.js";
|
|
4
3
|
export { RunnerPool } from "./runner-pool.js";
|
|
5
|
-
export { registerLockRoutes } from "./routes/locks.js";
|
|
6
|
-
export { registerCallRoutes } from "./routes/calls.js";
|
|
7
|
-
export { registerSignalRoutes } from "./routes/signals.js";
|
|
8
|
-
export { registerShutdownRoute } from "./routes/shutdown.js";
|
|
9
4
|
export { executeRun, dispatchTriggers, drainQueues, runWithReruns, makeScheduledPrompt, makeWebhookPrompt, makeTriggeredPrompt, DEFAULT_MAX_RERUNS, DEFAULT_MAX_TRIGGER_DEPTH, } from "./execution.js";
|
|
10
5
|
export { createRunnerPools } from "./runner-setup.js";
|
|
11
|
-
export { createContainerRuntime
|
|
12
|
-
export { buildAllImages, buildSingleAgentImage } from "./image-builder.js";
|
|
13
|
-
export { wireCallDispatcher } from "./call-dispatcher.js";
|
|
6
|
+
export { createContainerRuntime } from "./runtime-factory.js";
|
|
14
7
|
export { dispatchOrQueue } from "./dispatch-policy.js";
|
|
15
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/execution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/execution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EACL,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EACxD,mBAAmB,EAAE,iBAAiB,EAAE,mBAAmB,EAC3D,kBAAkB,EAAE,yBAAyB,GAC9C,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -3,6 +3,7 @@ import type { InstanceLifecycle } from "./instance-lifecycle.js";
|
|
|
3
3
|
export interface AgentInfo {
|
|
4
4
|
name: string;
|
|
5
5
|
runningInstanceCount: number;
|
|
6
|
+
waitingInstanceCount: number;
|
|
6
7
|
totalInstanceCount: number;
|
|
7
8
|
lastRunAt: Date | null;
|
|
8
9
|
lastBuildAt: Date | null;
|
|
@@ -109,6 +110,12 @@ export declare class AgentLifecycle extends BaseStateMachine<AgentState> {
|
|
|
109
110
|
hasError(): boolean;
|
|
110
111
|
private _handleInstanceStart;
|
|
111
112
|
private _handleInstanceEnd;
|
|
113
|
+
private _handleInstanceWait;
|
|
114
|
+
private _handleInstanceResume;
|
|
115
|
+
/**
|
|
116
|
+
* Compute the appropriate agent state from instance counts.
|
|
117
|
+
*/
|
|
118
|
+
private _computeAgentState;
|
|
112
119
|
private _updateStateFromInstanceCount;
|
|
113
120
|
}
|
|
114
121
|
//# sourceMappingURL=agent-lifecycle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/execution/lifecycle/agent-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,KAAK,UAAU,EACf,KAAK,oBAAoB,EAE1B,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,WAAW,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACnE,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,qBAAsB,SAAQ,oBAAoB;IACjE,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;CAC1C;AAED,MAAM,WAAW,eAAgB,SAAQ,oBAAoB;IAC3D,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,cAAe,SAAQ,gBAAgB,CAAC,UAAU,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAY;IACxB,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,SAAS,CAAwC;gBAE7C,SAAS,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"agent-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/execution/lifecycle/agent-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,KAAK,UAAU,EACf,KAAK,oBAAoB,EAE1B,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,WAAW,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACnE,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,qBAAsB,SAAQ,oBAAoB;IACjE,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;CAC1C;AAED,MAAM,WAAW,eAAgB,SAAQ,oBAAoB;IAC3D,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,cAAe,SAAQ,gBAAgB,CAAC,UAAU,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAY;IACxB,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,SAAS,CAAwC;gBAE7C,SAAS,EAAE,MAAM;IAY7B;;OAEG;IACH,OAAO,IAAI,QAAQ,CAAC,SAAS,CAAC;IAI9B;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,IAAI,oBAAoB,IAAI,MAAM,CAEjC;IAED;;OAEG;IACH,IAAI,kBAAkB,IAAI,MAAM,CAE/B;IAED;;OAEG;IACH,YAAY,IAAI,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC;IAItD;;;OAGG;IACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAYjC;;OAEG;IACH,aAAa,IAAI,IAAI;IAyBrB;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IA8B9C;;;OAGG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAoB3C;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAY7B;;OAEG;IACH,UAAU,IAAI,IAAI;IAiBlB;;OAEG;IACH,QAAQ,IAAI,MAAM,GAAG,SAAS;IAI9B;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB,OAAO,CAAC,oBAAoB;IA4B5B,OAAO,CAAC,kBAAkB;IAoC1B,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,qBAAqB;IAoB7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,6BAA6B;CAiBtC"}
|
|
@@ -20,6 +20,7 @@ export class AgentLifecycle extends BaseStateMachine {
|
|
|
20
20
|
this.info = {
|
|
21
21
|
name: agentName,
|
|
22
22
|
runningInstanceCount: 0,
|
|
23
|
+
waitingInstanceCount: 0,
|
|
23
24
|
totalInstanceCount: 0,
|
|
24
25
|
lastRunAt: null,
|
|
25
26
|
lastBuildAt: null,
|
|
@@ -105,6 +106,12 @@ export class AgentLifecycle extends BaseStateMachine {
|
|
|
105
106
|
instance.on("instance:kill", () => {
|
|
106
107
|
this._handleInstanceEnd(instance, "killed");
|
|
107
108
|
});
|
|
109
|
+
instance.on("instance:wait", () => {
|
|
110
|
+
this._handleInstanceWait(instance);
|
|
111
|
+
});
|
|
112
|
+
instance.on("instance:resume", () => {
|
|
113
|
+
this._handleInstanceResume(instance);
|
|
114
|
+
});
|
|
108
115
|
}
|
|
109
116
|
/**
|
|
110
117
|
* Remove an instance from tracking
|
|
@@ -117,11 +124,15 @@ export class AgentLifecycle extends BaseStateMachine {
|
|
|
117
124
|
// Remove all listeners
|
|
118
125
|
instance.removeAllListeners();
|
|
119
126
|
this.instances.delete(instanceId);
|
|
120
|
-
// Update
|
|
127
|
+
// Update counts if it was running or waiting
|
|
121
128
|
if (instance.isRunning()) {
|
|
122
129
|
this.info.runningInstanceCount = Math.max(0, this.info.runningInstanceCount - 1);
|
|
123
130
|
this._updateStateFromInstanceCount();
|
|
124
131
|
}
|
|
132
|
+
else if (instance.isWaiting()) {
|
|
133
|
+
this.info.waitingInstanceCount = Math.max(0, this.info.waitingInstanceCount - 1);
|
|
134
|
+
this._updateStateFromInstanceCount();
|
|
135
|
+
}
|
|
125
136
|
return true;
|
|
126
137
|
}
|
|
127
138
|
/**
|
|
@@ -196,10 +207,16 @@ export class AgentLifecycle extends BaseStateMachine {
|
|
|
196
207
|
}
|
|
197
208
|
}
|
|
198
209
|
_handleInstanceEnd(instance, reason) {
|
|
199
|
-
|
|
210
|
+
// A waiting instance that ends needs waitingCount decremented, not runningCount
|
|
211
|
+
if (instance.isWaiting?.() || (reason === 'killed' && this.info.waitingInstanceCount > 0 && this.info.runningInstanceCount === 0)) {
|
|
212
|
+
this.info.waitingInstanceCount = Math.max(0, this.info.waitingInstanceCount - 1);
|
|
213
|
+
}
|
|
214
|
+
else {
|
|
215
|
+
this.info.runningInstanceCount = Math.max(0, this.info.runningInstanceCount - 1);
|
|
216
|
+
}
|
|
200
217
|
// Only transition states if not in error or building state
|
|
201
|
-
if (this.currentState === "running") {
|
|
202
|
-
const targetState = this.
|
|
218
|
+
if (this.currentState === "running" || this.currentState === "waiting") {
|
|
219
|
+
const targetState = this._computeAgentState();
|
|
203
220
|
this.transition(targetState, "agent:instance-end", {
|
|
204
221
|
agentName: this.info.name,
|
|
205
222
|
instanceId: instance.instanceId,
|
|
@@ -220,12 +237,55 @@ export class AgentLifecycle extends BaseStateMachine {
|
|
|
220
237
|
});
|
|
221
238
|
}
|
|
222
239
|
}
|
|
240
|
+
_handleInstanceWait(_instance) {
|
|
241
|
+
this.info.runningInstanceCount = Math.max(0, this.info.runningInstanceCount - 1);
|
|
242
|
+
this.info.waitingInstanceCount++;
|
|
243
|
+
if (this.currentState === "running") {
|
|
244
|
+
const targetState = this._computeAgentState();
|
|
245
|
+
if (targetState !== this.currentState) {
|
|
246
|
+
this.transition(targetState, "agent:instance-wait", { agentName: this.info.name });
|
|
247
|
+
}
|
|
248
|
+
else {
|
|
249
|
+
this.emit("agent:instance-wait", {
|
|
250
|
+
agentName: this.info.name,
|
|
251
|
+
fromState: this.currentState,
|
|
252
|
+
toState: this.currentState,
|
|
253
|
+
timestamp: new Date(),
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
_handleInstanceResume(_instance) {
|
|
259
|
+
this.info.waitingInstanceCount = Math.max(0, this.info.waitingInstanceCount - 1);
|
|
260
|
+
this.info.runningInstanceCount++;
|
|
261
|
+
if (this.currentState === "waiting") {
|
|
262
|
+
this.transition("running", "agent:instance-resume", { agentName: this.info.name });
|
|
263
|
+
}
|
|
264
|
+
else {
|
|
265
|
+
this.emit("agent:instance-resume", {
|
|
266
|
+
agentName: this.info.name,
|
|
267
|
+
fromState: this.currentState,
|
|
268
|
+
toState: this.currentState,
|
|
269
|
+
timestamp: new Date(),
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Compute the appropriate agent state from instance counts.
|
|
275
|
+
*/
|
|
276
|
+
_computeAgentState() {
|
|
277
|
+
if (this.info.runningInstanceCount > 0)
|
|
278
|
+
return "running";
|
|
279
|
+
if (this.info.waitingInstanceCount > 0)
|
|
280
|
+
return "waiting";
|
|
281
|
+
return "idle";
|
|
282
|
+
}
|
|
223
283
|
_updateStateFromInstanceCount() {
|
|
224
284
|
// Only update if we're not in building or error state
|
|
225
285
|
if (this.currentState === "building" || this.currentState === "error") {
|
|
226
286
|
return;
|
|
227
287
|
}
|
|
228
|
-
const targetState = this.
|
|
288
|
+
const targetState = this._computeAgentState();
|
|
229
289
|
if (targetState !== this.currentState) {
|
|
230
290
|
this.forceTransition(targetState, "agent:auto-transition", {
|
|
231
291
|
agentName: this.info.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-lifecycle.js","sourceRoot":"","sources":["../../../src/execution/lifecycle/agent-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAGhB,wBAAwB,GACzB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-lifecycle.js","sourceRoot":"","sources":["../../../src/execution/lifecycle/agent-lifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EventEmitter } from "events";
|
|
2
|
-
export type InstanceState = "queued" | "running" | "completed" | "error" | "killed";
|
|
3
|
-
export type AgentState = "idle" | "running" | "building" | "error";
|
|
2
|
+
export type InstanceState = "queued" | "running" | "waiting" | "completed" | "error" | "killed";
|
|
3
|
+
export type AgentState = "idle" | "running" | "waiting" | "building" | "error";
|
|
4
4
|
export interface StateTransitionEvent<T extends string> {
|
|
5
5
|
fromState: T;
|
|
6
6
|
toState: T;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/execution/lifecycle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGtC,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/execution/lifecycle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGtC,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;AAGhG,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;AAG/E,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,MAAM;IACpD,SAAS,EAAE,CAAC,CAAC;IACb,OAAO,EAAE,CAAC,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;CACjB;AAGD,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB,CAAC,aAAa,CAAC;IAClF,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAGD,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB,CAAC,UAAU,CAAC;IAC5E,SAAS,EAAE,MAAM,CAAC;CACnB;AAoBD;;;GAGG;AACH,8BAAsB,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAE,SAAQ,YAAY;IAC3E,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC;IAC1B,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAE/B,YAAY,EAAE,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAM7D;;OAEG;IACH,QAAQ,IAAI,CAAC;IAIb;;OAEG;IACH,eAAe,CAAC,WAAW,EAAE,CAAC,GAAG,OAAO;IAKxC;;;;;OAKG;IACH,SAAS,CAAC,UAAU,CAAC,CAAC,SAAS,oBAAoB,CAAC,CAAC,CAAC,EACpD,WAAW,EAAE,CAAC,EACd,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,CAAC,GACxD,IAAI;IAsBP;;OAEG;IACH,SAAS,CAAC,eAAe,CAAC,CAAC,SAAS,oBAAoB,CAAC,CAAC,CAAC,EACzD,WAAW,EAAE,CAAC,EACd,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,CAAC,GACxD,IAAI;CAcR;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,CAAC,CAEpF;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,CAE3E;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAErE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAE/D"}
|
|
@@ -2,14 +2,16 @@ import { EventEmitter } from "events";
|
|
|
2
2
|
// Validation for valid state transitions
|
|
3
3
|
const VALID_INSTANCE_TRANSITIONS = {
|
|
4
4
|
queued: ["running", "killed"], // can start running or be killed while queued
|
|
5
|
-
running: ["completed", "error", "killed"], // can complete, error, or be killed
|
|
5
|
+
running: ["waiting", "completed", "error", "killed"], // can wait, complete, error, or be killed
|
|
6
|
+
waiting: ["running", "error", "killed"], // can resume, timeout (error), or be killed
|
|
6
7
|
completed: [], // terminal state
|
|
7
8
|
error: [], // terminal state
|
|
8
9
|
killed: [], // terminal state
|
|
9
10
|
};
|
|
10
11
|
const VALID_AGENT_TRANSITIONS = {
|
|
11
12
|
idle: ["running", "building", "error"], // can start running, start building, or error
|
|
12
|
-
running: ["idle", "running", "error"], // can return to idle, stay running
|
|
13
|
+
running: ["idle", "running", "waiting", "error"], // can return to idle, stay running, wait, or error
|
|
14
|
+
waiting: ["idle", "running", "waiting", "error"], // can resume, timeout, or be killed
|
|
13
15
|
building: ["idle", "running", "error"], // build can complete (idle/running) or fail (error)
|
|
14
16
|
error: ["idle", "building", "running"], // can recover to any other state
|
|
15
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/execution/lifecycle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AA0BtC,yCAAyC;AACzC,MAAM,0BAA0B,GAA2C;IACzE,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,8CAA8C;IAC7E,OAAO,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/execution/lifecycle/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,12 @@ export interface InstanceErrorEvent extends InstanceTransitionEvent {
|
|
|
17
17
|
error: string;
|
|
18
18
|
durationMs: number;
|
|
19
19
|
}
|
|
20
|
+
export interface InstanceWaitEvent extends InstanceTransitionEvent {
|
|
21
|
+
filter: Record<string, unknown>;
|
|
22
|
+
}
|
|
23
|
+
export interface InstanceResumeEvent extends InstanceTransitionEvent {
|
|
24
|
+
triggerPayload?: unknown;
|
|
25
|
+
}
|
|
20
26
|
export interface InstanceKillEvent extends InstanceTransitionEvent {
|
|
21
27
|
reason?: string;
|
|
22
28
|
durationMs?: number;
|
|
@@ -27,9 +33,13 @@ export interface InstanceKillEvent extends InstanceTransitionEvent {
|
|
|
27
33
|
* State transitions:
|
|
28
34
|
* - queued → running (via start())
|
|
29
35
|
* - queued → killed (via kill())
|
|
36
|
+
* - running → waiting (via wait())
|
|
30
37
|
* - running → completed (via complete())
|
|
31
38
|
* - running → error (via fail())
|
|
32
39
|
* - running → killed (via kill())
|
|
40
|
+
* - waiting → running (via resume())
|
|
41
|
+
* - waiting → error (timeout)
|
|
42
|
+
* - waiting → killed (via kill())
|
|
33
43
|
*/
|
|
34
44
|
export declare class InstanceLifecycle extends BaseStateMachine<InstanceState> {
|
|
35
45
|
private info;
|
|
@@ -62,6 +72,16 @@ export declare class InstanceLifecycle extends BaseStateMachine<InstanceState> {
|
|
|
62
72
|
* Transition from running to completed
|
|
63
73
|
*/
|
|
64
74
|
complete(): void;
|
|
75
|
+
/**
|
|
76
|
+
* Transition from running to waiting (agent called wait_for_trigger)
|
|
77
|
+
* @param filter The wait filter describing what trigger to wait for
|
|
78
|
+
*/
|
|
79
|
+
wait(filter: Record<string, unknown>): void;
|
|
80
|
+
/**
|
|
81
|
+
* Transition from waiting back to running (trigger matched)
|
|
82
|
+
* @param triggerPayload The payload from the matched trigger
|
|
83
|
+
*/
|
|
84
|
+
resume(triggerPayload?: unknown): void;
|
|
65
85
|
/**
|
|
66
86
|
* Transition from running to error
|
|
67
87
|
* @param error Error message or reason for failure
|
|
@@ -80,6 +100,10 @@ export declare class InstanceLifecycle extends BaseStateMachine<InstanceState> {
|
|
|
80
100
|
* Check if the instance is currently running
|
|
81
101
|
*/
|
|
82
102
|
isRunning(): boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Check if the instance is waiting for a trigger
|
|
105
|
+
*/
|
|
106
|
+
isWaiting(): boolean;
|
|
83
107
|
/**
|
|
84
108
|
* Check if the instance is queued
|
|
85
109
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/execution/lifecycle/instance-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAE7B,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,IAAI,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAmB,SAAQ,uBAAuB;IACjE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAsB,SAAQ,uBAAuB;IACpE,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAmB,SAAQ,uBAAuB;IACjE,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,uBAAuB;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED
|
|
1
|
+
{"version":3,"file":"instance-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/execution/lifecycle/instance-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAE7B,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,IAAI,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAmB,SAAQ,uBAAuB;IACjE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAsB,SAAQ,uBAAuB;IACpE,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAmB,SAAQ,uBAAuB;IACjE,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,uBAAuB;IAChE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAkB,SAAQ,uBAAuB;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,iBAAkB,SAAQ,gBAAgB,CAAC,aAAa,CAAC;IACpE,OAAO,CAAC,IAAI,CAAe;gBAEf,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAWlE;;OAEG;IACH,OAAO,IAAI,QAAQ,CAAC,YAAY,CAAC;IAIjC;;OAEG;IACH,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,CAG9B;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;IAab;;OAEG;IACH,QAAQ,IAAI,IAAI;IAmBhB;;;OAGG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAgB3C;;;OAGG;IACH,MAAM,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI;IAgBtC;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAqBzB;;;OAGG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IA6B3B;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,QAAQ,IAAI,OAAO;CAGpB"}
|
|
@@ -5,9 +5,13 @@ import { BaseStateMachine, getValidInstanceTransitions, } from "./index.js";
|
|
|
5
5
|
* State transitions:
|
|
6
6
|
* - queued → running (via start())
|
|
7
7
|
* - queued → killed (via kill())
|
|
8
|
+
* - running → waiting (via wait())
|
|
8
9
|
* - running → completed (via complete())
|
|
9
10
|
* - running → error (via fail())
|
|
10
11
|
* - running → killed (via kill())
|
|
12
|
+
* - waiting → running (via resume())
|
|
13
|
+
* - waiting → error (timeout)
|
|
14
|
+
* - waiting → killed (via kill())
|
|
11
15
|
*/
|
|
12
16
|
export class InstanceLifecycle extends BaseStateMachine {
|
|
13
17
|
info;
|
|
@@ -79,13 +83,41 @@ export class InstanceLifecycle extends BaseStateMachine {
|
|
|
79
83
|
durationMs,
|
|
80
84
|
});
|
|
81
85
|
}
|
|
86
|
+
/**
|
|
87
|
+
* Transition from running to waiting (agent called wait_for_trigger)
|
|
88
|
+
* @param filter The wait filter describing what trigger to wait for
|
|
89
|
+
*/
|
|
90
|
+
wait(filter) {
|
|
91
|
+
if (this.currentState !== "running") {
|
|
92
|
+
throw new Error(`Cannot wait in state '${this.currentState}'. Must be 'running'.`);
|
|
93
|
+
}
|
|
94
|
+
this.transition("waiting", "instance:wait", {
|
|
95
|
+
instanceId: this.info.instanceId,
|
|
96
|
+
agentName: this.info.agentName,
|
|
97
|
+
filter,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Transition from waiting back to running (trigger matched)
|
|
102
|
+
* @param triggerPayload The payload from the matched trigger
|
|
103
|
+
*/
|
|
104
|
+
resume(triggerPayload) {
|
|
105
|
+
if (this.currentState !== "waiting") {
|
|
106
|
+
throw new Error(`Cannot resume instance in state '${this.currentState}'. Must be 'waiting'.`);
|
|
107
|
+
}
|
|
108
|
+
this.transition("running", "instance:resume", {
|
|
109
|
+
instanceId: this.info.instanceId,
|
|
110
|
+
agentName: this.info.agentName,
|
|
111
|
+
triggerPayload,
|
|
112
|
+
});
|
|
113
|
+
}
|
|
82
114
|
/**
|
|
83
115
|
* Transition from running to error
|
|
84
116
|
* @param error Error message or reason for failure
|
|
85
117
|
*/
|
|
86
118
|
fail(error) {
|
|
87
|
-
if (this.currentState !== "running") {
|
|
88
|
-
throw new Error(`Cannot fail instance in state '${this.currentState}'. Must be 'running'.`);
|
|
119
|
+
if (this.currentState !== "running" && this.currentState !== "waiting") {
|
|
120
|
+
throw new Error(`Cannot fail instance in state '${this.currentState}'. Must be 'running' or 'waiting'.`);
|
|
89
121
|
}
|
|
90
122
|
this.info.endedAt = new Date();
|
|
91
123
|
this.info.error = error;
|
|
@@ -102,7 +134,7 @@ export class InstanceLifecycle extends BaseStateMachine {
|
|
|
102
134
|
* @param reason Optional reason for killing
|
|
103
135
|
*/
|
|
104
136
|
kill(reason) {
|
|
105
|
-
const validKillStates = ["queued", "running"];
|
|
137
|
+
const validKillStates = ["queued", "running", "waiting"];
|
|
106
138
|
if (!validKillStates.includes(this.currentState)) {
|
|
107
139
|
throw new Error(`Cannot kill instance in terminal state '${this.currentState}'. ` +
|
|
108
140
|
`Can only kill from: ${validKillStates.join(', ')}`);
|
|
@@ -132,6 +164,12 @@ export class InstanceLifecycle extends BaseStateMachine {
|
|
|
132
164
|
isRunning() {
|
|
133
165
|
return this.currentState === "running";
|
|
134
166
|
}
|
|
167
|
+
/**
|
|
168
|
+
* Check if the instance is waiting for a trigger
|
|
169
|
+
*/
|
|
170
|
+
isWaiting() {
|
|
171
|
+
return this.currentState === "waiting";
|
|
172
|
+
}
|
|
135
173
|
/**
|
|
136
174
|
* Check if the instance is queued
|
|
137
175
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance-lifecycle.js","sourceRoot":"","sources":["../../../src/execution/lifecycle/instance-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAGhB,2BAA2B,GAC5B,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"instance-lifecycle.js","sourceRoot":"","sources":["../../../src/execution/lifecycle/instance-lifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +1,34 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Runner pool creation with project-wide scale enforcement.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Creates TransportAgentRunner instances that run Pi sessions in-process
|
|
5
|
+
* and execute commands on runtimes via the transport layer.
|
|
6
6
|
*/
|
|
7
7
|
import type { GlobalConfig, AgentConfig } from "../shared/config.js";
|
|
8
|
-
import type { Runtime } from "../docker/runtime.js";
|
|
9
8
|
import type { StatusTracker } from "../tui/status-tracker.js";
|
|
10
|
-
import type { ContainerRegistration } from "./types.js";
|
|
11
9
|
import type { Logger } from "../shared/logger.js";
|
|
12
10
|
import { createLogger, createFileOnlyLogger } from "../shared/logger.js";
|
|
13
11
|
import { RunnerPool, type PoolRunner } from "./runner-pool.js";
|
|
12
|
+
import type { SchedulerToolsOpts } from "../agents/scheduler-tools.js";
|
|
13
|
+
import type { WaitingRegistry } from "./waiting-registry.js";
|
|
14
14
|
export interface RunnerSetupResult {
|
|
15
15
|
runnerPools: Record<string, RunnerPool>;
|
|
16
|
-
createRunner: (agentConfig: AgentConfig
|
|
16
|
+
createRunner: (agentConfig: AgentConfig) => PoolRunner;
|
|
17
17
|
/** Actual pool sizes after project-wide scale cap is applied. */
|
|
18
18
|
actualScales: Record<string, number>;
|
|
19
19
|
}
|
|
20
20
|
export interface RunnerSetupOpts {
|
|
21
21
|
globalConfig: GlobalConfig;
|
|
22
22
|
agentConfigs: AgentConfig[];
|
|
23
|
-
runtime: Runtime;
|
|
24
|
-
agentRuntimeOverrides: Record<string, Runtime>;
|
|
25
|
-
agentImages: Record<string, string>;
|
|
26
23
|
baseImage: string;
|
|
27
|
-
gatewayPort: number;
|
|
28
|
-
registerContainer: (secret: string, reg: ContainerRegistration) => Promise<void>;
|
|
29
|
-
unregisterContainer: (secret: string) => Promise<void>;
|
|
30
24
|
statusTracker?: StatusTracker;
|
|
31
25
|
mkLogger: typeof createLogger | typeof createFileOnlyLogger;
|
|
32
26
|
projectPath: string;
|
|
33
27
|
logger: Logger;
|
|
28
|
+
/** Scheduler tools dependencies for lock/call/status tools. */
|
|
29
|
+
schedulerToolsDeps?: Omit<SchedulerToolsOpts, "agentName" | "instanceId" | "depth" | "onReturnValue">;
|
|
30
|
+
/** Waiting registry for wait/resume support. */
|
|
31
|
+
waitingRegistry?: WaitingRegistry;
|
|
34
32
|
}
|
|
35
33
|
export declare function createRunnerPools(opts: RunnerSetupOpts): Promise<RunnerSetupResult>;
|
|
36
34
|
//# sourceMappingURL=runner-setup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-setup.d.ts","sourceRoot":"","sources":["../../src/execution/runner-setup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"runner-setup.d.ts","sourceRoot":"","sources":["../../src/execution/runner-setup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAI/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACxC,YAAY,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,UAAU,CAAC;IACvD,iEAAiE;IACjE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,EAAE,OAAO,YAAY,GAAG,OAAO,oBAAoB,CAAC;IAC5D,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,+DAA+D;IAC/D,kBAAkB,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,YAAY,GAAG,OAAO,GAAG,eAAe,CAAC,CAAC;IACtG,gDAAgD;IAChD,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA4CzF"}
|
|
@@ -1,23 +1,28 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Runner pool creation with project-wide scale enforcement.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Creates TransportAgentRunner instances that run Pi sessions in-process
|
|
5
|
+
* and execute commands on runtimes via the transport layer.
|
|
6
6
|
*/
|
|
7
7
|
import { RunnerPool } from "./runner-pool.js";
|
|
8
8
|
import { enforceProjectScaleCap } from "../scheduler/policies/index.js";
|
|
9
|
+
import { TransportAgentRunner } from "../agents/transport-runner.js";
|
|
10
|
+
import { ModelCircuitBreaker } from "../agents/model-fallback.js";
|
|
9
11
|
export async function createRunnerPools(opts) {
|
|
10
|
-
const { globalConfig, agentConfigs,
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
12
|
+
const { globalConfig, agentConfigs, baseImage, statusTracker, mkLogger, projectPath, logger, schedulerToolsDeps, waitingRegistry, } = opts;
|
|
13
|
+
const circuitBreaker = new ModelCircuitBreaker();
|
|
14
|
+
const createRunner = (agentConfig) => {
|
|
15
|
+
return new TransportAgentRunner({
|
|
16
|
+
globalConfig,
|
|
17
|
+
agentConfig,
|
|
18
|
+
logger: mkLogger(projectPath, agentConfig.name),
|
|
19
|
+
circuitBreaker,
|
|
20
|
+
statusTracker,
|
|
21
|
+
baseImage,
|
|
22
|
+
projectPath,
|
|
23
|
+
schedulerToolsDeps,
|
|
24
|
+
waitingRegistry,
|
|
25
|
+
});
|
|
21
26
|
};
|
|
22
27
|
// Enforce project-wide scale limit via policy module
|
|
23
28
|
const defaultScale = globalConfig.defaultAgentScale ?? 1;
|
|
@@ -28,7 +33,7 @@ export async function createRunnerPools(opts) {
|
|
|
28
33
|
const scale = agentConfig.scale ?? defaultScale;
|
|
29
34
|
const runners = [];
|
|
30
35
|
for (let i = 0; i < scale; i++) {
|
|
31
|
-
runners.push(createRunner(agentConfig
|
|
36
|
+
runners.push(createRunner(agentConfig));
|
|
32
37
|
}
|
|
33
38
|
runnerPools[agentConfig.name] = new RunnerPool(runners);
|
|
34
39
|
actualScales[agentConfig.name] = scale;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-setup.js","sourceRoot":"","sources":["../../src/execution/runner-setup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"runner-setup.js","sourceRoot":"","sources":["../../src/execution/runner-setup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,UAAU,EAAmB,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAiC,MAAM,+BAA+B,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAyBlE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAqB;IAC3D,MAAM,EACJ,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EACvD,kBAAkB,EAAE,eAAe,GACpC,GAAG,IAAI,CAAC;IAET,MAAM,cAAc,GAAG,IAAI,mBAAmB,EAAE,CAAC;IAEjD,MAAM,YAAY,GAAG,CAAC,WAAwB,EAAc,EAAE;QAC5D,OAAO,IAAI,oBAAoB,CAAC;YAC9B,YAAY;YACZ,WAAW;YACX,MAAM,EAAE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC;YAC/C,cAAc;YACd,aAAa;YACb,SAAS;YACT,WAAW;YACX,kBAAkB;YAClB,eAAe;SAChB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,qDAAqD;IACrD,MAAM,YAAY,GAAG,YAAY,CAAC,iBAAiB,IAAI,CAAC,CAAC;IACzD,MAAM,eAAe,GAAG,sBAAsB,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IAEnF,MAAM,WAAW,GAA+B,EAAE,CAAC;IACnD,MAAM,YAAY,GAA2B,EAAE,CAAC;IAEhD,KAAK,MAAM,WAAW,IAAI,eAAe,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,YAAY,CAAC;QAChD,MAAM,OAAO,GAAiB,EAAE,CAAC;QAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1C,CAAC;QAED,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;QACxD,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,qBAAqB,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;AACrD,CAAC"}
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Runtime factory.
|
|
3
3
|
*
|
|
4
|
-
* Creates a Runtime using the extension system
|
|
4
|
+
* Creates a Runtime using the extension system.
|
|
5
5
|
* Supports per-agent runtime overrides (e.g. host-user mode).
|
|
6
6
|
*/
|
|
7
7
|
import type { GlobalConfig, AgentConfig } from "../shared/config.js";
|
|
8
8
|
import type { Runtime } from "../docker/runtime.js";
|
|
9
|
-
import type { StatusTracker } from "../tui/status-tracker.js";
|
|
10
9
|
import type { Logger } from "../shared/logger.js";
|
|
11
|
-
import type { PromptSkills } from "../agents/prompt.js";
|
|
12
10
|
export interface RuntimeResult {
|
|
13
11
|
runtime: Runtime;
|
|
14
12
|
agentRuntimeOverrides: Record<string, Runtime>;
|
|
@@ -21,16 +19,4 @@ export interface RuntimeResult {
|
|
|
21
19
|
*/
|
|
22
20
|
export declare function createAgentRuntimeOverride(agentConfig: AgentConfig): Runtime | undefined;
|
|
23
21
|
export declare function createContainerRuntime(globalConfig: GlobalConfig, activeAgentConfigs: AgentConfig[], logger: Logger): Promise<RuntimeResult>;
|
|
24
|
-
export declare function buildAgentImages(opts: {
|
|
25
|
-
projectPath: string;
|
|
26
|
-
globalConfig: GlobalConfig;
|
|
27
|
-
activeAgentConfigs: AgentConfig[];
|
|
28
|
-
runtime: Runtime;
|
|
29
|
-
statusTracker?: StatusTracker;
|
|
30
|
-
logger: Logger;
|
|
31
|
-
skills: PromptSkills;
|
|
32
|
-
}): Promise<{
|
|
33
|
-
baseImage: string;
|
|
34
|
-
agentImages: Record<string, string>;
|
|
35
|
-
}>;
|
|
36
22
|
//# sourceMappingURL=runtime-factory.d.ts.map
|