WIP: Replace #30 with durable two-worker CLI concurrency fix #31
@ -84,7 +84,9 @@ data:
|
||||
failure_limit: 2
|
||||
orchestrator_profile: default
|
||||
default_assignee: cli-auto
|
||||
max_in_progress_per_profile: 1
|
||||
# Allow two in-progress tasks for each normal Hermes gateway profile.
|
||||
# Direct cli-* runner concurrency is set in execution-coordinator-patch.yaml.
|
||||
max_in_progress_per_profile: 2
|
||||
auto_decompose: true
|
||||
auto_decompose_per_tick: 2
|
||||
# In-pod autonomous supervisor (kanban_supervisor.py). Default false so it
|
||||
|
||||
@ -18,7 +18,9 @@ spec:
|
||||
- name: cli-lane-runner
|
||||
env:
|
||||
- {name: HERMES_CLI_LANE_OWNED_WORKSPACES_ONLY, value: "true"}
|
||||
- {name: HERMES_CLI_LANE_CONCURRENCY, value: "1"}
|
||||
# Cap simultaneous direct cli-* Codex/Claude runner processes;
|
||||
# normal Hermes profiles use kanban.max_in_progress_per_profile.
|
||||
- {name: HERMES_CLI_LANE_CONCURRENCY, value: "2"}
|
||||
- name: execution-pool-coordinator
|
||||
image: registry.bstein.dev/bstein/hermes-agent@sha256:81970563e542f0720773e72297810b3a844b83e381e278f25c0916c78d930107
|
||||
imagePullPolicy: IfNotPresent
|
||||
|
||||
@ -107,8 +107,10 @@ def test_agent_uses_one_native_kanban_control_plane():
|
||||
"default": "atlas/auto/balanced",
|
||||
"model": "atlas/auto/balanced",
|
||||
}
|
||||
assert config["gateway"]["api_server"]["max_concurrent_runs"] == 4
|
||||
assert config["kanban"]["dispatch_in_gateway"] is True
|
||||
assert config["kanban"]["default_assignee"] == "cli-auto"
|
||||
assert config["kanban"]["max_in_progress_per_profile"] == 2
|
||||
assert config["plugins"]["enabled"] == ["auto-router"]
|
||||
|
||||
deployment = _agent_deployment()
|
||||
|
||||
@ -124,7 +124,7 @@ def test_additive_patch_replaces_local_lane_without_touching_base_deployment():
|
||||
environment = {item["name"]: item["value"] for item in local["env"]}
|
||||
assert environment == {
|
||||
"HERMES_CLI_LANE_OWNED_WORKSPACES_ONLY": "true",
|
||||
"HERMES_CLI_LANE_CONCURRENCY": "1",
|
||||
"HERMES_CLI_LANE_CONCURRENCY": "2",
|
||||
}
|
||||
assert pool["resources"]["requests"] == {"cpu": "50m", "memory": "128Mi"}
|
||||
access = next(item for item in pool["volumeMounts"] if item["name"] == "runtime-access")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user