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,161 @@
|
|
|
1
|
+
# ============================================================================
|
|
2
|
+
# Quality Rules Configuration for /flow-checklist
|
|
3
|
+
# ============================================================================
|
|
4
|
+
# Version: 1.0.0
|
|
5
|
+
# Purpose: Define checklist generation rules, gate thresholds, and quality
|
|
6
|
+
# dimensions for requirement quality validation.
|
|
7
|
+
# Reference: TECH_DESIGN.md Section 3.2
|
|
8
|
+
# ============================================================================
|
|
9
|
+
|
|
10
|
+
# ============================================================================
|
|
11
|
+
# Gate Thresholds
|
|
12
|
+
# ============================================================================
|
|
13
|
+
gate:
|
|
14
|
+
# Minimum completion percentage to pass Epic entry gate (0-100)
|
|
15
|
+
threshold: 80
|
|
16
|
+
|
|
17
|
+
# Allow --skip-gate to bypass gate check
|
|
18
|
+
allow_skip: true
|
|
19
|
+
|
|
20
|
+
# Require --reason when using --skip-gate
|
|
21
|
+
require_reason: true
|
|
22
|
+
|
|
23
|
+
# ============================================================================
|
|
24
|
+
# Checklist Types (6 Types - R001 Decision)
|
|
25
|
+
# ============================================================================
|
|
26
|
+
types:
|
|
27
|
+
ux:
|
|
28
|
+
name: "UX Requirements"
|
|
29
|
+
description: "User experience and interface requirements"
|
|
30
|
+
min_items: 15
|
|
31
|
+
max_items: 30
|
|
32
|
+
dimensions:
|
|
33
|
+
- Completeness
|
|
34
|
+
- Clarity
|
|
35
|
+
- Consistency
|
|
36
|
+
- Measurability
|
|
37
|
+
- Coverage
|
|
38
|
+
|
|
39
|
+
api:
|
|
40
|
+
name: "API Requirements"
|
|
41
|
+
description: "API endpoints and data contracts"
|
|
42
|
+
min_items: 15
|
|
43
|
+
max_items: 30
|
|
44
|
+
dimensions:
|
|
45
|
+
- Completeness
|
|
46
|
+
- Clarity
|
|
47
|
+
- Consistency
|
|
48
|
+
- Measurability
|
|
49
|
+
- Coverage
|
|
50
|
+
|
|
51
|
+
security:
|
|
52
|
+
name: "Security Requirements"
|
|
53
|
+
description: "Authentication, authorization, data protection"
|
|
54
|
+
min_items: 15
|
|
55
|
+
max_items: 30
|
|
56
|
+
dimensions:
|
|
57
|
+
- Completeness
|
|
58
|
+
- Clarity
|
|
59
|
+
- Consistency
|
|
60
|
+
- Measurability
|
|
61
|
+
- Coverage
|
|
62
|
+
|
|
63
|
+
performance:
|
|
64
|
+
name: "Performance Requirements"
|
|
65
|
+
description: "Response time, throughput, scalability"
|
|
66
|
+
min_items: 15
|
|
67
|
+
max_items: 30
|
|
68
|
+
dimensions:
|
|
69
|
+
- Completeness
|
|
70
|
+
- Clarity
|
|
71
|
+
- Consistency
|
|
72
|
+
- Measurability
|
|
73
|
+
- Coverage
|
|
74
|
+
|
|
75
|
+
data:
|
|
76
|
+
name: "Data Requirements"
|
|
77
|
+
description: "Data models, storage, validation"
|
|
78
|
+
min_items: 15
|
|
79
|
+
max_items: 30
|
|
80
|
+
dimensions:
|
|
81
|
+
- Completeness
|
|
82
|
+
- Clarity
|
|
83
|
+
- Consistency
|
|
84
|
+
- Measurability
|
|
85
|
+
- Coverage
|
|
86
|
+
|
|
87
|
+
general:
|
|
88
|
+
name: "General Requirements"
|
|
89
|
+
description: "Overall requirement quality"
|
|
90
|
+
min_items: 15
|
|
91
|
+
max_items: 30
|
|
92
|
+
dimensions:
|
|
93
|
+
- Completeness
|
|
94
|
+
- Clarity
|
|
95
|
+
- Consistency
|
|
96
|
+
- Measurability
|
|
97
|
+
- Coverage
|
|
98
|
+
|
|
99
|
+
# ============================================================================
|
|
100
|
+
# Quality Dimensions (5 Dimensions)
|
|
101
|
+
# ============================================================================
|
|
102
|
+
dimensions:
|
|
103
|
+
Completeness:
|
|
104
|
+
pattern: "Are .* defined|specified|documented"
|
|
105
|
+
anti_pattern: "Verify|Test|Check|Confirm"
|
|
106
|
+
|
|
107
|
+
Clarity:
|
|
108
|
+
pattern: "Is .* quantified|clarified with specific"
|
|
109
|
+
anti_pattern: "works|functions|renders"
|
|
110
|
+
|
|
111
|
+
Consistency:
|
|
112
|
+
pattern: "Are .* consistent between|across"
|
|
113
|
+
anti_pattern: "correctly|properly"
|
|
114
|
+
|
|
115
|
+
Measurability:
|
|
116
|
+
pattern: "Can .* be objectively measured|verified"
|
|
117
|
+
anti_pattern: "click|navigate|load"
|
|
118
|
+
|
|
119
|
+
Coverage:
|
|
120
|
+
pattern: "Are .* scenarios|cases addressed"
|
|
121
|
+
anti_pattern: "displays|shows|returns"
|
|
122
|
+
|
|
123
|
+
# ============================================================================
|
|
124
|
+
# Anti-Example Rules (R003 Decision)
|
|
125
|
+
# ============================================================================
|
|
126
|
+
# These patterns enforce "Unit Tests for English" - testing requirements
|
|
127
|
+
# quality, NOT testing implementation behavior.
|
|
128
|
+
# ============================================================================
|
|
129
|
+
anti_example:
|
|
130
|
+
# Prohibited patterns (test implementation, not requirements)
|
|
131
|
+
prohibited:
|
|
132
|
+
- "^Verify"
|
|
133
|
+
- "^Test"
|
|
134
|
+
- "^Confirm"
|
|
135
|
+
- "^Check that"
|
|
136
|
+
- "works correctly"
|
|
137
|
+
- "functions properly"
|
|
138
|
+
- "displays correctly"
|
|
139
|
+
- "click|navigate|render|load|execute"
|
|
140
|
+
|
|
141
|
+
# Required patterns (test requirements quality)
|
|
142
|
+
required:
|
|
143
|
+
- "Are .* defined"
|
|
144
|
+
- "Are .* specified"
|
|
145
|
+
- "Are .* documented"
|
|
146
|
+
- "Is .* quantified"
|
|
147
|
+
- "Is .* clarified"
|
|
148
|
+
- "Can .* be measured"
|
|
149
|
+
|
|
150
|
+
# ============================================================================
|
|
151
|
+
# Output Formatting
|
|
152
|
+
# ============================================================================
|
|
153
|
+
output:
|
|
154
|
+
# Checklist item ID format (CHK + 3 digits)
|
|
155
|
+
id_format: "CHK{:03d}"
|
|
156
|
+
|
|
157
|
+
# Minimum dimension coverage (out of 5)
|
|
158
|
+
min_dimension_coverage: 4
|
|
159
|
+
|
|
160
|
+
# Traceability requirement (percentage of items with references)
|
|
161
|
+
min_traceability: 80
|
|
@@ -0,0 +1,426 @@
|
|
|
1
|
+
# Spec-Kit Constitution 严格遵守机制深度分析
|
|
2
|
+
|
|
3
|
+
## 核心发现
|
|
4
|
+
|
|
5
|
+
Spec-Kit 通过**四层强制机制**确保 Constitution 的严格遵守,而非依赖 AI 的"自觉性"。
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 一、Constitution 的核心特性
|
|
10
|
+
|
|
11
|
+
### 1.1 作为项目DNA (Architectural DNA)
|
|
12
|
+
|
|
13
|
+
```text
|
|
14
|
+
The constitution acts as the architectural DNA of the system,
|
|
15
|
+
ensuring that every generated implementation maintains
|
|
16
|
+
consistency, simplicity, and quality.
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
**关键特性**:
|
|
20
|
+
- **不可变性 (Immutable)**: 原则保持恒定,不随时间改变
|
|
21
|
+
- **普遍约束 (Universal Constraints)**: 适用于所有代码生成
|
|
22
|
+
- **架构DNA**: 每次生成都遵循相同的设计基因
|
|
23
|
+
|
|
24
|
+
### 1.2 九大条款 (Nine Articles)
|
|
25
|
+
|
|
26
|
+
| Article | 原则 | 强制机制 |
|
|
27
|
+
|---------|------|---------|
|
|
28
|
+
| **I** | Library-First | 功能必须先作为库存在 |
|
|
29
|
+
| **II** | CLI Interface | 所有库必须有CLI接口 |
|
|
30
|
+
| **III** | Test-First (NON-NEGOTIABLE) | 测试先于实现,无例外 |
|
|
31
|
+
| **IV** | Integration Testing | 优先集成测试而非mocks |
|
|
32
|
+
| **V** | Observability | 文本I/O确保可观测性 |
|
|
33
|
+
| **VI** | Versioning | 语义化版本控制 |
|
|
34
|
+
| **VII** | Simplicity | ≤3项目,无未来优化 |
|
|
35
|
+
| **VIII**| Anti-Abstraction | 直接用框架,无封装 |
|
|
36
|
+
| **IX** | Integration-First | 真实环境测试 |
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 二、四层强制机制
|
|
41
|
+
|
|
42
|
+
### Layer 1: 模板硬约束 (Template Hard Constraints)
|
|
43
|
+
|
|
44
|
+
#### 机制1.1: Phase -1 Gates (预防性闸门)
|
|
45
|
+
|
|
46
|
+
**位置**: `plan-template.md`
|
|
47
|
+
|
|
48
|
+
```markdown
|
|
49
|
+
### Phase -1: Pre-Implementation Gates
|
|
50
|
+
|
|
51
|
+
#### Simplicity Gate (Article VII)
|
|
52
|
+
- [ ] Using ≤3 projects?
|
|
53
|
+
- [ ] No future-proofing?
|
|
54
|
+
|
|
55
|
+
#### Anti-Abstraction Gate (Article VIII)
|
|
56
|
+
- [ ] Using framework directly?
|
|
57
|
+
- [ ] Single model representation?
|
|
58
|
+
|
|
59
|
+
#### Integration-First Gate (Article IX)
|
|
60
|
+
- [ ] Contracts defined?
|
|
61
|
+
- [ ] Contract tests written?
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**强制原理**:
|
|
65
|
+
- **时机**: 在技术设计**之前**执行,不是事后检查
|
|
66
|
+
- **阻断**: 未通过则无法继续设计
|
|
67
|
+
- **证明**: 违规必须在 Complexity Tracking 表中证明
|
|
68
|
+
|
|
69
|
+
**效果**: AI 无法"悄悄"添加复杂度,必须明文记录
|
|
70
|
+
|
|
71
|
+
#### 机制1.2: Complexity Tracking Table (复杂度追踪)
|
|
72
|
+
|
|
73
|
+
```markdown
|
|
74
|
+
### Complexity Tracking
|
|
75
|
+
|
|
76
|
+
*Fill ONLY if Constitution Check has violations*
|
|
77
|
+
|
|
78
|
+
| Violation | Why Needed | Simpler Alternative Rejected Because |
|
|
79
|
+
|-----------|------------|-------------------------------------|
|
|
80
|
+
| 4th project | Frontend + Backend + Mobile + Admin | 3 projects can't serve 4 platforms |
|
|
81
|
+
| Repository Pattern | Need PostgreSQL + MongoDB | Direct ORM couples logic to DB |
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**强制原理**:
|
|
85
|
+
- **强制证明**: 不能只说"需要",必须证明"为什么简单方案不够"
|
|
86
|
+
- **透明度**: 所有复杂度都可见、可追溯
|
|
87
|
+
- **问责制**: 复杂度有明确的负责人和理由
|
|
88
|
+
|
|
89
|
+
#### 机制1.3: File Creation Order (文件创建顺序)
|
|
90
|
+
|
|
91
|
+
```markdown
|
|
92
|
+
### File Creation Order
|
|
93
|
+
1. Create `contracts/` with API specifications
|
|
94
|
+
2. Create test files in order: contract → integration → e2e → unit
|
|
95
|
+
3. Create source files to make tests pass
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
**强制原理**:
|
|
99
|
+
- **顺序约束**: 强制 TDD 顺序,无法跳过
|
|
100
|
+
- **契约优先**: 先定义接口,再实现
|
|
101
|
+
- **测试驱动**: 测试在前,实现在后
|
|
102
|
+
|
|
103
|
+
### Layer 2: 命令级强制 (Command-Level Enforcement)
|
|
104
|
+
|
|
105
|
+
#### 机制2.1: /speckit.constitution 命令
|
|
106
|
+
|
|
107
|
+
**功能**: 创建或更新 Constitution,并自动同步到所有依赖文档
|
|
108
|
+
|
|
109
|
+
**执行流程**:
|
|
110
|
+
```text
|
|
111
|
+
1. Load existing constitution template
|
|
112
|
+
2. Collect/derive values for placeholders
|
|
113
|
+
3. Draft updated constitution content
|
|
114
|
+
4. Consistency propagation checklist:
|
|
115
|
+
- Update plan-template.md (Phase -1 Gates)
|
|
116
|
+
- Update spec-template.md (scope constraints)
|
|
117
|
+
- Update tasks-template.md (task categories)
|
|
118
|
+
- Update command files (agent references)
|
|
119
|
+
- Update runtime guidance docs
|
|
120
|
+
5. Produce Sync Impact Report (HTML comment)
|
|
121
|
+
6. Validation before output:
|
|
122
|
+
- No unexplained bracket tokens
|
|
123
|
+
- Principles declarative and testable
|
|
124
|
+
- Dates ISO format
|
|
125
|
+
7. Write back to constitution.md
|
|
126
|
+
8. Output summary with version bump
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
**关键机制**:
|
|
130
|
+
- **一致性传播 (Consistency Propagation)**: Constitution 变更自动更新所有模板
|
|
131
|
+
- **影响报告 (Sync Impact Report)**: 明确列出哪些文件需要更新
|
|
132
|
+
- **版本管理 (Versioning)**: 语义化版本号 (MAJOR.MINOR.PATCH)
|
|
133
|
+
|
|
134
|
+
#### 机制2.2: /speckit.analyze 命令
|
|
135
|
+
|
|
136
|
+
**功能**: 跨文档一致性和覆盖率分析
|
|
137
|
+
|
|
138
|
+
**检查项**:
|
|
139
|
+
```text
|
|
140
|
+
- Constitution alignment
|
|
141
|
+
- Spec ↔ Plan consistency
|
|
142
|
+
- Plan ↔ Tasks traceability
|
|
143
|
+
- Test coverage gaps
|
|
144
|
+
- Principle violation detection
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### Layer 3: 代理级约束 (Agent-Level Constraints)
|
|
148
|
+
|
|
149
|
+
#### 机制3.1: 代理指令嵌入 Constitution 引用
|
|
150
|
+
|
|
151
|
+
**prd-writer 示例**:
|
|
152
|
+
```markdown
|
|
153
|
+
6. **Constitution** (.claude/constitution/):
|
|
154
|
+
- **Quality First**: Ensure PRD completeness, no partial requirements
|
|
155
|
+
- **Security First**: Identify and document security requirements
|
|
156
|
+
- **Architecture Consistency**: Align with existing system architecture
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
**planner 示例**:
|
|
160
|
+
```markdown
|
|
161
|
+
### Gate Enforcement Sequence
|
|
162
|
+
1. Load PRD: Extract user stories, requirements, constraints
|
|
163
|
+
2. Execute Phase -1 Gates: BEFORE designing architecture
|
|
164
|
+
- Simplicity Gate (Article VII)
|
|
165
|
+
- Anti-Abstraction Gate (Article VIII)
|
|
166
|
+
- Integration-First Gate (Article IX)
|
|
167
|
+
3. Complexity Tracking: Document violations with justification
|
|
168
|
+
4. Proceed ONLY if gates pass or violations justified
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
**强制原理**:
|
|
172
|
+
- **嵌入指令**: Constitution 原则直接写入代理的系统提示
|
|
173
|
+
- **必须检查**: 代理无法跳过 Constitution 检查
|
|
174
|
+
- **输出格式**: 代理输出必须包含 Constitution Check 章节
|
|
175
|
+
|
|
176
|
+
#### 机制3.2: 代理输出格式强制
|
|
177
|
+
|
|
178
|
+
每个代理的输出文档必须包含:
|
|
179
|
+
```markdown
|
|
180
|
+
## Constitution Check
|
|
181
|
+
|
|
182
|
+
### Simplicity Gate (Article VII)
|
|
183
|
+
- [ ] Using ≤3 projects?
|
|
184
|
+
- [ ] No future-proofing?
|
|
185
|
+
|
|
186
|
+
### Anti-Abstraction Gate (Article VIII)
|
|
187
|
+
- [ ] Using framework directly?
|
|
188
|
+
- [ ] Single model representation?
|
|
189
|
+
|
|
190
|
+
### Complexity Tracking
|
|
191
|
+
| Violation | Why Needed | Simpler Alternative Rejected |
|
|
192
|
+
|-----------|------------|------------------------------|
|
|
193
|
+
| ... | ... | ... |
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
### Layer 4: 验证脚本 (Validation Scripts)
|
|
197
|
+
|
|
198
|
+
#### 机制4.1: 自动化Constitution合规检查
|
|
199
|
+
|
|
200
|
+
**伪代码**:
|
|
201
|
+
```bash
|
|
202
|
+
validate_constitution_compliance() {
|
|
203
|
+
# 检查 plan.md
|
|
204
|
+
check_phase_minus_one_gates_exist()
|
|
205
|
+
check_simplicity_gate_passed()
|
|
206
|
+
check_anti_abstraction_gate_passed()
|
|
207
|
+
check_integration_first_gate_passed()
|
|
208
|
+
check_complexity_tracking_filled_if_violations()
|
|
209
|
+
|
|
210
|
+
# 检查 tasks.md
|
|
211
|
+
check_file_creation_order(contracts_first, tests_before_impl)
|
|
212
|
+
check_tdd_order(phase2_tests, phase3_impl)
|
|
213
|
+
|
|
214
|
+
# 检查代码实现
|
|
215
|
+
check_test_first_compliance()
|
|
216
|
+
check_no_hardcoded_secrets()
|
|
217
|
+
check_resource_cleanup()
|
|
218
|
+
}
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## 三、强制机制的核心原理
|
|
224
|
+
|
|
225
|
+
### 3.1 时间线强制 (Timeline Enforcement)
|
|
226
|
+
|
|
227
|
+
```text
|
|
228
|
+
传统模式: 设计 → 实现 → 事后检查 Constitution (太晚)
|
|
229
|
+
Spec-Kit: Phase -1 Gates → 设计 → Phase 2 Tests → Phase 3 Impl
|
|
230
|
+
↑ 预防性 ↑ 受约束 ↑ 强制TDD ↑ 让测试通过
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
**原理**: 在**能够违规之前**就阻止,而非事后检查
|
|
234
|
+
|
|
235
|
+
### 3.2 证明责任 (Burden of Proof)
|
|
236
|
+
|
|
237
|
+
```text
|
|
238
|
+
传统模式: 默认允许复杂度,简单度需要证明
|
|
239
|
+
Spec-Kit: 默认简单,复杂度需要证明
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
**原理**:
|
|
243
|
+
- **Simplicity by Default**: 简单是默认的,复杂需要证明
|
|
244
|
+
- **Explicit Justification**: 所有复杂度都有明确的"为什么"
|
|
245
|
+
- **Alternative Analysis**: 必须说明"为什么简单方案不够"
|
|
246
|
+
|
|
247
|
+
### 3.3 一致性传播 (Consistency Propagation)
|
|
248
|
+
|
|
249
|
+
```text
|
|
250
|
+
Constitution 变更
|
|
251
|
+
↓
|
|
252
|
+
自动同步到:
|
|
253
|
+
- plan-template.md (Phase -1 Gates)
|
|
254
|
+
- spec-template.md (scope constraints)
|
|
255
|
+
- tasks-template.md (task categories)
|
|
256
|
+
- 所有代理指令
|
|
257
|
+
- 验证脚本
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
**原理**: Constitution 是**单一真相源 (Single Source of Truth)**
|
|
261
|
+
|
|
262
|
+
### 3.4 分层防御 (Defense in Depth)
|
|
263
|
+
|
|
264
|
+
```text
|
|
265
|
+
Layer 1: 模板约束 (防止AI生成违规内容)
|
|
266
|
+
↓
|
|
267
|
+
Layer 2: 命令强制 (确保一致性传播)
|
|
268
|
+
↓
|
|
269
|
+
Layer 3: 代理约束 (嵌入系统提示)
|
|
270
|
+
↓
|
|
271
|
+
Layer 4: 验证脚本 (自动化检查)
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
**原理**: 多层防御,任何一层失效都有后备
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
## 四、与传统方法的对比
|
|
279
|
+
|
|
280
|
+
| 维度 | 传统Constitution | Spec-Kit Constitution |
|
|
281
|
+
|------|-----------------|----------------------|
|
|
282
|
+
| **执行时机** | 事后检查 | Phase -1 预防 |
|
|
283
|
+
| **强制机制** | 人工审查 | 模板硬约束 |
|
|
284
|
+
| **违规处理** | 警告 | 阻断 + 强制证明 |
|
|
285
|
+
| **一致性** | 手动同步 | 自动传播 |
|
|
286
|
+
| **可追溯性** | 无 | Complexity Tracking |
|
|
287
|
+
| **AI遵守** | 依赖"自觉" | 嵌入指令 + 输出格式 |
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## 五、关键成功因素
|
|
292
|
+
|
|
293
|
+
### 5.1 不可变性 (Immutability)
|
|
294
|
+
|
|
295
|
+
```text
|
|
296
|
+
"While implementation details can evolve,
|
|
297
|
+
the core principles remain constant."
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
**原理**:
|
|
301
|
+
- 原则不变 → AI 每次生成都遵循相同规则
|
|
302
|
+
- 应用演进 → 通过 Amendment Process 正式修订
|
|
303
|
+
|
|
304
|
+
### 5.2 可测试性 (Testability)
|
|
305
|
+
|
|
306
|
+
所有原则都是**可验证的**:
|
|
307
|
+
- "≤3 projects" - 可数
|
|
308
|
+
- "Tests before implementation" - 可检查文件创建时间
|
|
309
|
+
- "No future-proofing" - 可检查代码中的抽象层
|
|
310
|
+
|
|
311
|
+
### 5.3 透明度 (Transparency)
|
|
312
|
+
|
|
313
|
+
所有违规都**可见**:
|
|
314
|
+
- Complexity Tracking 表格
|
|
315
|
+
- Sync Impact Report
|
|
316
|
+
- Phase -1 Gates checklist
|
|
317
|
+
|
|
318
|
+
### 5.4 问责制 (Accountability)
|
|
319
|
+
|
|
320
|
+
每个复杂度都有**负责人和理由**:
|
|
321
|
+
```markdown
|
|
322
|
+
| Violation | Why Needed | Simpler Alternative Rejected |
|
|
323
|
+
| 4th project | Need admin panel | Can't reuse frontend for admin |
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
---
|
|
327
|
+
|
|
328
|
+
## 六、移植到 CC-DevFlow 的策略
|
|
329
|
+
|
|
330
|
+
### 6.1 必须保留的机制
|
|
331
|
+
|
|
332
|
+
1. **Phase -1 Gates** - 已完成 ✅
|
|
333
|
+
2. **Complexity Tracking Table** - 已完成 ✅
|
|
334
|
+
3. **File Creation Order** - 需要添加到 TASKS_TEMPLATE
|
|
335
|
+
4. **Consistency Propagation** - 需要创建 `/flow-constitution` 命令
|
|
336
|
+
5. **Validation Scripts** - 需要扩展 validate-scope-boundary.sh
|
|
337
|
+
|
|
338
|
+
### 6.2 需要适配的部分
|
|
339
|
+
|
|
340
|
+
1. **九大条款**:
|
|
341
|
+
- Spec-Kit 专注于库开发
|
|
342
|
+
- CC-DevFlow 适用于任意项目
|
|
343
|
+
- 需要提取通用原则 (Simplicity, Anti-Abstraction, Test-First)
|
|
344
|
+
|
|
345
|
+
2. **自动化同步**:
|
|
346
|
+
- Spec-Kit 用 `/speckit.constitution` 命令
|
|
347
|
+
- CC-DevFlow 创建 `/flow-constitution` 命令
|
|
348
|
+
|
|
349
|
+
3. **代理嵌入**:
|
|
350
|
+
- 所有代理指令都引用 Constitution Articles
|
|
351
|
+
- 输出格式强制包含 Constitution Check
|
|
352
|
+
|
|
353
|
+
---
|
|
354
|
+
|
|
355
|
+
## 七、实施优先级
|
|
356
|
+
|
|
357
|
+
### P0 (立即实施)
|
|
358
|
+
1. ✅ Phase -1 Gates (已完成)
|
|
359
|
+
2. ✅ Complexity Tracking Table (已完成)
|
|
360
|
+
3. 完善 Constitution 文档结构 (Article 编号)
|
|
361
|
+
4. 更新所有模板引用 Articles
|
|
362
|
+
|
|
363
|
+
### P1 (近期实施)
|
|
364
|
+
5. 创建 `/flow-constitution` 命令
|
|
365
|
+
6. 添加 File Creation Order 约束
|
|
366
|
+
7. 扩展验证脚本检查 Constitution 合规性
|
|
367
|
+
|
|
368
|
+
### P2 (后续优化)
|
|
369
|
+
8. 自动化一致性传播
|
|
370
|
+
9. Constitution 变更影响分析
|
|
371
|
+
10. Amendment Process 流程化
|
|
372
|
+
|
|
373
|
+
---
|
|
374
|
+
|
|
375
|
+
## 八、核心洞察
|
|
376
|
+
|
|
377
|
+
### 洞察1: Constitution 不是文档,是约束系统
|
|
378
|
+
|
|
379
|
+
```text
|
|
380
|
+
传统: Constitution = 文档 (建议性)
|
|
381
|
+
Spec-Kit: Constitution = 约束系统 (强制性)
|
|
382
|
+
```
|
|
383
|
+
|
|
384
|
+
**实现**: 通过模板、命令、代理指令、验证脚本四层强制
|
|
385
|
+
|
|
386
|
+
### 洞察2: 预防 > 检测 > 修复
|
|
387
|
+
|
|
388
|
+
```text
|
|
389
|
+
Phase -1 Gates: 在设计前阻止 (预防)
|
|
390
|
+
Complexity Tracking: 强制证明 (检测)
|
|
391
|
+
Validation Scripts: 自动检查 (修复)
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
**实现**: 时间线上的分层防御
|
|
395
|
+
|
|
396
|
+
### 洞察3: 简单度需要证明复杂度
|
|
397
|
+
|
|
398
|
+
```text
|
|
399
|
+
传统: 默认允许复杂,简单需证明
|
|
400
|
+
Spec-Kit: 默认简单,复杂需证明
|
|
401
|
+
```
|
|
402
|
+
|
|
403
|
+
**实现**: Complexity Tracking 的"为什么简单方案不够"列
|
|
404
|
+
|
|
405
|
+
### 洞察4: 一致性是自动化的,不是约定
|
|
406
|
+
|
|
407
|
+
```text
|
|
408
|
+
传统: 人工同步 Constitution 到各文档
|
|
409
|
+
Spec-Kit: Constitution 变更自动传播
|
|
410
|
+
```
|
|
411
|
+
|
|
412
|
+
**实现**: `/speckit.constitution` 命令的 Consistency Propagation
|
|
413
|
+
|
|
414
|
+
---
|
|
415
|
+
|
|
416
|
+
## 九、总结
|
|
417
|
+
|
|
418
|
+
Spec-Kit 的 Constitution 严格遵守机制的精髓在于:
|
|
419
|
+
|
|
420
|
+
1. **时机**: Phase -1 Gates 预防性阻止
|
|
421
|
+
2. **证明**: Complexity Tracking 强制证明
|
|
422
|
+
3. **嵌入**: 代理指令直接包含 Constitution
|
|
423
|
+
4. **自动化**: 一致性自动传播,不依赖人工
|
|
424
|
+
5. **透明**: 所有违规可见、可追溯、有理由
|
|
425
|
+
|
|
426
|
+
这是一个**系统工程**,而非单个文档。
|