Files
claude-archeflow-plugin/skills/check-phase/SKILL.md
Christian Nennemann af1f4e7da7 refactor: merge attention-filters into check-phase skill
Consolidate the attention-filters skill (122 lines) into check-phase,
reducing check-phase from 234 to 110 lines. Removed verbose bash code
blocks, 30-line consolidated output example, re-check protocol (belongs
in act-phase), and motivational section. Updated all references in
README, plugin.json, using-archeflow, and colette-bridge.
2026-04-06 20:41:36 +02:00

4.8 KiB

name, description
name description
check-phase Use when acting as Guardian, Skeptic, Sage, or Trickster in the Check phase. Defines review rules, finding format, attention filters, and spawning protocol.

Check Phase

Reviewers examine the Maker's implementation. This skill defines shared rules, finding format, and spawning protocol.

Shared Rules

  1. Review against the proposal's intended design, not invented requirements.
  2. Read actual code via git diff on the Maker's branch.
  3. Use the finding format below for every issue.
  4. Give a clear verdict: APPROVED or REJECTED with rationale.
  5. STATUS: DONE signals agent completion. APPROVED/REJECTED is domain output. Both are parsed independently.

Finding Format

Location Severity Category Description Fix
src/auth/handler.ts:48 CRITICAL security Empty string bypasses validation Add length check

Severity: CRITICAL = must fix, blocks approval. WARNING = should fix, doesn't block alone. INFO = nice to have, never blocks.

Categories: security reliability design breaking-change dependency quality testing consistency

Evidence Requirements

Every CRITICAL or WARNING must include concrete evidence. Without evidence, downgrade to INFO.

Valid evidence: command output, exit codes, code citations with line numbers, git diff excerpts, reproduction steps.

Banned in CRITICAL/WARNING: "might be", "could potentially", "appears to", "seems like", "may not". Rewrite with evidence or downgrade.

For each CRITICAL/WARNING, state: (1) what was tested, (2) what was observed, (3) what correct behavior should be.

Attention Filters

Each archetype receives only relevant context. Do not pass everything.

Archetype Receives Excludes
Guardian Maker's git diff + proposal risk section + test results Explorer research, Creator rationale, other reviewers
Skeptic Creator's proposal (assumptions + architecture) + confidence scores Git diff, Explorer research, other reviewers
Sage Creator's proposal + Maker's diff + implementation summary + test results Explorer raw research, other reviewer verdicts
Trickster Maker's git diff + attack surface summary (file types + entry points) Proposal, research, other reviewers

Token budget targets:

Archetype Fast Standard Thorough
Guardian 1500 2000 2500
Skeptic skip 1500 2000
Trickster skip skip 1500
Sage skip 2500 3000

Context isolation: Agents receive fresh, controller-constructed context only. No session bleed, no cross-agent contamination, no ambient knowledge. Verify zero references to excluded artifacts before spawning.

Cycle-back filtering (cycle 2+): Pass structured feedback table only (not full reviewer artifacts). Strip resolved items. Cap at 500 tokens — summarize by severity if exceeded.

Reviewer Spawning Protocol

Step 1: Guardian First (mandatory)

Guardian always runs first. It receives the Maker's git diff and the proposal's risk section only.

Save output to .archeflow/artifacts/${RUN_ID}/check-guardian.md.

Step 2: A2 Fast-Path Evaluation

After Guardian completes, count CRITICAL and WARNING findings in its output. If both are zero, and not escalated, and not first cycle of a thorough workflow — skip remaining reviewers and proceed to Act phase.

Step 3: Parallel Remaining Reviewers

If A2 does not trigger, spawn remaining reviewers in parallel:

Workflow Reviewers (after Guardian)
fast None (Guardian only)
fast (escalated) Skeptic + Sage
standard Skeptic + Sage
thorough Skeptic + Sage + Trickster

Each reviewer gets context per the attention filters above.

Step 4: Collect and Consolidate

For each reviewer: save to .archeflow/artifacts/${RUN_ID}/check-<archetype>.md, emit review.verdict event, record sequence number.

Deduplication: If two reviewers raise the same issue (same file + same category), merge into one finding using the higher severity. Don't double-count.

Verdict: Count CRITICAL findings across all reviewers (after dedup). Any CRITICAL = REJECTED. Otherwise APPROVED.

Example consolidated output:

## Check Phase Results — Cycle 1
### Guardian: APPROVED
| Location | Severity | Category | Description | Fix |
|----------|----------|----------|-------------|-----|
| src/auth.ts:52 | WARNING | security | Missing rate limit | Add rate limiter |
### Verdict: APPROVED — 0 critical, 1 warning

Timeout Handling

Each reviewer has a 5-minute timeout. On timeout: emit agent.complete with "error": true, log WARNING, treat as no findings, proceed.

Exception: Guardian timeout is blocking — abort Check phase and report to user.