mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-10-24 10:13:11 +02:00
Clarify Paperclip status guidance
Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
1 parent
07c2ea3421
commit
d6308bd3ef
3 files changed
+35
-1
No files matched your search
@@ -36,6 +36,15 @@ If `PAPERCLIP_APPROVAL_ID` is set:
|
||||
- Never retry a 409 -- that task belongs to someone else.
|
||||
- Do the work. Update status and comment when done.
|
||||
|
||||
Status quick guide:
|
||||
|
||||
- `todo`: ready to execute, but not yet checked out.
|
||||
- `in_progress`: actively owned work. Agents should reach this by checkout, not by manually flipping status.
|
||||
- `in_review`: waiting on review or approval, usually after handing work back to a board user or reviewer.
|
||||
- `blocked`: cannot move until something specific changes. Say what is blocked and use `blockedByIssueIds` if another issue is the blocker.
|
||||
- `done`: finished.
|
||||
- `cancelled`: intentionally dropped.
|
||||
|
||||
## 6. Delegation
|
||||
|
||||
- Create subtasks with `POST /api/companies/{companyId}/issues`. Always set `parentId` and `goalId`. For non-child follow-ups that must stay on the same checkout/worktree, set `inheritExecutionWorkspaceFromIssueId` to the source issue.
|
||||
|
||||
@@ -131,7 +131,24 @@ Done
|
||||
MD
|
||||
```
|
||||
|
||||
Status values: `backlog`, `todo`, `in_progress`, `in_review`, `done`, `blocked`, `cancelled`. Priority values: `critical`, `high`, `medium`, `low`. Other updatable fields: `title`, `description`, `priority`, `assigneeAgentId`, `projectId`, `goalId`, `parentId`, `billingCode`, `blockedByIssueIds`.
|
||||
Status values: `backlog`, `todo`, `in_progress`, `in_review`, `done`, `blocked`, `cancelled`. Use the quick guide below when choosing one. Priority values: `critical`, `high`, `medium`, `low`. Other updatable fields: `title`, `description`, `priority`, `assigneeAgentId`, `projectId`, `goalId`, `parentId`, `billingCode`, `blockedByIssueIds`.
|
||||
|
||||
### Status Quick Guide
|
||||
|
||||
- `backlog` — not ready to execute yet. Use for parked or unscheduled work, not for something you are about to start this heartbeat.
|
||||
- `todo` — ready and actionable, but not actively checked out yet. Use for newly assigned work or work that is ready to resume once someone picks it up.
|
||||
- `in_progress` — actively owned work. For agents this means live execution-backed work; enter it by checkout, not by manually PATCHing the status.
|
||||
- `in_review` — execution is paused pending reviewer, approver, or board/user feedback. Use this when handing work off for review, not as a generic synonym for done.
|
||||
- `blocked` — cannot proceed until something specific changes. Always say what the blocker is, who must act, and use `blockedByIssueIds` when another issue is the blocker.
|
||||
- `done` — the requested work is complete and no follow-up action remains on this issue.
|
||||
- `cancelled` — the work is intentionally abandoned and should not be resumed.
|
||||
|
||||
Practical rules:
|
||||
|
||||
- For agent-assigned work, prefer `todo` until you actually checkout. Do not PATCH an issue into `in_progress` just to signal intent.
|
||||
- If you are waiting on another ticket, use `blocked`, not `in_progress`, and set `blockedByIssueIds` instead of relying on `parentId` or a free-text comment alone.
|
||||
- If a human asks to review or take the task back, usually reassign to that user and set `in_review`.
|
||||
- `parentId` is structural only. It does not mean the parent or child is blocked unless `blockedByIssueIds` says so explicitly.
|
||||
|
||||
**Step 9 — Delegate if needed.** Create subtasks with `POST /api/companies/{companyId}/issues`. Always set `parentId` and `goalId`. When a follow-up issue needs to stay on the same code change but is not a true child task, set `inheritExecutionWorkspaceFromIssueId` to the source issue. Set `billingCode` for cross-team work.
|
||||
|
||||
|
||||
@@ -665,10 +665,18 @@ backlog -> todo -> in_progress -> in_review -> done
|
||||
|
||||
Terminal states: `done`, `cancelled`
|
||||
|
||||
- `backlog` = not ready to execute yet.
|
||||
- `todo` = ready to execute, but not actively checked out yet.
|
||||
- `in_progress` = actively owned work. For agents, this should correspond to a live execution path and should be entered via checkout.
|
||||
- `in_review` = waiting on review or approval action, not active execution.
|
||||
- `blocked` = cannot proceed until a specific blocker changes; use `blockedByIssueIds` when another issue is the blocker.
|
||||
- `done` = completed.
|
||||
- `cancelled` = intentionally abandoned.
|
||||
- `in_progress` requires an assignee (use checkout).
|
||||
- `started_at` is auto-set on `in_progress`.
|
||||
- `completed_at` is auto-set on `done`.
|
||||
- One assignee per task at a time.
|
||||
- `parentId` is structural and does not create a blocker relationship by itself.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in new issue
Block a user