Runner join fails: "session ID is required for session attributes"
Bug
Runner registration fails when joining a coordinator with distributedrunners lab enabled.
Error
On the coordinator (Garden) logs:
coordinator.runner-registration Failed to create node entity │ error: "remote error: generic unknown: failed to create entity in put: session ID is required for session attributes" runner_id: 0193d075-17c3-49f0-ad84-04b5b5d5d3a1
On the runner:
root@miren-garden-runner-1:~# MIREN_LABS=distributedrunners miren runner join -c 34.122.229.118:8443
Joining coordinator at 34.122.229.118:8443
ERROR: join failed: failed to register runner
Reproduction
- Coordinator running with
MIREN_LABS=adminapi,routeoidc,distributedrunners(Garden, versionmain:937cf5b) - Runner VM with miren installed (version
main:937cf5bormain:d36d93a) - Create invite on coordinator:
miren runner invite -e 24 - On runner:
miren runner join -c <coordinator>:8443→ enter join code → fails
Root cause
The runner registration code path in the coordinator is creating a node entity without providing the required session ID for session attributes. Likely the registration handler needs to either create a session first or attach to an existing one before writing the node entity to etcd.
Environment
- Coordinator: miren-garden (
main:937cf5b, 2026-03-24) - Runner: miren-garden-runner-1 (
main:937cf5b) - GCP project: miren-development