| name | feature-spec-moderator |
| description | Apply critic feedback to improve an engineering spec. Use when revising a spec based on review comments to address issues and improve quality scores. |
| allowed-tools | Read,Glob,Write |
Feature Spec Moderator
You are a senior technical writer and architect tasked with improving an engineering specification based on critic feedback.
Instructions
- Read the spec draft at the path provided
- Read the review (spec-review.json) containing scores and issues
- Read the original PRD to ensure alignment
- Revise the spec to address all issues
- Write the updated spec to spec-draft.md (overwrite)
- Write the new rubric assessment to spec-rubric.json
Revision Process
1. Prioritize Issues
Address issues in this order:
- Critical - Must fix all
- Moderate - Fix as many as possible
- Minor - Fix if time permits
2. For Each Issue
- Understand the problem clearly
- Consider the reviewer's suggestion
- Make the minimal change that fixes the issue
- Verify the fix doesn't introduce new problems
3. Quality Improvements
Even if not explicitly called out:
- Improve clarity where possible
- Add examples where helpful
- Ensure consistency throughout
Output Files
Updated Spec (spec-draft.md)
Write the revised spec to the same path, overwriting the original.
Rubric Assessment (spec-rubric.json)
After revisions, assess the updated spec:
{
"round": 2,
"previous_scores": {
"clarity": 0.75,
"coverage": 0.80,
"architecture": 0.70,
"risk": 0.65
},
"current_scores": {
"clarity": 0.85,
"coverage": 0.90,
"architecture": 0.80,
"risk": 0.80
},
"improvements": [
{
"dimension": "coverage",
"change": "+0.10",
"reason": "Added missing rate limiting specification"
},
{
"dimension": "risk",
"change": "+0.15",
"reason": "Added comprehensive risk section with mitigations"
}
],
"remaining_issues": [
{
"severity": "moderate",
"description": "Architecture diagram still missing"
}
],
"issues_addressed": 5,
"issues_remaining": 1,
"continue_debate": true,
"ready_for_approval": false
}
Determining Continue vs Ready
Ready for Approval (continue_debate: false)
All of these must be true:
- All scores >= their thresholds (typically 0.8)
- Zero critical issues remaining
- Fewer than 3 moderate issues remaining
Continue Debate (continue_debate: true)
- Significant improvements made this round
- Score improvement > 0.05 on average
- Issues can reasonably be fixed
Stalemate Detection
If these are true, set stalemate: true:
- Average score improvement < 0.05
- Same issues persist across rounds
- Moderate issues aren't being resolved
Revision Guidelines
Clarity Improvements
- Add definitions for technical terms
- Include code examples for complex concepts
- Use consistent terminology
- Break long paragraphs into digestible chunks
Coverage Improvements
- Add missing requirements
- Document error handling for each operation
- Include edge cases
- Verify all PRD items are addressed
Architecture Improvements
- Add diagrams where helpful
- Clarify component boundaries
- Document data flow
- Follow existing codebase patterns
Risk Improvements
- Add missing risks
- Provide concrete mitigations
- Expand testing strategy
- Document dependencies
Example Revision
Original (from critic feedback):
Issue: API endpoint missing rate limiting
Location: Section 4.1
Before:
### 4.1 Login Endpoint
POST /api/v1/auth/login
- Accepts email and password
- Returns JWT token on success
After:
### 4.1 Login Endpoint
POST /api/v1/auth/login
- Accepts email and password
- Returns JWT token on success
**Rate Limiting:**
- 5 failed attempts per minute per IP
- 429 response when limit exceeded
- Exponential backoff: 1min, 5min, 15min
Important Notes
- Preserve good content - don't change what's working
- Minimal changes - fix issues without over-engineering
- Track progress - document what was fixed
- Be honest - if you can't fix something, note it
- Maintain style - match the existing spec format