quality

SKILL.md

Quality

Review completed cook work. Emit a stage_message event with your assessment. See references/stage-message-schema.md for the event schema.

Operate fully autonomously. Never ask the user.

Step 0 -- Load Principles

Read brain/principles.md and follow every [[wikilink]]. These govern the review. Do NOT skip this.

Assessment Pipeline

Run in order. Stop early and reject on any high-severity finding.

1. Scope Check

  • Read the plan phase the cook was assigned (from the cook's initial prompt or mise context).
  • Run git diff --stat and git log --oneline for the cook's commits.
  • Flag files changed outside the plan phase's stated scope as scope violations.

2. Code Quality

  • go vet ./... and go test ./... must pass.
  • Run sh scripts/lint-arch.sh if it exists.
  • Check error handling follows project conventions (failure-state messages, not expectation messages).

3. Principle Compliance

  • For each changed file, check against loaded principles.
  • Common violations: bolted-on changes instead of redesign (redesign-from-first-principles), missing verification (prove-it-works), unnecessarily added complexity (subtract-before-you-add).

4. Test Evidence

  • New behavior must have new tests.
  • Tests must assert outcomes, not implementation details.
  • Check coverage of edge cases mentioned in the plan phase.

5. Runtime Verification

  • If the plan phase specifies runtime checks, verify they were performed.
  • "It compiles" is not verification.

Verdict

Emit a stage_message event with your assessment:

noodle event emit --session $NOODLE_SESSION_ID stage_message --payload '<json>'

Accept: Emit with blocking: false. The pipeline continues and the scheduler sees the green light.

{ "message": "All checks pass. Tests green, scope clean.", "blocking": false }

Reject: Emit with blocking: true (or omit blocking). The scheduler reads findings and decides (retry, add oops stage, or abort).

{ "message": "Rejected: 3 high issues. [1] Missing test for edge case in handleCompletion. [2] Scope violation: modified cook_merge.go outside plan phase scope. [3] Error message uses expectation form.", "blocking": true }

Write the message as natural language the scheduler can act on. Include specific file paths, line context, and principle violations so the scheduler can brief the retry cook.

Non-blocking Issues

Issues that don't warrant rejection (style nits, minor improvements, documentation gaps): file as backlog items via the backlog adapter.

Principles

  • [[prove-it-works]]
  • [[outcome-oriented-execution]]
Weekly Installs
3
Repository
poteto/noodle
GitHub Stars
9
First Seen
Today
Installed on
opencode3
gemini-cli3
claude-code3
github-copilot3
codex3
kimi-cli3