cc-devflow 4.3.0 → 4.5.0
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/skills/cc-act/CHANGELOG.md +70 -0
- package/.claude/skills/cc-act/PLAYBOOK.md +212 -0
- package/.claude/skills/cc-act/SKILL.md +330 -0
- package/.claude/skills/cc-act/assets/PR_BRIEF_TEMPLATE.md +68 -0
- package/.claude/skills/cc-act/assets/RELEASE_NOTE_TEMPLATE.md +29 -0
- package/.claude/skills/cc-act/references/closure-contract.md +49 -0
- package/.claude/skills/cc-act/references/git-commit-guidelines.md +83 -0
- package/.claude/skills/cc-act/scripts/archive-requirement.sh +49 -0
- package/.claude/skills/cc-act/scripts/cc-act-common.sh +245 -0
- package/.claude/skills/cc-act/scripts/detect-ship-target.sh +82 -0
- package/.claude/skills/cc-act/scripts/generate-status-report.sh +83 -0
- package/.claude/skills/cc-act/scripts/render-pr-brief.sh +200 -0
- package/.claude/skills/cc-act/scripts/sync-act-docs.sh +328 -0
- package/.claude/skills/cc-act/scripts/verify-act-gate.sh +63 -0
- package/.claude/skills/cc-check/CHANGELOG.md +78 -0
- package/.claude/skills/cc-check/PLAYBOOK.md +153 -0
- package/.claude/skills/cc-check/SKILL.md +353 -0
- package/.claude/skills/cc-check/assets/REPORT_CARD_TEMPLATE.json +53 -0
- package/.claude/skills/cc-check/references/gate-contract.md +29 -0
- package/.claude/skills/cc-check/references/review-contract.md +45 -0
- package/.claude/skills/cc-check/scripts/render-report-card.js +229 -0
- package/.claude/skills/cc-check/scripts/run-quality-gates.sh +86 -0
- package/.claude/skills/cc-check/scripts/verify-gate.sh +57 -0
- package/.claude/skills/cc-do/CHANGELOG.md +54 -0
- package/.claude/skills/cc-do/PLAYBOOK.md +119 -0
- package/.claude/skills/cc-do/SKILL.md +224 -0
- package/.claude/skills/cc-do/references/execution-recovery.md +86 -0
- package/.claude/skills/cc-do/references/parallel-dispatch.md +80 -0
- package/.claude/skills/cc-do/scripts/build-task-context.sh +184 -0
- package/.claude/skills/cc-do/scripts/cc-do-common.sh +79 -0
- package/.claude/skills/cc-do/scripts/check-task-status.sh +92 -0
- package/.claude/skills/cc-do/scripts/detect-file-conflicts.sh +87 -0
- package/.claude/skills/cc-do/scripts/mark-task-complete.sh +119 -0
- package/.claude/skills/cc-do/scripts/record-review-decision.sh +89 -0
- package/.claude/skills/cc-do/scripts/recover-workflow.sh +84 -0
- package/.claude/skills/cc-do/scripts/run-problem-analysis.sh +70 -0
- package/.claude/skills/cc-do/scripts/select-ready-tasks.sh +135 -0
- package/.claude/skills/cc-do/scripts/verify-task-gates.sh +94 -0
- package/.claude/skills/cc-do/scripts/write-task-checkpoint.sh +102 -0
- package/.claude/skills/cc-investigate/CHANGELOG.md +31 -0
- package/.claude/skills/cc-investigate/PLAYBOOK.md +49 -0
- package/.claude/skills/cc-investigate/SKILL.md +229 -0
- package/.claude/skills/cc-investigate/assets/ANALYSIS_TEMPLATE.md +56 -0
- package/.claude/skills/cc-investigate/assets/TASKS_TEMPLATE.md +53 -0
- package/.claude/skills/cc-investigate/assets/TASK_MANIFEST_TEMPLATE.json +106 -0
- package/.claude/skills/cc-investigate/references/investigation-contract.md +28 -0
- package/.claude/skills/cc-investigate/scripts/bootstrap-analysis.sh +38 -0
- package/.claude/skills/cc-plan/CHANGELOG.md +104 -0
- package/.claude/skills/cc-plan/PLAYBOOK.md +106 -0
- package/.claude/skills/cc-plan/SKILL.md +333 -0
- package/.claude/skills/cc-plan/assets/DESIGN_TEMPLATE.md +156 -0
- package/.claude/skills/cc-plan/assets/TASKS_TEMPLATE.md +99 -0
- package/.claude/skills/cc-plan/assets/TASK_MANIFEST_TEMPLATE.json +111 -0
- package/.claude/skills/cc-plan/assets/TINY_DESIGN_TEMPLATE.md +80 -0
- package/.claude/skills/cc-plan/references/planning-contract.md +82 -0
- package/.claude/skills/cc-plan/scripts/bump-skill-version.sh +103 -0
- package/.claude/skills/cc-plan/scripts/parse-task-dependencies.js +75 -0
- package/.claude/skills/cc-plan/scripts/validate-scope.sh +78 -0
- package/.claude/skills/cc-roadmap/CHANGELOG.md +119 -0
- package/.claude/skills/cc-roadmap/PLAYBOOK.md +136 -0
- package/.claude/skills/cc-roadmap/SKILL.md +267 -0
- package/.claude/skills/cc-roadmap/assets/BACKLOG_TEMPLATE.md +46 -0
- package/.claude/skills/cc-roadmap/assets/ROADMAP_TEMPLATE.md +154 -0
- package/.claude/skills/cc-roadmap/assets/TRACKING_TEMPLATE.json +51 -0
- package/.claude/skills/cc-roadmap/references/roadmap-dialogue.md +37 -0
- package/.claude/skills/cc-roadmap/scripts/bump-skill-version.sh +103 -0
- package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/markdown.js +604 -0
- package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/query.js +63 -0
- package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/schema.js +245 -0
- package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/store.js +139 -0
- package/.claude/skills/cc-roadmap/scripts/locate-roadmap-item.sh +109 -0
- package/.claude/skills/cc-roadmap/scripts/roadmap-tracking.js +153 -0
- package/.claude/skills/cc-roadmap/scripts/sync-roadmap-progress.sh +100 -0
- package/.claude/skills/cc-simplify/CHANGELOG.md +10 -0
- package/.claude/skills/cc-simplify/SKILL.md +55 -0
- package/.claude/skills/cc-spec-init/CHANGELOG.md +12 -0
- package/.claude/skills/cc-spec-init/PLAYBOOK.md +55 -0
- package/.claude/skills/cc-spec-init/SKILL.md +135 -0
- package/.claude/skills/cc-spec-init/assets/CAPABILITY_TEMPLATE.md +64 -0
- package/.claude/skills/cc-spec-init/assets/CHANGE_META_TEMPLATE.json +28 -0
- package/.claude/skills/cc-spec-init/assets/INDEX_TEMPLATE.md +35 -0
- package/.claude/skills/cc-spec-init/references/spec-contract.md +22 -0
- package/.claude/skills/cc-spec-init/scripts/bootstrap-specs.sh +31 -0
- package/.claude/skills/cc-spec-init/scripts/validate-spec-links.sh +45 -0
- package/CHANGELOG.md +80 -4
- package/README.md +148 -741
- package/README.zh-CN.md +146 -740
- package/bin/adapt.js +2 -6
- package/bin/cc-devflow-cli.js +287 -166
- package/config/distributable-skills.json +24 -0
- package/config/schema/cc-devflow-config.schema.json +45 -0
- package/config/user-config.template.yml +16 -0
- package/docs/CLAUDE.md +10 -6
- package/docs/commands/README.md +19 -46
- package/docs/commands/README.zh-CN.md +25 -48
- package/docs/examples/BY-ARTIFACT.md +7 -0
- package/docs/examples/README.md +38 -0
- package/docs/examples/START-HERE.md +149 -0
- package/docs/examples/example-bindings.json +38 -0
- package/docs/examples/full-design-blocked/BACKLOG.md +45 -0
- package/docs/examples/full-design-blocked/README.md +55 -0
- package/docs/examples/full-design-blocked/ROADMAP.md +53 -0
- package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/planning/design.md +154 -0
- package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/planning/task-manifest.json +146 -0
- package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/planning/tasks.md +78 -0
- package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/review/report-card.json +52 -0
- package/docs/examples/full-design-blocked/roadmap-tracking.json +50 -0
- package/docs/examples/local-handoff/BACKLOG.md +45 -0
- package/docs/examples/local-handoff/README.md +56 -0
- package/docs/examples/local-handoff/ROADMAP.md +45 -0
- package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/handoff/resume-index.md +39 -0
- package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/handoff/status.md +29 -0
- package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/planning/design.md +71 -0
- package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/planning/task-manifest.json +98 -0
- package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/planning/tasks.md +59 -0
- package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/review/report-card.json +44 -0
- package/docs/examples/local-handoff/roadmap-tracking.json +48 -0
- package/docs/examples/pdca-loop/BACKLOG.md +46 -0
- package/docs/examples/pdca-loop/README.md +58 -0
- package/docs/examples/pdca-loop/ROADMAP.md +133 -0
- package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/handoff/pr-brief.md +72 -0
- package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/handoff/status.md +29 -0
- package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/planning/design.md +72 -0
- package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/planning/task-manifest.json +201 -0
- package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/planning/tasks.md +73 -0
- package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/review/report-card.json +44 -0
- package/docs/examples/pdca-loop/roadmap-tracking.json +114 -0
- package/docs/examples/scripts/check-example-bindings.sh +116 -0
- package/docs/guides/getting-started.md +94 -129
- package/docs/guides/getting-started.zh-CN.md +103 -84
- package/docs/skill-runtime-migration.md +46 -0
- package/docs/v4.3.0-migration-guide.md +60 -225
- package/lib/compiler/CLAUDE.md +55 -84
- package/lib/compiler/__tests__/drift.test.js +1 -1
- package/lib/compiler/__tests__/errors.test.js +0 -1
- package/lib/compiler/__tests__/integration.test.js +49 -3
- package/lib/compiler/__tests__/manifest.test.js +0 -156
- package/lib/compiler/__tests__/parser.test.js +33 -104
- package/lib/compiler/__tests__/schemas.test.js +30 -34
- package/lib/compiler/__tests__/skills-registry.test.js +114 -0
- package/lib/compiler/__tests__/transformer.test.js +5 -9
- package/lib/compiler/emitters/antigravity-emitter.js +5 -213
- package/lib/compiler/emitters/base-emitter.js +3 -298
- package/lib/compiler/emitters/codex-emitter.js +4 -202
- package/lib/compiler/emitters/cursor-emitter.js +3 -287
- package/lib/compiler/emitters/qwen-emitter.js +4 -176
- package/lib/compiler/index.js +65 -345
- package/lib/compiler/manifest.js +6 -68
- package/lib/compiler/parser.js +31 -63
- package/lib/compiler/platforms.js +32 -277
- package/lib/compiler/resource-copier.js +176 -6
- package/lib/compiler/rules-emitters/__tests__/antigravity-rules-emitter.test.js +3 -3
- package/lib/compiler/rules-emitters/__tests__/cursor-rules-emitter.test.js +14 -4
- package/lib/compiler/rules-emitters/__tests__/qwen-rules-emitter.test.js +16 -7
- package/lib/compiler/rules-emitters/antigravity-rules-emitter.js +10 -15
- package/lib/compiler/rules-emitters/base-rules-emitter.js +5 -5
- package/lib/compiler/rules-emitters/cursor-rules-emitter.js +7 -12
- package/lib/compiler/rules-emitters/index.js +6 -3
- package/lib/compiler/rules-emitters/qwen-rules-emitter.js +7 -7
- package/lib/compiler/schemas.js +8 -4
- package/lib/compiler/skills-registry.js +213 -15
- package/lib/compiler/transformer.js +1 -1
- package/lib/skill-runtime/CLAUDE.md +19 -0
- package/lib/skill-runtime/__tests__/autopilot.test.js +210 -0
- package/lib/skill-runtime/__tests__/cli-bootstrap.integration.test.js +291 -0
- package/lib/skill-runtime/__tests__/config.test.js +161 -0
- package/lib/skill-runtime/__tests__/delegation.test.js +97 -0
- package/lib/skill-runtime/__tests__/dispatch.test.js +267 -0
- package/lib/skill-runtime/__tests__/intent.test.js +219 -0
- package/lib/skill-runtime/__tests__/lifecycle.test.js +169 -0
- package/lib/skill-runtime/__tests__/paths.test.js +42 -0
- package/lib/skill-runtime/__tests__/planner.tdd.test.js +250 -0
- package/lib/skill-runtime/__tests__/prepare-pr.test.js +139 -0
- package/lib/skill-runtime/__tests__/query.test.js +284 -0
- package/lib/skill-runtime/__tests__/runtime.integration.test.js +281 -0
- package/lib/skill-runtime/__tests__/schemas.test.js +207 -0
- package/lib/skill-runtime/__tests__/team-state.test.js +51 -0
- package/lib/skill-runtime/__tests__/worker-run.test.js +253 -0
- package/lib/skill-runtime/__tests__/worker.test.js +56 -0
- package/lib/skill-runtime/artifacts.js +93 -0
- package/lib/skill-runtime/config.js +379 -0
- package/lib/skill-runtime/delegation.js +533 -0
- package/lib/skill-runtime/index.js +36 -0
- package/lib/skill-runtime/intent.js +333 -0
- package/lib/skill-runtime/lifecycle.js +294 -0
- package/lib/skill-runtime/operations/CLAUDE.md +19 -0
- package/lib/skill-runtime/operations/approve.js +66 -0
- package/lib/skill-runtime/operations/autopilot-core.js +337 -0
- package/lib/skill-runtime/operations/autopilot-execution.js +307 -0
- package/lib/skill-runtime/operations/autopilot-shared.js +48 -0
- package/lib/skill-runtime/operations/autopilot.js +163 -0
- package/lib/skill-runtime/operations/dispatch.js +454 -0
- package/lib/skill-runtime/operations/init.js +64 -0
- package/lib/{harness → skill-runtime}/operations/janitor.js +9 -6
- package/lib/skill-runtime/operations/plan.js +59 -0
- package/lib/skill-runtime/operations/prepare-pr.js +25 -0
- package/lib/skill-runtime/operations/release.js +96 -0
- package/lib/skill-runtime/operations/resume.js +143 -0
- package/lib/skill-runtime/operations/snapshot.js +45 -0
- package/lib/skill-runtime/operations/verify.js +170 -0
- package/lib/skill-runtime/operations/worker-run.js +529 -0
- package/lib/skill-runtime/operations/worker.js +33 -0
- package/lib/skill-runtime/paths.js +213 -0
- package/lib/skill-runtime/planner.js +519 -0
- package/lib/skill-runtime/query.js +157 -0
- package/lib/skill-runtime/review.js +557 -0
- package/lib/skill-runtime/schemas.js +400 -0
- package/lib/{harness → skill-runtime}/store.js +45 -30
- package/lib/skill-runtime/team-state.js +122 -0
- package/package.json +13 -11
- package/.claude/CLAUDE.md +0 -125
- package/.claude/agents/architecture-designer.md +0 -443
- package/.claude/agents/bug-analyzer.md +0 -381
- package/.claude/agents/checklist-agent.md +0 -175
- package/.claude/agents/clarify-analyst.md +0 -50
- package/.claude/agents/code-quality-reviewer.md +0 -205
- package/.claude/agents/code-reviewer.md +0 -71
- package/.claude/agents/codex-analyzer.md +0 -39
- package/.claude/agents/compatibility-checker.md +0 -579
- package/.claude/agents/consistency-checker.md +0 -532
- package/.claude/agents/dev-implementer.md +0 -195
- package/.claude/agents/flow-researcher.md +0 -132
- package/.claude/agents/impact-analyzer.md +0 -440
- package/.claude/agents/planner.md +0 -230
- package/.claude/agents/prd-writer.md +0 -320
- package/.claude/agents/project-guidelines-generator.md +0 -1329
- package/.claude/agents/qa-tester.md +0 -313
- package/.claude/agents/release-manager.md +0 -295
- package/.claude/agents/security-reviewer.md +0 -314
- package/.claude/agents/spec-reviewer.md +0 -221
- package/.claude/agents/style-guide-generator.md +0 -458
- package/.claude/agents/tech-architect.md +0 -516
- package/.claude/agents/ui-designer.md +0 -485
- package/.claude/commands/core/architecture.md +0 -459
- package/.claude/commands/core/guidelines.md +0 -511
- package/.claude/commands/core/roadmap.md +0 -468
- package/.claude/commands/core/style.md +0 -83
- package/.claude/commands/flow/CLAUDE.md +0 -24
- package/.claude/commands/flow/archive.md +0 -280
- package/.claude/commands/flow/constitution.md +0 -82
- package/.claude/commands/flow/context.md +0 -150
- package/.claude/commands/flow/delta.md +0 -245
- package/.claude/commands/flow/dev.md +0 -40
- package/.claude/commands/flow/fix.md +0 -217
- package/.claude/commands/flow/ideate.md +0 -214
- package/.claude/commands/flow/init.md +0 -38
- package/.claude/commands/flow/release.md +0 -36
- package/.claude/commands/flow/restart.md +0 -97
- package/.claude/commands/flow/spec.md +0 -36
- package/.claude/commands/flow/status.md +0 -64
- package/.claude/commands/flow/update.md +0 -111
- package/.claude/commands/flow/upgrade.md +0 -115
- package/.claude/commands/flow/verify.md +0 -37
- package/.claude/commands/flow/workspace.md +0 -155
- package/.claude/commands/util/cancel-ralph.md +0 -60
- package/.claude/commands/util/code-review.md +0 -58
- package/.claude/commands/util/git-commit.md +0 -422
- package/.claude/commands/util/problem-analyzer.md +0 -60
- package/.claude/config/quality-gates.yml +0 -305
- package/.claude/config/quality-rules.yml +0 -161
- package/.claude/docs/SPEC_KIT_CONSTITUTION_ANALYSIS.md +0 -426
- package/.claude/docs/design/consistency-conflict-detection-algorithms.md +0 -658
- package/.claude/docs/design/intent-driven-input-design.md +0 -380
- package/.claude/docs/design/prd-version-management-design.md +0 -437
- package/.claude/docs/examples/design-inspiration-pool.md +0 -59
- package/.claude/docs/examples/ui-prototype-constitution-checklist.md +0 -75
- package/.claude/docs/guides/INIT_TROUBLESHOOTING.md +0 -117
- package/.claude/docs/guides/NEW_TROUBLESHOOTING.md +0 -99
- package/.claude/docs/guides/ROADMAP_TROUBLESHOOTING.md +0 -188
- package/.claude/docs/guides/TASK_COMPLETION_MARKING.md +0 -338
- package/.claude/docs/guides/TEAM_MODE_GUIDE.md +0 -312
- package/.claude/docs/implementation-summary-v7.md +0 -449
- package/.claude/docs/spec-format-guide.md +0 -349
- package/.claude/docs/state-consolidation-design.md +0 -323
- package/.claude/docs/templates/ARCHITECTURE_TEMPLATE.md +0 -332
- package/.claude/docs/templates/ATTEMPT_TEMPLATE.md +0 -156
- package/.claude/docs/templates/BACKLOG_TEMPLATE.md +0 -261
- package/.claude/docs/templates/BRAINSTORM_TEMPLATE.md +0 -148
- package/.claude/docs/templates/CHECKLIST_TEMPLATE.md +0 -52
- package/.claude/docs/templates/CLARIFICATION_REPORT_TEMPLATE.md +0 -206
- package/.claude/docs/templates/CODE_REVIEW_TEMPLATE.md +0 -71
- package/.claude/docs/templates/DELTA_SPEC_TEMPLATE.md +0 -91
- package/.claude/docs/templates/DESIGN_DECISIONS_TEMPLATE.md +0 -151
- package/.claude/docs/templates/DESIGN_TEMPLATE.md +0 -157
- package/.claude/docs/templates/ERROR_LOG_TEMPLATE.md +0 -80
- package/.claude/docs/templates/INIT_FLOW_TEMPLATE.md +0 -198
- package/.claude/docs/templates/INTENT_CLARIFICATION_TEMPLATE.md +0 -57
- package/.claude/docs/templates/JOURNAL_TEMPLATE.md +0 -75
- package/.claude/docs/templates/NEW_ORCHESTRATION_TEMPLATE.md +0 -76
- package/.claude/docs/templates/PROPOSAL_TEMPLATE.md +0 -91
- package/.claude/docs/templates/RESEARCH_TEMPLATE.md +0 -276
- package/.claude/docs/templates/REVIEW-HIGH.md +0 -57
- package/.claude/docs/templates/ROADMAP_DIALOGUE_TEMPLATE.md +0 -198
- package/.claude/docs/templates/ROADMAP_TEMPLATE.md +0 -310
- package/.claude/docs/templates/SPEC_TEMPLATE_DELTA.md +0 -139
- package/.claude/docs/templates/SPEC_TEMPLATE_PROJECT.md +0 -93
- package/.claude/docs/templates/STYLE_TEMPLATE.md +0 -479
- package/.claude/docs/templates/UI_PROTOTYPE_TEMPLATE.md +0 -373
- package/.claude/docs/templates/_shared/CLAUDE.md +0 -36
- package/.claude/docs/templates/_shared/CONSTITUTION_CHECK.md +0 -125
- package/.claude/docs/templates/_shared/VALIDATION_CHECKLIST.md +0 -187
- package/.claude/docs/templates/_shared/YAML_FRONTMATTER.md +0 -164
- package/.claude/docs/templates/context/dev.jsonl.template +0 -6
- package/.claude/docs/templates/context/epic.jsonl.template +0 -5
- package/.claude/docs/templates/context/prd.jsonl.template +0 -4
- package/.claude/docs/templates/context/research.jsonl.template +0 -4
- package/.claude/docs/templates/context/review.jsonl.template +0 -5
- package/.claude/docs/templates/context/tech.jsonl.template +0 -5
- package/.claude/guides/agent-guides/agent-coordination-guide.md +0 -459
- package/.claude/guides/project-guidelines-system.md +0 -463
- package/.claude/guides/technical-guides/datetime-handling-guide.md +0 -563
- package/.claude/guides/technical-guides/git-github-guide.md +0 -642
- package/.claude/guides/technical-guides/test-execution-guide.md +0 -618
- package/.claude/guides/workflow-guides/bug-fix-orchestrator.md +0 -217
- package/.claude/guides/workflow-guides/flow-orchestrator.md +0 -48
- package/.claude/hooks/CLAUDE.md +0 -342
- package/.claude/hooks/checklist-gate.js +0 -397
- package/.claude/hooks/error-handling-reminder.sh +0 -12
- package/.claude/hooks/error-handling-reminder.ts +0 -459
- package/.claude/hooks/hooks.json +0 -15
- package/.claude/hooks/inject-agent-context.ts +0 -480
- package/.claude/hooks/inject-skill-context.ts +0 -359
- package/.claude/hooks/post-tool-use-tracker.sh +0 -280
- package/.claude/hooks/pre-tool-use-guardrail.sh +0 -36
- package/.claude/hooks/pre-tool-use-guardrail.ts +0 -342
- package/.claude/hooks/ralph-loop.ts +0 -931
- package/.claude/hooks/ralph-stop-hook.sh +0 -190
- package/.claude/hooks/skill-activation-prompt.sh +0 -36
- package/.claude/hooks/skill-activation-prompt.ts +0 -214
- package/.claude/hooks/state/skills-used-test-guard.json +0 -3
- package/.claude/hooks/task-completed-hook.ts +0 -593
- package/.claude/hooks/teammate-idle-hook.ts +0 -690
- package/.claude/hooks/types/team-types.d.ts +0 -238
- package/.claude/rules/devflow-conventions.md +0 -286
- package/.claude/rules/project-constitution.md +0 -1002
- package/.claude/rules/rationalization-library.md +0 -282
- package/.claude/schemas/constitution.schema.json +0 -43
- package/.claude/scripts/.claude/commands/flow/export-openspec.md +0 -221
- package/.claude/scripts/.claude/commands/flow/import-openspec.md +0 -171
- package/.claude/scripts/CLAUDE.md +0 -76
- package/.claude/scripts/__tests__/openspec.test.js +0 -212
- package/.claude/scripts/analyze-upgrade-impact.sh +0 -200
- package/.claude/scripts/archive-requirement.sh +0 -394
- package/.claude/scripts/calculate-checklist-completion.sh +0 -243
- package/.claude/scripts/calculate-quarter.sh +0 -206
- package/.claude/scripts/check-dependencies.sh +0 -409
- package/.claude/scripts/check-prerequisites.sh +0 -232
- package/.claude/scripts/check-task-status.sh +0 -288
- package/.claude/scripts/checklist-errors.sh +0 -131
- package/.claude/scripts/common.sh +0 -1102
- package/.claude/scripts/consolidate-research.sh +0 -182
- package/.claude/scripts/create-requirement.sh +0 -451
- package/.claude/scripts/delta-parser.ts +0 -637
- package/.claude/scripts/detect-file-conflicts.sh +0 -151
- package/.claude/scripts/export-contracts.sh +0 -117
- package/.claude/scripts/export-openspec.js +0 -222
- package/.claude/scripts/extract-data-model.sh +0 -78
- package/.claude/scripts/flow-context-add.sh +0 -134
- package/.claude/scripts/flow-context-init.sh +0 -133
- package/.claude/scripts/flow-context-validate.sh +0 -144
- package/.claude/scripts/flow-delta-apply.sh +0 -297
- package/.claude/scripts/flow-delta-archive.sh +0 -71
- package/.claude/scripts/flow-delta-create.sh +0 -202
- package/.claude/scripts/flow-delta-list.sh +0 -142
- package/.claude/scripts/flow-delta-status.sh +0 -235
- package/.claude/scripts/flow-quality-full.sh +0 -215
- package/.claude/scripts/flow-quality-quick.sh +0 -119
- package/.claude/scripts/flow-workspace-init.sh +0 -117
- package/.claude/scripts/flow-workspace-record.sh +0 -164
- package/.claude/scripts/generate-clarification-questions.sh +0 -377
- package/.claude/scripts/generate-clarification-report.sh +0 -463
- package/.claude/scripts/generate-quickstart.sh +0 -146
- package/.claude/scripts/generate-research-tasks.sh +0 -157
- package/.claude/scripts/generate-status-report.sh +0 -523
- package/.claude/scripts/generate-tech-analysis.sh +0 -46
- package/.claude/scripts/get-workflow-status.sh +0 -415
- package/.claude/scripts/import-openspec.js +0 -272
- package/.claude/scripts/locate-requirement-in-roadmap.sh +0 -233
- package/.claude/scripts/manage-constitution.sh +0 -602
- package/.claude/scripts/mark-task-complete.sh +0 -198
- package/.claude/scripts/parse-task-dependencies.js +0 -334
- package/.claude/scripts/populate-research-tasks.sh +0 -284
- package/.claude/scripts/record-quality-error.sh +0 -165
- package/.claude/scripts/recover-workflow.sh +0 -463
- package/.claude/scripts/run-clarify-scan.sh +0 -601
- package/.claude/scripts/run-high-review.sh +0 -62
- package/.claude/scripts/run-problem-analysis.sh +0 -68
- package/.claude/scripts/run-quality-gates.sh +0 -242
- package/.claude/scripts/setup-epic.sh +0 -173
- package/.claude/scripts/setup-ralph-loop.sh +0 -155
- package/.claude/scripts/sync-roadmap-progress.sh +0 -300
- package/.claude/scripts/sync-task-marks.sh +0 -199
- package/.claude/scripts/team-dev-init.sh +0 -319
- package/.claude/scripts/team-state-recovery.sh +0 -229
- package/.claude/scripts/test-clarify-scan.sh +0 -515
- package/.claude/scripts/update-agent-context.sh +0 -806
- package/.claude/scripts/validate-constitution.sh +0 -567
- package/.claude/scripts/validate-hooks.sh +0 -487
- package/.claude/scripts/validate-research.sh +0 -332
- package/.claude/scripts/validate-scope-boundary.sh +0 -493
- package/.claude/scripts/validate-scope.sh +0 -200
- package/.claude/scripts/verify-gate.sh +0 -269
- package/.claude/scripts/verify-setup.sh +0 -37
- package/.claude/scripts/workflow-status.ts +0 -433
- package/.claude/settings.json +0 -95
- package/.claude/skills/_reference-implementations/README.md +0 -96
- package/.claude/skills/_reference-implementations/backend-express-prisma/SKILL.md +0 -302
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/architecture-overview.md +0 -451
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/async-and-errors.md +0 -307
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/complete-examples.md +0 -638
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/configuration.md +0 -275
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/database-patterns.md +0 -224
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/middleware-guide.md +0 -213
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/routing-and-controllers.md +0 -756
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/sentry-and-monitoring.md +0 -336
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/services-and-repositories.md +0 -789
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/testing-guide.md +0 -235
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/validation-patterns.md +0 -754
- package/.claude/skills/_reference-implementations/frontend-react-mui/SKILL.md +0 -399
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/common-patterns.md +0 -331
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/complete-examples.md +0 -872
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/component-patterns.md +0 -502
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/data-fetching.md +0 -767
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/file-organization.md +0 -502
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/loading-and-error-states.md +0 -501
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/performance.md +0 -406
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/routing-guide.md +0 -364
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/styling-guide.md +0 -428
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/typescript-standards.md +0 -418
- package/.claude/skills/attention-refresh/SKILL.md +0 -170
- package/.claude/skills/brainstorming/SKILL.md +0 -161
- package/.claude/skills/cc-devflow-orchestrator/SKILL.md +0 -169
- package/.claude/skills/constitution-guardian/SKILL.md +0 -306
- package/.claude/skills/constitution-quick-ref/SKILL.md +0 -374
- package/.claude/skills/debugging/SKILL.md +0 -221
- package/.claude/skills/file-standards/SKILL.md +0 -353
- package/.claude/skills/finishing-branch/SKILL.md +0 -189
- package/.claude/skills/flow-dev/CLAUDE.md +0 -16
- package/.claude/skills/flow-dev/SKILL.md +0 -94
- package/.claude/skills/flow-dev/assets/IMPLEMENTATION_PLAN_TEMPLATE.md +0 -71
- package/.claude/skills/flow-dev/context.jsonl +0 -4
- package/.claude/skills/flow-dev/dev-implementer.jsonl +0 -8
- package/.claude/skills/flow-dev/scripts/entry-gate.sh +0 -116
- package/.claude/skills/flow-dev/scripts/exit-gate.sh +0 -101
- package/.claude/skills/flow-dev/scripts/task-orchestrator.sh +0 -106
- package/.claude/skills/flow-fix/SKILL.md +0 -105
- package/.claude/skills/flow-fix/context.jsonl +0 -6
- package/.claude/skills/flow-fix/references/bug-analyzer.md +0 -381
- package/.claude/skills/flow-init/SKILL.md +0 -105
- package/.claude/skills/flow-init/assets/BRAINSTORM_TEMPLATE.md +0 -148
- package/.claude/skills/flow-init/assets/INIT_FLOW_TEMPLATE.md +0 -198
- package/.claude/skills/flow-init/assets/RESEARCH_TEMPLATE.md +0 -276
- package/.claude/skills/flow-init/context.jsonl +0 -5
- package/.claude/skills/flow-init/references/flow-researcher.md +0 -132
- package/.claude/skills/flow-init/scripts/check-prerequisites.sh +0 -240
- package/.claude/skills/flow-init/scripts/consolidate-research.sh +0 -182
- package/.claude/skills/flow-init/scripts/create-requirement.sh +0 -404
- package/.claude/skills/flow-init/scripts/generate-research-tasks.sh +0 -157
- package/.claude/skills/flow-init/scripts/populate-research-tasks.sh +0 -284
- package/.claude/skills/flow-init/scripts/validate-research.sh +0 -340
- package/.claude/skills/flow-quality/SKILL.md +0 -98
- package/.claude/skills/flow-quality/context.jsonl +0 -6
- package/.claude/skills/flow-quality/references/code-quality-reviewer.md +0 -205
- package/.claude/skills/flow-quality/references/qa-tester.md +0 -313
- package/.claude/skills/flow-quality/references/security-reviewer.md +0 -314
- package/.claude/skills/flow-quality/references/spec-reviewer.md +0 -221
- package/.claude/skills/flow-release/SKILL.md +0 -60
- package/.claude/skills/flow-release/context.jsonl +0 -5
- package/.claude/skills/flow-release/references/release-manager.md +0 -295
- package/.claude/skills/flow-spec/CLAUDE.md +0 -17
- package/.claude/skills/flow-spec/SKILL.md +0 -102
- package/.claude/skills/flow-spec/context.jsonl +0 -5
- package/.claude/skills/flow-spec/scripts/entry-gate.sh +0 -194
- package/.claude/skills/flow-spec/scripts/exit-gate.sh +0 -244
- package/.claude/skills/flow-spec/scripts/parallel-orchestrator.sh +0 -205
- package/.claude/skills/flow-spec/scripts/team-communication.sh +0 -353
- package/.claude/skills/flow-spec/scripts/team-init.sh +0 -195
- package/.claude/skills/flow-spec/scripts/test-team-mode.sh +0 -496
- package/.claude/skills/flow-spec/team-config.json +0 -165
- package/.claude/skills/flow-verify/CLAUDE.md +0 -10
- package/.claude/skills/flow-verify/SKILL.md +0 -53
- package/.claude/skills/flow-verify/context.jsonl +0 -5
- package/.claude/skills/fractal-docs/SKILL.md +0 -45
- package/.claude/skills/journey-checker/SKILL.md +0 -199
- package/.claude/skills/journey-checker/pressure-scenarios.md +0 -164
- package/.claude/skills/receiving-review/SKILL.md +0 -153
- package/.claude/skills/skill-creator/LICENSE.txt +0 -202
- package/.claude/skills/skill-creator/SKILL.md +0 -356
- package/.claude/skills/skill-creator/references/output-patterns.md +0 -82
- package/.claude/skills/skill-creator/references/workflows.md +0 -28
- package/.claude/skills/skill-creator/scripts/init_skill.py +0 -303
- package/.claude/skills/skill-creator/scripts/package_skill.py +0 -110
- package/.claude/skills/skill-creator/scripts/quick_validate.py +0 -95
- package/.claude/skills/skill-rules.json +0 -359
- package/.claude/skills/tdd/SKILL.md +0 -218
- package/.claude/skills/tdd-enforcer/SKILL.md +0 -192
- package/.claude/skills/utility/npm-release/CLAUDE.md +0 -55
- package/.claude/skills/utility/npm-release/SKILL.md +0 -379
- package/.claude/skills/utility/npm-release/references/version-decision-guide.md +0 -134
- package/.claude/skills/utility/npm-release/scripts/atomic-version-bump.sh +0 -95
- package/.claude/skills/utility/npm-release/scripts/validate-version-sync.sh +0 -82
- package/.claude/skills/utility/npm-release/scripts/version-decision-tree.sh +0 -44
- package/.claude/skills/verification/SKILL.md +0 -158
- package/.claude/skills/workflow.yaml +0 -219
- package/.claude/tests/README.md +0 -300
- package/.claude/tests/TODO.md +0 -69
- 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 +0 -111
- package/.claude/tests/constitution/test_agent_assignment.sh +0 -207
- package/.claude/tests/constitution/test_article_coverage.sh +0 -201
- package/.claude/tests/constitution/test_template_completeness.sh +0 -150
- package/.claude/tests/constitution/test_version_consistency.sh +0 -120
- package/.claude/tests/fixtures/spec_delta_full.md +0 -16
- package/.claude/tests/fixtures/tasks_progress_sample.md +0 -5
- package/.claude/tests/run-all-tests.sh +0 -229
- package/.claude/tests/scripts/run.sh +0 -30
- package/.claude/tests/scripts/test-framework.sh +0 -128
- package/.claude/tests/scripts/test_check_prerequisites.sh +0 -511
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak +0 -504
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak2 +0 -505
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak3 +0 -506
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak4 +0 -507
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak5 +0 -508
- package/.claude/tests/scripts/test_check_task_status.sh +0 -499
- package/.claude/tests/scripts/test_common.sh +0 -244
- package/.claude/tests/scripts/test_generate_status_report.sh +0 -71
- package/.claude/tests/scripts/test_mark_task_complete.sh +0 -441
- package/.claude/tests/scripts/test_mark_task_complete.sh.backup +0 -410
- package/.claude/tests/scripts/test_recover_workflow.sh +0 -304
- package/.claude/tests/scripts/test_setup_epic.sh +0 -437
- package/.claude/tests/scripts/test_sync_task_marks.sh +0 -196
- package/.claude/tests/scripts/test_validate_constitution.sh +0 -74
- package/.claude/tests/scripts/test_validate_research.sh +0 -462
- package/.claude/tests/slugify.bats +0 -82
- package/.claude/tests/test-framework.sh +0 -732
- package/.claude/tests/test_analyze_upgrade_impact.py +0 -34
- package/.claude/tests/test_consolidate_research.py +0 -48
- package/.claude/tests/test_export_contracts.py +0 -43
- package/.claude/tests/test_extract_data_model.py +0 -33
- package/.claude/tests/test_generate_quickstart.py +0 -50
- package/.claude/tests/test_generate_research_tasks.py +0 -52
- package/.claude/tsc-cache/70d2fc6d-2936-429b-b529-429f1aae8c88/affected-repos.txt +0 -1
- package/.claude/tsc-cache/70d2fc6d-2936-429b-b529-429f1aae8c88/edited-files.log +0 -2
- package/bin/harness.js +0 -22
- package/docs/commands/core-roadmap.md +0 -106
- package/docs/commands/core-roadmap.zh-CN.md +0 -102
- package/docs/commands/core-style.md +0 -53
- package/docs/commands/core-style.zh-CN.md +0 -53
- package/docs/commands/flow-init.md +0 -140
- package/docs/commands/flow-init.zh-CN.md +0 -169
- package/docs/commands/flow-new.md +0 -39
- package/docs/commands/flow-new.zh-CN.md +0 -39
- package/lib/compiler/__tests__/compile-regression.test.js +0 -103
- package/lib/compiler/__tests__/multi-module-emitters.test.js +0 -534
- package/lib/compiler/__tests__/resource-copier.test.js +0 -26
- package/lib/compiler/__tests__/skill-discovery.test.js +0 -72
- package/lib/compiler/context-expander.js +0 -179
- package/lib/compiler/rules-emitters/__tests__/codex-rules-emitter.test.js +0 -109
- package/lib/compiler/rules-emitters/codex-rules-emitter.js +0 -116
- package/lib/compiler/skill-discovery.js +0 -68
- package/lib/harness/CLAUDE.md +0 -22
- package/lib/harness/__tests__/planner.tdd.test.js +0 -125
- package/lib/harness/cli.js +0 -208
- package/lib/harness/index.js +0 -18
- package/lib/harness/operations/dispatch.js +0 -298
- package/lib/harness/operations/init.js +0 -48
- package/lib/harness/operations/pack.js +0 -100
- package/lib/harness/operations/plan.js +0 -83
- package/lib/harness/operations/release.js +0 -170
- package/lib/harness/operations/resume.js +0 -44
- package/lib/harness/operations/verify.js +0 -177
- package/lib/harness/planner.js +0 -272
- package/lib/harness/query.js +0 -126
- package/lib/harness/schemas.js +0 -129
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# CC-Act Skill Changelog
|
|
2
|
+
|
|
3
|
+
## v1.6.2 - 2026-04-27
|
|
4
|
+
|
|
5
|
+
- require closeout handoff documents to resolve the runtime output policy before writing PR briefs, release notes, resume indexes, or status handoffs
|
|
6
|
+
- record `Output language` as the machine-enforced language contract while treating `agent_preferences` as advisory style input
|
|
7
|
+
- render `Output language` metadata in generated PR briefs, release notes, resume indexes, and doc sync reports
|
|
8
|
+
|
|
9
|
+
## v1.6.1 - 2026-04-25
|
|
10
|
+
|
|
11
|
+
- remove external tool provenance from the public skill contract so ship and documentation release rules read as native `cc-act` behavior
|
|
12
|
+
- keep idempotent ship, documentation audit, changelog protection, and PR regeneration requirements unchanged
|
|
13
|
+
|
|
14
|
+
## v1.6.0 - 2026-04-24
|
|
15
|
+
|
|
16
|
+
- add the native `cc-act` ship and documentation closeout contract
|
|
17
|
+
- add ship hygiene rules for base detection, version/package/changelog drift, bisectable commits, final verification, push idempotency, and PR idempotency
|
|
18
|
+
- strengthen documentation release rules so README/CLAUDE/architecture/handoff/changelog/TODO updates are audited from the final diff before PR or handoff
|
|
19
|
+
- require PR bodies to be regenerated from current `cc-check`, scope drift, plan completion, verification, documentation, and test-plan facts
|
|
20
|
+
|
|
21
|
+
Migration note:
|
|
22
|
+
|
|
23
|
+
- new `create-pr` and `update-pr` closeouts should treat documentation sync and PR-body regeneration as first-class ship steps rather than optional post-processing
|
|
24
|
+
|
|
25
|
+
## v1.5.0 - 2026-04-19
|
|
26
|
+
|
|
27
|
+
- require `cc-act` to finish formal spec synchronization before ship closeout when `cc-check` marks `specSyncReady=true`
|
|
28
|
+
- surface spec sync state and target capability files in `sync-act-docs.sh` outputs so closeout materials stay aligned with capability truth
|
|
29
|
+
- tighten act entry rules so a passing report without spec readiness can no longer masquerade as a complete closeout
|
|
30
|
+
|
|
31
|
+
Migration note:
|
|
32
|
+
|
|
33
|
+
- change closeout now expects `change-meta.json`, related capability specs, and `report-card.json.specSyncReady`
|
|
34
|
+
|
|
35
|
+
## v1.4.1 - 2026-04-18
|
|
36
|
+
|
|
37
|
+
- compress duplicated commit-rule summaries in `SKILL.md` and `PLAYBOOK.md` so `references/git-commit-guidelines.md` stays the single truth source
|
|
38
|
+
- keep only stage-level enforcement language in the main docs and move commit-detail semantics fully behind the reference
|
|
39
|
+
- reduce drift risk between skill overview text and playbook execution text
|
|
40
|
+
|
|
41
|
+
## v1.4.0 - 2026-04-18
|
|
42
|
+
|
|
43
|
+
- add `references/git-commit-guidelines.md` as the canonical commit-history reference for `cc-act`
|
|
44
|
+
- require `create-pr` and `update-pr` flows to generate commit messages and commit boundaries by that guideline instead of relying on vague "clear message" wording
|
|
45
|
+
- surface the commit guideline in `Read First`, bundled resources, playbook integration steps, and working rules so commit generation has one explicit truth source
|
|
46
|
+
|
|
47
|
+
## v1.3.0 - 2026-04-18
|
|
48
|
+
|
|
49
|
+
- add an explicit pre-ship validation stage for `cc-simplify`, unit tests, and coordinator-directed e2e runs
|
|
50
|
+
- require `create-pr` and `update-pr` flows to commit verified changes, push the branch, and use `gh pr create` or refresh the existing PR instead of duplicating it
|
|
51
|
+
- tighten reroute rules so any simplify or test-driven code change sends the requirement back through `cc-check` before act can continue
|
|
52
|
+
|
|
53
|
+
## v1.2.0 - 2026-04-17
|
|
54
|
+
|
|
55
|
+
- add structured frontmatter contract fields so cc-act exposes ship-mode rules, reroutes, recovery, and tool budget directly in the skill
|
|
56
|
+
- add `Harness Contract` and `Visible State Machine` to make closeout behavior readable without internal harness code
|
|
57
|
+
- add memory-consolidation guidance so delivery truth is compressed into status, brief, and resume artifacts before handoff
|
|
58
|
+
|
|
59
|
+
Migration note:
|
|
60
|
+
|
|
61
|
+
- existing `pr-brief.md`, `status-report.md`, and `resume-index.md` files remain valid
|
|
62
|
+
- registry and publish tooling now expect the new public frontmatter keys on this skill
|
|
63
|
+
|
|
64
|
+
## v1.1.0 - 2026-04-15
|
|
65
|
+
|
|
66
|
+
- add stronger trigger phrases in frontmatter
|
|
67
|
+
- add `Quick Start` mode selector for first-use clarity
|
|
68
|
+
- add `Minimum Output By Mode` to reduce overproduction
|
|
69
|
+
- add `Good Output` criteria so ship materials stay concise and mode-aware
|
|
70
|
+
- align protocol and read-first sections with versioned changelog workflow
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
# CC-Act Playbook
|
|
2
|
+
|
|
3
|
+
## Visible State Machine
|
|
4
|
+
|
|
5
|
+
`cc-check -> cc-act -> roadmap/cc-plan next loop`
|
|
6
|
+
|
|
7
|
+
- Enter from: `cc-check` with a passing report card.
|
|
8
|
+
- Stay in: `cc-act` while ship mode, simplify/test evidence, docs, and handoff are being aligned to proven facts.
|
|
9
|
+
- Exit to: the next roadmap/backlog loop once delivery artifacts and follow-up writeback are complete.
|
|
10
|
+
- Reroute to: `cc-check` if verification changes, or `cc-do` if act uncovers unfinished implementation.
|
|
11
|
+
|
|
12
|
+
## Core Thesis
|
|
13
|
+
|
|
14
|
+
`cc-act` 的任务不是“再解释一遍”,而是把已经通过验证的事实推进成真正的交付状态。
|
|
15
|
+
|
|
16
|
+
它接收 `cc-check` 的结果,但不复用 `cc-check` 的职责。
|
|
17
|
+
|
|
18
|
+
- `cc-check` 解决:这次变更到底有没有被证明
|
|
19
|
+
- `cc-act` 解决:这次被证明的变更到底怎么落地
|
|
20
|
+
|
|
21
|
+
## Phase 0: Close The Gate
|
|
22
|
+
|
|
23
|
+
开始前先做 3 件事:
|
|
24
|
+
|
|
25
|
+
1. 运行 `scripts/verify-act-gate.sh --dir <requirement-dir>`
|
|
26
|
+
2. 确认 `review/report-card.json` 是 `pass`,且没有未解释的 gaps / reroute
|
|
27
|
+
3. 确认 `planning/tasks.md` 不再有未完成项
|
|
28
|
+
|
|
29
|
+
如果 gate 没闭合,直接回 `cc-check` 或 `cc-do`,不要在 `cc-act` 自我安慰。
|
|
30
|
+
|
|
31
|
+
## Phase 1: Freeze Ship Facts
|
|
32
|
+
|
|
33
|
+
运行 `scripts/detect-ship-target.sh`,锁定这些事实:
|
|
34
|
+
|
|
35
|
+
- current branch
|
|
36
|
+
- base branch
|
|
37
|
+
- platform / remote 能力
|
|
38
|
+
- 是否已有 PR / MR
|
|
39
|
+
- 推荐 ship 模式
|
|
40
|
+
|
|
41
|
+
Ship 必须属于这 4 种模式之一:
|
|
42
|
+
|
|
43
|
+
- `create-pr`
|
|
44
|
+
- `update-pr`
|
|
45
|
+
- `local-handoff`
|
|
46
|
+
- `post-merge-closeout`
|
|
47
|
+
|
|
48
|
+
这里不要只报事实,必须给出一句明确结论:
|
|
49
|
+
|
|
50
|
+
- `Recommended mode: <mode>`
|
|
51
|
+
- `Why now: <一句话理由>`
|
|
52
|
+
- `Why not others: <一句话排除>`
|
|
53
|
+
|
|
54
|
+
## Phase 2: Simplify And Refresh Proof
|
|
55
|
+
|
|
56
|
+
在真正准备交付材料前,先做这 4 件事:
|
|
57
|
+
|
|
58
|
+
1. 调用 `cc-simplify`
|
|
59
|
+
- 通过当前运行时可用的 skill 调用器执行
|
|
60
|
+
- 如果桥接环境暴露为 `${JM}`,使用 `${JM}` with `skill: "cc-simplify"`
|
|
61
|
+
2. 跑项目单测
|
|
62
|
+
- 先检查 `package.json` scripts、`Makefile`、或项目常见测试入口
|
|
63
|
+
- 选择项目实际存在的命令执行
|
|
64
|
+
3. 跑 e2e
|
|
65
|
+
- 严格遵守协调器 prompt 给出的 e2e recipe
|
|
66
|
+
- recipe 明确要求跳过时,只记录 skip 理由
|
|
67
|
+
4. 一旦这三步里有任何修复改了代码,立即回 `cc-check`
|
|
68
|
+
|
|
69
|
+
原则很简单:
|
|
70
|
+
|
|
71
|
+
- `cc-act` 可以做清理和收尾修复
|
|
72
|
+
- 但只要现实被改写,就必须重新证明
|
|
73
|
+
|
|
74
|
+
## Phase 2.5: Ship Hygiene
|
|
75
|
+
|
|
76
|
+
真正提交或推送前,先锁住 ship 卫生:
|
|
77
|
+
|
|
78
|
+
1. 比较 `VERSION` / `package.json` / base branch,识别 `fresh`、`already bumped`、`stale package`、`unexpected drift`。
|
|
79
|
+
2. 读取 changelog,不覆盖已有条目;新增或润色只能基于当前 diff 和 commit history。
|
|
80
|
+
3. 检查提交边界,按逻辑单元拆分,保证提交顺序不引用未来代码。
|
|
81
|
+
4. 如果有 WIP commit,只能用非破坏性 rebase / fixup 处理,不允许盲目 soft reset。
|
|
82
|
+
5. push 前比较 local / remote HEAD;PR 前检查是否已有打开 PR / MR。
|
|
83
|
+
|
|
84
|
+
## Phase 3: Build Delivery Pack
|
|
85
|
+
|
|
86
|
+
先按模式整理最小材料:
|
|
87
|
+
|
|
88
|
+
- `create-pr`: `handoff/pr-brief.md`
|
|
89
|
+
- `update-pr`: 更新后的 `handoff/pr-brief.md`
|
|
90
|
+
- `local-handoff`: `handoff/resume-index.md`
|
|
91
|
+
- `post-merge-closeout`: doc sync 结果 + `handoff/release-note.md`(需要发布时)
|
|
92
|
+
|
|
93
|
+
然后再补下面这些扩展材料:
|
|
94
|
+
|
|
95
|
+
- `handoff/pr-brief.md`
|
|
96
|
+
- `handoff/release-note.md`(需要发布时)
|
|
97
|
+
- 更新后的 `handoff/resume-index.md`
|
|
98
|
+
- `doc-sync-report.md`
|
|
99
|
+
|
|
100
|
+
这些文件只允许写已经被证明过的事实,不准补编故事。
|
|
101
|
+
|
|
102
|
+
建议顺序:
|
|
103
|
+
|
|
104
|
+
1. `scripts/sync-act-docs.sh --dir <requirement-dir>`
|
|
105
|
+
2. `scripts/render-pr-brief.sh --dir <requirement-dir>`
|
|
106
|
+
|
|
107
|
+
## Phase 4: Sync Docs
|
|
108
|
+
|
|
109
|
+
文档同步不是装饰动作,而是 ship 的一部分。
|
|
110
|
+
|
|
111
|
+
同步规则:
|
|
112
|
+
|
|
113
|
+
1. 代码结构变了,就同步对应目录的 `CLAUDE.md`
|
|
114
|
+
2. 用户可感知行为变了,就同步 `README.md` / `handoff/release-note.md`
|
|
115
|
+
3. handoff 路径变了,就同步 `handoff/resume-index.md`
|
|
116
|
+
4. reviewer 如果看文档还得猜,就说明 sync 失败
|
|
117
|
+
5. 新文档必须从 README、CLAUDE 或 handoff 入口可发现
|
|
118
|
+
6. CHANGELOG 只允许保护性更新,不能重写历史
|
|
119
|
+
7. doc sync 结果要进入 PR body 或 handoff,而不是只留在聊天里
|
|
120
|
+
|
|
121
|
+
## Phase 5: Execute Integration
|
|
122
|
+
|
|
123
|
+
### `create-pr`
|
|
124
|
+
|
|
125
|
+
- 按 `references/git-commit-guidelines.md` 完成提交
|
|
126
|
+
- 推送当前分支
|
|
127
|
+
- 用 `gh pr create` 创建 PR / MR
|
|
128
|
+
- PR body 以 `pr-brief.md` 为真相源,并包含 Summary、Test Coverage、Pre-Landing Review、Scope Drift、Plan Completion、Verification Results、Documentation、Test plan
|
|
129
|
+
|
|
130
|
+
### `update-pr`
|
|
131
|
+
|
|
132
|
+
- 如果有新增提交,先按 `references/git-commit-guidelines.md` 完成 commit / push
|
|
133
|
+
- 不重新造一个 PR
|
|
134
|
+
- 刷新已有 PR / MR body
|
|
135
|
+
- 确保 body 由本次最新 `cc-check` 结果与 doc sync 状态重建,不沿用旧 body
|
|
136
|
+
|
|
137
|
+
### `local-handoff`
|
|
138
|
+
|
|
139
|
+
- 不假装已经 ship
|
|
140
|
+
- 明确写出下一位接手者的入口、验证方式、阻塞点
|
|
141
|
+
|
|
142
|
+
### `post-merge-closeout`
|
|
143
|
+
|
|
144
|
+
- 不做 feature branch PR 动作
|
|
145
|
+
- 完成 release note、文档同步、backlog/roadmap 回写、归档
|
|
146
|
+
|
|
147
|
+
如果 `gh` 不可用、push 失败、远端不可达,就不要硬凹 `create-pr` / `update-pr`。切到 `local-handoff`,把阻塞和下一步写清楚。
|
|
148
|
+
|
|
149
|
+
## Phase 6: Write Back The Learning
|
|
150
|
+
|
|
151
|
+
以下情况必须回写 `devflow/roadmap/backlog.md` / `devflow/roadmap/roadmap.md`:
|
|
152
|
+
|
|
153
|
+
1. 本次工作暴露了新的 follow-up
|
|
154
|
+
2. 原有优先级被改变
|
|
155
|
+
3. 有明确 deferred item 不能靠口头记忆保存
|
|
156
|
+
|
|
157
|
+
原则:
|
|
158
|
+
|
|
159
|
+
- 长期方向写 `devflow/roadmap/roadmap.md`
|
|
160
|
+
- 下一轮待排队动作写 `devflow/roadmap/backlog.md`
|
|
161
|
+
- 不要把噪音和碎念回写成系统真相
|
|
162
|
+
|
|
163
|
+
## Phase 7: Declare The Next Entry
|
|
164
|
+
|
|
165
|
+
`cc-act` 结束时必须留下一个明确入口:
|
|
166
|
+
|
|
167
|
+
- requirement 真闭环:可归档,下一轮入口在 backlog / roadmap
|
|
168
|
+
- requirement 未完全闭环:`handoff/resume-index.md` 必须告诉下一位从哪里接、怎么验、当前卡点是什么
|
|
169
|
+
|
|
170
|
+
## Recommendation Test
|
|
171
|
+
|
|
172
|
+
交付前过一遍这 4 个问题:
|
|
173
|
+
|
|
174
|
+
1. 看完第一屏,别人能不能立刻知道 ship 模式?
|
|
175
|
+
2. 材料是不是只覆盖当前模式真正需要的内容?
|
|
176
|
+
3. reviewer / 接手者 还需不需要追问“所以我现在该看哪个文件”?
|
|
177
|
+
4. `cc-simplify`、单测、e2e、commit/push 的结果是不是都能追溯?
|
|
178
|
+
5. PR body / release note / handoff / changelog 说的是不是同一套现实?
|
|
179
|
+
|
|
180
|
+
如果第 1 或第 3 题答案不是“能”,说明 `cc-act` 仍然太重或太糊。
|
|
181
|
+
|
|
182
|
+
## Required Outputs
|
|
183
|
+
|
|
184
|
+
- `handoff/pr-brief.md`
|
|
185
|
+
- `handoff/release-note.md`(需要发布时)
|
|
186
|
+
- 更新后的 `handoff/resume-index.md`
|
|
187
|
+
- 更新后的 `CLAUDE.md` / README / 架构文档(如果结构或行为变了)
|
|
188
|
+
- 必要时更新后的 `devflow/roadmap/backlog.md` / `devflow/roadmap/roadmap.md`
|
|
189
|
+
|
|
190
|
+
## Local Kit
|
|
191
|
+
|
|
192
|
+
- `assets/PR_BRIEF_TEMPLATE.md` 负责 reviewer / PR 交付骨架
|
|
193
|
+
- `assets/RELEASE_NOTE_TEMPLATE.md` 负责对外发布骨架
|
|
194
|
+
- `scripts/verify-act-gate.sh` 负责 gate 闭合校验
|
|
195
|
+
- `scripts/detect-ship-target.sh` 负责分支与 PR 决策
|
|
196
|
+
- `scripts/sync-act-docs.sh` 负责同步 requirement 级文档与 doc target 报告
|
|
197
|
+
- `scripts/render-pr-brief.sh` 负责从 requirement 真相源渲染 `pr-brief.md`
|
|
198
|
+
- `scripts/generate-status-report.sh` 负责汇总 requirement 与 ship 现状
|
|
199
|
+
- `scripts/archive-requirement.sh` 负责 requirement 生命周期收尾
|
|
200
|
+
- `cc-simplify` 负责在 ship 前压掉重复、坏味道、低效实现
|
|
201
|
+
- `references/git-commit-guidelines.md` 负责提交规范真相源
|
|
202
|
+
|
|
203
|
+
## Exit Smell
|
|
204
|
+
|
|
205
|
+
如果用户看完结果还会问:
|
|
206
|
+
|
|
207
|
+
- “所以现在是提 PR 还是先 handoff?”
|
|
208
|
+
- “你真的跑过 simplify、单测、e2e 吗?”
|
|
209
|
+
- “为什么要写 release note?”
|
|
210
|
+
- “下一位到底从哪里开始接?”
|
|
211
|
+
|
|
212
|
+
那这次 `cc-act` 还没有把复杂度压平。
|
|
@@ -0,0 +1,330 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cc-act
|
|
3
|
+
version: 1.6.2
|
|
4
|
+
description: 'Use when verified work must be shipped or handed off with a clear landing path: run simplify and required tests, create or update a PR, prepare a local handoff, close out merged work, sync docs, write release notes, and fold follow-ups back into backlog or roadmap.'
|
|
5
|
+
triggers:
|
|
6
|
+
- 准备提 PR
|
|
7
|
+
- 帮我发版
|
|
8
|
+
- 收尾
|
|
9
|
+
- ship this
|
|
10
|
+
- handoff
|
|
11
|
+
- close this requirement
|
|
12
|
+
- merge 之后怎么收口
|
|
13
|
+
reads:
|
|
14
|
+
- PLAYBOOK.md
|
|
15
|
+
- CHANGELOG.md
|
|
16
|
+
- references/closure-contract.md
|
|
17
|
+
- references/git-commit-guidelines.md
|
|
18
|
+
- assets/PR_BRIEF_TEMPLATE.md
|
|
19
|
+
- assets/RELEASE_NOTE_TEMPLATE.md
|
|
20
|
+
writes:
|
|
21
|
+
- path: devflow/changes/<change-key>/handoff/pr-brief.md
|
|
22
|
+
durability: durable
|
|
23
|
+
required: false
|
|
24
|
+
when: handoff mode is create-pr or update-pr
|
|
25
|
+
exclusive_group: handoff
|
|
26
|
+
- path: devflow/changes/<change-key>/handoff/resume-index.md
|
|
27
|
+
durability: durable
|
|
28
|
+
required: false
|
|
29
|
+
when: handoff mode is local resume
|
|
30
|
+
exclusive_group: handoff
|
|
31
|
+
- path: devflow/changes/<change-key>/handoff/release-note.md
|
|
32
|
+
durability: durable
|
|
33
|
+
required: false
|
|
34
|
+
when: handoff mode is release
|
|
35
|
+
exclusive_group: handoff
|
|
36
|
+
effects:
|
|
37
|
+
- roadmap or backlog follow-up updates when needed
|
|
38
|
+
entry_gate:
|
|
39
|
+
- Accept only a passing review/report-card.json with reroute=none and specSyncReady=true.
|
|
40
|
+
- Freeze current branch, PR, and ship-mode facts before writing delivery materials.
|
|
41
|
+
- If simplify, tests, or act changes code or verification scope, return to cc-check immediately.
|
|
42
|
+
exit_criteria:
|
|
43
|
+
- The ship mode is explicit, delivery materials match that mode, and the next maintainer has one clear entry point.
|
|
44
|
+
- Docs, PR text, release notes, handoff artifacts, and test evidence reflect the same proven facts.
|
|
45
|
+
- Follow-up items are written back to roadmap/backlog instead of lingering in chat memory.
|
|
46
|
+
reroutes:
|
|
47
|
+
- when: Verification is stale, incomplete, or changed during act.
|
|
48
|
+
target: cc-check
|
|
49
|
+
- when: Act reveals unfinished implementation or unresolved review findings.
|
|
50
|
+
target: cc-do
|
|
51
|
+
recovery_modes:
|
|
52
|
+
- name: memory-consolidation
|
|
53
|
+
when: Delivery evidence is scattered across checkpoints, reviews, and prior handoff notes.
|
|
54
|
+
action: Compress the current truth into handoff/pr-brief.md, handoff/resume-index.md, and handoff/release-note.md before any ship action continues.
|
|
55
|
+
- name: local-handoff-refresh
|
|
56
|
+
when: Remote push or PR tooling is unavailable but the requirement is otherwise ready to land.
|
|
57
|
+
action: Switch to local-handoff mode, refresh handoff/resume-index.md, and leave a verified next entry for the maintainer.
|
|
58
|
+
tool_budget:
|
|
59
|
+
read_files: 8
|
|
60
|
+
search_steps: 5
|
|
61
|
+
shell_commands: 10
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
# CC-Act
|
|
65
|
+
|
|
66
|
+
> [PROTOCOL]: 变更时同步更新 `version`、`CHANGELOG.md`、相关模板/脚本引用,然后检查 `CLAUDE.md`
|
|
67
|
+
|
|
68
|
+
## Role
|
|
69
|
+
|
|
70
|
+
`cc-act` 是 PDCA 里的 `Act + Ship`。
|
|
71
|
+
|
|
72
|
+
它不再只是“写收尾文档”,而是负责把已经通过验证的现实推进到真正可接手、可 review、可发布、可回写的状态。
|
|
73
|
+
|
|
74
|
+
一句话:`cc-check` 证明“东西已经好”,`cc-act` 负责把“已经好”变成“已经落地”。
|
|
75
|
+
|
|
76
|
+
## Runtime Output Policy
|
|
77
|
+
|
|
78
|
+
写入任何 durable Markdown 或 JSON metadata 前,先运行 `cc-devflow config resolve --format policy`。
|
|
79
|
+
|
|
80
|
+
- `Output language` 是机器约束,PR brief、resume index、release note 和 status handoff 必须记录并遵守它。
|
|
81
|
+
- `agent_preferences` 是用户偏好建议,只影响表达方式和结构选择,不覆盖本 Skill 的工作流边界。
|
|
82
|
+
- 如果配置解析失败,先修配置或向用户说明阻塞,不要用默认语言继续生成正式文档。
|
|
83
|
+
|
|
84
|
+
## Read First
|
|
85
|
+
|
|
86
|
+
1. `PLAYBOOK.md`
|
|
87
|
+
2. `CHANGELOG.md`
|
|
88
|
+
3. `references/closure-contract.md`
|
|
89
|
+
4. `references/git-commit-guidelines.md`
|
|
90
|
+
|
|
91
|
+
## Use This Skill When
|
|
92
|
+
|
|
93
|
+
- `cc-check` 已通过
|
|
94
|
+
- 需要决定这次是 `create-pr`、`update-pr`、`local-handoff`,还是 `post-merge-closeout`
|
|
95
|
+
- 需要在 ship 前再做一次 `cc-simplify`、单测、以及按协调器要求执行的 e2e
|
|
96
|
+
- 需要同步最终文档、handoff、release note
|
|
97
|
+
- 需要把遗留 follow-up / 优先级变化回写 `devflow/roadmap/backlog.md` 或 `devflow/roadmap/roadmap.md`
|
|
98
|
+
- 需要把已验证的 spec delta 正式回写 capability spec 与 `devflow/specs/INDEX.md`
|
|
99
|
+
- 需要让下一轮入口比现在更清楚
|
|
100
|
+
|
|
101
|
+
如果 `review/report-card.json` 不是 `pass`,或 `specSyncReady` 不是 `true`,或者仍指向 `cc-do` / `cc-plan`,停止在这里,不准 ship。
|
|
102
|
+
|
|
103
|
+
## Quick Start
|
|
104
|
+
|
|
105
|
+
先回答一句话:**这次 verified work 应该以什么方式落地?**
|
|
106
|
+
|
|
107
|
+
| 现实状态 | 直接选用模式 |
|
|
108
|
+
| --- | --- |
|
|
109
|
+
| 在 feature branch,远端可用,还没有 PR / MR | `create-pr` |
|
|
110
|
+
| 在 feature branch,已经有打开的 PR / MR | `update-pr` |
|
|
111
|
+
| 在 feature branch,但现在不推远端或工具不可用 | `local-handoff` |
|
|
112
|
+
| 已在 base branch,或 requirement 已合并完成 | `post-merge-closeout` |
|
|
113
|
+
|
|
114
|
+
如果 10 秒内还说不清属于哪一类,先停下,重新跑 `scripts/detect-ship-target.sh`。`cc-act` 不是猜模式的地方。
|
|
115
|
+
|
|
116
|
+
## Harness Contract
|
|
117
|
+
|
|
118
|
+
- Allowed actions: freeze ship facts, run simplify and required tests, sync docs, prepare landing materials, and execute the matching ship mode.
|
|
119
|
+
- Forbidden actions: shipping with a stale report card, claiming readiness without simplify/test evidence or explicit skip evidence, inventing a fifth ambiguous mode, or continuing feature development inside act.
|
|
120
|
+
- Required evidence: PR briefs, status reports, release notes, resume indexes, and test evidence must summarize already-proven facts only.
|
|
121
|
+
- Reroute rule: changed verification goes back to `cc-check`; unfinished implementation or new fixes go back to `cc-do`.
|
|
122
|
+
|
|
123
|
+
## Entry Gate
|
|
124
|
+
|
|
125
|
+
1. 先读 `review/report-card.json`,只接受已通过且有证据的现实。
|
|
126
|
+
2. 再读 `planning/design.md` 或 `planning/analysis.md`、`planning/tasks.md`、`planning/task-manifest.json`、`change-meta.json`、相关 capability spec;如果已有 `handoff/resume-index.md`,一并读取,确认这次到底完成了什么。
|
|
127
|
+
3. 运行 `scripts/verify-act-gate.sh --dir <requirement-dir>`,确认 gate 真的闭合。
|
|
128
|
+
4. 运行 `scripts/detect-ship-target.sh`,识别当前分支、base branch、PR 状态与推荐 ship 路径。
|
|
129
|
+
5. 如果在 `cc-act` 期间因为 `cc-simplify`、单测、e2e、review 修复而改了代码,必须回 `cc-check`,不能带着旧证明继续 ship。
|
|
130
|
+
|
|
131
|
+
## Ship Modes
|
|
132
|
+
|
|
133
|
+
`cc-act` 只允许 4 种模式,避免“收尾”变成模糊动作:
|
|
134
|
+
|
|
135
|
+
1. `create-pr`
|
|
136
|
+
- 当前在 feature branch
|
|
137
|
+
- 远端存在
|
|
138
|
+
- 当前没有 PR / MR
|
|
139
|
+
2. `update-pr`
|
|
140
|
+
- 当前在 feature branch
|
|
141
|
+
- 已存在打开的 PR / MR
|
|
142
|
+
- 需要刷新 body、补文档、同步最新状态
|
|
143
|
+
3. `local-handoff`
|
|
144
|
+
- 当前在 feature branch
|
|
145
|
+
- 暂不推远端,或远端工具不可用
|
|
146
|
+
- 但要把 handoff 与下一步写清楚
|
|
147
|
+
4. `post-merge-closeout`
|
|
148
|
+
- 当前已在 base branch,或 requirement 已完成合并
|
|
149
|
+
- 重点是 release note、doc sync、backlog writeback、归档
|
|
150
|
+
|
|
151
|
+
不要发明第五种模糊模式。
|
|
152
|
+
|
|
153
|
+
## Minimum Output By Mode
|
|
154
|
+
|
|
155
|
+
先做最小必要交付,再补充可选材料:
|
|
156
|
+
|
|
157
|
+
1. `create-pr`
|
|
158
|
+
- 必须有 `handoff/pr-brief.md`
|
|
159
|
+
- 必须完成需要同步的 doc updates
|
|
160
|
+
- 新增提交必须遵守 `references/git-commit-guidelines.md`
|
|
161
|
+
- 远端可用时必须完成 commit、push、`gh pr create`
|
|
162
|
+
2. `update-pr`
|
|
163
|
+
- 必须有更新后的 `handoff/pr-brief.md`
|
|
164
|
+
- 必须说明这次新增了什么验证或文档同步
|
|
165
|
+
- 必须避免重复创建 PR / MR
|
|
166
|
+
- 新增提交必须遵守 `references/git-commit-guidelines.md`
|
|
167
|
+
- 如果有新增提交,必须 push 并刷新 PR / MR 内容
|
|
168
|
+
3. `local-handoff`
|
|
169
|
+
- 必须有更新后的 `handoff/resume-index.md`
|
|
170
|
+
- 必须写清接手入口、验证方式、当前阻塞
|
|
171
|
+
4. `post-merge-closeout`
|
|
172
|
+
- 必须完成 doc sync
|
|
173
|
+
- 需要对外说明时生成 `handoff/release-note.md`
|
|
174
|
+
- 必须把 follow-up 回写到 `devflow/roadmap/backlog.md` / `devflow/roadmap/roadmap.md`
|
|
175
|
+
|
|
176
|
+
不是每次都要把所有文件生成一遍。材料必须服务于当前 ship 模式,而不是为了流程好看。
|
|
177
|
+
|
|
178
|
+
## Pre-Ship Validation
|
|
179
|
+
|
|
180
|
+
在真正写交付材料或推远端之前,先把这 4 件事做完:
|
|
181
|
+
|
|
182
|
+
1. `Simplify`
|
|
183
|
+
- 通过当前运行时可用的 skill 调用器调用 `cc-simplify`
|
|
184
|
+
- 如果桥接环境暴露为 `${JM}`,就按 `${JM}` + `skill: "cc-simplify"` 执行
|
|
185
|
+
- 目标不是再开发新范围,而是清理重复、坏味道、低效实现
|
|
186
|
+
2. `Run unit tests`
|
|
187
|
+
- 先检查项目的标准测试入口,例如 `package.json` scripts、`Makefile`、`bun test`、`pytest`、`go test`
|
|
188
|
+
- 选择该项目实际存在的单测入口执行
|
|
189
|
+
- 失败就修,但修完必须回 `cc-check` 刷新证明
|
|
190
|
+
3. `Test end-to-end`
|
|
191
|
+
- 严格按协调器 prompt 里的 e2e recipe 执行
|
|
192
|
+
- 如果 recipe 明确要求跳过,记录 skip 原因,不要伪造执行
|
|
193
|
+
- e2e 失败并导致代码修改时,同样回 `cc-check`
|
|
194
|
+
4. `Commit and push`
|
|
195
|
+
- 只对 `create-pr` / `update-pr` 模式生效
|
|
196
|
+
- 所有验证通过后再 commit,并遵守 `references/git-commit-guidelines.md`
|
|
197
|
+
- push 当前分支,并用 `gh pr create` 创建 PR;已有 PR 时只更新,不重复创建
|
|
198
|
+
- `gh` 不可用、push 失败、远端不可达时,切到 `local-handoff` 并把阻塞写清楚
|
|
199
|
+
|
|
200
|
+
这 4 步只接受两种结果:`全部完成` 或 `明确 reroute / handoff`。不要停在“差不多已经好了”。
|
|
201
|
+
|
|
202
|
+
## Ship Discipline
|
|
203
|
+
|
|
204
|
+
`cc-act` 的 ship 动作必须是幂等、可审计、可复跑的:
|
|
205
|
+
|
|
206
|
+
1. Base and branch:识别 base branch、当前 branch、远端状态、已有 PR / MR,所有 diff/log/push 都基于同一个 base。
|
|
207
|
+
2. Scope completion:PR 简报必须包含 `cc-check` 的 plan completion、scope drift、review finding、验证结果摘要。
|
|
208
|
+
3. Version and changelog:如果项目有 `VERSION`、`package.json`、`CHANGELOG.md`,先判断是否已 bump / 是否漂移;不要重复 bump,也不要覆盖 changelog。
|
|
209
|
+
4. Bisectable commits:提交按逻辑单元拆分,顺序保证每个 commit 独立可理解、尽量可验证;小于 50 行且少于 4 文件可单 commit。
|
|
210
|
+
5. Fresh final verification:如果 `cc-act` 中的 review fix、doc sync、version sync 改了代码或运行时输入,重新回 `cc-check`;纯文档/PR body 变化记录即可。
|
|
211
|
+
6. Push idempotency:push 前比较 local/remote HEAD;已同步就不重复 push,不可用就切 `local-handoff`。
|
|
212
|
+
7. PR idempotency:已有打开的 PR / MR 只更新 body,不重复创建。
|
|
213
|
+
|
|
214
|
+
## Documentation Release
|
|
215
|
+
|
|
216
|
+
文档同步要作为发布链路的一部分,而不是 PR 后的人工补丁:
|
|
217
|
+
|
|
218
|
+
1. Diff audit:按最终 diff/log 识别新增能力、行为变化、删除项、基础设施变化。
|
|
219
|
+
2. Per-file audit:检查 README、CLAUDE、ARCHITECTURE、CONTRIBUTING、docs、handoff 是否与 diff 矛盾。
|
|
220
|
+
3. Auto-update facts:路径、命令、计数、skill 列表、入口链接、明显过期事实可以直接更新。
|
|
221
|
+
4. Risky narrative gate:产品定位、安全模型、架构哲学、大段删除、含义改变的 changelog 改写必须停下说明。
|
|
222
|
+
5. Changelog protection:只允许润色既有条目或新增由当前 diff 支撑的条目,不能重写历史、删除已有发布说明。
|
|
223
|
+
6. Discoverability:新增文档必须能从 README、CLAUDE 或 handoff 入口找到。
|
|
224
|
+
7. TODO/backlog cleanup:只把有 diff 证据完成的事项移到 completed;新 follow-up 写回 backlog/roadmap。
|
|
225
|
+
|
|
226
|
+
## Loop
|
|
227
|
+
|
|
228
|
+
1. 先锁定 ship 事实:当前分支、base branch、PR 状态、requirement 状态。
|
|
229
|
+
2. 调用 `cc-simplify`,清理重复、坏味道、低效实现;如果因此改了代码,回 `cc-check`。
|
|
230
|
+
3. 运行项目单测;失败就修,修完回 `cc-check`。
|
|
231
|
+
4. 按协调器 recipe 执行 e2e;如果 recipe 允许 skip,记录 skip 理由;如果失败并修复,回 `cc-check`。
|
|
232
|
+
5. 先把 `change-meta.json.spec.syncStatus` 从 `planned/verified` 推进到 `synced`,并正式回写 capability spec 与 `devflow/specs/INDEX.md`;只在 spec truth 更新后继续交付材料。
|
|
233
|
+
6. 只使用 `cc-check` 已经证明过的事实写交付材料,不编故事,不补脑。
|
|
234
|
+
7. 同步文档:
|
|
235
|
+
- 结构变了,更新对应目录的 `CLAUDE.md`
|
|
236
|
+
- 用户可感知行为变了,更新 `README.md` / `handoff/release-note.md`
|
|
237
|
+
- handoff 变了,更新 `handoff/resume-index.md`
|
|
238
|
+
8. 执行 documentation release audit:保护 changelog,检查 discoverability,记录 doc sync 结果。
|
|
239
|
+
9. 生成 `handoff/pr-brief.md`,把需求、变更、验证证据、风险、文档同步状态一次写清。
|
|
240
|
+
- 优先运行 `scripts/sync-act-docs.sh --dir <requirement-dir>`
|
|
241
|
+
- 再运行 `scripts/render-pr-brief.sh --dir <requirement-dir>`
|
|
242
|
+
10. 执行分支集成动作:
|
|
243
|
+
- `create-pr`:按 `references/git-commit-guidelines.md` 完成提交并推分支,再优先使用 `gh pr create` 创建 PR / MR
|
|
244
|
+
- `update-pr`:如果有新提交,先按 `references/git-commit-guidelines.md` 完成 commit / push,再刷新 PR / MR body,不沿用陈旧内容
|
|
245
|
+
- `local-handoff`:不假装已经发出,只生成可接手材料
|
|
246
|
+
- `post-merge-closeout`:跳过 PR,完成发布与闭环回写
|
|
247
|
+
11. 处理 PR / MR body:从当前 `pr-brief.md`、最新验证、review、doc sync、TODO/backlog 结果重新渲染,不复用旧 body。
|
|
248
|
+
12. 回写 `devflow/roadmap/backlog.md` / `devflow/roadmap/roadmap.md`:
|
|
249
|
+
- 新发现的 follow-up
|
|
250
|
+
- 被推迟但必须保留的事项
|
|
251
|
+
- 因本次结果而改变优先级的事项
|
|
252
|
+
13. 如果 requirement 真正闭环,更新状态摘要并归档;否则把下一位接手者的入口写清楚。
|
|
253
|
+
|
|
254
|
+
## Output
|
|
255
|
+
|
|
256
|
+
- `handoff/pr-brief.md`
|
|
257
|
+
- `handoff/release-note.md`(需要对外发布时)
|
|
258
|
+
- 更新后的 `handoff/resume-index.md`
|
|
259
|
+
- 同步后的 `CLAUDE.md` / README / 架构文档
|
|
260
|
+
- 必要时更新后的 `devflow/roadmap/backlog.md` / `devflow/roadmap/roadmap.md`
|
|
261
|
+
- 单测 / e2e 的通过证据,或明确记录的 skip / blocker
|
|
262
|
+
- 必要时创建或更新的 PR / MR
|
|
263
|
+
- PR / MR body 中的 Summary、Test Coverage、Pre-Landing Review、Scope Drift、Plan Completion、Verification Results、Documentation、Test plan
|
|
264
|
+
|
|
265
|
+
## Good Output
|
|
266
|
+
|
|
267
|
+
一个好的 `cc-act` 结果应该让 reviewer 或下一位接手者不用追问:
|
|
268
|
+
|
|
269
|
+
- 这次到底选了哪种 ship 模式,为什么不是另外三种
|
|
270
|
+
- 哪些材料已经准备好,哪些刻意不需要
|
|
271
|
+
- 现在谁都可以顺着 `handoff/pr-brief.md` 或 `handoff/resume-index.md` 继续往前走
|
|
272
|
+
- 文档、PR 描述、release note 说的是同一套现实
|
|
273
|
+
- `cc-simplify`、单测、e2e、commit/push 的结果都能被接手者追溯
|
|
274
|
+
|
|
275
|
+
## Bundled Resources
|
|
276
|
+
|
|
277
|
+
- 变更记录:`CHANGELOG.md`
|
|
278
|
+
- 契约:`references/closure-contract.md`
|
|
279
|
+
- 模板:`assets/PR_BRIEF_TEMPLATE.md`
|
|
280
|
+
- 模板:`assets/RELEASE_NOTE_TEMPLATE.md`
|
|
281
|
+
- 提交规范:`references/git-commit-guidelines.md`
|
|
282
|
+
- 状态摘要:`scripts/generate-status-report.sh`
|
|
283
|
+
- Gate 校验:`scripts/verify-act-gate.sh`
|
|
284
|
+
- Ship 目标识别:`scripts/detect-ship-target.sh`
|
|
285
|
+
- 文档同步:`scripts/sync-act-docs.sh`
|
|
286
|
+
- PR 简报生成:`scripts/render-pr-brief.sh`
|
|
287
|
+
- requirement 归档:`scripts/archive-requirement.sh`
|
|
288
|
+
|
|
289
|
+
## Working Rules
|
|
290
|
+
|
|
291
|
+
1. `cc-check` 没过,不准 ship。
|
|
292
|
+
2. 没有新鲜证据的完成结论,不准进入交付材料。
|
|
293
|
+
3. 交付材料只总结现实,不重写历史。
|
|
294
|
+
4. 文档必须与最终代码和 ship 状态同构。
|
|
295
|
+
5. 分支决策必须明确属于 4 种模式之一,不要含糊。
|
|
296
|
+
6. 已存在 PR / MR 时,优先更新,不重复创建。
|
|
297
|
+
7. `cc-simplify`、单测、e2e 任何一步只要导致代码变化或验证口径变化,必须回 `cc-check`。
|
|
298
|
+
8. `devflow/roadmap/backlog.md` / `devflow/roadmap/roadmap.md` 只回写真正改变优先级或产生 follow-up 的事项,不写噪音。
|
|
299
|
+
9. `local-handoff` 不是偷懒模式,它仍然必须让下一位接手者知道做什么、怎么验证、卡在哪。
|
|
300
|
+
10. `create-pr` / `update-pr` 模式默认要求提交历史符合 `references/git-commit-guidelines.md`,并完成正确的 push、PR 创建或更新动作。
|
|
301
|
+
11. CHANGELOG 只能基于当前 diff / commit history / release truth 更新,不允许覆盖既有历史条目。
|
|
302
|
+
12. PR / MR body 每次都从当前事实重建,不沿用旧 body 或旧测试输出。
|
|
303
|
+
|
|
304
|
+
## Exit Criteria
|
|
305
|
+
|
|
306
|
+
- gate 闭合且现实一致
|
|
307
|
+
- ship 模式已明确并执行到位
|
|
308
|
+
- reviewer / maintainer 能直接接手
|
|
309
|
+
- 需要同步的文档已经同步
|
|
310
|
+
- `cc-simplify`、单测、e2e 已执行完毕,或 skip / blocker 已被明确记录
|
|
311
|
+
- follow-up 已回写到正确的 backlog / roadmap 位置
|
|
312
|
+
- 下一轮该怎么继续已经写清楚
|
|
313
|
+
- requirement 不是“看起来结束”,而是真正闭环
|
|
314
|
+
|
|
315
|
+
## Do Not
|
|
316
|
+
|
|
317
|
+
- 不把发布动作偷偷塞回 `cc-check`
|
|
318
|
+
- 不拿旧测试输出冒充当前事实
|
|
319
|
+
- 不跳过 `cc-simplify`、单测、e2e 却声称 ready
|
|
320
|
+
- 不重复创建 PR / MR
|
|
321
|
+
- 不让 handoff 只停留在口头描述
|
|
322
|
+
- 不留“下次再说”的关键空洞
|
|
323
|
+
- 不在 `cc-act` 阶段继续偷偷开发新范围
|
|
324
|
+
|
|
325
|
+
## Companion Files
|
|
326
|
+
|
|
327
|
+
- 深入剧本:`PLAYBOOK.md`
|
|
328
|
+
- 变更记录:`CHANGELOG.md`
|
|
329
|
+
- 收尾契约:`references/closure-contract.md`
|
|
330
|
+
- 提交规范:`references/git-commit-guidelines.md`
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# PR Brief
|
|
2
|
+
|
|
3
|
+
## Document Meta
|
|
4
|
+
|
|
5
|
+
- Output language:
|
|
6
|
+
|
|
7
|
+
## Decision
|
|
8
|
+
|
|
9
|
+
- Recommended mode:
|
|
10
|
+
- Why now:
|
|
11
|
+
- Why not others:
|
|
12
|
+
|
|
13
|
+
## Requirement
|
|
14
|
+
|
|
15
|
+
-
|
|
16
|
+
|
|
17
|
+
## Ship Mode
|
|
18
|
+
|
|
19
|
+
- `create-pr` / `update-pr` / `local-handoff` / `post-merge-closeout`
|
|
20
|
+
|
|
21
|
+
## Branch Context
|
|
22
|
+
|
|
23
|
+
- Current branch:
|
|
24
|
+
- Base branch:
|
|
25
|
+
- PR / MR:
|
|
26
|
+
|
|
27
|
+
## Summary
|
|
28
|
+
|
|
29
|
+
-
|
|
30
|
+
|
|
31
|
+
## What Changed
|
|
32
|
+
|
|
33
|
+
-
|
|
34
|
+
|
|
35
|
+
## Verification Evidence
|
|
36
|
+
|
|
37
|
+
- `review/report-card.json` verdict:
|
|
38
|
+
- Fresh evidence:
|
|
39
|
+
|
|
40
|
+
## Documentation Sync
|
|
41
|
+
|
|
42
|
+
- `CLAUDE.md`:
|
|
43
|
+
- `README.md`:
|
|
44
|
+
- `release-note.md`:
|
|
45
|
+
- `resume-index.md`:
|
|
46
|
+
|
|
47
|
+
## Consolidated Memory
|
|
48
|
+
|
|
49
|
+
- `handoff path`:
|
|
50
|
+
- latest checkpoint / review summary:
|
|
51
|
+
- handoff entry for the next maintainer:
|
|
52
|
+
|
|
53
|
+
## Minimum Landing Pack
|
|
54
|
+
|
|
55
|
+
- Required for this mode:
|
|
56
|
+
- Intentionally omitted:
|
|
57
|
+
|
|
58
|
+
## How To Verify
|
|
59
|
+
|
|
60
|
+
-
|
|
61
|
+
|
|
62
|
+
## Follow-Ups
|
|
63
|
+
|
|
64
|
+
-
|
|
65
|
+
|
|
66
|
+
## Risks
|
|
67
|
+
|
|
68
|
+
-
|