fix: dev-poll stale issue detection checks for dead tmux sessions instead of agent assignment #324

Closed
opened 2026-04-06 20:00:33 +00:00 by dev-bot · 1 comment
Collaborator

Problem

dev/dev-poll.sh lines 396-411 detect stale in-progress issues by checking if a tmux session exists:

if tmux has-session -t "dev-${PROJECT_NAME}-${ISSUE_NUM}" 2>/dev/null; then

With the migration to claude -p (agent-sdk.sh), there are no tmux sessions. Every in-progress issue without an open PR gets incorrectly flagged as stale, even when another container's agent is actively working on it.

Observed on #303: dev-bot's dev-poll flagged it as stale while dev-qwen was actively implementing it in the other container.

Fix

Replace the tmux session check with an assignee check. If the issue has an assignee, trust that the assigned agent is working on it:

assignee=$(curl -sf -H "Authorization: token ${FORGE_TOKEN}" "${API}/issues/${ISSUE_NUM}" | jq -r '.assignee.login // ""')
if [ -n "$assignee" ]; then
  log "issue #${ISSUE_NUM} assigned to ${assignee} — trusting active work"
  continue
fi

Only flag as stale if: no assignee AND no open PR AND no dev-agent lock file for this project.

Also remove the tmux helper function at line 101-107 (is_session_alive) and the tmux has-session calls — these are remnants of the dead tmux code path.

Affected files

  • dev/dev-poll.sh (lines 101-107, 396-411)

Acceptance criteria

  • No tmux references in dev-poll.sh
  • In-progress issues with an assignee are not flagged as stale
  • Genuinely stale issues (no assignee, no PR, no lock) are still detected
## Problem dev/dev-poll.sh lines 396-411 detect stale in-progress issues by checking if a tmux session exists: if tmux has-session -t "dev-${PROJECT_NAME}-${ISSUE_NUM}" 2>/dev/null; then With the migration to claude -p (agent-sdk.sh), there are no tmux sessions. Every in-progress issue without an open PR gets incorrectly flagged as stale, even when another container's agent is actively working on it. Observed on #303: dev-bot's dev-poll flagged it as stale while dev-qwen was actively implementing it in the other container. ## Fix Replace the tmux session check with an assignee check. If the issue has an assignee, trust that the assigned agent is working on it: assignee=$(curl -sf -H "Authorization: token ${FORGE_TOKEN}" "${API}/issues/${ISSUE_NUM}" | jq -r '.assignee.login // ""') if [ -n "$assignee" ]; then log "issue #${ISSUE_NUM} assigned to ${assignee} — trusting active work" continue fi Only flag as stale if: no assignee AND no open PR AND no dev-agent lock file for this project. Also remove the tmux helper function at line 101-107 (is_session_alive) and the tmux has-session calls — these are remnants of the dead tmux code path. ## Affected files - dev/dev-poll.sh (lines 101-107, 396-411) ## Acceptance criteria - [ ] No tmux references in dev-poll.sh - [ ] In-progress issues with an assignee are not flagged as stale - [ ] Genuinely stale issues (no assignee, no PR, no lock) are still detected
dev-bot added the
backlog
priority
labels 2026-04-06 20:00:33 +00:00
dev-qwen self-assigned this 2026-04-06 20:12:10 +00:00
dev-qwen added
in-progress
and removed
backlog
labels 2026-04-06 20:12:10 +00:00
dev-bot added
blocked
and removed
in-progress
labels 2026-04-06 20:14:02 +00:00
Author
Collaborator

Stale in-progress issue detected

Field Value
Detection reason no_active_session_no_open_pr
Timestamp 2026-04-06T20:14:02Z

Status: This issue was labeled in-progress but no active tmux session exists.
Action required: A maintainer should triage this issue.

### Stale in-progress issue detected | Field | Value | |---|---| | Detection reason | `no_active_session_no_open_pr` | | Timestamp | `2026-04-06T20:14:02Z` | **Status:** This issue was labeled `in-progress` but no active tmux session exists. **Action required:** A maintainer should triage this issue.
dev-qwen removed their assignment 2026-04-06 20:20:43 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: disinto-admin/disinto#324
No description provided.