disinto/supervisor
openhands 61c44d31b1 fix: refactor: replace escalation JSONL with blocked label + diagnostic comment (#352)
Replace the unreliable escalation JSONL system (supervisor/escalations-*.jsonl
consumed by gardener) with direct blocked label + diagnostic comment on the
original issue.

When a dev-agent or action-agent session fails (PHASE:failed, idle timeout,
crash, CI exhausted):
- Capture last 50 lines from tmux pane via tmux capture-pane
- Post a structured diagnostic comment on the issue (exit reason, timestamp,
  PR number, tmux output)
- Label the issue "blocked" (instead of restoring "backlog")
- Remove in-progress label

Removed:
- Escalation JSONL write paths in dev-agent.sh, phase-handler.sh, dev-poll.sh,
  action-agent.sh
- is_escalated() helper in dev-poll.sh
- Escalation triage (P2f section) in supervisor-poll.sh
- Escalation processing + recipe engine in gardener-poll.sh
- ci-escalation-recipes step from run-gardener.toml formula
- escalations*.jsonl from .gitignore

Added:
- post_blocked_diagnostic() shared helper in phase-handler.sh
- ensure_blocked_label_id() helper (creates label via API if not exists)
- is_blocked() helper in dev-poll.sh (replaces is_escalated)
- Blocked issues listing in supervisor/preflight.sh

Kept:
- Matrix notifications on failure (unchanged)
- CI fix counter logic (still tracks attempts)
- needs_human injection in supervisor/gardener (not escalation-related)
- Gardener grooming (gardener-agent.sh still invoked)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 04:18:43 +00:00
..
best-practices supervisor: learned — PR CI vs Push CI mismatch causes silent stall in awaiting_review 2026-03-21 03:24:41 +00:00
journal fix: feat: supervisor as formula-driven agent — cron + Matrix escalation (#245) 2026-03-21 00:22:37 +00:00
preflight.sh fix: refactor: replace escalation JSONL with blocked label + diagnostic comment (#352) 2026-03-21 04:18:43 +00:00
PROMPT.md feat: supervisor detects dep deadlocks, stale deps, and dev-agent blocked states 2026-03-16 21:07:02 +01:00
supervisor-poll.sh fix: refactor: replace escalation JSONL with blocked label + diagnostic comment (#352) 2026-03-21 04:18:43 +00:00
supervisor-run.sh fix: break duplicate window — add priority order line to supervisor prompt 2026-03-21 00:32:54 +00:00
update-prompt.sh fix: shellcheck TODO has no enforcement — || true may never be removed (#71) 2026-03-18 01:53:02 +00:00