add issues-as-todo-list section: assignments as coordination flags
All checks were successful
check / check (push) Successful in 11s

This commit is contained in:
clawbot 2026-02-28 02:39:20 -08:00
parent 3950e33fff
commit e9e24638fd

View File

@ -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,