@starlein/paperclip-plugin-company-wizard 0.4.18 → 0.4.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +73 -0
- package/README.md +13 -9
- package/dist/manifest.js +3 -1
- package/dist/manifest.js.map +2 -2
- package/dist/ui/index.css +6 -0
- package/dist/ui/index.css.map +2 -2
- package/dist/ui/index.js +19 -3
- package/dist/ui/index.js.map +2 -2
- package/dist/worker.js +2212 -561
- package/dist/worker.js.map +3 -3
- package/package.json +5 -5
- package/templates/modules/auto-assign/agents/ceo/skills/auto-assign.fallback.md +2 -1
- package/templates/modules/auto-assign/skills/auto-assign.md +1 -0
- package/templates/modules/backlog/agents/ceo/skills/backlog-health.fallback.md +1 -0
- package/templates/modules/backlog/module.meta.json +2 -1
- package/templates/modules/backlog/skills/backlog-health.md +3 -1
- package/templates/modules/github-repo/agents/engineer/skills/git-workflow.md +1 -1
- package/templates/modules/github-repo/docs/git-workflow.md +2 -2
- package/templates/modules/pr-review/README.md +2 -2
- package/templates/modules/pr-review/agents/code-reviewer/skills/code-review.md +3 -3
- package/templates/modules/pr-review/agents/engineer/skills/pr-workflow.md +6 -6
- package/templates/modules/pr-review/docs/pr-conventions.md +2 -2
- package/templates/modules/stall-detection/agents/ceo/skills/stall-detection.md +20 -17
- package/templates/roles/audio-designer/HEARTBEAT.md +2 -2
- package/templates/roles/ceo/HEARTBEAT.md +2 -2
- package/templates/roles/ceo/role.meta.json +1 -1
- package/templates/roles/cmo/HEARTBEAT.md +2 -2
- package/templates/roles/code-reviewer/AGENTS.md +1 -1
- package/templates/roles/code-reviewer/HEARTBEAT.md +3 -2
- package/templates/roles/cto/HEARTBEAT.md +2 -2
- package/templates/roles/cto/role.meta.json +1 -1
- package/templates/roles/customer-success/HEARTBEAT.md +2 -2
- package/templates/roles/devops/HEARTBEAT.md +2 -2
- package/templates/roles/engineer/AGENTS.md +1 -0
- package/templates/roles/engineer/HEARTBEAT.md +3 -2
- package/templates/roles/game-artist/HEARTBEAT.md +2 -2
- package/templates/roles/game-designer/HEARTBEAT.md +2 -2
- package/templates/roles/level-designer/HEARTBEAT.md +2 -2
- package/templates/roles/product-owner/AGENTS.md +1 -0
- package/templates/roles/product-owner/HEARTBEAT.md +2 -2
- package/templates/roles/qa/HEARTBEAT.md +2 -1
- package/templates/roles/security-engineer/AGENTS.md +1 -0
- package/templates/roles/security-engineer/HEARTBEAT.md +2 -2
- package/templates/roles/technical-writer/HEARTBEAT.md +2 -2
- package/templates/roles/ui-designer/HEARTBEAT.md +2 -2
- package/templates/roles/ux-researcher/HEARTBEAT.md +2 -2
|
@@ -35,12 +35,13 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
35
35
|
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
36
|
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
37
|
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
-
- **Review path applies only when the pr-review module is active.** Without pr-review there is no PR review flow and no `in_review` step. If the github-repo module installed `skills/git-workflow.md`, follow its Direct-to-Base Flow (verify locally, commit, push to the base ref; open a PR only if branch protection rejects the direct push). Otherwise follow the project workspace instructions and record the verification/commit evidence. The rest of this bullet applies only when pr-review is active. Before moving work to `in_review`, verify a review path exists. If a Code Reviewer is on the team, set the `executionPolicy` stages (at least one non-author stage) **before** moving to `in_review
|
|
38
|
+
- **Review path applies only when the pr-review module is active.** Without pr-review there is no PR review flow and no `in_review` step. If the github-repo module installed `skills/git-workflow.md`, follow its Direct-to-Base Flow (verify locally, commit, push to the base ref; open a PR only if branch protection rejects the direct push). Otherwise follow the project workspace instructions and record the verification/commit evidence. The rest of this bullet applies only when pr-review is active. Before moving new PR work to `in_review`, verify a review path exists. If a Code Reviewer is on the team, set the `executionPolicy` stages (at least one non-author stage) **before** moving to `in_review`. The **first** stage must be a non-author stage: never list yourself (the issue's assignee/executor — whoever did the work) as a participant in any stage. The runtime excludes the original executor from every stage, so a first stage listing only you has no eligible participant and the issue stalls at stage 1 (`422 Only the active reviewer or approver can advance the current execution stage`) — even if later stages have non-author participants. After moving to `in_review`, `GET /api/issues/{id}` (the list endpoint omits `executionPolicy`) and confirm `stages[0].participants` is not just you; if it is, `PATCH /api/issues/{id}` `{"executionPolicy":null}` to return to `in_progress`, then re-set stages with a non-author first stage. If no Code Reviewer is on the team, do not move new PR work to `in_review`: open the PR and merge it yourself via `gh pr merge <N> --merge` in the same heartbeat (self-merge path), then mark `done`.
|
|
39
|
+
- If you find an existing `in_review` issue with `executionPolicy: null`, do not assume it is stalled. Check `GET /api/issues/{id}/interactions`, `GET /api/issues/{id}/approvals`, its user owner, monitor, wake, and recovery state. A pending interaction or another explicit owner is a valid waiting path. Recover to `in_progress` only when none of those paths exists; then either add a non-author `executionPolicy` for PR review or self-merge when no Code Reviewer exists.
|
|
39
40
|
|
|
40
41
|
## 6. Exit
|
|
41
42
|
|
|
42
43
|
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
-
-
|
|
44
|
+
- Preserve execution workspaces across issue completion — including the workspace your current run is executing in. **Never archive, retire, or delete an execution workspace as part of your own run.** Do not call `PATCH /api/execution-workspaces/{id}` with `{"status":"archived"}`, do not run `git worktree remove`, and do not delete the run branch — not when marking an issue `done`, not at the end of a routine run, and not as a "cleanup" or "tidy up" gesture. Archiving the workspace your run is using deletes its worktree mid-run: the run then fails workspace validation, and the next run that would reuse the workspace breaks. Follow-up, review, dependent work, and later routine runs may reuse the workspace, and Paperclip can restore a missing worktree only while its workspace record stays reusable. Workspace retirement is a board/operator action only, performed when an issue explicitly requests it. `cleanupEligibleAt` / "Cleanup: Not scheduled" is lifecycle metadata, not an automatic cleanup scheduler.
|
|
44
45
|
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
45
46
|
|
|
46
47
|
## Rules
|
|
@@ -35,12 +35,12 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
35
35
|
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
36
|
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
37
|
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
-
-
|
|
38
|
+
- Before leaving an issue in `in_review`, make the next action explicit. Valid paths include an active `executionPolicy` participant, a pending issue interaction or approval, an assigned user owner, a scheduled monitor, an active/queued wake, or a recovery issue. When `executionPolicy` is null, check `GET /api/issues/{id}/interactions` and `GET /api/issues/{id}/approvals`; null policy alone does not mean the issue is stalled. If no path exists, keep or return it to `in_progress` and assign an owner, or create the structured interaction/approval that will resume it.
|
|
39
39
|
|
|
40
40
|
## 6. Exit
|
|
41
41
|
|
|
42
42
|
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
-
-
|
|
43
|
+
- Preserve execution workspaces across issue completion — including the workspace your current run is executing in. **Never archive, retire, or delete an execution workspace as part of your own run.** Do not call `PATCH /api/execution-workspaces/{id}` with `{"status":"archived"}`, do not run `git worktree remove`, and do not delete the run branch — not when marking an issue `done`, not at the end of a routine run, and not as a "cleanup" or "tidy up" gesture. Archiving the workspace your run is using deletes its worktree mid-run: the run then fails workspace validation, and the next run that would reuse the workspace breaks. Follow-up, review, dependent work, and later routine runs may reuse the workspace, and Paperclip can restore a missing worktree only while its workspace record stays reusable. Workspace retirement is a board/operator action only, performed when an issue explicitly requests it. `cleanupEligibleAt` / "Cleanup: Not scheduled" is lifecycle metadata, not an automatic cleanup scheduler.
|
|
44
44
|
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
45
45
|
|
|
46
46
|
## Rules
|
|
@@ -35,12 +35,12 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
35
35
|
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
36
|
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
37
|
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
-
-
|
|
38
|
+
- Before leaving an issue in `in_review`, make the next action explicit. Valid paths include an active `executionPolicy` participant, a pending issue interaction or approval, an assigned user owner, a scheduled monitor, an active/queued wake, or a recovery issue. When `executionPolicy` is null, check `GET /api/issues/{id}/interactions` and `GET /api/issues/{id}/approvals`; null policy alone does not mean the issue is stalled. If no path exists, keep or return it to `in_progress` and assign an owner, or create the structured interaction/approval that will resume it.
|
|
39
39
|
|
|
40
40
|
## 6. Exit
|
|
41
41
|
|
|
42
42
|
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
-
-
|
|
43
|
+
- Preserve execution workspaces across issue completion — including the workspace your current run is executing in. **Never archive, retire, or delete an execution workspace as part of your own run.** Do not call `PATCH /api/execution-workspaces/{id}` with `{"status":"archived"}`, do not run `git worktree remove`, and do not delete the run branch — not when marking an issue `done`, not at the end of a routine run, and not as a "cleanup" or "tidy up" gesture. Archiving the workspace your run is using deletes its worktree mid-run: the run then fails workspace validation, and the next run that would reuse the workspace breaks. Follow-up, review, dependent work, and later routine runs may reuse the workspace, and Paperclip can restore a missing worktree only while its workspace record stays reusable. Workspace retirement is a board/operator action only, performed when an issue explicitly requests it. `cleanupEligibleAt` / "Cleanup: Not scheduled" is lifecycle metadata, not an automatic cleanup scheduler.
|
|
44
44
|
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
45
45
|
|
|
46
46
|
## Rules
|
|
@@ -35,12 +35,12 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
35
35
|
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
36
|
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
37
|
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
-
-
|
|
38
|
+
- Before leaving an issue in `in_review`, make the next action explicit. Valid paths include an active `executionPolicy` participant, a pending issue interaction or approval, an assigned user owner, a scheduled monitor, an active/queued wake, or a recovery issue. When `executionPolicy` is null, check `GET /api/issues/{id}/interactions` and `GET /api/issues/{id}/approvals`; null policy alone does not mean the issue is stalled. If no path exists, keep or return it to `in_progress` and assign an owner, or create the structured interaction/approval that will resume it.
|
|
39
39
|
|
|
40
40
|
## 6. Exit
|
|
41
41
|
|
|
42
42
|
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
-
-
|
|
43
|
+
- Preserve execution workspaces across issue completion — including the workspace your current run is executing in. **Never archive, retire, or delete an execution workspace as part of your own run.** Do not call `PATCH /api/execution-workspaces/{id}` with `{"status":"archived"}`, do not run `git worktree remove`, and do not delete the run branch — not when marking an issue `done`, not at the end of a routine run, and not as a "cleanup" or "tidy up" gesture. Archiving the workspace your run is using deletes its worktree mid-run: the run then fails workspace validation, and the next run that would reuse the workspace breaks. Follow-up, review, dependent work, and later routine runs may reuse the workspace, and Paperclip can restore a missing worktree only while its workspace record stays reusable. Workspace retirement is a board/operator action only, performed when an issue explicitly requests it. `cleanupEligibleAt` / "Cleanup: Not scheduled" is lifecycle metadata, not an automatic cleanup scheduler.
|
|
44
44
|
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
45
45
|
|
|
46
46
|
## Rules
|
|
@@ -20,6 +20,7 @@ You own product intent, backlog health, acceptance criteria, prioritization, and
|
|
|
20
20
|
|
|
21
21
|
- Product ambiguity -> clarify options and recommend one.
|
|
22
22
|
- Engineering implementation -> assign the Engineer directly with acceptance criteria and project/goal context. Do not leave ready engineering work unassigned for a later sweep.
|
|
23
|
+
- Codebase audits, dependency upgrades, and implementation work -> assign the Software Engineer; keep the Code Reviewer for explicit non-author review and merge-gate work.
|
|
23
24
|
- UX-visible scope -> involve the UI/UX designer.
|
|
24
25
|
- Security-sensitive scope -> involve the Security Engineer.
|
|
25
26
|
- Browser/user-facing verification -> involve QA.
|
|
@@ -35,12 +35,12 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
35
35
|
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
36
|
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
37
|
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
-
- If an issue is assigned to you in `in_review` and
|
|
38
|
+
- If an issue is assigned to you in `in_review`, inspect its complete action path before acting: current `executionPolicy` participant, `GET /api/issues/{id}/interactions`, `GET /api/issues/{id}/approvals`, user owner, monitor, wake, and recovery state. Do not override a pending interaction or approval merely because `executionPolicy` is null. If no other path owns the next action, review it immediately against the acceptance criteria. If it passes, comment with the acceptance decision and set it `done`; if it does not pass, set it back to `in_progress`, assign it to the Engineer, and list the exact required changes.
|
|
39
39
|
|
|
40
40
|
## 6. Exit
|
|
41
41
|
|
|
42
42
|
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
-
-
|
|
43
|
+
- Preserve execution workspaces across issue completion — including the workspace your current run is executing in. **Never archive, retire, or delete an execution workspace as part of your own run.** Do not call `PATCH /api/execution-workspaces/{id}` with `{"status":"archived"}`, do not run `git worktree remove`, and do not delete the run branch — not when marking an issue `done`, not at the end of a routine run, and not as a "cleanup" or "tidy up" gesture. Archiving the workspace your run is using deletes its worktree mid-run: the run then fails workspace validation, and the next run that would reuse the workspace breaks. Follow-up, review, dependent work, and later routine runs may reuse the workspace, and Paperclip can restore a missing worktree only while its workspace record stays reusable. Workspace retirement is a board/operator action only, performed when an issue explicitly requests it. `cleanupEligibleAt` / "Cleanup: Not scheduled" is lifecycle metadata, not an automatic cleanup scheduler.
|
|
44
44
|
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
45
45
|
|
|
46
46
|
## Rules
|
|
@@ -35,6 +35,7 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
35
35
|
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
36
|
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
37
|
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
+
- Before treating an `in_review` issue as stalled, check `GET /api/issues/{id}/interactions` and `GET /api/issues/{id}/approvals`. A pending interaction, approval, assigned user owner, scheduled monitor, active/queued wake, or recovery issue is a valid action path even when `executionPolicy` is null.
|
|
38
39
|
- **If verification passes:** mark the issue `done` with a comment citing the test evidence — or, if the issue is governed by an executionPolicy with a stage after QA, record `approved` pass to the next stage.
|
|
39
40
|
- **If verification fails:** reassign to the relevant engineer with exact reproduction steps, set status back to `in_progress`. Do not mark `done` on a failing issue.
|
|
40
41
|
- **You are a reviewer, not an author.** QA's role is to verify work and record `approved`/`changes_requested` through a review/approval stage — not to implement features or fixes. If you are assigned an **implementation** task (building logic, APIs, DB schema, infrastructure — anything you'd express as code/commits rather than a test/QA report), that is a misassignment: leave a comment flagging it and reassign to the engineer rather than authoring the change yourself. Implementing a change and then moving the issue to `in_review` with yourself as the first review stage is self-review — the runtime excludes the executor (you) from every stage, so that first stage has no eligible participant and the issue stalls permanently (`422 Only the active reviewer or approver can advance the current execution stage`). Never set an `executionPolicy` stage whose only participant is the issue's assignee. If you find an issue you authored stuck this way, recover with `PATCH /api/issues/{id}` `{"executionPolicy":null}` (returns it to `in_progress`) and reassign to the engineer to implement + route to the Code Reviewer properly.
|
|
@@ -42,7 +43,7 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
42
43
|
## 6. Exit
|
|
43
44
|
|
|
44
45
|
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
45
|
-
-
|
|
46
|
+
- Preserve execution workspaces across issue completion — including the workspace your current run is executing in. **Never archive, retire, or delete an execution workspace as part of your own run.** Do not call `PATCH /api/execution-workspaces/{id}` with `{"status":"archived"}`, do not run `git worktree remove`, and do not delete the run branch — not when marking an issue `done`, not at the end of a routine run, and not as a "cleanup" or "tidy up" gesture. Archiving the workspace your run is using deletes its worktree mid-run: the run then fails workspace validation, and the next run that would reuse the workspace breaks. Follow-up, review, dependent work, and later routine runs may reuse the workspace, and Paperclip can restore a missing worktree only while its workspace record stays reusable. Workspace retirement is a board/operator action only, performed when an issue explicitly requests it. `cleanupEligibleAt` / "Cleanup: Not scheduled" is lifecycle metadata, not an automatic cleanup scheduler.
|
|
46
47
|
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
47
48
|
|
|
48
49
|
## Rules
|
|
@@ -23,6 +23,7 @@ You own threat modeling, security reviews, vulnerability assessment, secure codi
|
|
|
23
23
|
|
|
24
24
|
## Collaboration and Handoffs
|
|
25
25
|
|
|
26
|
+
- After a CI-only review rejection, first re-check every job that the execution policy or reviewer explicitly made mandatory on the exact reviewed head. If any such job has not executed green, do not resubmit: preserve a first-class blocker or bounded monitor with the named owner/action. Resubmit only on new green evidence or an explicit reviewer waiver.
|
|
26
27
|
- Blocking vulnerabilities -> assign remediation to the Engineer with concrete acceptance criteria.
|
|
27
28
|
- Product/security tradeoffs -> escalate to Product Owner/CEO with options and recommendation.
|
|
28
29
|
- Browser/runtime verification -> involve QA with safe repro steps.
|
|
@@ -35,12 +35,12 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
35
35
|
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
36
|
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
37
|
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
-
-
|
|
38
|
+
- Before leaving an issue in `in_review`, make the next action explicit. Valid paths include an active `executionPolicy` participant, a pending issue interaction or approval, an assigned user owner, a scheduled monitor, an active/queued wake, or a recovery issue. When `executionPolicy` is null, check `GET /api/issues/{id}/interactions` and `GET /api/issues/{id}/approvals`; null policy alone does not mean the issue is stalled. If no path exists, keep or return it to `in_progress` and assign an owner, or create the structured interaction/approval that will resume it.
|
|
39
39
|
|
|
40
40
|
## 6. Exit
|
|
41
41
|
|
|
42
42
|
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
-
-
|
|
43
|
+
- Preserve execution workspaces across issue completion — including the workspace your current run is executing in. **Never archive, retire, or delete an execution workspace as part of your own run.** Do not call `PATCH /api/execution-workspaces/{id}` with `{"status":"archived"}`, do not run `git worktree remove`, and do not delete the run branch — not when marking an issue `done`, not at the end of a routine run, and not as a "cleanup" or "tidy up" gesture. Archiving the workspace your run is using deletes its worktree mid-run: the run then fails workspace validation, and the next run that would reuse the workspace breaks. Follow-up, review, dependent work, and later routine runs may reuse the workspace, and Paperclip can restore a missing worktree only while its workspace record stays reusable. Workspace retirement is a board/operator action only, performed when an issue explicitly requests it. `cleanupEligibleAt` / "Cleanup: Not scheduled" is lifecycle metadata, not an automatic cleanup scheduler.
|
|
44
44
|
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
45
45
|
|
|
46
46
|
## Rules
|
|
@@ -35,12 +35,12 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
35
35
|
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
36
|
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
37
|
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
-
-
|
|
38
|
+
- Before leaving an issue in `in_review`, make the next action explicit. Valid paths include an active `executionPolicy` participant, a pending issue interaction or approval, an assigned user owner, a scheduled monitor, an active/queued wake, or a recovery issue. When `executionPolicy` is null, check `GET /api/issues/{id}/interactions` and `GET /api/issues/{id}/approvals`; null policy alone does not mean the issue is stalled. If no path exists, keep or return it to `in_progress` and assign an owner, or create the structured interaction/approval that will resume it.
|
|
39
39
|
|
|
40
40
|
## 6. Exit
|
|
41
41
|
|
|
42
42
|
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
-
-
|
|
43
|
+
- Preserve execution workspaces across issue completion — including the workspace your current run is executing in. **Never archive, retire, or delete an execution workspace as part of your own run.** Do not call `PATCH /api/execution-workspaces/{id}` with `{"status":"archived"}`, do not run `git worktree remove`, and do not delete the run branch — not when marking an issue `done`, not at the end of a routine run, and not as a "cleanup" or "tidy up" gesture. Archiving the workspace your run is using deletes its worktree mid-run: the run then fails workspace validation, and the next run that would reuse the workspace breaks. Follow-up, review, dependent work, and later routine runs may reuse the workspace, and Paperclip can restore a missing worktree only while its workspace record stays reusable. Workspace retirement is a board/operator action only, performed when an issue explicitly requests it. `cleanupEligibleAt` / "Cleanup: Not scheduled" is lifecycle metadata, not an automatic cleanup scheduler.
|
|
44
44
|
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
45
45
|
|
|
46
46
|
## Rules
|
|
@@ -35,12 +35,12 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
35
35
|
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
36
|
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
37
|
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
-
-
|
|
38
|
+
- Before leaving an issue in `in_review`, make the next action explicit. Valid paths include an active `executionPolicy` participant, a pending issue interaction or approval, an assigned user owner, a scheduled monitor, an active/queued wake, or a recovery issue. When `executionPolicy` is null, check `GET /api/issues/{id}/interactions` and `GET /api/issues/{id}/approvals`; null policy alone does not mean the issue is stalled. If no path exists, keep or return it to `in_progress` and assign an owner, or create the structured interaction/approval that will resume it.
|
|
39
39
|
|
|
40
40
|
## 6. Exit
|
|
41
41
|
|
|
42
42
|
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
-
-
|
|
43
|
+
- Preserve execution workspaces across issue completion — including the workspace your current run is executing in. **Never archive, retire, or delete an execution workspace as part of your own run.** Do not call `PATCH /api/execution-workspaces/{id}` with `{"status":"archived"}`, do not run `git worktree remove`, and do not delete the run branch — not when marking an issue `done`, not at the end of a routine run, and not as a "cleanup" or "tidy up" gesture. Archiving the workspace your run is using deletes its worktree mid-run: the run then fails workspace validation, and the next run that would reuse the workspace breaks. Follow-up, review, dependent work, and later routine runs may reuse the workspace, and Paperclip can restore a missing worktree only while its workspace record stays reusable. Workspace retirement is a board/operator action only, performed when an issue explicitly requests it. `cleanupEligibleAt` / "Cleanup: Not scheduled" is lifecycle metadata, not an automatic cleanup scheduler.
|
|
44
44
|
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
45
45
|
|
|
46
46
|
## Rules
|
|
@@ -35,12 +35,12 @@ Run this checklist on every heartbeat. The Paperclip skill is the source of trut
|
|
|
35
35
|
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
36
|
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
37
|
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
-
-
|
|
38
|
+
- Before leaving an issue in `in_review`, make the next action explicit. Valid paths include an active `executionPolicy` participant, a pending issue interaction or approval, an assigned user owner, a scheduled monitor, an active/queued wake, or a recovery issue. When `executionPolicy` is null, check `GET /api/issues/{id}/interactions` and `GET /api/issues/{id}/approvals`; null policy alone does not mean the issue is stalled. If no path exists, keep or return it to `in_progress` and assign an owner, or create the structured interaction/approval that will resume it.
|
|
39
39
|
|
|
40
40
|
## 6. Exit
|
|
41
41
|
|
|
42
42
|
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
-
-
|
|
43
|
+
- Preserve execution workspaces across issue completion — including the workspace your current run is executing in. **Never archive, retire, or delete an execution workspace as part of your own run.** Do not call `PATCH /api/execution-workspaces/{id}` with `{"status":"archived"}`, do not run `git worktree remove`, and do not delete the run branch — not when marking an issue `done`, not at the end of a routine run, and not as a "cleanup" or "tidy up" gesture. Archiving the workspace your run is using deletes its worktree mid-run: the run then fails workspace validation, and the next run that would reuse the workspace breaks. Follow-up, review, dependent work, and later routine runs may reuse the workspace, and Paperclip can restore a missing worktree only while its workspace record stays reusable. Workspace retirement is a board/operator action only, performed when an issue explicitly requests it. `cleanupEligibleAt` / "Cleanup: Not scheduled" is lifecycle metadata, not an automatic cleanup scheduler.
|
|
44
44
|
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
45
45
|
|
|
46
46
|
## Rules
|