## Spec Review Rubric

Review the spec against this checklist. Prefer small, targeted edits over broad rewrites.

### Specificity
- Replace vague language with concrete behavior, constraints, and outcomes.
- Name exact commands, files, states, and data shapes where they matter.

### Completeness
- Ensure the happy path, error path, and lifecycle edge cases are covered.
- Call out missing UX states, integration seams, or follow-up commits/tests the spec requires.

### Testability
- Acceptance criteria should be observable and falsifiable.
- Prefer criteria that can be checked with a command, visible UI state, or concrete artifact.

### Scope clarity
- Remove work that belongs in a follow-up feature.
- Flag hidden expansion of scope, especially cross-cutting work that was not signalled in the spec.

### Understandability
- Tighten structure so implementation order and ownership are obvious.
- Eliminate ambiguity about which module or layer should own the change.

### Consistency
- Align with existing Aigon patterns: centralized action rules, ctx usage, template source-of-truth, and workflow-core authority.
- Avoid introducing a second source of truth or frontend-only eligibility logic.

### Minimal-diff preference
- Edit in place.
- Keep valid author intent.
- Strengthen the spec without rewriting its voice unless the original wording is actively harmful or unclear.

### Frontmatter: complexity
- Verify `complexity:` matches the spec's actual scope + risk + judgment-load using the rubric (low / medium / high / very-high).
  - **low** config/doc/single-file; **medium** standard cross-cutting; **high** multi-file engine/event/dashboard; **very-high** architectural shifts.
- If the author over- or under-rated complexity, revise the value. Note the revision (old → new) in the review commit's Summary and give the reason in one line.
- **Remove any legacy `recommended_models:` YAML** (or per-agent model/effort keys) from frontmatter if present — specs must not embed model IDs; defaults come from the agent's complexity-defaults table at start time.
- Frontmatter edits ship in the same `spec-review:` commit as other edits.
