Review-E¶
Review-E reviews every pull request independently. It is structurally separate from Dev-E — the agent that produces a thing cannot approve that thing.
Current State¶
Review-E already exists and runs on RPi4-02 via agent-runner. It auto-reviews PRs within seconds of creation. It stays on dedicated hardware — moving to vCluster adds complexity with no benefit.
How It Works in the Rig¶
- Dev-E creates a PR → GitHub triggers
request-review.ymlworkflow - Review-E receives notification via Discord or GitHub webhook
- Review-E reads the PR diff, issue context, and repo conventions
- Review-E either approves or requests changes
- If approved → auto-merge proceeds (unless human-gated)
- If changes requested → Dev-E iterates with
--continue
Events¶
Review-E doesn't directly emit to the Event Store in Phase 1. Instead:
- GitHub review events (approve/request changes) are read by Conductor-E
- Conductor-E emits
REVIEW_PASSEDor detects changes-requested state - Dev-E monitors its PR and sees review comments via
ghCLI
Phase 2+: Review-E could emit events directly to the Event Store for richer audit trail.
Separation Principle¶
| Agent | Can Do | Cannot Do |
|---|---|---|
| Dev-E | Write code, create PR | Approve its own PR |
| Review-E | Review code, approve/reject | Write implementation code |
| Conductor | Assign work, escalate | Write code or review code |
This prevents a single agent from both creating and approving code, which would defeat the purpose of review.
Integration Points¶
| System | How |
|---|---|
| GitHub | Reads PR diffs, posts review comments, approves/rejects |
| Discord | Receives PR notifications in #review-e |
| Copilot | Copilot also reviews — both reviews must pass for auto-merge |
Infrastructure¶
| Property | Value |
|---|---|
| Host | RPi4-02 (100.77.12.75 via Tailscale) |
| Runtime | agent-runner (Node.js) |
| GitHub Account | review-e-dashecorp (being migrated to GitHub App review-e-bot) |
| Discord Channel | #review-e (1477787408773943488) |
| Discord Bot ID | <@1477785888095473798> |