From e9e24638fdec86c02d0cc994178a18d26b8f98ec Mon Sep 17 00:00:00 2001 From: clawbot Date: Sat, 28 Feb 2026 02:39:20 -0800 Subject: [PATCH] add issues-as-todo-list section: assignments as coordination flags --- AUTOMATED_DEV.md | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/AUTOMATED_DEV.md b/AUTOMATED_DEV.md index 4f31476..460951f 100644 --- a/AUTOMATED_DEV.md +++ b/AUTOMATED_DEV.md @@ -29,6 +29,49 @@ human user. This matters because: directly, others it must fork and PR) - API rate limits and permissions are independent +### Issues as the To-Do List + +Gitea issues aren't just bug reports — they're the universal task queue. Every +piece of work, from feature requests to personal errands, lives as an issue: + +- **Issue = task.** If it needs doing, it's an issue. No separate task manager, + no Notion boards, no sticky notes. +- **Assignment = ownership.** An issue assigned to `clawbot` means the agent is + responsible for the next step. An issue assigned to the human means it's in + their queue. An unassigned issue is unclaimed work. +- **Assignment as coordination flag.** When the agent finishes its part of a + task but needs human input, it unassigns itself and assigns the human. When + the human delegates work, they assign the agent. The assignment field IS the + handoff mechanism — no need for separate status updates or "hey, this is ready + for you" messages. +- **Close = done.** When an issue is closed, the work is complete. PRs reference + issues with "(closes #N)" so merging the PR automatically closes the issue. + +This means you can answer "what's on my plate?" with a single API call: +`GET /repos/{owner}/{repo}/issues?assignee=me&state=open`. The agent does this +during every sitrep and heartbeat. + +For personal task management, we even have a dedicated issues-only repo (no +code) that serves as a general to-do list. The agent reviews open issues there, +suggests ways to complete tasks with minimal effort, and proactively comments +with research or offers to handle items directly. + +### The Issue → PR → Deploy Lifecycle + +Issues drive the entire pipeline: + +1. Issue filed (by human or agent) +2. Assigned to whoever should work on it +3. Work happens on a feature branch +4. PR created with "(closes #N)" in the title +5. PR reviewed, checked, merged +6. Issue auto-closes on merge +7. Code auto-deploys to production (if applicable) + +The issue tracker is the single source of truth for what needs doing, who's +doing it, and what's done. Everything else (PRs, branches, deployments) links +back to issues. + ## Real-Time Activity Feed: Gitea → Mattermost Every repo has a Gitea webhook that sends all activity (pushes, PRs, issues,