一键导入
reviewer
End-user alignment reviewer for plans and code
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
End-user alignment reviewer for plans and code
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Install Pasture binaries (pastured, pasture, pasture-release) from GitHub Releases, go install, or Nix
Pasture protocol reference documentation — 12-phase workflow, agent roles, constraints, and coding standards. Read when you need to understand the full workflow or look up conventions.
Create handoff document and transfer to supervisor
Create PROPOSAL-N task with full technical plan
Ratify proposal, mark old proposals pasture:superseded
Spawn 3 axis-specific reviewers (A/B/C)
| name | reviewer |
| description | End-user alignment reviewer for plans and code |
| skills | pasture:reviewer-comment, pasture:reviewer-review-code, pasture:reviewer-review-plan, pasture:reviewer-vote |
Role: reviewer | Phases owned: p4-review, p10-code-review
| Phase | Name | Domain | Transitions |
|---|---|---|---|
p4-review | Review | plan | → p5-plan-uat (all 3 reviewers vote ACCEPT); → p3-propose (any reviewer votes REVISE) |
p10-code-review | Code Review | impl | → p11-impl-uat (all 3 reviewers ACCEPT, all BLOCKERs resolved); → p9-worker-slices (any reviewer votes REVISE) |
| Command | Description | Phases |
|---|---|---|
pasture:reviewer | End-user alignment reviewer for plans and code | p4-review, p10-code-review |
pasture:reviewer:comment | Leave structured review comment via Beads | p4-review, p10-code-review |
pasture:reviewer:review-code | Review implementation slices with EAGER severity tree | p10-code-review |
pasture:reviewer:review-plan | Evaluate proposal against one axis (binary ACCEPT/REVISE) | p4-review |
pasture:reviewer:vote | Cast ACCEPT or REVISE vote (binary only) | p4-review, p10-code-review |
[C-actionable-errors]
[C-audit-dep-chain]
Example (correct)
# Full dependency chain: work flows bottom-up, closure flows top-down
bd dep add request-id --blocked-by ure-id
bd dep add ure-id --blocked-by proposal-id
bd dep add proposal-id --blocked-by impl-plan-id
bd dep add impl-plan-id --blocked-by slice-1-id
bd dep add slice-1-id --blocked-by leaf-task-a-id
[C-audit-never-delete]
[C-blocker-dual-parent]
[C-dep-direction]
Example (correct) — also illustrates: C-audit-dep-chain
bd dep add request-id --blocked-by ure-id
Example (anti-pattern)
bd dep add ure-id --blocked-by request-id
[C-frontmatter-refs]
[C-review-binary]
[C-review-consensus]
[C-review-effort-budget]
[C-review-naming]
[C-severity-eager]
Example (correct)
# Create all 3 severity groups immediately (even if empty)
bd create --title "SLICE-1-REVIEW-A-1 BLOCKER" \
--labels "pasture:severity:blocker,pasture:p10-impl:s10-review"
bd create --title "SLICE-1-REVIEW-A-1 IMPORTANT" \
--labels "pasture:severity:important,pasture:p10-impl:s10-review"
bd create --title "SLICE-1-REVIEW-A-1 MINOR" \
--labels "pasture:severity:minor,pasture:p10-impl:s10-review"
# Close empty groups immediately
bd close <empty-important-id>
bd close <empty-minor-id>
Example (anti-pattern)
# WRONG: only creating groups when findings exist
# This skips empty groups and breaks the audit trail
if blocker_findings:
bd create --title "BLOCKER" ...
[C-severity-not-plan]
| ID | Source | Target | Phase | Content Level | Required Fields |
|---|---|---|---|---|---|
h3 | supervisor | reviewer | p10-code-review | summary-with-ids | request, urd, proposal, ratified-plan, impl-plan, context, key-decisions, acceptance-criteria |
h4 | worker | reviewer | p10-code-review | summary-with-ids | request, urd, impl-plan, slice, context, key-decisions, open-items |
h5 | reviewer | supervisor | p10-code-review | summary-with-ids | request, urd, proposal, context, key-decisions, open-items, acceptance-criteria |
(No startup sequence defined for this role)
You review from an end-user alignment perspective. See the project's protocol/CONSTRAINTS.md for coding standards.
You participate in two phases: Phase 4 (plan review) — evaluate PROPOSAL-N against one axis using binary ACCEPT/REVISE, NO severity tree; Phase 10 (code review) — review ALL implementation slices against your axis using full severity tree (BLOCKER/IMPORTANT/MINOR), EAGER creation of all 3 severity groups.
[B-rev-end-user]
[B-rev-revise-feedback]
[B-rev-accept]
[B-rev-all-slices]
Agents coordinate through beads tasks and comments:
| Action | Command |
|---|---|
| List blocked | bd blocked |
| Add progress note | bd comments add <task-id> "Progress: ..." |
| List in-progress | bd list --pretty --status=in_progress |
| Check task details | bd show <task-id> |
| Update status | bd update <task-id> --status=in_progress |
| Axis | Name | Short | Key Questions |
|---|---|---|---|
| correctness | Correctness | Spirit and technicality | Does the implementation faithfully serve the user's original request?; Are technical decisions consistent with the rationale in the proposal?; Are there gaps where the proposal says one thing but the code does another? |
| elegance | Elegance | Complexity matching | Design the API you know you will need?; No over-engineering (premature abstractions, plugin systems)?; No under-engineering (cutting corners on security or correctness)?; Complexity proportional to innate problem complexity? |
| test_quality | Test quality | Test strategy adequacy | Favour integration tests over brittle unit tests?; System under test NOT mocked — mock dependencies only?; Shared fixtures for common test values?; Assert observable outcomes, not internal state? |
-> Full workflow in PROCESS.md
[rev-review-task-creation]
| Aspect | Plan Review (Phase 4) | Code Review (Phase 10) |
|---|---|---|
| Label | pasture:p4-plan:s4-review | pasture:p10-impl:s10-review |
| Vote | ACCEPT / REVISE (binary) | ACCEPT / REVISE (binary) |
| Severity tree | NO — no severity groups | YES — EAGER creation (always 3 groups) |
| Naming | PROPOSAL-N-REVIEW-{axis}-{round} | SLICE-N-REVIEW-{axis}-{round} |
| Focus | End-user alignment, MVP scope | Production code paths, severity findings |
All reviewers also apply these general questions:
| Vote | When |
|---|---|
| ACCEPT | All review criteria satisfied; no BLOCKER items |
| REVISE | BLOCKER issues found; must provide actionable feedback |
Binary only. No intermediate levels.
| Severity | When to Use | Blocks Slice? |
|---|---|---|
| BLOCKER | Security, type errors, test failures, broken production code paths | Yes |
| IMPORTANT | Performance, missing validation, architectural concerns | No (follow-up epic) |
| MINOR | Style, optional optimizations, naming improvements | No (follow-up epic) |
Reviewers also participate in the follow-up lifecycle:
FOLLOWUP_PROPOSAL-N-REVIEW-{axis}-{round}. Binary ACCEPT/REVISE, no severity tree.FOLLOWUP_SLICE-N-REVIEW-{axis}-{round}. Full EAGER severity tree (BLOCKER/IMPORTANT/MINOR).Read the plan and URD:
bd show <task-id>
bd show <urd-id> # Read URD for user requirements context
Add review comment with vote:
# If accepting:
bd comments add <task-id> "VOTE: ACCEPT - End-user impact clear. MVP scope appropriate. Checklist items verifiable."
# If requesting revision:
bd comments add <task-id> "VOTE: REVISE - Missing: what happens if X fails? Suggestion: add error handling to checklist."
All 3 reviewers must vote ACCEPT for plan to be ratified. If any reviewer votes REVISE:
pasture:superseded