cc-devflow 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/CLAUDE.md +83 -0
- package/.claude/agents/architecture-designer.md +443 -0
- package/.claude/agents/bug-analyzer.md +382 -0
- package/.claude/agents/checklist-agent.md +175 -0
- package/.claude/agents/clarify-analyst.md +50 -0
- package/.claude/agents/code-reviewer.md +71 -0
- package/.claude/agents/codex-analyzer.md +39 -0
- package/.claude/agents/compatibility-checker.md +580 -0
- package/.claude/agents/consistency-checker.md +532 -0
- package/.claude/agents/impact-analyzer.md +441 -0
- package/.claude/agents/planner.md +230 -0
- package/.claude/agents/prd-writer.md +320 -0
- package/.claude/agents/project-guidelines-generator.md +1329 -0
- package/.claude/agents/qa-tester.md +313 -0
- package/.claude/agents/release-manager.md +295 -0
- package/.claude/agents/security-reviewer.md +314 -0
- package/.claude/agents/style-guide-generator.md +458 -0
- package/.claude/agents/tech-architect.md +516 -0
- package/.claude/agents/ui-designer.md +485 -0
- package/.claude/commands/code-review-high.md +58 -0
- package/.claude/commands/core-architecture.md +429 -0
- package/.claude/commands/core-guidelines.md +486 -0
- package/.claude/commands/core-roadmap.md +439 -0
- package/.claude/commands/core-style.md +293 -0
- package/.claude/commands/flow-archive.md +245 -0
- package/.claude/commands/flow-checklist.md +260 -0
- package/.claude/commands/flow-clarify.md +136 -0
- package/.claude/commands/flow-constitution.md +82 -0
- package/.claude/commands/flow-dev.md +134 -0
- package/.claude/commands/flow-epic.md +150 -0
- package/.claude/commands/flow-fix.md +104 -0
- package/.claude/commands/flow-ideate.md +214 -0
- package/.claude/commands/flow-init.md +313 -0
- package/.claude/commands/flow-new.md +394 -0
- package/.claude/commands/flow-prd.md +131 -0
- package/.claude/commands/flow-qa.md +93 -0
- package/.claude/commands/flow-release.md +92 -0
- package/.claude/commands/flow-restart.md +98 -0
- package/.claude/commands/flow-status.md +64 -0
- package/.claude/commands/flow-tech.md +142 -0
- package/.claude/commands/flow-ui.md +189 -0
- package/.claude/commands/flow-update.md +111 -0
- package/.claude/commands/flow-upgrade.md +115 -0
- package/.claude/commands/flow-verify.md +96 -0
- package/.claude/commands/problem-analyzer.md +60 -0
- package/.claude/config/quality-rules.yml +161 -0
- package/.claude/docs/SPEC_KIT_CONSTITUTION_ANALYSIS.md +426 -0
- package/.claude/docs/design/consistency-conflict-detection-algorithms.md +658 -0
- package/.claude/docs/design/intent-driven-input-design.md +380 -0
- package/.claude/docs/design/prd-version-management-design.md +437 -0
- package/.claude/docs/guides/INIT_TROUBLESHOOTING.md +117 -0
- package/.claude/docs/guides/NEW_TROUBLESHOOTING.md +151 -0
- package/.claude/docs/guides/ROADMAP_TROUBLESHOOTING.md +188 -0
- package/.claude/docs/guides/TASK_COMPLETION_MARKING.md +338 -0
- package/.claude/docs/templates/ARCHITECTURE_TEMPLATE.md +633 -0
- package/.claude/docs/templates/BACKLOG_TEMPLATE.md +261 -0
- package/.claude/docs/templates/CHECKLIST_TEMPLATE.md +52 -0
- package/.claude/docs/templates/CLARIFICATION_REPORT_TEMPLATE.md +206 -0
- package/.claude/docs/templates/CODE_REVIEW_TEMPLATE.md +71 -0
- package/.claude/docs/templates/EPIC_TEMPLATE.md +805 -0
- package/.claude/docs/templates/INIT_FLOW_TEMPLATE.md +213 -0
- package/.claude/docs/templates/INTENT_CLARIFICATION_TEMPLATE.md +57 -0
- package/.claude/docs/templates/NEW_ORCHESTRATION_TEMPLATE.md +148 -0
- package/.claude/docs/templates/PRD_TEMPLATE.md +562 -0
- package/.claude/docs/templates/RESEARCH_TEMPLATE.md +276 -0
- package/.claude/docs/templates/REVIEW-HIGH.md +57 -0
- package/.claude/docs/templates/ROADMAP_DIALOGUE_TEMPLATE.md +198 -0
- package/.claude/docs/templates/ROADMAP_TEMPLATE.md +310 -0
- package/.claude/docs/templates/STYLE_TEMPLATE.md +1266 -0
- package/.claude/docs/templates/TASKS_TEMPLATE.md +523 -0
- package/.claude/docs/templates/TECH_DESIGN_TEMPLATE.md +1019 -0
- package/.claude/docs/templates/UI_PROTOTYPE_TEMPLATE.md +1436 -0
- package/.claude/guides/agent-guides/agent-coordination-guide.md +459 -0
- package/.claude/guides/project-guidelines-system.md +463 -0
- package/.claude/guides/technical-guides/datetime-handling-guide.md +563 -0
- package/.claude/guides/technical-guides/git-github-guide.md +642 -0
- package/.claude/guides/technical-guides/test-execution-guide.md +618 -0
- package/.claude/guides/workflow-guides/bug-fix-orchestrator.md +217 -0
- package/.claude/guides/workflow-guides/flow-orchestrator.md +282 -0
- package/.claude/hooks/checklist-gate.js +397 -0
- package/.claude/hooks/error-handling-reminder.sh +12 -0
- package/.claude/hooks/error-handling-reminder.ts +459 -0
- package/.claude/hooks/post-tool-use-tracker.sh +280 -0
- package/.claude/hooks/pre-tool-use-guardrail.sh +36 -0
- package/.claude/hooks/pre-tool-use-guardrail.ts +342 -0
- package/.claude/hooks/skill-activation-prompt.sh +36 -0
- package/.claude/hooks/skill-activation-prompt.ts +214 -0
- package/.claude/hooks/state/skills-used-test-guard.json +3 -0
- package/.claude/rules/devflow-conventions.md +305 -0
- package/.claude/rules/project-constitution.md +748 -0
- package/.claude/schemas/constitution.schema.json +43 -0
- package/.claude/scripts/analyze-upgrade-impact.sh +200 -0
- package/.claude/scripts/archive-requirement.sh +351 -0
- package/.claude/scripts/calculate-checklist-completion.sh +243 -0
- package/.claude/scripts/calculate-quarter.sh +206 -0
- package/.claude/scripts/check-dependencies.sh +409 -0
- package/.claude/scripts/check-prerequisites.sh +232 -0
- package/.claude/scripts/check-task-status.sh +264 -0
- package/.claude/scripts/checklist-errors.sh +131 -0
- package/.claude/scripts/common.sh +570 -0
- package/.claude/scripts/consolidate-research.sh +182 -0
- package/.claude/scripts/create-requirement.sh +426 -0
- package/.claude/scripts/export-contracts.sh +117 -0
- package/.claude/scripts/extract-data-model.sh +78 -0
- package/.claude/scripts/generate-clarification-questions.sh +377 -0
- package/.claude/scripts/generate-clarification-report.sh +463 -0
- package/.claude/scripts/generate-quickstart.sh +146 -0
- package/.claude/scripts/generate-research-tasks.sh +157 -0
- package/.claude/scripts/generate-status-report.sh +523 -0
- package/.claude/scripts/generate-tech-analysis.sh +46 -0
- package/.claude/scripts/locate-requirement-in-roadmap.sh +233 -0
- package/.claude/scripts/manage-constitution.sh +602 -0
- package/.claude/scripts/mark-task-complete.sh +198 -0
- package/.claude/scripts/populate-research-tasks.sh +259 -0
- package/.claude/scripts/recover-workflow.sh +460 -0
- package/.claude/scripts/run-clarify-scan.sh +601 -0
- package/.claude/scripts/run-high-review.sh +62 -0
- package/.claude/scripts/run-problem-analysis.sh +68 -0
- package/.claude/scripts/setup-epic.sh +173 -0
- package/.claude/scripts/sync-roadmap-progress.sh +300 -0
- package/.claude/scripts/sync-task-marks.sh +199 -0
- package/.claude/scripts/test-clarify-scan.sh +515 -0
- package/.claude/scripts/update-agent-context.sh +806 -0
- package/.claude/scripts/validate-constitution.sh +567 -0
- package/.claude/scripts/validate-hooks.sh +487 -0
- package/.claude/scripts/validate-research.sh +332 -0
- package/.claude/scripts/validate-scope-boundary.sh +493 -0
- package/.claude/scripts/verify-setup.sh +37 -0
- package/.claude/settings.json +76 -0
- package/.claude/skills/_reference-implementations/README.md +96 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/SKILL.md +302 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/architecture-overview.md +451 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/async-and-errors.md +307 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/complete-examples.md +638 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/configuration.md +275 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/database-patterns.md +224 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/middleware-guide.md +213 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/routing-and-controllers.md +756 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/sentry-and-monitoring.md +336 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/services-and-repositories.md +789 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/testing-guide.md +235 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/validation-patterns.md +754 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/SKILL.md +399 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/common-patterns.md +331 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/complete-examples.md +872 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/component-patterns.md +502 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/data-fetching.md +767 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/file-organization.md +502 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/loading-and-error-states.md +501 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/performance.md +406 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/routing-guide.md +364 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/styling-guide.md +428 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/typescript-standards.md +418 -0
- package/.claude/skills/cc-devflow-orchestrator/SKILL.md +229 -0
- package/.claude/skills/constitution-guardian/SKILL.md +306 -0
- package/.claude/skills/devflow-constitution-quick-ref/SKILL.md +374 -0
- package/.claude/skills/devflow-file-standards/SKILL.md +353 -0
- package/.claude/skills/devflow-tdd-enforcer/SKILL.md +192 -0
- package/.claude/skills/skill-developer/ADVANCED.md +197 -0
- package/.claude/skills/skill-developer/HOOK_MECHANISMS.md +306 -0
- package/.claude/skills/skill-developer/PATTERNS_LIBRARY.md +152 -0
- package/.claude/skills/skill-developer/SKILL.md +426 -0
- package/.claude/skills/skill-developer/SKILL_RULES_REFERENCE.md +315 -0
- package/.claude/skills/skill-developer/TRIGGER_TYPES.md +305 -0
- package/.claude/skills/skill-developer/TROUBLESHOOTING.md +514 -0
- package/.claude/skills/skill-rules.json +213 -0
- package/.claude/tests/README.md +300 -0
- package/.claude/tests/TODO.md +69 -0
- package/.claude/tests/__pycache__/test_analyze_upgrade_impact.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_consolidate_research.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_export_contracts.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_extract_data_model.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_generate_quickstart.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_generate_research_tasks.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/constitution/run_all_constitution_tests.sh +111 -0
- package/.claude/tests/constitution/test_agent_assignment.sh +207 -0
- package/.claude/tests/constitution/test_article_coverage.sh +201 -0
- package/.claude/tests/constitution/test_template_completeness.sh +150 -0
- package/.claude/tests/constitution/test_version_consistency.sh +120 -0
- package/.claude/tests/fixtures/spec_delta_full.md +16 -0
- package/.claude/tests/fixtures/tasks_progress_sample.md +5 -0
- package/.claude/tests/run-all-tests.sh +229 -0
- package/.claude/tests/scripts/run.sh +30 -0
- package/.claude/tests/scripts/test-framework.sh +128 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh +511 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak +504 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak2 +505 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak3 +506 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak4 +507 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak5 +508 -0
- package/.claude/tests/scripts/test_check_task_status.sh +499 -0
- package/.claude/tests/scripts/test_common.sh +244 -0
- package/.claude/tests/scripts/test_generate_status_report.sh +71 -0
- package/.claude/tests/scripts/test_mark_task_complete.sh +441 -0
- package/.claude/tests/scripts/test_mark_task_complete.sh.backup +410 -0
- package/.claude/tests/scripts/test_recover_workflow.sh +304 -0
- package/.claude/tests/scripts/test_setup_epic.sh +437 -0
- package/.claude/tests/scripts/test_sync_task_marks.sh +196 -0
- package/.claude/tests/scripts/test_validate_constitution.sh +74 -0
- package/.claude/tests/scripts/test_validate_research.sh +462 -0
- package/.claude/tests/slugify.bats +82 -0
- package/.claude/tests/test-framework.sh +732 -0
- package/.claude/tests/test_analyze_upgrade_impact.py +34 -0
- package/.claude/tests/test_consolidate_research.py +48 -0
- package/.claude/tests/test_export_contracts.py +43 -0
- package/.claude/tests/test_extract_data_model.py +33 -0
- package/.claude/tests/test_generate_quickstart.py +50 -0
- package/.claude/tests/test_generate_research_tasks.py +52 -0
- package/.claude/tsc-cache/6e64f818-6398-49ca-8623-581a9af85c44/edited-files.log +1 -0
- package/.claude/tsc-cache/795ba6e3-b98a-423b-bab2-51aa62812569/affected-repos.txt +1 -0
- package/.claude/tsc-cache/795ba6e3-b98a-423b-bab2-51aa62812569/edited-files.log +1 -0
- package/.claude/tsc-cache/ae335694-be5a-4ba4-a1a0-b676c09a7906/affected-repos.txt +1 -0
- package/.claude/tsc-cache/ae335694-be5a-4ba4-a1a0-b676c09a7906/edited-files.log +1 -0
- package/CHANGELOG.md +507 -0
- package/LICENSE +21 -0
- package/README.md +534 -0
- package/README.zh-CN.md +530 -0
- package/bin/adapt.js +240 -0
- package/bin/cc-devflow-cli.js +185 -0
- package/bin/cc-devflow.js +78 -0
- package/config/adapters.yml +5 -0
- package/config/schema/adapters.schema.json +44 -0
- package/docs/CLAUDE.md +26 -0
- package/docs/commands/README.md +61 -0
- package/docs/commands/README.zh-CN.md +55 -0
- package/docs/commands/core-roadmap.md +106 -0
- package/docs/commands/core-roadmap.zh-CN.md +102 -0
- package/docs/commands/core-style.md +405 -0
- package/docs/commands/core-style.zh-CN.md +405 -0
- package/docs/commands/flow-init.md +134 -0
- package/docs/commands/flow-init.zh-CN.md +163 -0
- package/docs/commands/flow-new.md +274 -0
- package/docs/commands/flow-new.zh-CN.md +270 -0
- package/docs/guides/getting-started.md +204 -0
- package/docs/guides/getting-started.zh-CN.md +152 -0
- package/lib/adapters/adapter-interface.js +57 -0
- package/lib/adapters/claude-adapter.js +74 -0
- package/lib/adapters/codex-adapter.js +40 -0
- package/lib/adapters/config-validator.js +68 -0
- package/lib/adapters/logger.js +42 -0
- package/lib/adapters/registry.js +153 -0
- package/lib/compiler/CLAUDE.md +92 -0
- package/lib/compiler/__tests__/drift.test.js +215 -0
- package/lib/compiler/__tests__/errors.test.js +184 -0
- package/lib/compiler/__tests__/incremental.test.js +174 -0
- package/lib/compiler/__tests__/integration.test.js +174 -0
- package/lib/compiler/__tests__/manifest.test.js +233 -0
- package/lib/compiler/__tests__/parser.test.js +456 -0
- package/lib/compiler/__tests__/schemas.test.js +301 -0
- package/lib/compiler/__tests__/skills-registry.test.js +125 -0
- package/lib/compiler/__tests__/transformer.test.js +286 -0
- package/lib/compiler/emitters/antigravity-emitter.js +171 -0
- package/lib/compiler/emitters/base-emitter.js +73 -0
- package/lib/compiler/emitters/codex-emitter.js +52 -0
- package/lib/compiler/emitters/cursor-emitter.js +31 -0
- package/lib/compiler/emitters/index.js +50 -0
- package/lib/compiler/emitters/qwen-emitter.js +39 -0
- package/lib/compiler/errors.js +119 -0
- package/lib/compiler/index.js +256 -0
- package/lib/compiler/manifest.js +242 -0
- package/lib/compiler/parser.js +258 -0
- package/lib/compiler/platforms.js +113 -0
- package/lib/compiler/resource-copier.js +320 -0
- package/lib/compiler/rules-emitters/__tests__/antigravity-rules-emitter.test.js +191 -0
- package/lib/compiler/rules-emitters/__tests__/codex-rules-emitter.test.js +109 -0
- package/lib/compiler/rules-emitters/__tests__/cursor-rules-emitter.test.js +123 -0
- package/lib/compiler/rules-emitters/__tests__/qwen-rules-emitter.test.js +123 -0
- package/lib/compiler/rules-emitters/antigravity-rules-emitter.js +253 -0
- package/lib/compiler/rules-emitters/base-rules-emitter.js +83 -0
- package/lib/compiler/rules-emitters/codex-rules-emitter.js +116 -0
- package/lib/compiler/rules-emitters/cursor-rules-emitter.js +98 -0
- package/lib/compiler/rules-emitters/index.js +71 -0
- package/lib/compiler/rules-emitters/qwen-rules-emitter.js +70 -0
- package/lib/compiler/schemas.js +144 -0
- package/lib/compiler/skills-registry.js +225 -0
- package/lib/compiler/transformer.js +236 -0
- package/package.json +50 -0
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
# Product Backlog: {{PROJECT_NAME}}
|
|
2
|
+
|
|
3
|
+
**Updated**: {{UPDATED_DATE}} 北京时间
|
|
4
|
+
**Total Items**: {{TOTAL_COUNT}}
|
|
5
|
+
**P1 Count**: {{P1_COUNT}} | **P2 Count**: {{P2_COUNT}} | **P3 Count**: {{P3_COUNT}}
|
|
6
|
+
|
|
7
|
+
**Input**:
|
|
8
|
+
- candidates 列表(包含 RM-ID, title, priority, derived_from, description)
|
|
9
|
+
- dependencies 依赖关系
|
|
10
|
+
- timeline 时间线分配
|
|
11
|
+
|
|
12
|
+
**Prerequisites**: roadmap-planner agent 正在基于 core-roadmap 命令的上下文生成此文档
|
|
13
|
+
|
|
14
|
+
## Execution Flow (Backlog 生成流程)
|
|
15
|
+
```
|
|
16
|
+
1. Load context from command
|
|
17
|
+
→ Parse candidates array
|
|
18
|
+
→ Parse dependencies array
|
|
19
|
+
→ Parse timeline object
|
|
20
|
+
→ Validate all fields present
|
|
21
|
+
|
|
22
|
+
2. Load BACKLOG_TEMPLATE.md
|
|
23
|
+
→ Read template from .claude/docs/templates/BACKLOG_TEMPLATE.md
|
|
24
|
+
→ Prepare to fill all sections
|
|
25
|
+
|
|
26
|
+
3. Group candidates by priority
|
|
27
|
+
→ Separate into P1 (MVP Must-Have), P2 (Important), P3 (Nice-to-Have)
|
|
28
|
+
→ Sort by RM-ID within each priority group
|
|
29
|
+
→ Count items in each priority
|
|
30
|
+
|
|
31
|
+
4. Generate Priority 1 section
|
|
32
|
+
→ For each P1 candidate:
|
|
33
|
+
• Generate detailed entry with all fields
|
|
34
|
+
• Extract business value from description
|
|
35
|
+
• Estimate effort (S/M/L based on effort_weeks)
|
|
36
|
+
• Identify dependencies from dependencies array
|
|
37
|
+
• Extract derived_from source
|
|
38
|
+
• Assign target milestone from timeline
|
|
39
|
+
• Set status = "Backlog"
|
|
40
|
+
|
|
41
|
+
5. Generate Priority 2 section
|
|
42
|
+
→ Similar to P1 but for P2 candidates
|
|
43
|
+
|
|
44
|
+
6. Generate Priority 3 section
|
|
45
|
+
→ Similar to P1 but for P3 candidates
|
|
46
|
+
|
|
47
|
+
7. Generate Dependency Matrix
|
|
48
|
+
→ For each RM-ID:
|
|
49
|
+
• Find what it blocks (RM-IDs that depend on this)
|
|
50
|
+
• Find what blocks it (REQ-IDs or RM-IDs this depends on)
|
|
51
|
+
→ Format as markdown table
|
|
52
|
+
→ Use "-" for no dependencies
|
|
53
|
+
|
|
54
|
+
8. Validate completeness
|
|
55
|
+
→ All candidates included
|
|
56
|
+
→ All have priority assigned
|
|
57
|
+
→ Dependency matrix complete
|
|
58
|
+
→ No {{PLACEHOLDER}} remaining
|
|
59
|
+
→ If incomplete: ERROR "Complete missing sections"
|
|
60
|
+
|
|
61
|
+
9. Write devflow/BACKLOG.md
|
|
62
|
+
→ Write complete file
|
|
63
|
+
→ Use UTF-8 encoding
|
|
64
|
+
|
|
65
|
+
10. Return: SUCCESS (BACKLOG.md generated)
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
**重要**: 这是一个自执行模板。roadmap-planner agent 应该按照 Execution Flow 生成完整的 BACKLOG.md 文件。
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Priority 1 (MVP Must-Have)
|
|
73
|
+
|
|
74
|
+
_P1 是必须完成的核心功能,没有这些功能产品无法交付价值。_
|
|
75
|
+
|
|
76
|
+
### {{RM_ID_1}}: {{TITLE_1}}
|
|
77
|
+
|
|
78
|
+
- **Description**: {{DESCRIPTION_1}}
|
|
79
|
+
- **Business Value**: {{BUSINESS_VALUE_1}}
|
|
80
|
+
_为什么这是 P1?为什么用户需要这个功能?_
|
|
81
|
+
|
|
82
|
+
- **Effort**: {{EFFORT_1}} (S/M/L)
|
|
83
|
+
- S (Small): 1 周以内
|
|
84
|
+
- M (Medium): 1-3 周
|
|
85
|
+
- L (Large): 3 周以上
|
|
86
|
+
|
|
87
|
+
- **Dependencies**: {{DEPENDENCIES_1}}
|
|
88
|
+
_此功能依赖哪些已有需求?格式: REQ-009 (completed), REQ-010 (in progress)_
|
|
89
|
+
|
|
90
|
+
- **Derived From**: {{DERIVED_FROM_1}}
|
|
91
|
+
_来源:REQ-001, Tech Stack, User Feedback, etc._
|
|
92
|
+
|
|
93
|
+
- **Target Milestone**: {{MILESTONE_1}}
|
|
94
|
+
_计划在哪个里程碑完成?格式: M1-Q1-2025_
|
|
95
|
+
|
|
96
|
+
- **Status**: {{STATUS_1}}
|
|
97
|
+
_Backlog | Ready | In Progress | Blocked | Completed_
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
### {{RM_ID_2}}: {{TITLE_2}}
|
|
102
|
+
|
|
103
|
+
- **Description**: {{DESCRIPTION_2}}
|
|
104
|
+
- **Business Value**: {{BUSINESS_VALUE_2}}
|
|
105
|
+
- **Effort**: {{EFFORT_2}} (S/M/L)
|
|
106
|
+
- **Dependencies**: {{DEPENDENCIES_2}}
|
|
107
|
+
- **Derived From**: {{DERIVED_FROM_2}}
|
|
108
|
+
- **Target Milestone**: {{MILESTONE_2}}
|
|
109
|
+
- **Status**: {{STATUS_2}}
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
_重复以上结构为每个 P1 需求创建条目_
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Priority 2 (Important)
|
|
118
|
+
|
|
119
|
+
_P2 是重要功能,能够显著提升用户体验或解决重要问题,但不影响 MVP 交付。_
|
|
120
|
+
|
|
121
|
+
### {{RM_ID_3}}: {{TITLE_3}}
|
|
122
|
+
|
|
123
|
+
- **Description**: {{DESCRIPTION_3}}
|
|
124
|
+
- **Business Value**: {{BUSINESS_VALUE_3}}
|
|
125
|
+
_为什么这是 P2?相比 P1 的区别是什么?_
|
|
126
|
+
|
|
127
|
+
- **Effort**: {{EFFORT_3}} (S/M/L)
|
|
128
|
+
- **Dependencies**: {{DEPENDENCIES_3}}
|
|
129
|
+
- **Derived From**: {{DERIVED_FROM_3}}
|
|
130
|
+
- **Target Milestone**: {{MILESTONE_3}}
|
|
131
|
+
- **Status**: {{STATUS_3}}
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
_重复以上结构为每个 P2 需求创建条目_
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## Priority 3 (Nice-to-Have)
|
|
140
|
+
|
|
141
|
+
_P3 是锦上添花的功能,有更好没有也不影响核心价值。_
|
|
142
|
+
|
|
143
|
+
### {{RM_ID_4}}: {{TITLE_4}}
|
|
144
|
+
|
|
145
|
+
- **Description**: {{DESCRIPTION_4}}
|
|
146
|
+
- **Business Value**: {{BUSINESS_VALUE_4}}
|
|
147
|
+
_为什么这是 P3?什么情况下会提升到 P2 或 P1?_
|
|
148
|
+
|
|
149
|
+
- **Effort**: {{EFFORT_4}} (S/M/L)
|
|
150
|
+
- **Dependencies**: {{DEPENDENCIES_4}}
|
|
151
|
+
- **Derived From**: {{DERIVED_FROM_4}}
|
|
152
|
+
- **Target Milestone**: {{MILESTONE_4}}
|
|
153
|
+
- **Status**: {{STATUS_4}}
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
_重复以上结构为每个 P3 需求创建条目_
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Dependency Matrix
|
|
162
|
+
|
|
163
|
+
| RM-ID | Blocks | Blocked By |
|
|
164
|
+
|-------|--------|------------|
|
|
165
|
+
| {{RM_ID_1}} | {{BLOCKS_1}} | {{BLOCKED_BY_1}} |
|
|
166
|
+
| {{RM_ID_2}} | {{BLOCKS_2}} | {{BLOCKED_BY_2}} |
|
|
167
|
+
| {{RM_ID_3}} | {{BLOCKS_3}} | {{BLOCKED_BY_3}} |
|
|
168
|
+
| {{RM_ID_4}} | {{BLOCKS_4}} | {{BLOCKED_BY_4}} |
|
|
169
|
+
|
|
170
|
+
_填充规则:_
|
|
171
|
+
- **Blocks**: 此需求完成后可以解锁的其他需求(逗号分隔)
|
|
172
|
+
- 例如: `RM-003, RM-005`
|
|
173
|
+
- 如果没有: `-`
|
|
174
|
+
|
|
175
|
+
- **Blocked By**: 此需求依赖的其他需求(逗号分隔)
|
|
176
|
+
- 格式: `REQ-001 (completed)`, `REQ-010 (in progress)`, `RM-002 (backlog)`
|
|
177
|
+
- 如果没有: `-`
|
|
178
|
+
|
|
179
|
+
_说明: 此矩阵用于快速识别需求间的依赖关系,避免优先级冲突_
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## Backlog Management Notes
|
|
184
|
+
|
|
185
|
+
### 优先级调整指南
|
|
186
|
+
|
|
187
|
+
**何时提升 P3 → P2**:
|
|
188
|
+
- 用户强烈要求
|
|
189
|
+
- 技术依赖需要(为了完成 P1/P2,需要先完成此功能)
|
|
190
|
+
- 竞争压力(竞品已有类似功能)
|
|
191
|
+
|
|
192
|
+
**何时提升 P2 → P1**:
|
|
193
|
+
- 成为 MVP 的阻塞项
|
|
194
|
+
- 影响核心用户体验
|
|
195
|
+
- 安全或合规要求
|
|
196
|
+
|
|
197
|
+
**何时降低优先级**:
|
|
198
|
+
- 用户需求不明确
|
|
199
|
+
- 技术复杂度过高,风险大
|
|
200
|
+
- 有更好的替代方案
|
|
201
|
+
|
|
202
|
+
### 准入标准 (Definition of Ready)
|
|
203
|
+
|
|
204
|
+
一个 backlog item 准备好进入开发 (运行 /flow-init) 的标准:
|
|
205
|
+
- [ ] Description 清晰明确
|
|
206
|
+
- [ ] Business Value 已明确
|
|
207
|
+
- [ ] Effort 已评估
|
|
208
|
+
- [ ] Dependencies 已识别并满足(依赖的需求已完成)
|
|
209
|
+
- [ ] Derived From 已标注
|
|
210
|
+
- [ ] 已分配到具体的 Milestone
|
|
211
|
+
- [ ] 用户已确认需求
|
|
212
|
+
|
|
213
|
+
### 完成标准 (Definition of Done)
|
|
214
|
+
|
|
215
|
+
一个 backlog item 被认为完成的标准:
|
|
216
|
+
- [ ] 通过 /flow-prd, /flow-tech, /flow-epic, /flow-dev 流程
|
|
217
|
+
- [ ] 所有 TASKS.md 中的任务完成
|
|
218
|
+
- [ ] 通过 /flow-qa (测试 + 安全审查)
|
|
219
|
+
- [ ] 代码已合并到主分支
|
|
220
|
+
- [ ] 文档已更新
|
|
221
|
+
- [ ] 用户验收通过
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Appendix: Priority Guidelines
|
|
226
|
+
|
|
227
|
+
### P1 (MVP Must-Have) - 优先级评估标准
|
|
228
|
+
|
|
229
|
+
| 标准 | 说明 | 示例 |
|
|
230
|
+
|------|------|------|
|
|
231
|
+
| **核心价值** | 没有此功能产品无法交付核心价值 | 用户认证(没有认证就无法使用) |
|
|
232
|
+
| **阻塞依赖** | 其他高优先级功能依赖此功能 | 权限管理(多个功能需要权限控制) |
|
|
233
|
+
| **用户痛点** | 解决用户最迫切的问题 | 性能优化(启动慢导致用户流失) |
|
|
234
|
+
| **合规要求** | 法律、安全、合规必须 | 数据加密(隐私合规要求) |
|
|
235
|
+
|
|
236
|
+
### P2 (Important) - 优先级评估标准
|
|
237
|
+
|
|
238
|
+
| 标准 | 说明 | 示例 |
|
|
239
|
+
|------|------|------|
|
|
240
|
+
| **体验提升** | 显著提升用户体验但不影响核心功能 | 输入框增强(Markdown 预览) |
|
|
241
|
+
| **运营需求** | 支持运营、分析、监控 | 数据分析模块 |
|
|
242
|
+
| **扩展性** | 为未来扩展打基础 | 多账号支持 |
|
|
243
|
+
| **差异化** | 与竞品形成差异化 | AI 辅助功能 |
|
|
244
|
+
|
|
245
|
+
### P3 (Nice-to-Have) - 优先级评估标准
|
|
246
|
+
|
|
247
|
+
| 标准 | 说明 | 示例 |
|
|
248
|
+
|------|------|------|
|
|
249
|
+
| **锦上添花** | 有更好,没有也不影响 | 快捷键自定义 |
|
|
250
|
+
| **小众需求** | 只有少数用户需要 | 高级配置项 |
|
|
251
|
+
| **实验性** | 需要验证是否有价值 | 新 UI 风格 |
|
|
252
|
+
| **技术优化** | 技术层面的优化,用户无感知 | 代码重构 |
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
**生成说明**:
|
|
257
|
+
1. 所有 `{{PLACEHOLDER}}` 必须被实际内容替换
|
|
258
|
+
2. Business Value 应具体说明为什么这个功能重要
|
|
259
|
+
3. Effort 估算基于历史 Velocity
|
|
260
|
+
4. Dependency Matrix 应与 ROADMAP.md 保持一致
|
|
261
|
+
5. 所有日期使用北京时间
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# {{TYPE}} Checklist: {{REQ_ID}}
|
|
2
|
+
|
|
3
|
+
**Purpose**: {{TYPE_DESCRIPTION}}
|
|
4
|
+
**Created**: {{TIMESTAMP}}
|
|
5
|
+
**PRD Reference**: PRD.md
|
|
6
|
+
**Quality Dimensions**: Completeness, Clarity, Consistency, Measurability, Coverage
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Requirement Completeness
|
|
11
|
+
|
|
12
|
+
- [ ] CHK001 - Are all {{TYPE}} requirements documented in PRD? [Completeness, Spec §FR-XXX]
|
|
13
|
+
- [ ] CHK002 - Are success criteria defined for {{TYPE}} features? [Completeness]
|
|
14
|
+
- [ ] CHK003 - Are error handling scenarios specified? [Completeness, Gap]
|
|
15
|
+
|
|
16
|
+
## Requirement Clarity
|
|
17
|
+
|
|
18
|
+
- [ ] CHK004 - Is '{{VAGUE_TERM}}' quantified with specific metrics? [Clarity, Spec §NFR-XXX]
|
|
19
|
+
- [ ] CHK005 - Are {{TYPE}} behaviors explicitly specified? [Clarity]
|
|
20
|
+
- [ ] CHK006 - Are technical constraints clearly documented? [Clarity]
|
|
21
|
+
|
|
22
|
+
## Requirement Consistency
|
|
23
|
+
|
|
24
|
+
- [ ] CHK007 - Are {{TYPE}} requirements consistent across sections? [Consistency]
|
|
25
|
+
- [ ] CHK008 - Are terminology and naming conventions consistent? [Consistency]
|
|
26
|
+
- [ ] CHK009 - Are data formats consistent between requirements? [Consistency]
|
|
27
|
+
|
|
28
|
+
## Acceptance Criteria Quality
|
|
29
|
+
|
|
30
|
+
- [ ] CHK010 - Can {{TYPE}} requirements be objectively verified? [Measurability]
|
|
31
|
+
- [ ] CHK011 - Are acceptance criteria in Given-When-Then format? [Measurability]
|
|
32
|
+
- [ ] CHK012 - Are performance metrics quantified with specific numbers? [Measurability]
|
|
33
|
+
|
|
34
|
+
## Scenario Coverage
|
|
35
|
+
|
|
36
|
+
- [ ] CHK013 - Are edge cases defined for {{TYPE}} scenarios? [Coverage, Gap]
|
|
37
|
+
- [ ] CHK014 - Are error states and recovery paths specified? [Coverage]
|
|
38
|
+
- [ ] CHK015 - Are boundary conditions addressed? [Coverage]
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Notes
|
|
43
|
+
|
|
44
|
+
- Check items off as completed: change `[ ]` to `[x]`
|
|
45
|
+
- Items are numbered sequentially (CHK001-CHKnnn)
|
|
46
|
+
- Quality dimensions: [Completeness], [Clarity], [Consistency], [Measurability], [Coverage]
|
|
47
|
+
- References:
|
|
48
|
+
- `[Spec §X.Y]` - Links to existing PRD requirement
|
|
49
|
+
- `[Gap]` - Missing requirement identified
|
|
50
|
+
- `[Ambiguity]` - Unclear requirement needs clarification
|
|
51
|
+
- `[Conflict]` - Requirement conflicts with another
|
|
52
|
+
- `[Assumption]` - Needs validation
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
# Clarification Report: {{REQ_ID}}
|
|
2
|
+
|
|
3
|
+
**Session ID**: {{SESSION_ID}}
|
|
4
|
+
**Date**: {{DATE}}
|
|
5
|
+
**Duration**: {{SCAN_DURATION}}s (scan) + interactive Q&A
|
|
6
|
+
**Status**: {{STATUS}}
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Metadata
|
|
11
|
+
|
|
12
|
+
| Field | Value |
|
|
13
|
+
|-------|-------|
|
|
14
|
+
| Requirement | {{REQ_ID}} |
|
|
15
|
+
| Session ID | {{SESSION_ID}} |
|
|
16
|
+
| Questions | {{QUESTIONS_ANSWERED}} / {{QUESTIONS_TOTAL}} |
|
|
17
|
+
| Generated | {{GENERATED_AT}} |
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Coverage Summary
|
|
22
|
+
|
|
23
|
+
**Legend**: ✅ Clear | ⚠️ Partial | ❌ Missing | 🔄 Resolved | ⏭️ Deferred
|
|
24
|
+
|
|
25
|
+
| Category | Status | Issues | Resolution |
|
|
26
|
+
|----------|--------|--------|------------|
|
|
27
|
+
| Functional Scope | {{DIM_1_STATUS}} | {{DIM_1_ISSUES}} | {{DIM_1_RESOLUTION}} |
|
|
28
|
+
| Data Model | {{DIM_2_STATUS}} | {{DIM_2_ISSUES}} | {{DIM_2_RESOLUTION}} |
|
|
29
|
+
| UX Flow | {{DIM_3_STATUS}} | {{DIM_3_ISSUES}} | {{DIM_3_RESOLUTION}} |
|
|
30
|
+
| Non-Functional Quality | {{DIM_4_STATUS}} | {{DIM_4_ISSUES}} | {{DIM_4_RESOLUTION}} |
|
|
31
|
+
| Integration & Dependencies | {{DIM_5_STATUS}} | {{DIM_5_ISSUES}} | {{DIM_5_RESOLUTION}} |
|
|
32
|
+
| Edge Cases | {{DIM_6_STATUS}} | {{DIM_6_ISSUES}} | {{DIM_6_RESOLUTION}} |
|
|
33
|
+
| Constraints & Tradeoffs | {{DIM_7_STATUS}} | {{DIM_7_ISSUES}} | {{DIM_7_RESOLUTION}} |
|
|
34
|
+
| Terminology | {{DIM_8_STATUS}} | {{DIM_8_ISSUES}} | {{DIM_8_RESOLUTION}} |
|
|
35
|
+
| Completion Signals | {{DIM_9_STATUS}} | {{DIM_9_ISSUES}} | {{DIM_9_RESOLUTION}} |
|
|
36
|
+
| Misc & Placeholders | {{DIM_10_STATUS}} | {{DIM_10_ISSUES}} | {{DIM_10_RESOLUTION}} |
|
|
37
|
+
| Security & Privacy | {{DIM_11_STATUS}} | {{DIM_11_ISSUES}} | {{DIM_11_RESOLUTION}} |
|
|
38
|
+
|
|
39
|
+
**Summary**:
|
|
40
|
+
- ✅ Clear: {{CLEAR_COUNT}} categories
|
|
41
|
+
- 🔄 Resolved: {{RESOLVED_COUNT}} categories
|
|
42
|
+
- ⏭️ Deferred: {{DEFERRED_COUNT}} categories
|
|
43
|
+
- ❌ Outstanding: {{OUTSTANDING_COUNT}} categories
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Scan Details
|
|
48
|
+
|
|
49
|
+
### High-Priority Issues (Priority ≥ 50)
|
|
50
|
+
|
|
51
|
+
{{#HIGH_PRIORITY_ISSUES}}
|
|
52
|
+
| Issue ID | Dimension | Description | Impact | Uncertainty | Priority |
|
|
53
|
+
|----------|-----------|-------------|--------|-------------|----------|
|
|
54
|
+
{{#ISSUES}}
|
|
55
|
+
| {{ISSUE_ID}} | {{DIM_NAME}} | {{DESCRIPTION}} | {{IMPACT}}/10 | {{UNCERTAINTY}}/10 | {{PRIORITY}} |
|
|
56
|
+
{{/ISSUES}}
|
|
57
|
+
{{/HIGH_PRIORITY_ISSUES}}
|
|
58
|
+
|
|
59
|
+
{{^HIGH_PRIORITY_ISSUES}}
|
|
60
|
+
No high-priority issues detected.
|
|
61
|
+
{{/HIGH_PRIORITY_ISSUES}}
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Clarification Session
|
|
66
|
+
|
|
67
|
+
### Session {{DATE}}
|
|
68
|
+
|
|
69
|
+
{{#QUESTIONS}}
|
|
70
|
+
#### {{QUESTION_ID}}: {{DIM_NAME}}
|
|
71
|
+
|
|
72
|
+
**Question**: {{QUESTION_TEXT}}
|
|
73
|
+
|
|
74
|
+
**Type**: {{QUESTION_TYPE}}
|
|
75
|
+
|
|
76
|
+
{{#IS_MULTIPLE_CHOICE}}
|
|
77
|
+
| Option | Description |
|
|
78
|
+
|--------|-------------|
|
|
79
|
+
{{#OPTIONS}}
|
|
80
|
+
| **{{OPTION_ID}}** | {{OPTION_TEXT}} - {{OPTION_DESC}} |
|
|
81
|
+
{{/OPTIONS}}
|
|
82
|
+
|
|
83
|
+
**Recommended**: {{RECOMMENDED_OPTION}} ⭐
|
|
84
|
+
> {{RECOMMENDED_RATIONALE}}
|
|
85
|
+
{{/IS_MULTIPLE_CHOICE}}
|
|
86
|
+
|
|
87
|
+
{{#IS_SHORT_ANSWER}}
|
|
88
|
+
**Format**: Short answer (≤5 words)
|
|
89
|
+
**Suggested**: {{SUGGESTED_VALUE}}
|
|
90
|
+
{{/IS_SHORT_ANSWER}}
|
|
91
|
+
|
|
92
|
+
**User Answer**: {{ANSWER}}
|
|
93
|
+
|
|
94
|
+
**Rationale**: {{ANSWER_RATIONALE}}
|
|
95
|
+
|
|
96
|
+
**Impact**: {{ANSWER_IMPACT}}
|
|
97
|
+
|
|
98
|
+
- Q: {{QUESTION_TEXT}} → A: {{ANSWER}}
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
{{/QUESTIONS}}
|
|
103
|
+
|
|
104
|
+
{{^QUESTIONS}}
|
|
105
|
+
No questions generated - research.md appears sufficiently clear.
|
|
106
|
+
{{/QUESTIONS}}
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## Integration Summary
|
|
111
|
+
|
|
112
|
+
### Sections Updated
|
|
113
|
+
|
|
114
|
+
{{#UPDATED_SECTIONS}}
|
|
115
|
+
| Section | Update Type | Description |
|
|
116
|
+
|---------|-------------|-------------|
|
|
117
|
+
{{#SECTIONS}}
|
|
118
|
+
| {{SECTION_NAME}} | {{UPDATE_TYPE}} | {{UPDATE_DESC}} |
|
|
119
|
+
{{/SECTIONS}}
|
|
120
|
+
{{/UPDATED_SECTIONS}}
|
|
121
|
+
|
|
122
|
+
{{^UPDATED_SECTIONS}}
|
|
123
|
+
No sections updated (clarification-only session or no material changes required).
|
|
124
|
+
{{/UPDATED_SECTIONS}}
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Deferred Items
|
|
129
|
+
|
|
130
|
+
{{#DEFERRED_ITEMS}}
|
|
131
|
+
| Category | Reason | Recommendation |
|
|
132
|
+
|----------|--------|----------------|
|
|
133
|
+
{{#ITEMS}}
|
|
134
|
+
| {{CATEGORY}} | {{REASON}} | {{RECOMMENDATION}} |
|
|
135
|
+
{{/ITEMS}}
|
|
136
|
+
{{/DEFERRED_ITEMS}}
|
|
137
|
+
|
|
138
|
+
{{^DEFERRED_ITEMS}}
|
|
139
|
+
No items deferred.
|
|
140
|
+
{{/DEFERRED_ITEMS}}
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Outstanding Items
|
|
145
|
+
|
|
146
|
+
{{#OUTSTANDING_ITEMS}}
|
|
147
|
+
> ⚠️ The following items remain unresolved but are low-impact:
|
|
148
|
+
|
|
149
|
+
{{#ITEMS}}
|
|
150
|
+
- **{{CATEGORY}}**: {{DESCRIPTION}}
|
|
151
|
+
{{/ITEMS}}
|
|
152
|
+
{{/OUTSTANDING_ITEMS}}
|
|
153
|
+
|
|
154
|
+
{{^OUTSTANDING_ITEMS}}
|
|
155
|
+
No outstanding items.
|
|
156
|
+
{{/OUTSTANDING_ITEMS}}
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## Next Steps
|
|
161
|
+
|
|
162
|
+
{{#ALL_RESOLVED}}
|
|
163
|
+
✅ **Clarification complete**. All critical ambiguities have been resolved.
|
|
164
|
+
|
|
165
|
+
Recommended next command: `/flow-prd {{REQ_ID}}`
|
|
166
|
+
{{/ALL_RESOLVED}}
|
|
167
|
+
|
|
168
|
+
{{#HAS_OUTSTANDING}}
|
|
169
|
+
⚠️ **Clarification partially complete**. Some low-impact items remain.
|
|
170
|
+
|
|
171
|
+
Options:
|
|
172
|
+
1. Proceed with `/flow-prd {{REQ_ID}}` (acceptable risk)
|
|
173
|
+
2. Re-run `/flow-clarify {{REQ_ID}}` after planning phase
|
|
174
|
+
{{/HAS_OUTSTANDING}}
|
|
175
|
+
|
|
176
|
+
{{#HAS_DEFERRED}}
|
|
177
|
+
⏭️ **Items deferred to planning phase**:
|
|
178
|
+
{{#DEFERRED_SUMMARY}}
|
|
179
|
+
- {{ITEM}}
|
|
180
|
+
{{/DEFERRED_SUMMARY}}
|
|
181
|
+
|
|
182
|
+
These will be addressed during `/flow-tech` or `/flow-epic`.
|
|
183
|
+
{{/HAS_DEFERRED}}
|
|
184
|
+
|
|
185
|
+
{{#NO_QUESTIONS}}
|
|
186
|
+
✅ **No critical ambiguities detected**. research.md is sufficiently specified.
|
|
187
|
+
|
|
188
|
+
Recommended next command: `/flow-prd {{REQ_ID}}`
|
|
189
|
+
{{/NO_QUESTIONS}}
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
## Validation Checklist
|
|
194
|
+
|
|
195
|
+
- [ ] CLR-001 All Q&A pairs recorded in session section
|
|
196
|
+
- [ ] CLR-002 No duplicate questions asked
|
|
197
|
+
- [ ] CLR-003 Questions ≤ 5 (actual: {{QUESTIONS_COUNT}})
|
|
198
|
+
- [ ] CLR-004 Coverage summary complete for all 11 dimensions
|
|
199
|
+
- [ ] CLR-005 No contradictory statements remain in research.md
|
|
200
|
+
- [ ] CLR-006 Terminology consistent across updated sections
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
**Generated by**: clarify-analyst agent
|
|
205
|
+
**Template Version**: 1.0.0
|
|
206
|
+
**Based on**: spec-kit /speckit.clarify pattern
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Code Review Report Template
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
---
|
|
5
|
+
reqId: {{REQ_ID}}
|
|
6
|
+
phase: {{PHASE_NAME}}
|
|
7
|
+
phaseSlug: {{PHASE_SLUG}}
|
|
8
|
+
completedTasks:
|
|
9
|
+
- {{TASK_ID}} {{TASK_DESC}}
|
|
10
|
+
generatedAt: {{ISO8601_TIMESTAMP}}
|
|
11
|
+
reviewer: code-reviewer
|
|
12
|
+
phaseStatus: {{ready_for_next_phase|blocked}}
|
|
13
|
+
decision: {{approve|comment|request_changes|blocker}}
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
- **What changed**: {{concise-overview-within-prd-epic-scope}}
|
|
17
|
+
- **Top risks**:
|
|
18
|
+
- {{risk-1-or-"None"}}
|
|
19
|
+
- {{risk-2}}
|
|
20
|
+
- **Alignment Check**:
|
|
21
|
+
- **PRD scope**: {{within_scope|out_of_scope}} — {{evidence}}
|
|
22
|
+
- **EPIC alignment**: {{aligned|misaligned}} — {{evidence}}
|
|
23
|
+
- **Previous review follow-up**:
|
|
24
|
+
- {{status of prior findings or "No prior review"}}
|
|
25
|
+
|
|
26
|
+
## Findings
|
|
27
|
+
|
|
28
|
+
{{For each finding:}}
|
|
29
|
+
- [{{severity}}] {{category}} — {{title}}
|
|
30
|
+
- **Where**: `{{file}}:{{line_range}}`
|
|
31
|
+
- **Evidence**: {{brief snippet or description}}
|
|
32
|
+
- **Impact**: {{user / system impact}}
|
|
33
|
+
- **Scope Fit**: {{affirm requirement reference or flag scope creep}}
|
|
34
|
+
- **Recommendation**: {{minimal fix or rollback}}
|
|
35
|
+
- **Tests**: {{tests to add/run}}
|
|
36
|
+
|
|
37
|
+
## Performance & Reliability
|
|
38
|
+
- Hotspots: {{items|None}}
|
|
39
|
+
- Complexity notes: {{items|None}}
|
|
40
|
+
- Monitoring/Benchmarks: {{plan|None}}
|
|
41
|
+
|
|
42
|
+
## Security & Compliance
|
|
43
|
+
- Risks: {{items|None}}
|
|
44
|
+
- Secrets/PII: {{status}}
|
|
45
|
+
- Hardening suggestions: {{items|None}}
|
|
46
|
+
|
|
47
|
+
## Testing & Verification
|
|
48
|
+
- Coverage signals: {{summary}}
|
|
49
|
+
- Gaps: {{items|None}}
|
|
50
|
+
- Suggested test plan: {{Given/When/Then bullets|None}}
|
|
51
|
+
|
|
52
|
+
## Documentation & DX
|
|
53
|
+
- Updates needed: {{items|None}}
|
|
54
|
+
- Observability: {{logging/metrics recommendations|None}}
|
|
55
|
+
|
|
56
|
+
## Decision
|
|
57
|
+
- **Phase Gate Result**: {{Pass|Fail}}
|
|
58
|
+
- **Required Actions Before Next Phase**:
|
|
59
|
+
1. {{action or "None"}}
|
|
60
|
+
- **Optional Follow-ups**:
|
|
61
|
+
1. {{item or "None"}}
|
|
62
|
+
|
|
63
|
+
## Next Actions for Main Agent
|
|
64
|
+
1. {{If decision fail → fix blockers referencing findings}}
|
|
65
|
+
2. {{If pass → proceed guidance, e.g., start next phase}}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
> **Instructions**:
|
|
69
|
+
> - Never introduce features or fixes outside PRD/EPIC scope. Flag any scope creep.
|
|
70
|
+
> - Reference prior code reviews to confirm resolutions or carry-over risks.
|
|
71
|
+
> - Set `phaseStatus` to `blocked` if any blocker/high severity issues remain; otherwise `ready_for_next_phase`.
|