Orchestrates the PAW Review workflow, coordinating activity skills to analyze PRs and generate comprehensive review feedback.
Execute this heavyweight workflow when the user's request or context indicates they want a significant, thorough review. For a generic code or PR review without evidence of that broader intent, use the standard review path rather than delegating or creating artifacts.
These principles apply to ALL review stages. Activity skills reference these principles rather than duplicating them.
Every observation, finding, or claim MUST be supported by:
NEVER include speculation, assumptions, or subjective preferences without evidence.
All code-related claims require specific file:line citations:
[src/module.ts:45](src/module.ts#L45) for single lines[src/module.ts:45-52](src/module.ts#L45-L52) for rangesCRITICAL: Do not fabricate, invent, or assume information:
Understanding and baseline research stages document what existsβthey do NOT:
Evaluation and critique happen in designated later stages only.
Apply this precedence:
GitHub reviews are pending by default. Submit only with explicit authorization for the exact target, head, pending review, and event, followed by live revalidation. Generated feedback remains advisory; users can modify, skip, or override recommendations before posting.
Each stage produces complete, well-structured artifacts:
Activity skills are executed via delegated agent sessions.
Every subagent MUST load their skill FIRST before executing any work:
paw-review-understanding)Delegation prompt must include: "First load the paw-review-<skill-name> skill, then execute the activity."
Upon completion, respond with artifact path and status (Success, Partial, or Blocked).
Always confirm the exact path where artifacts were written. Downstream stages depend on this.
The orchestrating agent MUST NOT manually create artifacts that belong to activity skills. Each stage's artifacts must be produced by delegating to the designated skill. Manual population bypasses defaults, validation, and skill-specific logic (e.g., specialist selection defaults, ReviewContext field normalization).
All review artifacts are stored in a consistent directory structure:
.paw/reviews/<identifier>/
βββ ReviewContext.md # Stage: Understanding (initial)
βββ ResearchQuestions.md # Stage: Understanding (initial)
βββ CodeResearch.md # Stage: Baseline Research
βββ DerivedSpec.md # Stage: Understanding (after research)
βββ ImpactAnalysis.md # Stage: Evaluation (single-model mode)
βββ GapAnalysis.md # Stage: Evaluation (single-model mode)
βββ REVIEW-{SPECIALIST}.md # Stage: Evaluation (SoT mode, per specialist)
βββ REVIEW-SYNTHESIS.md # Stage: Evaluation (SoT mode, synthesized findings)
βββ CrossRepoAnalysis.md # Stage: Correlation (multi-repo only)
βββ ReviewComments.md # Stage: Output (evolves: draft β assessed β finalized β posted)
ReviewComments.md Evolution:
**Final**: markers added by feedback skill (critique response)**Posted**: status added by github skillPR-<number> (e.g., PR-123)PR-<number>-<repo-slug> per PR (e.g., PR-123-my-api/, PR-456-my-frontend/)feature-new-auth)Repo-slug derivation: Last path segment of repository name, lowercase, special chars removed.
Example: acme-corp/my-api-service β my-api-service
Multi-repo detection: Use when multiple workspace folders are open in VS Code OR multiple PRs provided.
Run before the Understanding stage:
github, azure-devops, or local.pendingartifact-onlysubmit with APPROVE, REQUEST_CHANGES, or COMMENTall by default or the user's explicit scope/output filter.explicit, absent, or ambiguous, plus the platform-qualified target and current head.paw-review-understanding for persistence in ReviewContext.md.Repeating the same authorization for the same target, head, and event confirms it. A head change invalidates authorization and requires fresh analysis and authorization.
The workflow executes stages in sequence, with each stage producing artifacts consumed by downstream stages.
Skills: paw-review-understanding, paw-review-baseline
Sequence:
Run paw-review-understanding activity
ReviewContext.md, ResearchQuestions.mdRun paw-review-baseline activity
CodeResearch.mdRun paw-review-understanding activity (resume)
DerivedSpec.mdStage Gate: Verify ReviewContext.md, CodeResearch.md, DerivedSpec.md exist before proceeding.
Read Review Mode from ReviewContext.md to determine the evaluation path. If the value is not single-model, society-of-thought, or absent, report an error (Unknown Review Mode: <value>) and do not proceed.
Skills: paw-review-impact, paw-review-gap
Sequence:
Run paw-review-impact activity
ImpactAnalysis.mdRun paw-review-gap activity
GapAnalysis.mdStage Gate: Verify ImpactAnalysis.md, GapAnalysis.md exist before proceeding.
Engine: paw-sot (loaded into orchestrator session, not as subagent)
When Review Mode is society-of-thought, load the paw-sot skill directly and invoke it with a review context constructed from ReviewContext.md fields and understanding artifacts:
| Review Context Field | Source |
|---|---|
type |
diff |
coordinates |
Diff: git diff <base-commit>...<head-commit>; Artifacts: ReviewContext.md, CodeResearch.md, DerivedSpec.md paths |
output_dir |
.paw/reviews/<identifier>/ |
specialists |
Review Specialists value from ReviewContext.md |
interaction_mode |
Review Interaction Mode value from ReviewContext.md |
interactive |
Review Interactive value from ReviewContext.md |
specialist_models |
Review Specialist Models value from ReviewContext.md |
perspectives |
Review Perspectives value from ReviewContext.md |
perspective_cap |
Review Perspective Cap value from ReviewContext.md |
After paw-sot completes orchestration and synthesis, proceed to the Output stage.
Error handling: If paw-sot skill cannot be loaded, report error to user β do not fall back to single-model silently.
Stage Gate: Verify REVIEW-SYNTHESIS.md exists before proceeding.
Skill: paw-review-correlation
Condition: Only run when multiple PRs/repositories detected. Skip for single-repo reviews.
Detection Criteria (any of):
PR-123-repo-a/, PR-456-repo-b/).git directories)related_prs entriesSequence:
paw-review-correlation activityCrossRepoAnalysis.md (in primary repo's artifact directory)Stage Gate: Verify CrossRepoAnalysis.md exists before proceeding to Output stage.
Skip Behavior: For single-repo reviews, proceed directly to Output stage without running correlation.
Skills: paw-review-feedback, paw-review-critic, paw-review-github
The Output stage uses an iterative feedback-critique pattern to refine comments before posting to GitHub.
Sequence:
Run paw-review-feedback activity (Initial Pass)
ReviewComments.md with draft comments (status: draft)Run paw-review-critic activity
ReviewComments.mdRun paw-review-feedback activity (Critique Response)
**Final**: markers (status: finalized)Run paw-review-github activity (GitHub PRs only)
Stage Gate: Verify all comments have **Final**: markers before GitHub posting.
Output policy:
paw-review-github verifies repository, PR, live head, pending review ID, and event immediately before submission.Upon workflow completion, report:
.paw/reviews/<identifier>/)If multiple repositories or PRs are detected:
(See also: owner/other-repo#NNN)