-
Notifications
You must be signed in to change notification settings - Fork 2.6k
-
Summary
The Elixir Symphony runner can leave a Linear issue permanently In Progress when workspace setup fails and the agent later reaches a Codex MCP elicitation request. In our run, Symphony kept retrying the same Linear issue every ~5 minutes without surfacing a terminal blocker or moving the issue to the configured handoff state.
Environment
- Symphony commit:
58cf97da06d556c019ccea20c67f4f77da124bf3 - Runner:
elixir/bin/symphonyin a Podman container - Tracker: Linear
- Codex CLI:
0.128.0 - Codex model config:
gpt-5.5,model_reasoning_effort=xhigh - Workspace root: external volume mounted at
/var/lib/symphony/workspaces
Workflow shape
The workflow uses an after_create hook similar to:
workspace: root: $SYMPHONY_WORKSPACE_ROOT hooks: after_create: | git clone --depth 1 "$SOURCE_REPO_URL" . git config --global --add safe.directory "$PWD" if command -v bun >/dev/null 2>&1; then bun install --frozen-lockfile fi
The issue was a normal Linear issue in an active state. Symphony created /var/lib/symphony/workspaces/SKI-5 and dispatched Codex.
Observed behavior
The workspace ended up in a bad/incomplete state:
/var/lib/symphony/workspaces/SKI-5/.git exists but is empty
git status --short --branch
fatal: not a git repository (or any of the parent directories): .git
Symphony logs showed the hook starting, but the worker continued into Codex anyway:
info: Running workspace hook hook=after_create issue_identifier=SKI-5 workspace=/var/lib/symphony/workspaces/SKI-5
info: Codex session started ... cwd=/var/lib/symphony/workspaces/SKI-5
After that, Codex attempted fallback work through GitHub connector operations. The latest session got as far as trying to create a branch, then Symphony observed:
debug: Codex notification: "mcpServer/elicitation/request"
No further useful Codex activity occurred. Roughly five minutes later Symphony restarted the same issue:
warning: Issue stalled: issue_identifier=SKI-5 ... elapsed_ms=306292; restarting with backoff
warning: Retrying issue_identifier=SKI-5 in 10000ms (attempt 1) error=stalled for 306292ms without codex activity
This repeated many times. The /api/v1/state endpoint still reported the issue as running/In Progress, and Linear stayed In Progress, but no PR or branch was produced.
Expected behavior
One or more of these would be safer:
- If
after_createexits non-zero or leaves the workspace without a valid Git repo, mark the issue blocked/failed and stop retrying. - Surface the hook stderr/stdout clearly in Symphony logs and state API.
- Treat
mcpServer/elicitation/requestas a hard blocker in unattended mode (approval_policy: never) rather than repeatedly restarting the same issue. - Move the issue to the configured handoff state or otherwise expose a terminal operator action.
Impact
A single issue can consume a large amount of Codex tokens while making no progress.
Notes
This may be partly a deployment/configuration problem on our side, but the runner behavior still seems unsafe: it continued after a broken workspace setup and retried indefinitely after an unattended elicitation request.
Beta Was this translation helpful? Give feedback.