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,260 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: flow-checklist
|
|
3
|
+
description: 'Generate requirement quality checklist. Usage: /flow-checklist [OPTIONS]'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /flow-checklist - 需求质量检查命令
|
|
7
|
+
|
|
8
|
+
## Usage
|
|
9
|
+
```
|
|
10
|
+
/flow-checklist [OPTIONS]
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Purpose
|
|
14
|
+
生成和管理需求质量检查清单 - "Unit Tests for English"。
|
|
15
|
+
对需求文档进行质量测试,确保需求完整性、清晰性、一致性、可测量性和场景覆盖。
|
|
16
|
+
|
|
17
|
+
## Options
|
|
18
|
+
| Option | Type | Default | Description |
|
|
19
|
+
|--------|------|---------|-------------|
|
|
20
|
+
| `--type` | string | `general` | Checklist 类型,支持逗号分隔多类型 |
|
|
21
|
+
| `--status` | flag | - | 显示完成度统计 |
|
|
22
|
+
| `--mark` | string | - | 批量标记检查项为完成 (CHK001,CHK002) |
|
|
23
|
+
| `--mark-all` | flag | - | 标记所有检查项为完成 |
|
|
24
|
+
| `--file` | string | - | 指定操作的 Checklist 文件 |
|
|
25
|
+
| `--help` | flag | - | 显示帮助信息 |
|
|
26
|
+
|
|
27
|
+
## Valid Types
|
|
28
|
+
- `ux`: UX/UI 需求检查
|
|
29
|
+
- `api`: API 需求检查
|
|
30
|
+
- `security`: 安全需求检查
|
|
31
|
+
- `performance`: 性能需求检查
|
|
32
|
+
- `data`: 数据需求检查
|
|
33
|
+
- `general`: 通用需求检查 (默认)
|
|
34
|
+
|
|
35
|
+
## Entry Gate
|
|
36
|
+
1. 验证 `PRD.md` 存在
|
|
37
|
+
2. 验证 `orchestration_status.json.prd_complete == true`
|
|
38
|
+
3. 创建 `checklists/` 目录 (如不存在)
|
|
39
|
+
|
|
40
|
+
## Execution Flow
|
|
41
|
+
|
|
42
|
+
### Generate Checklist (--type)
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
1. Parse --type parameter
|
|
46
|
+
→ Split by comma if multiple types
|
|
47
|
+
→ Validate each type against valid_types
|
|
48
|
+
|
|
49
|
+
2. For each type:
|
|
50
|
+
a. Read PRD.md content
|
|
51
|
+
b. Invoke checklist-agent.md with:
|
|
52
|
+
- prd_content: PRD.md 内容
|
|
53
|
+
- type: Checklist 类型
|
|
54
|
+
- config: quality-rules.yml 配置
|
|
55
|
+
c. Agent generates checklist items (15-30 items)
|
|
56
|
+
d. Write to checklists/{type}.md
|
|
57
|
+
e. If file exists: Append mode (继续编号)
|
|
58
|
+
|
|
59
|
+
3. Output summary:
|
|
60
|
+
→ Items generated per type
|
|
61
|
+
→ Dimension coverage (5/5)
|
|
62
|
+
→ Traceability percentage
|
|
63
|
+
|
|
64
|
+
4. Update orchestration_status.json:
|
|
65
|
+
→ checklist.generated_types[]
|
|
66
|
+
→ checklist.total_items
|
|
67
|
+
→ checklist.generated_at
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Check Status (--status)
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
1. Run calculate-checklist-completion.sh --json
|
|
74
|
+
→ Scan checklists/*.md
|
|
75
|
+
→ Count [x] and [ ] items
|
|
76
|
+
|
|
77
|
+
2. Display completion table:
|
|
78
|
+
| Checklist | Complete | Total | Percentage |
|
|
79
|
+
|-----------|----------|-------|------------|
|
|
80
|
+
| ux.md | 16 | 20 | 80% |
|
|
81
|
+
| OVERALL | 46 | 57 | 81% |
|
|
82
|
+
|
|
83
|
+
3. Compare to threshold (from quality-rules.yml)
|
|
84
|
+
→ PASS: completion >= threshold
|
|
85
|
+
→ FAIL: completion < threshold
|
|
86
|
+
|
|
87
|
+
4. Update orchestration_status.json:
|
|
88
|
+
→ checklist.checked_items
|
|
89
|
+
→ checklist.completion_percentage
|
|
90
|
+
→ checklist.last_check_at
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Mark Items (--mark)
|
|
94
|
+
|
|
95
|
+
```
|
|
96
|
+
1. Parse --mark parameter
|
|
97
|
+
→ Split by comma
|
|
98
|
+
→ Validate each ID format (CHK + 3 digits)
|
|
99
|
+
|
|
100
|
+
2. For each ID:
|
|
101
|
+
a. Search checklists/*.md for CHK{NNN}
|
|
102
|
+
b. If found: Replace "- [ ]" with "- [x]"
|
|
103
|
+
c. If not found: Output warning
|
|
104
|
+
|
|
105
|
+
3. Output:
|
|
106
|
+
→ "Updated completion: N items marked"
|
|
107
|
+
→ "Run /flow-checklist --status to see updated completion"
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Mark All (--mark-all --file)
|
|
111
|
+
|
|
112
|
+
```
|
|
113
|
+
1. Validate --file parameter exists
|
|
114
|
+
2. Read specified file
|
|
115
|
+
3. Replace all "- [ ]" with "- [x]"
|
|
116
|
+
4. Output item count
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## Exit Gate
|
|
120
|
+
1. 如果生成了新 Checklist:
|
|
121
|
+
- 更新 `orchestration_status.json.checklist`
|
|
122
|
+
- 追加事件到 `EXECUTION_LOG.md`
|
|
123
|
+
2. 输出下一步提示
|
|
124
|
+
|
|
125
|
+
## Output Examples
|
|
126
|
+
|
|
127
|
+
### Generate Single Type
|
|
128
|
+
```
|
|
129
|
+
Generating UX Checklist...
|
|
130
|
+
Reading PRD.md...
|
|
131
|
+
Analyzing UX requirements...
|
|
132
|
+
Applying Anti-Example rules...
|
|
133
|
+
|
|
134
|
+
✅ Generated: checklists/ux.md
|
|
135
|
+
Items: 18
|
|
136
|
+
Dimensions: 5/5 (Completeness, Clarity, Consistency, Measurability, Coverage)
|
|
137
|
+
Traceability: 85% (>=80% required)
|
|
138
|
+
|
|
139
|
+
Next: Review and check items, then run /flow-checklist --status
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### Generate Multiple Types
|
|
143
|
+
```
|
|
144
|
+
Generating multiple Checklists...
|
|
145
|
+
|
|
146
|
+
[1/3] UX Checklist...
|
|
147
|
+
✅ Generated: checklists/ux.md (18 items)
|
|
148
|
+
|
|
149
|
+
[2/3] API Checklist...
|
|
150
|
+
✅ Generated: checklists/api.md (22 items)
|
|
151
|
+
|
|
152
|
+
[3/3] Security Checklist...
|
|
153
|
+
✅ Generated: checklists/security.md (15 items)
|
|
154
|
+
|
|
155
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
156
|
+
Summary:
|
|
157
|
+
| Type | Items Generated | Coverage |
|
|
158
|
+
|----------|-----------------|----------|
|
|
159
|
+
| ux | 18 | 5/5 |
|
|
160
|
+
| api | 22 | 5/5 |
|
|
161
|
+
| security | 15 | 4/5 |
|
|
162
|
+
| TOTAL | 55 | - |
|
|
163
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
164
|
+
|
|
165
|
+
Next: Review and check items, then run /flow-checklist --status
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
### Check Status
|
|
169
|
+
```
|
|
170
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
171
|
+
Checklist Completion Status
|
|
172
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
173
|
+
| Checklist | Complete | Total | Percentage |
|
|
174
|
+
|-----------|----------|-------|------------|
|
|
175
|
+
| ux.md | 16 | 20 | 80% |
|
|
176
|
+
| api.md | 18 | 22 | 82% |
|
|
177
|
+
| security | 12 | 15 | 80% |
|
|
178
|
+
|-----------|----------|-------|------------|
|
|
179
|
+
| OVERALL | 46 | 57 | 81% |
|
|
180
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
181
|
+
|
|
182
|
+
Gate Threshold: 80%
|
|
183
|
+
Status: ✅ PASS (81% >= 80%)
|
|
184
|
+
|
|
185
|
+
Ready for: /flow-epic
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
## Error Handling
|
|
189
|
+
|
|
190
|
+
### MISSING_PRD
|
|
191
|
+
```
|
|
192
|
+
ERROR: MISSING_PRD
|
|
193
|
+
PRD.md not found in requirement directory.
|
|
194
|
+
|
|
195
|
+
Run /flow-prd first.
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
### INVALID_TYPE
|
|
199
|
+
```
|
|
200
|
+
ERROR: INVALID_TYPE
|
|
201
|
+
Invalid checklist type: {type}
|
|
202
|
+
|
|
203
|
+
Valid types: ux, api, security, performance, data, general
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
### NO_CHECKLISTS
|
|
207
|
+
```
|
|
208
|
+
ERROR: NO_CHECKLISTS
|
|
209
|
+
No checklists found in checklists/ directory.
|
|
210
|
+
|
|
211
|
+
Run /flow-checklist --type <type> first.
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
## Append Mode (T011)
|
|
215
|
+
|
|
216
|
+
When running `--type {type}` and `checklists/{type}.md` already exists:
|
|
217
|
+
|
|
218
|
+
1. Read existing file
|
|
219
|
+
2. Find highest CHK number (e.g., CHK018)
|
|
220
|
+
3. Generate new items starting from next number (CHK019)
|
|
221
|
+
4. Append new items to existing file
|
|
222
|
+
5. Preserve existing structure and checked items
|
|
223
|
+
|
|
224
|
+
## EXECUTION_LOG Events (T012)
|
|
225
|
+
|
|
226
|
+
### Checklist Generated
|
|
227
|
+
```markdown
|
|
228
|
+
### 2025-12-15 23:55:00 (周日)
|
|
229
|
+
**Event**: Checklist Generated
|
|
230
|
+
**Type**: ux
|
|
231
|
+
**Items**: 18
|
|
232
|
+
**Dimensions**: 5/5
|
|
233
|
+
**Traceability**: 85%
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
### Status Checked
|
|
237
|
+
```markdown
|
|
238
|
+
### 2025-12-15 23:58:00 (周日)
|
|
239
|
+
**Event**: Checklist Status Checked
|
|
240
|
+
**Completion**: 81%
|
|
241
|
+
**Threshold**: 80%
|
|
242
|
+
**Status**: PASS
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
## Related Commands
|
|
246
|
+
|
|
247
|
+
| Command | Relationship |
|
|
248
|
+
|---------|--------------|
|
|
249
|
+
| `/flow-prd` | Prerequisite (generates PRD.md) |
|
|
250
|
+
| `/flow-epic` | Consumer (uses checklist gate) |
|
|
251
|
+
| `/flow-status` | Reader (displays checklist status) |
|
|
252
|
+
|
|
253
|
+
## Configuration
|
|
254
|
+
|
|
255
|
+
Config file: `config/quality-rules.yml`
|
|
256
|
+
|
|
257
|
+
Key settings:
|
|
258
|
+
- `gate.threshold`: Minimum completion % (default: 80)
|
|
259
|
+
- `types.{type}.min_items`: Minimum items per type (default: 15)
|
|
260
|
+
- `types.{type}.max_items`: Maximum items per type (default: 30)
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: flow-clarify
|
|
3
|
+
description: 'Requirement clarification with 11-dimension ambiguity scan. Usage: /flow-clarify [REQ-XXX] [--skip] [--history]'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /flow-clarify - 需求澄清命令
|
|
7
|
+
|
|
8
|
+
## Usage
|
|
9
|
+
```
|
|
10
|
+
/flow-clarify [REQ-XXX] [--skip] [--history]
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Purpose
|
|
14
|
+
在 PRD 生成前通过 11 维度歧义扫描系统化消除需求模糊性。
|
|
15
|
+
|
|
16
|
+
## Arguments
|
|
17
|
+
- `REQ-XXX`: 需求编号(可选,默认从分支推断)
|
|
18
|
+
- `--skip`: 跳过澄清,直接进入下一阶段
|
|
19
|
+
- `--history`: 查看历史澄清记录
|
|
20
|
+
|
|
21
|
+
## Entry Gate
|
|
22
|
+
1. 验证 `research/research.md` 存在
|
|
23
|
+
2. 验证 `orchestration_status.json.phase0_complete == true`
|
|
24
|
+
3. 检查 `.session.json` 是否有未完成会话(断点恢复)
|
|
25
|
+
|
|
26
|
+
## Execution Flow
|
|
27
|
+
|
|
28
|
+
### Phase 1: Scan (自动执行)
|
|
29
|
+
```bash
|
|
30
|
+
# 调用 run-clarify-scan.sh 执行 11 维度并行扫描
|
|
31
|
+
.claude/scripts/run-clarify-scan.sh REQ-XXX --parallel
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
输出: scan_result.json (内存)
|
|
35
|
+
|
|
36
|
+
### Phase 2: Question Generation (自动执行)
|
|
37
|
+
```bash
|
|
38
|
+
# 基于扫描结果生成 ≤5 个优先级排序问题
|
|
39
|
+
.claude/scripts/generate-clarification-questions.sh --input scan_result.json --max 5
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
输出: questions[] with AI recommendations
|
|
43
|
+
|
|
44
|
+
### Phase 3: Interactive Q&A (用户交互)
|
|
45
|
+
For each question:
|
|
46
|
+
1. Display question + options + AI recommendation (⭐ RECOMMENDED)
|
|
47
|
+
2. Read user input
|
|
48
|
+
3. Validate answer (A-E or ≤5 words)
|
|
49
|
+
4. Generate rationale (Claude Haiku)
|
|
50
|
+
5. Save to .session.json (incremental)
|
|
51
|
+
|
|
52
|
+
### Phase 4: Report Generation (自动执行)
|
|
53
|
+
```bash
|
|
54
|
+
# 生成澄清报告
|
|
55
|
+
.claude/scripts/generate-clarification-report.sh --session .session.json
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
输出: research/clarifications/[timestamp]-flow-clarify.md
|
|
59
|
+
|
|
60
|
+
## Exit Gate
|
|
61
|
+
1. 验证报告完整性
|
|
62
|
+
2. 更新 `orchestration_status.json`:
|
|
63
|
+
- `clarify_complete = true`
|
|
64
|
+
- `clarify_session_id = [sessionId]`
|
|
65
|
+
3. 删除 `.session.json`
|
|
66
|
+
4. 输出: "✅ Ready for /flow-prd"
|
|
67
|
+
|
|
68
|
+
## Session Recovery
|
|
69
|
+
如果检测到 `.session.json`:
|
|
70
|
+
1. 显示恢复提示
|
|
71
|
+
2. 从 `currentQuestionIndex` 继续
|
|
72
|
+
3. 不重复已回答的问题
|
|
73
|
+
|
|
74
|
+
## User Abort (Ctrl+C)
|
|
75
|
+
1. 捕获 SIGINT
|
|
76
|
+
2. 保存当前进度到 `.session.json`
|
|
77
|
+
3. 输出恢复命令: `/flow-clarify REQ-XXX`
|
|
78
|
+
|
|
79
|
+
## Output Format
|
|
80
|
+
|
|
81
|
+
### Question Display
|
|
82
|
+
```
|
|
83
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
84
|
+
📝 Q1: 关于 Functional Scope
|
|
85
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
86
|
+
用户权限应如何划分?
|
|
87
|
+
|
|
88
|
+
A) RBAC 角色模型 - 基于角色的访问控制
|
|
89
|
+
B) ABAC 属性模型 - 基于属性的访问控制
|
|
90
|
+
C) 简单二元权限 - admin/user 两级
|
|
91
|
+
|
|
92
|
+
⭐ RECOMMENDED: A (RBAC 是企业级应用最常见模式)
|
|
93
|
+
|
|
94
|
+
Your choice (A-C, or press Enter for recommended):
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Report Structure
|
|
98
|
+
```markdown
|
|
99
|
+
# Clarification Report: REQ-XXX
|
|
100
|
+
|
|
101
|
+
## Metadata
|
|
102
|
+
- Session ID: 20251215-143000-REQ-001
|
|
103
|
+
- Date: 2025-12-15
|
|
104
|
+
- Questions: 3 / 5
|
|
105
|
+
|
|
106
|
+
## Scan Summary
|
|
107
|
+
| Dimension | Status | Issues |
|
|
108
|
+
|-----------|--------|--------|
|
|
109
|
+
| Functional Scope | ambiguous | 2 |
|
|
110
|
+
| ...
|
|
111
|
+
|
|
112
|
+
## Clarification Session
|
|
113
|
+
### Q1: Functional Scope
|
|
114
|
+
**Question**: 用户权限应如何划分?
|
|
115
|
+
**Answer**: A (RBAC 角色模型)
|
|
116
|
+
**Rationale**: RBAC 提供灵活的权限管理...
|
|
117
|
+
|
|
118
|
+
## Next Command
|
|
119
|
+
✅ Run `/flow-prd` to generate PRD
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## Error Handling
|
|
123
|
+
- `MISSING_RESEARCH`: research.md 不存在 → 提示先运行 `/flow-init`
|
|
124
|
+
- `INVALID_PHASE`: phase0_complete != true → 提示完成研究阶段
|
|
125
|
+
- `API_ERROR`: Claude API 错误 → 降级到规则引擎
|
|
126
|
+
- `SESSION_CORRUPT`: .session.json 损坏 → 提示删除重试
|
|
127
|
+
|
|
128
|
+
## Related Commands
|
|
129
|
+
- **前置**: `/flow-init` (生成 research.md)
|
|
130
|
+
- **后续**: `/flow-prd` (生成 PRD)
|
|
131
|
+
- **可选**: `/flow-clarify --history` (查看历史)
|
|
132
|
+
|
|
133
|
+
## Constitution Compliance
|
|
134
|
+
- **Article I**: 完整实现,无 TODO
|
|
135
|
+
- **Article III**: API Key 使用环境变量
|
|
136
|
+
- **Article VI**: TDD 顺序正确
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: flow-constitution
|
|
3
|
+
description: 'Manage CC-DevFlow Constitution. Usage: /flow-constitution [--article I] [--amend --proposal file] [--apply --version TYPE]'
|
|
4
|
+
scripts:
|
|
5
|
+
manage: .claude/scripts/manage-constitution.sh
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Flow-Constitution - 宪法管理命令
|
|
9
|
+
|
|
10
|
+
## User Input
|
|
11
|
+
```text
|
|
12
|
+
$ARGUMENTS = "[--article I] [--verify] [--impact-report] [--amend --proposal path] [--apply --version TYPE] [--history]"
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## 执行原则
|
|
16
|
+
- 所有功能均由 `{SCRIPT:manage}` 执行;此文档仅说明入口与参数。
|
|
17
|
+
- Article 编号遵循罗马数字 I-X。
|
|
18
|
+
- 版本类型:MAJOR / MINOR / PATCH(SemVer 语义)。
|
|
19
|
+
|
|
20
|
+
## 常用命令
|
|
21
|
+
```text
|
|
22
|
+
/flow-constitution → show 当前版本
|
|
23
|
+
/flow-constitution --article IV → show 指定 Article
|
|
24
|
+
/flow-constitution --verify → verify 全局一致性
|
|
25
|
+
/flow-constitution --impact-report → impact 分析
|
|
26
|
+
/flow-constitution --history → 历史
|
|
27
|
+
/flow-constitution --amend --proposal amendments/2025-01-10-observability.md
|
|
28
|
+
/flow-constitution --apply --version MINOR
|
|
29
|
+
/flow-constitution --apply --version PATCH --force
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## 执行流程(由脚本实现)
|
|
33
|
+
|
|
34
|
+
### 1. Show / Article
|
|
35
|
+
```
|
|
36
|
+
→ {SCRIPT:manage} show [ARTICLE]
|
|
37
|
+
→ 输出当前版本、修订日期、指定 Article 内容
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### 2. Verify
|
|
41
|
+
```
|
|
42
|
+
→ {SCRIPT:manage} verify
|
|
43
|
+
→ 检查所有模板/代理/脚本的 Constitution 版本号一致
|
|
44
|
+
→ 调用 validate-constitution hooks,如有违规列出文件
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### 3. Impact Report
|
|
48
|
+
```
|
|
49
|
+
→ {SCRIPT:manage} impact
|
|
50
|
+
→ 汇总即将应用的修正案对模板/代理/脚本的影响
|
|
51
|
+
→ 生成报告 (amendments/impact_*.md)
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### 4. Amend
|
|
55
|
+
```
|
|
56
|
+
→ {SCRIPT:manage} amend <proposal>
|
|
57
|
+
→ 校验提案格式(版本建议、动机、影响、迁移策略)
|
|
58
|
+
→ 输出预览并提示下一步(apply 之前需人工 review)
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### 5. Apply
|
|
62
|
+
```
|
|
63
|
+
→ {SCRIPT:manage} apply <TYPE>
|
|
64
|
+
→ 更新 .claude/constitution/project-constitution.md 版本号
|
|
65
|
+
→ 触发模板/代理/脚本同步
|
|
66
|
+
→ 生成 Sync Report
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### 6. History
|
|
70
|
+
```
|
|
71
|
+
→ {SCRIPT:manage} history
|
|
72
|
+
→ 列出版本历史与修订摘要
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## 错误处理
|
|
76
|
+
- 未提供必要参数(如 --proposal)→ 脚本返回错误提示。
|
|
77
|
+
- Invalid version bump → 阻断,要求遵循 MAJOR/MINOR/PATCH。
|
|
78
|
+
- 验证失败(如模板未同步)→ 返回违规清单,用户需手动修复。
|
|
79
|
+
|
|
80
|
+
## 下一步
|
|
81
|
+
- 需要向项目传播修订时,先运行 `--impact-report`,与团队确认后再 `--apply`。
|
|
82
|
+
- 应用后建议运行 `/flow-verify --all` 确认所有需求遵循最新宪法。
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: flow-dev
|
|
3
|
+
description: 'Execute development tasks following TDD order. Usage: /flow-dev "REQ-123" or /flow-dev'
|
|
4
|
+
scripts:
|
|
5
|
+
prereq: .claude/scripts/check-prerequisites.sh
|
|
6
|
+
check_tasks: .claude/scripts/check-task-status.sh
|
|
7
|
+
mark_task: .claude/scripts/mark-task-complete.sh
|
|
8
|
+
validate_constitution: .claude/scripts/validate-constitution.sh
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Flow-Dev - 开发执行命令
|
|
12
|
+
|
|
13
|
+
## User Input
|
|
14
|
+
```text
|
|
15
|
+
$ARGUMENTS = "REQ_ID? [--task T###]"
|
|
16
|
+
```
|
|
17
|
+
未提供 REQ_ID 时从当前分支或 `DEVFLOW_REQ_ID` 推断;`--task` 用于指定起始任务。
|
|
18
|
+
|
|
19
|
+
## 执行流程
|
|
20
|
+
|
|
21
|
+
### 阶段 1: Entry Gate
|
|
22
|
+
```
|
|
23
|
+
1. 解析 REQ_ID 与 --task
|
|
24
|
+
→ If argument provided: split
|
|
25
|
+
→ Else: run {SCRIPT:prereq} --json --paths-only
|
|
26
|
+
|
|
27
|
+
2. 校验资产
|
|
28
|
+
→ 必须存在(/flow-tech 产物):
|
|
29
|
+
• TECH_DESIGN.md (技术方案总纲)
|
|
30
|
+
• research/codebase-tech-analysis.md (代码库技术分析)
|
|
31
|
+
• data-model.md (数据模型定义)
|
|
32
|
+
• contracts/ (API 契约目录,至少 1 个文件)
|
|
33
|
+
• quickstart.md (快速启动指南)
|
|
34
|
+
→ 必须存在(/flow-epic 产物):
|
|
35
|
+
• EPIC.md (Epic 规划文档)
|
|
36
|
+
• TASKS.md (任务分解清单)
|
|
37
|
+
→ 状态校验:
|
|
38
|
+
• orchestration_status.status ∈ {"epic_complete", "development_in_progress"}
|
|
39
|
+
• phase0_complete == true (研究阶段完成)
|
|
40
|
+
• phase1_complete == true (技术设计完成)
|
|
41
|
+
|
|
42
|
+
3. TASKS 结构校验
|
|
43
|
+
→ Phase 顺序: Setup → Foundational → Phase 2 Tests First → ⚠️ Test Verification → Phase 3 Core Implementation → ...
|
|
44
|
+
→ 任务格式 `- [ ] T### [P?] [US?] Description (path)`
|
|
45
|
+
|
|
46
|
+
4. 起始任务
|
|
47
|
+
→ Run: {SCRIPT:check_tasks} --json
|
|
48
|
+
→ 若指定 --task,验证任务存在且未完成
|
|
49
|
+
→ 记录下一任务 ID
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### 阶段 2: Quickstart 与风格指南加载
|
|
53
|
+
```
|
|
54
|
+
1. 读取 quickstart.md
|
|
55
|
+
→ 获取环境变量、依赖安装、测试命令
|
|
56
|
+
|
|
57
|
+
2. 读取 STYLE.md(如存在)
|
|
58
|
+
→ 检查 devflow/STYLE.md 文件
|
|
59
|
+
→ 如存在:
|
|
60
|
+
• 加载设计风格指南(颜色、字体、间距、组件样式等)
|
|
61
|
+
• 所有前端代码生成必须遵循 STYLE.md 定义的风格
|
|
62
|
+
• 特别注意:
|
|
63
|
+
- 颜色使用(使用 CSS Variables 或 Tailwind classes 引用 STYLE.md 定义)
|
|
64
|
+
- 字体使用(字体族、字阶、行高、字重等必须符合 STYLE.md)
|
|
65
|
+
- 间距使用(padding, margin, gap 必须使用 STYLE.md 的间距系统)
|
|
66
|
+
- 组件结构(Button, Card, Input 等必须遵循 STYLE.md 的组件规范)
|
|
67
|
+
- 阴影、圆角、动画、透明度等(必须遵循 STYLE.md)
|
|
68
|
+
• 在 EXECUTION_LOG.md 记录 STYLE.md 版本和使用情况
|
|
69
|
+
→ 如不存在:
|
|
70
|
+
• 使用项目现有的样式约定(如有)
|
|
71
|
+
• 建议用户运行 /flow-style 建立项目设计标准
|
|
72
|
+
|
|
73
|
+
3. 如果首次运行:
|
|
74
|
+
→ 执行 quickstart 中的 setup 命令
|
|
75
|
+
|
|
76
|
+
4. 在 EXECUTION_LOG.md 记录 quickstart 版本 + STYLE.md 版本(如有)
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### 阶段 3: TDD 循环
|
|
80
|
+
```
|
|
81
|
+
For each remaining task (顺序严格遵循 TASKS.md):
|
|
82
|
+
|
|
83
|
+
1. 读取任务定义
|
|
84
|
+
→ 提取 task id、phase、文件路径、是否 [P]
|
|
85
|
+
|
|
86
|
+
2. 执行策略
|
|
87
|
+
- Phase 2 (测试任务):
|
|
88
|
+
• 根据 contracts/ 生成 contract/integration tests
|
|
89
|
+
• 每个测试必须 FAIL (使用 quickstart 的 test 命令)
|
|
90
|
+
- Phase 3 (实现任务):
|
|
91
|
+
• 依据 data-model.md、TECH_DESIGN.md、contracts/ 实现代码
|
|
92
|
+
• 运行相关测试 (quickstart) 确认 PASS
|
|
93
|
+
- 后续 Phase:
|
|
94
|
+
• 按任务描述(安全、性能、文档等)完成
|
|
95
|
+
|
|
96
|
+
3. 验证 DoD
|
|
97
|
+
→ 测试失败/成功状态符合阶段要求
|
|
98
|
+
→ 文件路径与任务描述一致
|
|
99
|
+
|
|
100
|
+
4. 标记完成
|
|
101
|
+
→ Run: {SCRIPT:mark_task} T###
|
|
102
|
+
→ Git 提交 (一任务一提交)
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### 阶段 4: Exit Gate
|
|
106
|
+
```
|
|
107
|
+
1. 所有任务完成?
|
|
108
|
+
→ {SCRIPT:check_tasks} --json 确认 remaining=0
|
|
109
|
+
|
|
110
|
+
2. 代码质量
|
|
111
|
+
→ 运行 quickstart 中全量测试命令
|
|
112
|
+
→ 可选: {SCRIPT:validate_constitution} --type dev --severity warning
|
|
113
|
+
|
|
114
|
+
3. 状态更新
|
|
115
|
+
→ orchestration_status:
|
|
116
|
+
status = "development_complete"
|
|
117
|
+
completedSteps append "dev"
|
|
118
|
+
→ EXECUTION_LOG.md 记录完成
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## 运行提示
|
|
122
|
+
- 始终使用 quickstart 中提供的命令(测试、lint、db migrate 等)。
|
|
123
|
+
- Phase 2 的所有测试必须在实现前失败;若某测试直接通过,回滚并修正。
|
|
124
|
+
- 遵循 TASKS.md 标注的 `[P]` 仅表示逻辑上可并行,实际执行依旧串行。
|
|
125
|
+
- 如需恢复,可使用 `/flow-dev --task TXYZ` 指向首个未完成任务。
|
|
126
|
+
|
|
127
|
+
## 错误处理
|
|
128
|
+
- 缺少资产 → 引导用户先运行 `/flow-tech` 或 `/flow-epic`。
|
|
129
|
+
- quickstart 命令失败 → 输出日志路径,要求修复环境后重试。
|
|
130
|
+
- 任务执行失败 → 保留当前状态,不自动跳过。
|
|
131
|
+
|
|
132
|
+
## 下一步
|
|
133
|
+
1. 完成所有任务后运行 `/flow-qa` 进入测试与安全审查。
|
|
134
|
+
2. 若有新技术引入,回到 `research/tasks.json` 补记并通知 planner。
|