- phase-runner: レポートを上書きせずタイムスタンプ付きで同ディレクトリに保存し、fix が過去指摘の傾向を追跡できるよう改善
- output-contracts: persists/reopened/family_tag フィールドを追加してレビュー指摘の継続性を明示
- pieces: 全ビルトインピースに reviewers↔fix の loop_monitors を追加し、発散ループを自動検知
- fix.md: 過去レポートの参照方法を「Glob で {レポート名}.* を検索、最大2件読む」と具体化
- loop-monitor-reviewers-fix.md: ループモニタ判定用の共通インストラクションを新規追加
50 lines
2.1 KiB
Markdown
50 lines
2.1 KiB
Markdown
```markdown
|
|
# Requirements Review
|
|
|
|
## Result: APPROVE / REJECT
|
|
|
|
## Summary
|
|
{Summarize the result in 1-2 sentences}
|
|
|
|
## Requirements Cross-Reference
|
|
| # | Requirement (from task) | Satisfied | Evidence (file:line) |
|
|
|---|----------------------|-----------|----------------------|
|
|
| 1 | {requirement 1} | ✅/❌ | `src/file.ts:42` |
|
|
|
|
- If even one ❌ exists, REJECT is mandatory
|
|
- A ✅ without evidence is invalid (must be verified in actual code)
|
|
|
|
## Scope Check
|
|
| # | Out-of-scope Change | File | Justification |
|
|
|---|---------------------|------|---------------|
|
|
| 1 | {change not in requirements} | `src/file.ts` | Justified/Unnecessary |
|
|
|
|
## Current Iteration Findings (new)
|
|
| # | finding_id | family_tag | Category | Location | Issue | Fix Suggestion |
|
|
|---|------------|------------|----------|----------|-------|----------------|
|
|
| 1 | REQ-NEW-src-file-L42 | req-gap | Unimplemented | `src/file.ts:42` | Issue description | Fix suggestion |
|
|
|
|
## Carry-over Findings (persists)
|
|
| # | finding_id | family_tag | Previous Evidence | Current Evidence | Issue | Fix Suggestion |
|
|
|---|------------|------------|-------------------|------------------|-------|----------------|
|
|
| 1 | REQ-PERSIST-src-file-L77 | req-gap | `file:line` | `file:line` | Unresolved | Fix suggestion |
|
|
|
|
## Resolved Findings (resolved)
|
|
| finding_id | Resolution Evidence |
|
|
|------------|---------------------|
|
|
| REQ-RESOLVED-src-file-L10 | `file:line` now satisfies the requirement |
|
|
|
|
## Reopened Findings (reopened)
|
|
| # | finding_id | family_tag | Prior Resolution Evidence | Recurrence Evidence | Issue | Fix Suggestion |
|
|
|---|------------|------------|--------------------------|---------------------|-------|----------------|
|
|
| 1 | REQ-REOPENED-src-file-L55 | req-gap | `Previously fixed at file:line` | `Recurred at file:line` | Issue description | Fix approach |
|
|
|
|
## Rejection Gate
|
|
- REJECT is valid only when at least one finding exists in `new`, `persists`, or `reopened`
|
|
- Findings without `finding_id` are invalid
|
|
```
|
|
|
|
**Cognitive load reduction rules:**
|
|
- APPROVE: Summary only (5 lines or fewer)
|
|
- REJECT: Only relevant findings in tables (30 lines or fewer)
|