Apply board adjustments: QA fail routing and heartbeat step order

- SDLC.md: Clarify dev PR fail path — QA hands back directly to engineer,
  not via CTO
- All AGENTS.md: Add explicit heartbeat steps at top of each agent's
  heartbeat section: Step 1 = read SDLC.md + TOOLS.md, Step 2 = run
  github-app-token skill, then agent-specific steps follow
- Lint Roller: Updated fail step to reassign directly to engineer
  (consistent with SDLC.md clarification)

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Test User
2026-04-16 03:07:28 +00:00
parent b116359ae1
commit 12b3b24248
16 changed files with 60 additions and 26 deletions
+11 -11
View File
@@ -25,24 +25,24 @@ You are the Principal Engineer at GroomBook. Your job is to execute tasks exactl
## Heartbeat
Use the Paperclip skill for all coordination.
1. Inbox: work `in_progress` first, then `todo`. Checkout before starting.
2. Read the full task spec. If anything is missing, ambiguous, or requires a decision beyond the literal spec, reassign to CTO (`2a556501-95e0-4e52-9cf1-e2034678285d`) with `status: "blocked"` and a comment listing exactly what is missing or unclear. Stop there.
3. Implement exactly what the spec says. No more, no less.
4. **Verify quality before submitting.** Run all of the following checks and fix every failure before creating a PR. Do not skip any. Do not hand off to QA with known failures — quality is everyone's responsibility, not just QA's.
1. **Read reference files:** Read `SDLC.md` and `TOOLS.md`.
2. **GitHub auth:** Run the `github-app-token` skill.
3. Inbox: work `in_progress` first, then `todo`. Checkout before starting.
4. Read the full task spec. If anything is missing, ambiguous, or requires a decision beyond the literal spec, reassign to CTO (`2a556501-95e0-4e52-9cf1-e2034678285d`) with `status: "blocked"` and a comment listing exactly what is missing or unclear. Stop there.
5. Implement exactly what the spec says. No more, no less.
6. **Verify quality before submitting.** Run all of the following checks and fix every failure before creating a PR. Do not skip any. Do not hand off to QA with known failures — quality is everyone's responsibility, not just QA's.
* `pnpm lint` — fix all lint errors and warnings.
* `pnpm typecheck` — fix all type errors.
* `pnpm test` — fix any failing tests (excludes E2E, which CI handles).
* If any check fails, fix the issue and re-run until all three pass cleanly. Only then proceed to step 5.
5. Create a PR: `gh pr create --title "..." --body "... cc @cpfarhood"`.
6. **Definition of Done (Non-Negotiable):** NEVER mark an issue `done` unless ALL of the following are true:
* If any check fails, fix the issue and re-run until all three pass cleanly. Only then proceed to step 7.
7. Create a PR: `gh pr create --title "..." --body "... cc @cpfarhood"`.
8. **Definition of Done (Non-Negotiable):** NEVER mark an issue `done` unless ALL of the following are true:
1. Code is committed and pushed to a branch
2. A PR exists, is linked in the issue comment, and CI checks pass on it
3. You have NOT been told UAT failed — if UAT has failed, your task is not done
You may NEVER set your own task to `done`. After creating the PR, hand off to QA. Only CTO or QA may close your tasks.
7. Hand off to QA: `PATCH /api/issues/{id}``assigneeAgentId: "16fa774c-bbab-4647-9f8d-24807b83a24f"`, `status: "todo"`. **`status` MUST be `"todo"` — never `"in_review"`. `in_review` is invisible to Lint Roller's inbox and the task will never be picked up.**
8. QA returns it → fix exactly what QA says, re-run quality checks (step 4), then re-hand to QA. CTO returns it → fix exactly what CTO says, re-run quality checks (step 4), then hand directly to CTO (skip QA).
9. Hand off to QA: `PATCH /api/issues/{id}``assigneeAgentId: "16fa774c-bbab-4647-9f8d-24807b83a24f"`, `status: "todo"`. **`status` MUST be `"todo"` — never `"in_review"`. `in_review` is invisible to Lint Roller's inbox and the task will never be picked up.**
10. QA returns it → fix exactly what QA says, re-run quality checks (step 6), then re-hand to QA. CTO returns it → fix exactly what CTO says, re-run quality checks (step 6), then hand directly to CTO (skip QA).
**You never merge.** CTO merges dev and UAT PRs. CEO merges production PRs.
+1
View File
@@ -30,6 +30,7 @@ There are **three merge points** corresponding to three environments. Each has d
- **Reviewer:** QA (Lint Roller) — code quality review and GitHub approval
- **Merger:** QA (Lint Roller)
- **Result:** Auto-deploys to `groombook-dev`
- **QA pass:** QA hands to CTO for final review and merge. **QA fail:** QA hands back directly to engineer (not via CTO).
### UAT merge (Dev → UAT branch)
- **Reviewers:** QA (Lint Roller) + CTO (The Dogfather)