From 8748d7d49af196687bc793475c5dc40e42f8e469 Mon Sep 17 00:00:00 2001 From: Dave Date: Wed, 18 Mar 2026 10:34:18 +0000 Subject: [PATCH] story-kit: create 280_story_long_running_supervisor_agent_with_periodic_pipeline_polling --- ...or_agent_with_periodic_pipeline_polling.md | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 .story_kit/work/1_upcoming/280_story_long_running_supervisor_agent_with_periodic_pipeline_polling.md diff --git a/.story_kit/work/1_upcoming/280_story_long_running_supervisor_agent_with_periodic_pipeline_polling.md b/.story_kit/work/1_upcoming/280_story_long_running_supervisor_agent_with_periodic_pipeline_polling.md new file mode 100644 index 0000000..daaa6d6 --- /dev/null +++ b/.story_kit/work/1_upcoming/280_story_long_running_supervisor_agent_with_periodic_pipeline_polling.md @@ -0,0 +1,24 @@ +--- +name: "Long-running supervisor agent with periodic pipeline polling" +--- + +# Story 280: Long-running supervisor agent with periodic pipeline polling + +## User Story + +As a project owner, I want a long-running supervisor agent (opus) that automatically monitors the pipeline, assigns agents, resolves stuck items, and handles routine operational tasks, so that I don't have to manually check status, kick agents, or babysit the pipeline in every conversation. + +## Acceptance Criteria + +- [ ] Server can start a persistent supervisor agent that stays alive across the session (not per-story) +- [ ] Server prods the supervisor periodically (default 30s, configurable in project.toml) with a pipeline status update +- [ ] Supervisor auto-assigns agents to unassigned items in current/qa/merge stages +- [ ] Supervisor detects stuck agents (no progress for configurable timeout) and restarts them +- [ ] Supervisor detects merge failures and sends stories back to current for rebase when appropriate +- [ ] Supervisor can be chatted with via Matrix (timmy relays to supervisor) or via the web UI +- [ ] Supervisor logs its decisions so the human can review what it did and why +- [ ] Polling interval is configurable in project.toml (e.g. supervisor_poll_interval_secs = 30) + +## Out of Scope + +- TBD