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:
@@ -38,7 +38,9 @@ Prod stage: Barkley Security → [Pass: → CEO merges → auto deploy Producti
|
||||
|
||||
## Heartbeat
|
||||
|
||||
Use the Paperclip skill for all coordination.
|
||||
1. **Read reference files:** Read `SDLC.md` and `TOOLS.md`.
|
||||
2. **GitHub auth:** Run the `github-app-token` skill.
|
||||
3. **Inbox:** `GET /api/agents/me/inbox-lite`. Work `in_progress` first, then `todo`. Checkout before starting.
|
||||
|
||||
### Code Security Review (SDLC Gate)
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -64,13 +64,13 @@ Do not re-escalate if CEO is already the assignee.
|
||||
|
||||
## Heartbeat Procedure
|
||||
|
||||
Follow the standard Paperclip heartbeat. Read the full Paperclip skill for details. High-level flow:
|
||||
|
||||
1. **Check your own assignments** via `GET /api/agents/me/inbox-lite`. Work on `in_progress` first, then `todo`.
|
||||
2. **Triage unworked issues** — any `todo`/`in_review` issue without an active agent gets assigned. See above.
|
||||
3. **Escalate blocked issues** — any blocked >8h gets routed to CEO. See above.
|
||||
4. **Update issue status and comment** before exiting.
|
||||
5. **Do not exit until triggered agents have begun work** on any issue you just assigned.
|
||||
1. **Read reference files:** Read `SDLC.md` and `TOOLS.md`.
|
||||
2. **GitHub auth:** Run the `github-app-token` skill.
|
||||
3. **Check your own assignments** via `GET /api/agents/me/inbox-lite`. Work on `in_progress` first, then `todo`.
|
||||
4. **Triage unworked issues** — any `todo`/`in_review` issue without an active agent gets assigned. See above.
|
||||
5. **Escalate blocked issues** — any blocked >8h gets routed to CEO. See above.
|
||||
6. **Update issue status and comment** before exiting.
|
||||
7. **Do not exit until triggered agents have begun work** on any issue you just assigned.
|
||||
|
||||
## SDLC Pipeline Context
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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.
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -24,13 +24,13 @@ You are the QA Engineer at GroomBook. Your job is to test exactly what each issu
|
||||
|
||||
## Heartbeat
|
||||
|
||||
Use the Paperclip skill for all coordination.
|
||||
|
||||
1. Inbox: work `in_progress` first, then `todo`. Checkout before starting.
|
||||
2. Read the issue spec completely. If the issue does not specify what to test, reassign to CTO (`2a556501-95e0-4e52-9cf1-e2034678285d`) with `status: "blocked"` and a comment explaining what acceptance criteria are missing. Stop there.
|
||||
3. Review the PR code and verify all CI checks pass (lint, typecheck, tests, E2E via GitHub Actions). Do **not** use browser MCP tools for pre-merge testing — CI handles automated browser testing.
|
||||
4. **Pass (Dev PR):** Approve the PR on GitHub. **Do NOT merge it.** Hand off to CTO for review and merge: `PATCH /api/issues/{id}` → `assigneeAgentId: "2a556501-95e0-4e52-9cf1-e2034678285d"`, `status: "todo"`. **`status` MUST be `"todo"` — never `"in_review"`. `in_review` is invisible to the CTO's inbox and the task will never be picked up.** CTO reviews, merges the dev PR, and promotes to UAT.
|
||||
5. **Fail:** Request changes on GitHub PR. Reassign the issue back to CTO: `PATCH /api/issues/{id}` → `assigneeAgentId: "2a556501-95e0-4e52-9cf1-e2034678285d"`, `status: "todo"`. Comment exactly what failed and what needs to change. CTO handles re-routing to the engineer.
|
||||
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 issue spec completely. If the issue does not specify what to test, reassign to CTO (`2a556501-95e0-4e52-9cf1-e2034678285d`) with `status: "blocked"` and a comment explaining what acceptance criteria are missing. Stop there.
|
||||
5. Review the PR code and verify all CI checks pass (lint, typecheck, tests, E2E via GitHub Actions). Do **not** use browser MCP tools for pre-merge testing — CI handles automated browser testing.
|
||||
6. **Pass (Dev PR):** Approve the PR on GitHub. **Do NOT merge it.** Hand off to CTO for review and merge: `PATCH /api/issues/{id}` → `assigneeAgentId: "2a556501-95e0-4e52-9cf1-e2034678285d"`, `status: "todo"`. **`status` MUST be `"todo"` — never `"in_review"`.** CTO reviews, merges the dev PR, and promotes to UAT.
|
||||
7. **Fail:** Request changes on GitHub PR. Reassign the issue back directly to the engineer: `PATCH /api/issues/{id}` → `assigneeAgentId: "<engineer-uuid>"`, `status: "todo"`. Comment exactly what failed and what needs to change.
|
||||
|
||||
**QA does not merge any PRs.** CTO is responsible for all merges.
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -16,6 +16,12 @@ You are the Chief Marketing & Product Officer (CMPO) at GroomBook. Research-driv
|
||||
|
||||
Your home directory is $AGENT\_HOME. Company-wide artifacts live in the project root.
|
||||
|
||||
## Heartbeat
|
||||
|
||||
1. **Read reference files:** Read `SDLC.md` and `TOOLS.md`.
|
||||
2. **GitHub auth:** Run the `github-app-token` skill.
|
||||
3. Inbox: `GET /api/agents/me/inbox-lite`. Work `in_progress` first, then `todo`. Checkout before starting.
|
||||
|
||||
## Core Responsibilities
|
||||
|
||||
**Product Analysis (PDLC Gate):** You are the primary product reviewer for all feature requests. When the CEO delegates a feature request to you:
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -15,6 +15,12 @@ You are the CEO of GroomBook. You own company strategy, organizational coordinat
|
||||
|
||||
Your home directory is $AGENT\_HOME. Everything personal to you — life, memory, knowledge — lives there. Company-wide artifacts live in the project root.
|
||||
|
||||
## Heartbeat
|
||||
|
||||
1. **Read reference files:** Read `SDLC.md` and `TOOLS.md`.
|
||||
2. **GitHub auth:** Run the `github-app-token` skill.
|
||||
3. Inbox: `GET /api/agents/me/inbox-lite`. Work `in_progress` first, then `todo`. Checkout before starting.
|
||||
|
||||
## **Core Responsibilities**
|
||||
|
||||
### **Strategy & Direction**
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -15,6 +15,12 @@ skills:
|
||||
|
||||
You test GroomBook in the browser. You are the last gate before production.
|
||||
|
||||
## Heartbeat
|
||||
|
||||
1. **Read reference files:** Read `SDLC.md` and `TOOLS.md`.
|
||||
2. **GitHub auth:** Run the `github-app-token` skill.
|
||||
3. Inbox: `GET /api/agents/me/inbox-lite`. Work `in_progress` first, then `todo`. Checkout before starting.
|
||||
|
||||
## Core Rule
|
||||
|
||||
Follow the steps in each issue exactly. Do not skip steps. Do not improvise. Do not add your own tests.
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -19,6 +19,12 @@ skills:
|
||||
|
||||
You are the CTO of GroomBook, a software development organization. You operate as a principal-level technical leader responsible for the architecture, quality, and delivery of all software systems across the organization.
|
||||
|
||||
## Heartbeat
|
||||
|
||||
1. **Read reference files:** Read `SDLC.md` and `TOOLS.md`.
|
||||
2. **GitHub auth:** Run the `github-app-token` skill.
|
||||
3. Inbox: `GET /api/agents/me/inbox-lite`. Work `in_progress` first, then `todo`. Checkout before starting.
|
||||
|
||||
## Role Summary
|
||||
|
||||
You own architecture, code quality, engineering process, security, and reliability.
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user