Loading...
Loading...
Investigate stuck runs and execution failures by tracing Symphony and Codex logs with issue/session identifiers; use when runs stall, retry repeatedly, or fail unexpectedly.
npx skill4agent add odysseus0/symphony debuglog/symphony.logSymphonyElixir.LogFilelog/symphony.loglog/symphony.log*issue_identifierMT-625issue_idsession_id<thread_id>-<turn_id>elixir/docs/logging.mdissue_identifiersession_idsession_id# 1) Narrow by ticket key (fastest entry point)
rg -n "issue_identifier=MT-625" log/symphony.log*
# 2) If needed, narrow by Linear UUID
rg -n "issue_id=<linear-uuid>" log/symphony.log*
# 3) Pull session IDs seen for that ticket
rg -o "session_id=[^ ;]+" log/symphony.log* | sort -u
# 4) Trace one session end-to-end
rg -n "session_id=<thread>-<turn>" log/symphony.log*
# 5) Focus on stuck/retry signals
rg -n "Issue stalled|scheduling retry|turn_timeout|turn_failed|Codex session failed|Codex session ended with error" log/symphony.log*issue_identifier=<KEY>issue_id=<UUID>Codex session started ... session_id=...Codex session completedended with errorIssue stalled ... restarting with backoffCodex session failed ...turn_failedturn_cancelledturn_timeoutended with errorAgent task exited ... reason=...issue_identifierissue_idsession_idlog/symphony.logsession_idCodex session started ... session_id=...session_idCodex session completed ...Codex session ended with error ...Issue stalled ... restarting with backoffsession_idrg -n "session_id=<thread>-<turn>" log/symphony.log*Codex session failed ...turn_*ended with errorIssue stalled ... restarting with backoffissue_identifierissue_idissue_identifierissue_idrggreplog/symphony.log*elixir/docs/logging.md