@xulthekl/team-flow 0.22.4

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.
Files changed (405) hide show
  1. package/.agents/plugins/marketplace.json +20 -0
  2. package/.agents/skills +1 -0
  3. package/.claude/always/phase-guard.md +3 -0
  4. package/.claude-plugin/marketplace.json +20 -0
  5. package/.claude-plugin/plugin.json +31 -0
  6. package/.codex-plugin/plugin.json +45 -0
  7. package/.codexignore +6 -0
  8. package/.cursor-plugin/marketplace.json +17 -0
  9. package/.cursor-plugin/plugin.json +31 -0
  10. package/.github/copilot-instructions.md +15 -0
  11. package/.github/dependabot.yml +10 -0
  12. package/.github/plugin/marketplace.json +42 -0
  13. package/.github/workflows/ci.yml +98 -0
  14. package/.github/workflows/hol-plugin-scanner.yml +17 -0
  15. package/.opencode/INSTALL.md +61 -0
  16. package/.opencode/plugins/team-flow.js +70 -0
  17. package/AGENTS.md +280 -0
  18. package/CHANGELOG.md +635 -0
  19. package/CONTRIBUTING.md +115 -0
  20. package/GEMINI.md +14 -0
  21. package/HANDOFF.md +219 -0
  22. package/INSTALL.md +810 -0
  23. package/LICENSE +21 -0
  24. package/README.md +185 -0
  25. package/SECURITY.md +37 -0
  26. package/agents/bug-investigator.md +180 -0
  27. package/agents/change-split-auditor.md +257 -0
  28. package/agents/code-reviewer.md +171 -0
  29. package/agents/cross-change-consistency-checker.md +215 -0
  30. package/agents/prd-completeness-reviewer.md +197 -0
  31. package/agents/prototype-builder.md +230 -0
  32. package/agents/prototype-env-scout.md +156 -0
  33. package/agents/prototype-reviewer.md +226 -0
  34. package/assets/icon.svg +6 -0
  35. package/dist/index.d.ts +13 -0
  36. package/dist/index.js +5 -0
  37. package/dist/parsing/change-parser.d.ts +12 -0
  38. package/dist/parsing/change-parser.js +54 -0
  39. package/dist/parsing/requirement-blocks.d.ts +31 -0
  40. package/dist/parsing/requirement-blocks.js +192 -0
  41. package/dist/schema/base.d.ts +7 -0
  42. package/dist/schema/base.js +1 -0
  43. package/dist/schema/change.d.ts +25 -0
  44. package/dist/schema/change.js +1 -0
  45. package/dist/schema/index.d.ts +3 -0
  46. package/dist/schema/index.js +1 -0
  47. package/dist/schema/spec.d.ts +11 -0
  48. package/dist/schema/spec.js +1 -0
  49. package/dist/validation/constants.d.ts +42 -0
  50. package/dist/validation/constants.js +42 -0
  51. package/dist/validation/tokenizer.d.ts +17 -0
  52. package/dist/validation/tokenizer.js +173 -0
  53. package/dist/validation/types.d.ts +40 -0
  54. package/dist/validation/types.js +1 -0
  55. package/dist/validation/validator.d.ts +21 -0
  56. package/dist/validation/validator.js +489 -0
  57. package/docs/README_en.md +358 -0
  58. package/docs/artifact-contract.md +96 -0
  59. package/docs/decision-points.md +88 -0
  60. package/docs/e2e-integration-design.md +207 -0
  61. package/docs/examples/README.md +25 -0
  62. package/docs/examples/add-dark-mode/README.md +13 -0
  63. package/docs/examples/add-dark-mode/design.md +49 -0
  64. package/docs/examples/add-dark-mode/execution-contract.md +56 -0
  65. package/docs/examples/add-dark-mode/proposal.md +46 -0
  66. package/docs/examples/add-dark-mode/specs/ui-theme/spec.md +35 -0
  67. package/docs/examples/add-dark-mode/tasks.md +26 -0
  68. package/docs/examples/refactor-auth-boundary/README.md +15 -0
  69. package/docs/examples/refactor-auth-boundary/design.md +41 -0
  70. package/docs/examples/refactor-auth-boundary/execution-contract.md +61 -0
  71. package/docs/examples/refactor-auth-boundary/proposal.md +47 -0
  72. package/docs/examples/refactor-auth-boundary/specs/auth-boundary/spec.md +45 -0
  73. package/docs/examples/refactor-auth-boundary/tasks.md +25 -0
  74. package/docs/plans/2026-07-07-fix-batch-design.md +68 -0
  75. package/docs/plans/2026-07-20-001-refactor-skill-collaboration-protocol-plan.md +128 -0
  76. package/docs/platform-matrix.md +45 -0
  77. package/docs/prototype-design-research.md +206 -0
  78. package/docs/release-checklist.md +96 -0
  79. package/docs/showcase.html +699 -0
  80. package/docs/skill-rename-v0.8.0.md +49 -0
  81. package/docs/state-machine.md +162 -0
  82. package/gemini-extension.json +6 -0
  83. package/hooks/hooks-cursor.json +8 -0
  84. package/hooks/hooks.json +26 -0
  85. package/hooks/pre-tool-use-guard +116 -0
  86. package/hooks/session-start +14 -0
  87. package/llms.txt +51 -0
  88. package/package.json +48 -0
  89. package/plugin.json +27 -0
  90. package/prd/v1/plan.md +443 -0
  91. package/prd/v1/prd.md +580 -0
  92. package/scripts/check-update.mjs +91 -0
  93. package/scripts/check-version-consistency.mjs +345 -0
  94. package/scripts/ensure-branch.mjs +71 -0
  95. package/scripts/get-config +31 -0
  96. package/scripts/guard/checks/artifacts-exist.mjs +36 -0
  97. package/scripts/guard/checks/contract-current.mjs +33 -0
  98. package/scripts/guard/checks/contract-fresh.mjs +17 -0
  99. package/scripts/guard/checks/dp-gate-passed.mjs +35 -0
  100. package/scripts/guard/checks/dp3-approved.mjs +22 -0
  101. package/scripts/guard/checks/execution-plan-ready.mjs +40 -0
  102. package/scripts/guard/checks/execution-reviews-passed.mjs +36 -0
  103. package/scripts/guard/checks/schema-valid.mjs +63 -0
  104. package/scripts/guard/checks/specs-merged.mjs +51 -0
  105. package/scripts/guard/checks/tasks-complete.mjs +31 -0
  106. package/scripts/guard/checks/tests-passing.mjs +31 -0
  107. package/scripts/guard/design-token-guard.mjs +237 -0
  108. package/scripts/guard/guard.mjs +205 -0
  109. package/scripts/infer-workflow.mjs +136 -0
  110. package/scripts/install-amazon-q.mjs +9 -0
  111. package/scripts/install-cline.mjs +9 -0
  112. package/scripts/install-continue.mjs +9 -0
  113. package/scripts/install-cursor.mjs +265 -0
  114. package/scripts/install-git-hooks.mjs +82 -0
  115. package/scripts/install-kiro.mjs +9 -0
  116. package/scripts/install-pi.mjs +9 -0
  117. package/scripts/install-qoder.mjs +9 -0
  118. package/scripts/install-qwen.mjs +9 -0
  119. package/scripts/install-roocode.mjs +9 -0
  120. package/scripts/install-windsurf.mjs +9 -0
  121. package/scripts/install-zcode.mjs +265 -0
  122. package/scripts/lib/cmd-audit.mjs +127 -0
  123. package/scripts/lib/cmd-checkpoint.mjs +118 -0
  124. package/scripts/lib/cmd-config.mjs +88 -0
  125. package/scripts/lib/cmd-doctor.mjs +267 -0
  126. package/scripts/lib/cmd-execution.mjs +206 -0
  127. package/scripts/lib/cmd-handoff.mjs +94 -0
  128. package/scripts/lib/cmd-inject.mjs +310 -0
  129. package/scripts/lib/cmd-install-amazon-q.mjs +11 -0
  130. package/scripts/lib/cmd-install-cline.mjs +11 -0
  131. package/scripts/lib/cmd-install-continue.mjs +11 -0
  132. package/scripts/lib/cmd-install-cursor.mjs +14 -0
  133. package/scripts/lib/cmd-install-kiro.mjs +11 -0
  134. package/scripts/lib/cmd-install-pi.mjs +11 -0
  135. package/scripts/lib/cmd-install-qoder.mjs +11 -0
  136. package/scripts/lib/cmd-install-qwen.mjs +11 -0
  137. package/scripts/lib/cmd-install-roocode.mjs +11 -0
  138. package/scripts/lib/cmd-install-windsurf.mjs +11 -0
  139. package/scripts/lib/cmd-install-workbuddy.mjs +359 -0
  140. package/scripts/lib/cmd-install-zcode.mjs +14 -0
  141. package/scripts/lib/cmd-isolate.mjs +37 -0
  142. package/scripts/lib/cmd-list.mjs +71 -0
  143. package/scripts/lib/cmd-runtime.mjs +85 -0
  144. package/scripts/lib/cmd-solutions.mjs +71 -0
  145. package/scripts/lib/cmd-state.mjs +231 -0
  146. package/scripts/lib/cmd-sync.mjs +102 -0
  147. package/scripts/lib/cmd-validate.mjs +105 -0
  148. package/scripts/lib/cmd-version.mjs +148 -0
  149. package/scripts/lib/config-loader.mjs +107 -0
  150. package/scripts/lib/execution-plan.mjs +492 -0
  151. package/scripts/lib/execution-recommendation.mjs +221 -0
  152. package/scripts/lib/hash.mjs +74 -0
  153. package/scripts/lib/install.mjs +267 -0
  154. package/scripts/lib/platform-runtime-inventory.mjs +27 -0
  155. package/scripts/lib/platforms.mjs +165 -0
  156. package/scripts/lib/prototype-sync.mjs +192 -0
  157. package/scripts/lib/sdd-overlay.mjs +262 -0
  158. package/scripts/lib/shell-quote.mjs +4 -0
  159. package/scripts/lib/solutions-capture.mjs +102 -0
  160. package/scripts/lib/solutions-index-gen.mjs +112 -0
  161. package/scripts/lib/solutions-inject.mjs +77 -0
  162. package/scripts/lib/solutions-promote.mjs +145 -0
  163. package/scripts/lib/spec-paths.mjs +85 -0
  164. package/scripts/lib/state-loader.mjs +154 -0
  165. package/scripts/lint/lint-skills.mjs +149 -0
  166. package/scripts/lint/rules/behavior-consistency.mjs +56 -0
  167. package/scripts/lint/rules/dp-trigger-points.mjs +60 -0
  168. package/scripts/lint/rules/exception-handling.mjs +59 -0
  169. package/scripts/lint/rules/no-contradictory-instructions.mjs +67 -0
  170. package/scripts/lint/rules/no-redundant-checks.mjs +50 -0
  171. package/scripts/lint/rules/token-rules.mjs +122 -0
  172. package/scripts/review-package +44 -0
  173. package/scripts/task-brief +40 -0
  174. package/scripts/team-flow.mjs +164 -0
  175. package/scripts/token-baseline.mjs +158 -0
  176. package/scripts/validate-artifacts +96 -0
  177. package/scripts/verify-marketplace-release.mjs +59 -0
  178. package/skills/architecture-design/SKILL.md +140 -0
  179. package/skills/architecture-design/chapters/ch01-4a-domains.md +27 -0
  180. package/skills/architecture-design/chapters/ch02-change-cascade.md +27 -0
  181. package/skills/architecture-design/chapters/ch03-architecture-outputs.md +25 -0
  182. package/skills/architecture-design/chapters/ch04-entity-to-aggregate.md +27 -0
  183. package/skills/architecture-design/chapters/ch05-cqrs.md +32 -0
  184. package/skills/architecture-design/chapters/ch06-integration.md +54 -0
  185. package/skills/architecture-design/cheatsheet.md +51 -0
  186. package/skills/architecture-design/glossary.md +23 -0
  187. package/skills/architecture-design/patterns.md +32 -0
  188. package/skills/bug-investigator/SKILL.md +77 -0
  189. package/skills/build-executor/SKILL.md +163 -0
  190. package/skills/build-executor/implementer-prompt.md +162 -0
  191. package/skills/build-executor/references/execution-modes.md +86 -0
  192. package/skills/build-executor/task-reviewer-prompt.md +195 -0
  193. package/skills/ce-brainstorm/SKILL.md +415 -0
  194. package/skills/ce-brainstorm/references/agents/slack-researcher.md +127 -0
  195. package/skills/ce-brainstorm/references/blindspot-pass.md +70 -0
  196. package/skills/ce-brainstorm/references/brainstorm-sections.md +285 -0
  197. package/skills/ce-brainstorm/references/handoff.md +168 -0
  198. package/skills/ce-brainstorm/references/html-rendering.md +634 -0
  199. package/skills/ce-brainstorm/references/markdown-rendering.md +241 -0
  200. package/skills/ce-brainstorm/references/model-tiers.md +9 -0
  201. package/skills/ce-brainstorm/references/prd-mapping.md +71 -0
  202. package/skills/ce-brainstorm/references/product-pressure-test.md +42 -0
  203. package/skills/ce-brainstorm/references/reasoning-elevation.md +63 -0
  204. package/skills/ce-brainstorm/references/settled-decisions.md +45 -0
  205. package/skills/ce-brainstorm/references/synthesis-summary.md +282 -0
  206. package/skills/ce-brainstorm/references/universal-brainstorming.md +73 -0
  207. package/skills/ce-brainstorm/references/verdict-routing.md +26 -0
  208. package/skills/ce-brainstorm/references/visual-probes.md +158 -0
  209. package/skills/ce-brainstorm/scripts/visual-probe-server.js +418 -0
  210. package/skills/ce-compound/SKILL.md +114 -0
  211. package/skills/ce-compound/assets/resolution-template.md +94 -0
  212. package/skills/ce-compound/references/agents/best-practices-researcher.md +115 -0
  213. package/skills/ce-compound/references/agents/data-integrity-guardian.md +68 -0
  214. package/skills/ce-compound/references/agents/framework-docs-researcher.md +93 -0
  215. package/skills/ce-compound/references/agents/pattern-recognition-specialist.md +55 -0
  216. package/skills/ce-compound/references/agents/performance-oracle.md +108 -0
  217. package/skills/ce-compound/references/agents/security-sentinel.md +91 -0
  218. package/skills/ce-compound/references/agents/session-historian.md +83 -0
  219. package/skills/ce-compound/references/concepts-vocabulary.md +78 -0
  220. package/skills/ce-compound/references/full-mode-workflow.md +413 -0
  221. package/skills/ce-compound/references/grounding-validation.md +84 -0
  222. package/skills/ce-compound/references/lightweight-mode.md +53 -0
  223. package/skills/ce-compound/references/output-standards.md +182 -0
  224. package/skills/ce-compound/references/promotion-rules.md +38 -0
  225. package/skills/ce-compound/references/schema.yaml +231 -0
  226. package/skills/ce-compound/references/three-tier-index.md +55 -0
  227. package/skills/ce-compound/references/v0.5-upgrade.md +32 -0
  228. package/skills/ce-compound/references/write-flow.md +36 -0
  229. package/skills/ce-compound/references/yaml-schema.md +118 -0
  230. package/skills/ce-compound/scripts/session-history/discover-sessions.sh +130 -0
  231. package/skills/ce-compound/scripts/session-history/extract-errors.py +254 -0
  232. package/skills/ce-compound/scripts/session-history/extract-metadata.py +456 -0
  233. package/skills/ce-compound/scripts/session-history/extract-skeleton.py +575 -0
  234. package/skills/ce-compound/scripts/validate-doc-claims.py +346 -0
  235. package/skills/ce-compound/scripts/validate-frontmatter.py +137 -0
  236. package/skills/ce-ideate/SKILL.md +402 -0
  237. package/skills/ce-ideate/references/agents/issue-intelligence-analyst.md +200 -0
  238. package/skills/ce-ideate/references/agents/learnings-researcher.md +247 -0
  239. package/skills/ce-ideate/references/agents/slack-researcher.md +127 -0
  240. package/skills/ce-ideate/references/agents/web-researcher.md +121 -0
  241. package/skills/ce-ideate/references/divergent-ideation.md +89 -0
  242. package/skills/ce-ideate/references/html-rendering.md +634 -0
  243. package/skills/ce-ideate/references/ideation-sections.md +191 -0
  244. package/skills/ce-ideate/references/markdown-rendering.md +238 -0
  245. package/skills/ce-ideate/references/post-ideation-workflow.md +167 -0
  246. package/skills/ce-ideate/references/universal-ideation.md +107 -0
  247. package/skills/ce-ideate/references/web-research-cache.md +56 -0
  248. package/skills/ce-plan/SKILL.md +137 -0
  249. package/skills/ce-plan/references/agents/agent-native-planning-strategist.md +62 -0
  250. package/skills/ce-plan/references/agents/architecture-strategist.md +46 -0
  251. package/skills/ce-plan/references/agents/best-practices-researcher.md +114 -0
  252. package/skills/ce-plan/references/agents/data-integrity-guardian.md +68 -0
  253. package/skills/ce-plan/references/agents/data-migration-reviewer.md +103 -0
  254. package/skills/ce-plan/references/agents/deployment-verification-agent.md +157 -0
  255. package/skills/ce-plan/references/agents/framework-docs-researcher.md +93 -0
  256. package/skills/ce-plan/references/agents/git-history-analyzer.md +40 -0
  257. package/skills/ce-plan/references/agents/learnings-researcher.md +247 -0
  258. package/skills/ce-plan/references/agents/pattern-recognition-specialist.md +55 -0
  259. package/skills/ce-plan/references/agents/performance-oracle.md +108 -0
  260. package/skills/ce-plan/references/agents/repo-research-analyst.md +258 -0
  261. package/skills/ce-plan/references/agents/security-sentinel.md +91 -0
  262. package/skills/ce-plan/references/agents/slack-researcher.md +127 -0
  263. package/skills/ce-plan/references/agents/spec-flow-analyzer.md +80 -0
  264. package/skills/ce-plan/references/agents/web-researcher.md +121 -0
  265. package/skills/ce-plan/references/approach-altitude.md +55 -0
  266. package/skills/ce-plan/references/change-splitting.md +65 -0
  267. package/skills/ce-plan/references/completion-contract.md +33 -0
  268. package/skills/ce-plan/references/core-principles.md +40 -0
  269. package/skills/ce-plan/references/deepening-workflow.md +263 -0
  270. package/skills/ce-plan/references/dependency-graph.md +36 -0
  271. package/skills/ce-plan/references/html-rendering.md +634 -0
  272. package/skills/ce-plan/references/intake-routing.md +189 -0
  273. package/skills/ce-plan/references/markdown-rendering.md +238 -0
  274. package/skills/ce-plan/references/plan-handoff.md +150 -0
  275. package/skills/ce-plan/references/plan-sections.md +427 -0
  276. package/skills/ce-plan/references/plan-structure.md +120 -0
  277. package/skills/ce-plan/references/planning-modes.md +69 -0
  278. package/skills/ce-plan/references/reasoning-elevation.md +63 -0
  279. package/skills/ce-plan/references/research-workflow.md +165 -0
  280. package/skills/ce-plan/references/review-and-write.md +127 -0
  281. package/skills/ce-plan/references/settled-decisions.md +45 -0
  282. package/skills/ce-plan/references/synthesis-summary.md +418 -0
  283. package/skills/ce-plan/references/universal-planning.md +168 -0
  284. package/skills/ce-proof/SKILL.md +346 -0
  285. package/skills/ce-strategy/SKILL.md +97 -0
  286. package/skills/ce-strategy/references/interview.md +143 -0
  287. package/skills/ce-strategy/references/strategy-template.md +89 -0
  288. package/skills/code-reviewer/SKILL.md +84 -0
  289. package/skills/code-reviewer/code-reviewer-prompt.md +195 -0
  290. package/skills/contract-builder/SKILL.md +72 -0
  291. package/skills/design-system/SKILL.md +75 -0
  292. package/skills/design-system/references/agents/design-system-architect.md +138 -0
  293. package/skills/design-system/references/creation-flow.md +170 -0
  294. package/skills/design-system/references/preview-template.html +319 -0
  295. package/skills/design-system/references/token-derivation.md +115 -0
  296. package/skills/design-system/references/variant-schema.md +60 -0
  297. package/skills/e2e/SKILL.md +56 -0
  298. package/skills/e2e/references/test-verifier.md +40 -0
  299. package/skills/need-explorer/SKILL.md +79 -0
  300. package/skills/prototype/SKILL.md +98 -0
  301. package/skills/prototype/references/agents/design-system-architect.md +122 -0
  302. package/skills/prototype/references/checklist.md +82 -0
  303. package/skills/prototype/references/craft/accessibility-baseline.md +71 -0
  304. package/skills/prototype/references/craft/anti-ai-slop.md +87 -0
  305. package/skills/prototype/references/craft/laws-of-ux.md +60 -0
  306. package/skills/prototype/references/craft/state-coverage.md +81 -0
  307. package/skills/prototype/references/craft/typography-hierarchy.md +50 -0
  308. package/skills/prototype/references/layouts.md +223 -0
  309. package/skills/prototype/references/orchestration-flow.md +101 -0
  310. package/skills/prototype/references/prototype-scaffold/assets/design-tokens.css +19 -0
  311. package/skills/prototype/references/prototype-scaffold/components/button.html +3 -0
  312. package/skills/prototype/references/prototype-scaffold/design-system.md +7 -0
  313. package/skills/prototype/references/prototype-scaffold/flow.md +11 -0
  314. package/skills/prototype/references/prototype-scaffold/index.html +20 -0
  315. package/skills/prototype/references/prototype-scaffold/pages/index.html +11 -0
  316. package/skills/prototype/references/template.html +396 -0
  317. package/skills/release-archivist/SKILL.md +166 -0
  318. package/skills/release-archivist/references/closing-procedures.md +81 -0
  319. package/skills/session-handoff/SKILL.md +110 -0
  320. package/skills/session-handoff/references/context-extraction.md +70 -0
  321. package/skills/session-handoff/references/handoff-template.md +90 -0
  322. package/skills/session-handoff/references/skill-recommendation.md +43 -0
  323. package/skills/spec-merger/SKILL.md +66 -0
  324. package/skills/spec-writer/SKILL.md +149 -0
  325. package/skills/workflow-bootstrap/SKILL.md +148 -0
  326. package/skills/workflow-bootstrap/references/agents/codebase-recon-analyst.md +121 -0
  327. package/skills/workflow-bootstrap/references/b1-reconnaissance.md +80 -0
  328. package/skills/workflow-bootstrap/scripts/recon-probe.sh +328 -0
  329. package/skills/workflow-feedback/SKILL.md +120 -0
  330. package/skills/workflow-feedback/references/category-guide.md +121 -0
  331. package/skills/workflow-feedback/references/feedback-template.md +73 -0
  332. package/skills/workflow-feedback/references/review-mode.md +92 -0
  333. package/skills/workflow-orchestrator/SKILL.md +94 -0
  334. package/skills/workflow-orchestrator/references/feedback-loops.md +56 -0
  335. package/skills/workflow-orchestrator/references/s1-path-router.md +81 -0
  336. package/skills/workflow-orchestrator/references/s2-prd-prototype-loop.md +96 -0
  337. package/skills/workflow-orchestrator/references/s3-plan-pipeline.md +50 -0
  338. package/skills/workflow-orchestrator/references/s4-split-validate.md +108 -0
  339. package/skills/workflow-orchestrator/references/s5-monitoring.md +61 -0
  340. package/skills/workflow-orchestrator/references/state-model.md +185 -0
  341. package/skills/workflow-start/SKILL.md +147 -0
  342. package/skills/workflow-start/references/routing-rules.md +155 -0
  343. package/src/index.ts +16 -0
  344. package/src/parsing/change-parser.ts +79 -0
  345. package/src/parsing/requirement-blocks.ts +244 -0
  346. package/src/schema/base.ts +8 -0
  347. package/src/schema/change.ts +29 -0
  348. package/src/schema/index.ts +3 -0
  349. package/src/schema/spec.ts +12 -0
  350. package/src/validation/constants.ts +53 -0
  351. package/src/validation/tokenizer.ts +180 -0
  352. package/src/validation/types.ts +47 -0
  353. package/src/validation/validator.ts +552 -0
  354. package/templates/abandonment-summary.md +29 -0
  355. package/templates/design.md +37 -0
  356. package/templates/execution-contract.md +99 -0
  357. package/templates/plan.md +86 -0
  358. package/templates/prd.md +468 -0
  359. package/templates/proposal.md +37 -0
  360. package/templates/spec.md +31 -0
  361. package/templates/tasks.md +47 -0
  362. package/tests/e2e.test.mjs +266 -0
  363. package/tests/lib/cmd-audit.test.mjs +202 -0
  364. package/tests/lib/cmd-checkpoint.test.mjs +98 -0
  365. package/tests/lib/cmd-config.test.mjs +101 -0
  366. package/tests/lib/cmd-doctor.test.mjs +450 -0
  367. package/tests/lib/cmd-execution.test.mjs +647 -0
  368. package/tests/lib/cmd-handoff.test.mjs +137 -0
  369. package/tests/lib/cmd-inject.test.mjs +218 -0
  370. package/tests/lib/cmd-install-workbuddy.test.mjs +113 -0
  371. package/tests/lib/cmd-install-zcode.test.mjs +42 -0
  372. package/tests/lib/cmd-isolate.test.mjs +68 -0
  373. package/tests/lib/cmd-list.test.mjs +127 -0
  374. package/tests/lib/cmd-runtime.test.mjs +83 -0
  375. package/tests/lib/cmd-state-missing.test.mjs +65 -0
  376. package/tests/lib/cmd-state.test.mjs +365 -0
  377. package/tests/lib/cmd-sync-paths.test.mjs +84 -0
  378. package/tests/lib/cmd-validate-paths.test.mjs +90 -0
  379. package/tests/lib/config-loader.test.mjs +175 -0
  380. package/tests/lib/ensure-branch.test.mjs +59 -0
  381. package/tests/lib/execution-control-plane.test.mjs +168 -0
  382. package/tests/lib/execution-plan.test.mjs +474 -0
  383. package/tests/lib/guard-specs-merged.test.mjs +108 -0
  384. package/tests/lib/guard-tests-passing.test.mjs +112 -0
  385. package/tests/lib/guard-transitions.test.mjs +262 -0
  386. package/tests/lib/guard.test.mjs +611 -0
  387. package/tests/lib/hash.test.mjs +138 -0
  388. package/tests/lib/infer-workflow.test.mjs +161 -0
  389. package/tests/lib/install-git-hooks.test.mjs +20 -0
  390. package/tests/lib/marketplace-release-docs.test.mjs +31 -0
  391. package/tests/lib/minimality-discipline.test.mjs +37 -0
  392. package/tests/lib/model-profiles-docs.test.mjs +33 -0
  393. package/tests/lib/node20-compatibility.test.mjs +73 -0
  394. package/tests/lib/node20-test-entry.test.mjs +17 -0
  395. package/tests/lib/platform-runtime-distribution.test.mjs +150 -0
  396. package/tests/lib/raw-mode-smoke.test.mjs +42 -0
  397. package/tests/lib/sdd-overlay.test.mjs +118 -0
  398. package/tests/lib/spec-paths.test.mjs +80 -0
  399. package/tests/lib/state-loader.test.mjs +251 -0
  400. package/tests/lib/token-baseline.test.mjs +72 -0
  401. package/tests/lib/token-rules.test.mjs +94 -0
  402. package/tests/lib/verify-marketplace-release.test.mjs +128 -0
  403. package/tests/tsconfig.json +12 -0
  404. package/token-baseline.json +95 -0
  405. package/tsconfig.json +14 -0
@@ -0,0 +1,92 @@
1
+ # 回顾模式:从会话中自动识别问题信号
2
+
3
+ > 本文件定义 workflow-feedback 回顾模式的问题识别规则。
4
+ > 回顾模式在无 argument 或由 release-archivist 联动时触发。
5
+
6
+ ## 触发条件
7
+
8
+ - 用户调用 `/workflow-feedback` 但未传入 argument
9
+ - release-archivist 收尾时建议触发
10
+ - 用户说"回顾一下这次工作流"、"有什么问题吗"
11
+
12
+ ## 问题信号识别
13
+
14
+ 扫描当前会话,识别以下信号:
15
+
16
+ ### 信号 1:skill 被纠正
17
+
18
+ **特征**:skill 被调用后,用户手动纠正了方向。
19
+
20
+ **识别模式**:
21
+ - 用户说"不是这个"、"我要的是 XX 不是 YY"
22
+ - skill 产出被用户大幅修改
23
+ - 用户取消了 skill 的执行
24
+
25
+ **映射分类**:`skill-trigger` 或 `ux-interaction`
26
+
27
+ ### 信号 2:用户不满表达
28
+
29
+ **特征**:用户表达了对工作流的不满。
30
+
31
+ **识别模式**:
32
+ - "不对"、"不是这样"、"重来"
33
+ - "怎么又问这个"、"之前不是说过了吗"
34
+ - "太麻烦了"、"能不能简单点"
35
+
36
+ **映射分类**:根据不满对象判定(skill/流程/交互)
37
+
38
+ ### 信号 3:状态回退
39
+
40
+ **特征**:发生了 mandatory rewind 或阶段回退。
41
+
42
+ **识别模式**:
43
+ - 状态从 executing 回到 specifying/bridging
44
+ - orchestrator 阶段从 S3 回到 S2
45
+ - replan_log 有新增条目
46
+
47
+ **映射分类**:`sop-flow`(回退本身可能是正常的,但频繁回退说明流程有问题)
48
+
49
+ ### 信号 4:重复确认
50
+
51
+ **特征**:同一事项被确认多次。
52
+
53
+ **识别模式**:
54
+ - 用户回答了相同/相似的问题 2 次以上
55
+ - 模型在不同阶段问了同一个决策
56
+
57
+ **映射分类**:`ux-interaction`
58
+
59
+ ### 信号 5:工作流中断/跳过
60
+
61
+ **特征**:工作流的某个步骤被跳过或中断。
62
+
63
+ **识别模式**:
64
+ - 用户说"跳过这步"、"先不管这个"
65
+ - 某个阶段被标记为 skipped
66
+ - 用户直接做了下一步该做的事
67
+
68
+ **映射分类**:`sop-flow`(跳过可能说明该步骤不必要或位置不对)
69
+
70
+ ## 回顾输出格式
71
+
72
+ 回顾完成后,按以下格式汇总:
73
+
74
+ ```
75
+ 本次会话工作流回顾:
76
+ - 检测到 N 个问题信号
77
+ - 按分类汇总:
78
+ - skill-trigger: X 个
79
+ - sop-flow: Y 个
80
+ - ...
81
+ - 建议记录的问题(按 severity 排序):
82
+ 1. [P?] <问题标题> — <分类>
83
+ 2. ...
84
+ - 是否要为这些问题生成 feedback 记录?
85
+ ```
86
+
87
+ ## 注意事项
88
+
89
+ 1. **回顾不等于记录**:回顾模式先汇总信号,询问用户后再逐条生成记录
90
+ 2. **误报容忍**:宁可多识别再让用户筛选,不要漏掉真正的问题
91
+ 3. **不记录业务问题**:只关注工作流本身的问题,业务代码 bug 不算
92
+ 4. **上下文限制**:只能分析当前会话的内容,无法跨会话分析
@@ -0,0 +1,94 @@
1
+ ---
2
+ name: workflow-orchestrator
3
+ description: >-
4
+ 产品级工作流编排器,产品级新需求的首选入口。从模糊需求到可执行 change
5
+ 的全流程编排:需求澄清、PRD 产出(含原型验证)、实施计划、change 拆分
6
+ 与分发。作为产品级唯一入口,内部路由到各阶段 skill。
7
+ 不适用于:已有 change 内的操作(用 workflow-start)、独立工具操作
8
+ (ce-ideate/ce-strategy/prototype 等)、纯架构设计(用 architecture-design)。
9
+ ---
10
+
11
+ # Workflow Orchestrator(产品级工作流编排器)
12
+
13
+ 从模糊需求到可执行 change 的产品级全流程编排:路径路由 → PRD+原型循环 → 计划 → 拆分验证 → 分发 → 监控。
14
+
15
+ ## 定位
16
+
17
+ | 层级 | 编排器 | 管辖范围 |
18
+ |------|--------|---------|
19
+ | 产品级 | **workflow-orchestrator**(本 skill) | 路径路由 → PRD+原型循环 → 计划 → 拆分验证 → 分发 → 监控 |
20
+ | 变更级 | workflow-start(不变) | exploring → ... → closing(8 态状态机) |
21
+
22
+ **分层原则**:本 skill 管「做什么、什么顺序」(产品级策略),workflow-start 管「怎么做」(变更级执行)。二者通过 change 目录 + `.team-flow.yaml` 衔接。
23
+
24
+ **设计哲学(v0.7)**:编排层**只编排**(状态判断、路由、阶段转换、用户确认),执行委托 subagent/会话 skill;从「固定管道」升级为「默认路径 + 任意时刻可重规划」;PRD vN = 一次迭代版本,迭代内变更不升版。
25
+
26
+ ## Use This Skill When
27
+
28
+ - 用户提出新的产品级需求:「我有个想法」「做一个 XX 功能」「从头开始」、模糊需求
29
+ - 需要编排多个阶段(brainstorm → plan → 拆 change)或管理 PRD 版本与 change 拆分策略
30
+ - 续版需求(已有 PRD vN 要加功能)、重新计划、继续执行已拆分的 changes
31
+
32
+ Do NOT invoke for:
33
+ - 已在 team-flow change 内的流转控制(用 `/workflow-start`)
34
+ - 单一 change 的实施(用 `/build-executor`)
35
+ - 独立工具操作(`/ce-ideate`、`/ce-strategy`、`/prototype`、`/architecture-design` 等)
36
+
37
+ ## Execution Flow(S1-S5)
38
+
39
+ ### S1: 路径路由器
40
+ **先做需求选择**(v0.15.0 多需求):读 `.team-flow/registry.yaml`,确定 `active_requirement`(多需求则询问操作哪个/新建)。再判断 7 种入口路径之一;检查 baseline.md / CONCEPTS.md 并注入;复利注入(INDEX.md top-5)。**路由结果必须向用户显式确认**(路由是建议非决定)。详见 `references/s1-path-router.md`。
41
+
42
+ ### S2: PRD + 原型阶段
43
+ 调用 `/ce-brainstorm`(mode: orchestrated)产出 PRD 草稿;**冻结前派 `prd-completeness-reviewer` 子代理做 PRD 完整性评审**(v0.15.0,管"说得全不全");原型循环由编排层直接编排(prototype skill 内部编排产出 → prototype-reviewer 自动评审 → 人工评审 → 冻结);冻结语义为 `frozen_downstream`(迭代内变更不升版)。反馈环路检查点:scope 是否合理。详见 `references/s2-prd-prototype-loop.md`。
44
+
45
+ ### S3: 计划阶段
46
+ **入口一次性问定计划模式**(业务/一人公司),调用 `/ce-plan`(`pipeline_mode: orchestrator` + `plan_mode: business|solo`,跳过仪式开销、保留 repo research + change splitting + 依赖 DAG + 技术方向)产出 `prd/vN/plan.md`。plan 只到产品级策略 + 高阶技术设计,**不含接口清单**(属各 change 的 spec-writer)。反馈环路检查点:plan 是否暴露 PRD scope 问题(是→回退 S2)。详见 `references/s3-plan-pipeline.md`。
47
+
48
+ ### S4: 拆分验证与分发
49
+ change-split-auditor 审计拆分质量(**必选门禁**,粒度/DAG 无环/并行策略/AC 预分配,PASS 后方可创建 change;FAIL → 回退 S3 调整后重新审计);创建 change 目录(项目根 `changes/<name>/`)+ `.team-flow.yaml`;写入 change_dag;按依赖顺序分发。反馈环路检查点:依赖图是否可执行(否→回退 S3)。详见 `references/s4-split-validate.md`。
50
+
51
+ ### S5: 全局监控(change ≥ 2 必选)
52
+ 跟踪各 change 进度;cross-change-consistency-checker 检测跨 change 冲突;change closing 时复利晋升;必要时触发动态重规划。详见 `references/s5-monitoring.md`。
53
+
54
+ ## 反馈环路(保守策略:只允许相邻回退)
55
+
56
+ - **S3 → S2**:plan 暴露 PRD scope 问题 → PRD vN 内修订(非升版)+ 变更履历,plan.md 归档为 .revN
57
+ - **S4 → S3**:依赖图不可执行/粒度不合理 → 调整拆分策略,已建 change 目录保留增量调整
58
+ - **S5 → S4**:跨 change 冲突需重新拆分 → 按在途 change 红/绿/灰区处置
59
+
60
+ 振荡上限:S2↔S3 回退 ≤2 次,超过升级人工介入。详见 `references/feedback-loops.md`。
61
+
62
+ ## 增量入口(S1 路由的 7 种路径)
63
+
64
+ | 入口 | 条件 | 跳转 |
65
+ |------|------|------|
66
+ | 全新需求 | 无 PRD,需求模糊 | → S2 |
67
+ | 续版需求 | 有 PRD vN,要加功能 | → S2(vN+1) |
68
+ | 重新计划 | PRD 已冻结,plan 需调整 | → S3 |
69
+ | 继续执行 | changes 已拆分,继续下一个 | → S4/S5(先输出状态恢复简报) |
70
+ | 单 change 快速通道 | 需求极清晰、无 UI、无跨模块依赖的极小变更 | → 直接建 change → workflow-start |
71
+ | 紧急修复(Hotfix) | bug/生产问题,最小范围修复 | → 建 change(type: hotfix)→ workflow-start |
72
+ | **原型补跑/重跑**(v0.20.0) | PRD 已冻结(`frozen_downstream`)∧ `prototype/` 缺失/为空,或用户显式要求重做原型 | → 部分重入 S2 原型循环(S2 步骤 2→3→4);PRD 不动,保留有效 S3/S4,闭环后恢复原 phase |
73
+
74
+ ## 状态模型
75
+
76
+ **多需求并行(v0.15.0)**:`.team-flow/registry.yaml`(需求注册表 + `active_requirement` 活跃指针)+ 每需求一份 `.team-flow/requirements/<req-id>/orchestrator.yaml`(持久化记忆 / checkpointer)。各需求状态天然隔离,支持并行。单需求 orchestrator.yaml 含 requirement_id / workflow_phase / phases / replan_log / change_dag / prd_version。双层冻结(frozen_downstream / frozen_absolute),frozen 以 PRD frontmatter 为单一真相源。迁移兼容:检测旧 `<root>/.workflow-orchestrator.yaml` 自动迁入。动态重规划(三级意图分类器 + 红/绿/灰区 + DP-R 确认)见 `references/state-model.md`。
77
+
78
+ ## Guardrails
79
+
80
+ - **不替代 workflow-start**:本 skill 不管理 8 态状态机流转
81
+ - **不直接实施代码**:只编排,实施由 build-executor 执行
82
+ - **后台子代理等待范式(v0.20.0)**:派发后台子代理(prototype-builder / reviewer / architecture-design 等长任务)后**依赖完成通知(`<task-notification>`)再行动**,**禁止反复 `TaskOutput(block=true)` 阻塞轮询**——其对长任务超时返回会倾泻完整子代理 transcript,撑爆主上下文、抵消"只编排"的轻上下文优势。长任务派发后可先处理可并行工作或结束本轮等待通知,**不空转死等**;确需中途观察用 `block=false` 轻量查询(仍返转录,尽量不用)。(设计 §22.2)
83
+ - **不跳过 PRD 冻结**:PRD 必须经原型循环(或显式跳过)后才能进 ce-plan
84
+ - **不跳过拆分审计**:change-split-auditor 审计 verdict = PASS 是创建 change 脚手架的前置条件(S4 必选门禁)
85
+ - **路由是建议非决定**:S1 路由判断必须用户确认;重规划必须 DP-R 阻塞确认
86
+ - **回退必写 replan_log**:active → pending 回退必须记录;受影响制品归档为 .revN,重入不读旧制品
87
+ - **不阻断流程**:所有复利操作为 advisory 级,INDEX.md 读取失败时静默跳过
88
+
89
+ ## Output Standard
90
+
91
+ 每次交互结束时说明:
92
+ 1. 当前所处阶段(S1-S5)与 `.team-flow/requirements/<req-id>/orchestrator.yaml` 状态
93
+ 2. 已产出的制品(PRD/原型/plan/changes)
94
+ 3. 下一步建议(调用哪个 skill / 进入哪个 change)
@@ -0,0 +1,56 @@
1
+ # 反馈环路详细规则(v0.7 新增)
2
+
3
+ > 核心原则:PRD vN = 一次迭代版本。迭代内的调整通过 vN 内修订 + 变更履历管理,**不升版**。只有新的用户故事/迭代才触发 vN+1。设计依据:设计增强方案 v0.7 §17.3。
4
+
5
+ ## 回退规则(保守策略:只允许相邻回退)
6
+
7
+ | 回退路径 | 触发条件 | 操作 | 制品处置 |
8
+ |---------|---------|------|---------|
9
+ | **S3 → S2** | plan 暴露 PRD scope 问题 | PRD vN 内修订 + 记录变更履历(临时解除 frozen_downstream) | plan.md → plan.md.revN(归档),S3 重入时从零产出 |
10
+ | **S4 → S3** | 依赖图不可执行/粒度不合理 | 调整拆分策略 | 已创建的 change 目录保留,重新拆分后增量调整 |
11
+ | **S5 → S4** | 跨 change 冲突需要重新拆分 | 重新评估拆分方案 | 见下方「在途 change 处置」 |
12
+
13
+ ## 在途 change 处置(S5 → S4,A3)
14
+
15
+ S5→S4 回退时,按在途 change 状态分区处置(前置条件):
16
+
17
+ | 区域 | 条件 | 处置 |
18
+ |------|------|------|
19
+ | **绿区** | 所有 change 未 executing | 可直接重新拆分 |
20
+ | **灰区** | 有 change executing | 逐个确认:暂停 / 废弃 / 保持 |
21
+ | **红区** | 已 closing/closed | 只能新 change 修正(hotfix 路径) |
22
+
23
+ 在途 change 的处置决策记入 `replan_log`。已 closing/closed 的 change 其 delta 已合并,只能通过新 change 修正(hotfix 路径)。
24
+
25
+ ## 振荡上限(A11)
26
+
27
+ - **S2↔S3 回退 ≤ 2 次**。超过后升级为人工介入,用户三选一:
28
+ 1. 继续修订
29
+ 2. 强制 vN+1 升版
30
+ 3. 放弃
31
+
32
+ ## 制品处置规则(A10)
33
+
34
+ - 回退时受影响制品重命名为 `.revN`(保留审计轨迹)
35
+ - 重新进入阶段**不读取上一轮制品**,只读取修订后的上游制品,避免旧内容锚定
36
+
37
+ ## 变更履历格式
38
+
39
+ 记录在 PRD 文档的「决策与变更履历」章节:
40
+
41
+ ```markdown
42
+ ### 决策与变更履历
43
+ | 时间 | 触发阶段 | 变更内容 | 原因 | 影响范围 |
44
+ |------|---------|---------|------|---------|
45
+ | 2026-07-24 | S3→S2 | 砍掉功能X | plan 分析发现技术不可行 | §7 功能清单、§8 处理说明 |
46
+ ```
47
+
48
+ ## 与双层冻结的关系
49
+
50
+ - S3→S2 回退 = **临时解除 frozen_downstream**,S2 重新完成后恢复
51
+ - 若 PRD 处于 `frozen_absolute`(用户显式确认或 vN+1 已启动),任何修改必须升版 vN+1,**不允许 vN 内修订**
52
+ - frozen 状态以 `prd/vN/prd.md` frontmatter 为单一真相源。详见 state-model.md「双层冻结」
53
+
54
+ ## 复利集成
55
+
56
+ 每次阶段回退触发工作流模式复利捕获(`type: workflow_pattern`,`pattern_kind` 视情况为 reorder / change-split-adjust 等)。详见 state-model.md「工作流模式复利 L2」。
@@ -0,0 +1,81 @@
1
+ # S1 路径路由器(v0.7 重写)
2
+
3
+ > 原 v0.5「需求接收」。S1 是 orchestrator 的唯一入口,负责把任意时刻的用户输入路由到正确的阶段。设计依据:设计增强方案 v0.7 §17.2 / §17.4 / §17.9.1。
4
+
5
+ ## 职责边界
6
+
7
+ S1 只做编排动作(需求选择、存在性检查、路径判断、阻塞式用户确认),上下文简报组装委托 `kickoff-context-assembler`(种子提示,建议做)。S1 不产出任何业务制品。
8
+
9
+ ## 需求选择(v0.15.0 新增,多需求并行第一步)
10
+
11
+ 读 `.team-flow/registry.yaml`:
12
+ - **无注册表 / 无需求** → 新建需求:询问需求短码(`<req-id>`)与标题,创建 `.team-flow/requirements/<req-id>/orchestrator.yaml` + 登记 registry,设为 `active_requirement`。
13
+ - **单个需求** → 直接采用为活跃需求。
14
+ - **多个需求** → 用阻塞问题工具询问 LT 操作哪个(列出各需求 title/phase/prd_version),或选择「新建需求」;选中者设为 `active_requirement`。
15
+
16
+ 后续阶段读写的 `orchestrator.yaml` 一律指 `active_requirement` 对应的那份。迁移兼容:检测到旧 `<root>/.workflow-orchestrator.yaml` → 自动迁入 `.team-flow/requirements/<req-id>/orchestrator.yaml` 并登记 registry(一次性,提示用户)。
17
+
18
+ ## 7 种入口路径
19
+
20
+ | 入口 | 判断条件 | 跳转 | 说明 |
21
+ |------|---------|------|------|
22
+ | **全新需求** | 无现有 PRD,需求模糊 | → S2 | 完整流程 |
23
+ | **续版需求** | 有 PRD vN,用户要加功能 | → S2(PRD vN+1) | 新版本迭代 |
24
+ | **重新计划** | PRD 已冻结,plan 需调整 | → S3 | 跳过 brainstorm |
25
+ | **继续执行** | changes 已拆分,继续下一个 | → S4/S5 | 先输出状态恢复简报,用户确认后继续 |
26
+ | **单 change 快速通道** | 需求极清晰,无需 PRD(仅限单一功能点、无 UI、无跨模块依赖的极小变更) | → 直接创建 change → workflow-start | 最轻量路径,无 PRD 锚点,**不可触发 S3→S2 回退** |
27
+ | **紧急修复(Hotfix)** | bug/生产问题,需最小范围修复 | → 直接创建 change(type: hotfix,注入 bug 描述替代 PRD)→ workflow-start | closing 时强制补录复利 |
28
+ | **原型补跑/重跑**(v0.20.0) | PRD 已冻结(`frozen_downstream`)∧ `prototype/` 缺失/为空,或用户显式要求重做/重跑原型 | → 部分重入 S2 原型循环(S2 步骤 2→3→4) | PRD 不动,保留有效 S3 plan / S4 changes,闭环后恢复原 phase;`replan_log` 记往返 |
29
+
30
+ **判断顺序**:先查活跃需求的 `orchestrator.yaml`(`.team-flow/requirements/<req-id>/orchestrator.yaml`,如存在 → 多半是「继续执行」或「重新计划」),再查 `prd/` 目录(有 PRD → 「续版」候选),最后落到「全新需求」。Hotfix 由用户语义(bug/生产/紧急修复)显式触发。
31
+
32
+ **原型补跑/重跑判据(v0.20.0,与「重新计划」「续版」区分)**:当 PRD 已冻结时,按用户意图三分:
33
+ - 用户要**重做/补做原型**(「重新跑一遍原型」「prototype 没有了」「原型重做」)∧ `prototype/` 缺失/为空或用户明确不满现有原型 → **原型补跑/重跑**(部分重入 S2 原型循环,**PRD/plan/changes 不动**)。
34
+ - 用户要**调整 plan**(拆分/依赖/技术方向)→ **重新计划**(→ S3)。
35
+ - 用户要**加功能/扩 scope** → **续版需求**(→ S2,PRD vN+1 升版)。
36
+ - 判别关键:原型补跑**不升 PRD 版、不重做 plan**,仅原型循环重入;若原型循环暴露 scope 问题,再升级为 S3→S2 回退修订(脱离本路径)。
37
+
38
+ ## 项目基线与词汇检查
39
+
40
+ - 检查 `docs/architecture/baseline.md`:
41
+ - 存在 → 注入为架构上下文(技术栈/模块/数据模型),替代「从零侦察」
42
+ - 不存在 → advisory 提示「建议先运行 `/workflow-bootstrap` 建立项目基线」(**不阻断**)
43
+ - 检查 `CONCEPTS.md`:存在 → 注入领域词汇表
44
+
45
+ ## 复利注入(advisory 级)
46
+
47
+ 读取 `docs/solutions/INDEX.md`(如存在),过滤 `phase = prd OR cross-phase` 且 domain 匹配的经验,取 top-5(按 severity 降序)摘要注入为上下文约束。读取失败时静默跳过,不阻断。
48
+
49
+ 工作流模式复利(L2):S1 路由时额外注入历史 `workflow_pattern` top-3(confidence ≥ 0.5)。详见 state-model.md「工作流模式复利 L2」。
50
+
51
+ ## 路由结果显式呈现(强制,B3)
52
+
53
+ 路由判断后**必须**向用户确认,路由是建议而非决定:
54
+
55
+ ```
56
+ 我判断你当前处于【续版需求】路径(已有 PRD v1,将创建 v2),确认?[Y / 选择其他路径]
57
+ ```
58
+
59
+ 使用平台阻塞问题工具等待用户确认。用户可改判任意路径。
60
+
61
+ ## 「继续执行」状态恢复简报
62
+
63
+ 读取活跃需求的 `orchestrator.yaml` 的 `change_dag`,汇总各 change 状态(从各 change 的 `.team-flow.yaml` 同步;计划 v1.0.0 改名为 `.team-flow.yaml`),输出简报后由用户选择下一步(**支持跳过被阻塞的 change**):
64
+
65
+ ```
66
+ 状态恢复简报:
67
+ - change-1 [closed] 已完成
68
+ - change-2 [executing] 进行中(state: building)
69
+ - change-3 [pending] 依赖 change-2,未开始
70
+ 建议下一步:继续 change-2(/workflow-start)。确认?
71
+ ```
72
+
73
+ **幂等恢复**:通过 yaml + 制品实际存在性双重校验重建状态。yaml 与实际不一致时,以制品实际存在性为准并修正 yaml。详见 state-model.md。
74
+
75
+ ## 完成条件
76
+
77
+ - 活跃需求已确定(`active_requirement` 已设置,registry 已登记)
78
+ - 入口路径已确认(用户确认)
79
+ - baseline/CONCEPTS 已注入(或 advisory 提示)
80
+ - 复利经验已注入(或静默跳过)
81
+ - 活跃需求的 `orchestrator.yaml`(`.team-flow/requirements/<req-id>/orchestrator.yaml`)已初始化/更新 `workflow_phase` 与 S1 阶段状态
@@ -0,0 +1,96 @@
1
+ # S2 PRD + 原型阶段(v0.7 重写,原型循环上提)
2
+
3
+ > v0.7 关键变更:原型循环由 orchestrator **直接编排**(思路 B),不再藏在 ce-brainstorm 内部。设计依据:设计增强方案 v0.7 §17.2 / §17.8 / §17.10。
4
+
5
+ ## 编排层 vs 执行层
6
+
7
+ | 编排层(orchestrator 自己做) | 执行层(委托) |
8
+ |------------------------------|---------------|
9
+ | 调用 ce-brainstorm(传路径) | PRD/原型产出(会话级 skill) |
10
+ | 原型触发判断 | 原型自动评审(`prototype-reviewer` agent) |
11
+ | 循环控制(verdict 路由、≤3 轮) | 复利时刻检测(`compound-moment-detector`,可选) |
12
+ | frozen 确认 | — |
13
+ | 人工评审阻塞确认 | — |
14
+
15
+ ## 步骤
16
+
17
+ ### 1. 产出 PRD 草稿
18
+
19
+ 调用 `/ce-brainstorm`,**显式传入** `mode: orchestrated`(B6 跨 skill 集成规约:用显式入参,禁止语义推断)。被 orchestrator 调用时 ce-brainstorm 跳过其内部 Phase 3.5 原型循环(循环归编排层),直接调用时(standalone)保留。
20
+
21
+ > **阶段后压缩协议(A4)**:ce-brainstorm 冻结 PRD 后,编排层主动触发 compact,只保留 `prd/vN/prd.md` 路径与 frozen 状态,丢弃过程对话。会话级 skill 的过程对话会进入编排层上下文窗口,必须压缩。
22
+
23
+ ### 2. 判断是否需要原型
24
+
25
+ - 需要(涉及 UI/交互/页面)→ 进入原型循环
26
+ - 不需要(纯后端/无 UI)→ PRD 直接冻结,跳到步骤 5
27
+
28
+ ### 3. 原型循环(编排层控制)
29
+
30
+ ```
31
+ 调用 prototype skill 产出原型
32
+ → 自动评审(prototype-reviewer agent,独立上下文)
33
+ → 输出一致性报告(编排层落盘到 prd/vN/prototype-auto-review.md)
34
+ → FAIL(Critical > 0)→ 修正 → 重新自动评审(≤3 轮)
35
+ → PASS_WITH_WARNINGS → 警告项交人工裁定
36
+ → PASS → 进入人工评审
37
+ → 人工评审(阻塞确认,聚焦:美观/体验/品牌/信息密度)
38
+ → 通过 → 冻结
39
+ → 不通过 → 修正 → 回自动评审
40
+ ```
41
+
42
+ **自动评审 6 维度**(详见「原型自动评审」小节):D1 页面完整性 / D2 功能覆盖 / D3 字段一致性 / D4 导航一致性 / D5 术语一致性 / D6 状态覆盖。
43
+
44
+ **收敛检测**:连续两轮不一致项集合无缩小(修正无效/误报死循环)→ 立即转人工,不等满 3 轮。
45
+
46
+ **人工介入 = 编排层阻塞确认**(非 subagent,因 subagent 不能 AskUserQuestion),呈现争议项 + 选项(接受现状 / 指定修正方向 / 升版 / 放弃原型)。
47
+
48
+ ### 4. 冻结
49
+
50
+ 设置 `frozen_downstream`(见 state-model.md「双层冻结」)。冻结后,**迭代内变更不升版**,在 vN 内修订 + 记录决策/变更履历。
51
+
52
+ ### 5. 复利捕获
53
+
54
+ 检测可复利时刻(需求矛盾、原型返工、自动评审发现不一致并修正等)。每次自动评审发现不一致并修正后触发:
55
+
56
+ ```bash
57
+ npx --yes --package @xulthekl/team-flow@0.22.4 tf solutions capture --phase prd --domain <domain> --type pitfall --severity <sev> --summary "<summary>"
58
+ ```
59
+
60
+ ### 6. 反馈环路检查点
61
+
62
+ - PRD scope 是否合理?是否有明显遗漏?
63
+ - 如果 S3 发现 scope 问题,可回退到 S2 修订(**vN 内修订,非升版**)。详见 feedback-loops.md。
64
+
65
+ ## 原型自动评审(§17.10)
66
+
67
+ **实现形式**:独立 `prototype-reviewer` agent(只读审查员,对齐 code-reviewer 模式)。
68
+ - tools: Read, Bash, Grep, Glob(**无 Write**,报告写在 final response,编排层落盘)
69
+ - 独立上下文运行,未参与 PRD/原型产出(规避锚定效应)
70
+ - 两阶段检查:Pre-check(Bash 结构化预检,D1/D4 机械化)+ Deep-check(LLM 六维度语义对比,D2/D3/D5/D6 标注为「建议级,误报可被人工推翻」)
71
+
72
+ **6 维度检查**:
73
+
74
+ | 维度 | PRD 基准源 | 检查内容 | 严重级别 |
75
+ |------|-----------|---------|---------|
76
+ | D1 页面完整性 | §4 画面原型 | 每个页面是否有对应 HTML + 导航链接 | Critical |
77
+ | D2 功能覆盖 | §7 系统功能清单 | 每个 UI 功能是否有对应交互元素 | Critical |
78
+ | D3 字段一致性 | §8.4 功能模块 | 字段是否在表单中体现 | Important |
79
+ | D4 导航一致性 | §8.2.2 画面交互 | 页面跳转是否与 flow.md 一致 | Important |
80
+ | D5 术语一致性 | §6 业务术语 + CONCEPTS.md | 标签/术语是否一致 | Minor |
81
+ | D6 状态覆盖 | §8.2.3 异常状态 | 空/错误/加载状态是否体现 | Important(**可标 N/A**) |
82
+
83
+ > **D6 N/A 机制**:自包含 HTML 原型结构性无法体现的状态(如动态加载),允许标 N/A,不阻断。
84
+
85
+ **判定标准**(柔性化,B7):
86
+ - **PASS**:Critical=0 且 Important=0
87
+ - **PASS_WITH_WARNINGS**:Critical=0 且 Important>0(警告项交人工裁定,不阻断)
88
+ - **FAIL**:**仅当 Critical>0**(Important 误报不触发 FAIL,避免 D6 等维度误报卡死循环)
89
+
90
+ **自动评审不能检查的维度**(只能人工评审):美观度、交互体验、品牌一致性、响应式适配、动效合理性、信息密度、无障碍访问。
91
+
92
+ ## 完成条件
93
+
94
+ - `prd/vN/prd.md` frontmatter `frozen: true`(frozen_downstream 已设置)
95
+ - 如需原型:`prd/vN/prototype-auto-review.md` 已落盘且 verdict 为 PASS / PASS_WITH_WARNINGS(人工已裁定)
96
+ - `.team-flow/requirements/<req-id>/orchestrator.yaml` 中 S2 状态 = completed,`prd_version` 已记录
@@ -0,0 +1,50 @@
1
+ # S3 计划阶段(v0.7 修订,pipeline 快速路径)
2
+
3
+ > 调用 ce-plan 产出 `prd/vN/plan.md`,使用 `pipeline_mode: orchestrator` 减少仪式开销。设计依据:设计增强方案 v0.7 §17.2 / §17.5。
4
+
5
+ ## 调用方式
6
+
7
+ 调用 `/ce-plan`,传递:
8
+ - PRD 路径:`prd/vN/prd.md`
9
+ - 原型路径:`prototype/`(如存在)
10
+ - 显式参数:`pipeline_mode: orchestrator`
11
+
12
+ ## 保留 / 跳过清单
13
+
14
+ ce-plan 在 orchestrator pipeline 上下文中减少仪式开销,但**保留核心价值**:
15
+
16
+ | 保留(核心价值) | 跳过(仪式开销) |
17
+ |-----------------|-----------------|
18
+ | Phase 1 repo research(代码库侦察) | output format 解析(强制 md) |
19
+ | Phase 3 change splitting + 依赖 DAG | handoff 菜单(Proof/Issue/Browser) |
20
+ | 技术方向决策(一人公司模式) | confidence check 降级为 Lightweight |
21
+ | 风险与约束分析 | ce-doc-review 降级为 headless |
22
+ | 里程碑计划 | 独立调用时的 scoping synthesis 确认 |
23
+
24
+ ## plan.md 聚焦内容
25
+
26
+ - **Change 拆分方案**:每 change 的 scope + 依赖 + 优先级(C-ID 稳定编号)
27
+ - **Change 间依赖图(DAG)**
28
+ - **整体技术方向**(一人公司模式,避免各 change 各自为政)
29
+
30
+ ## S3 不可取消的理由(调研确认)
31
+
32
+ 1. **Change 拆分无替代源**:PRD 不包含 change 概念,S4 的输入只能来自 ce-plan
33
+ 2. **技术方向需全局视角**:避免各 change 的 spec-writer 各自为政
34
+ 3. **Repo Research 不可重复**:代码库侦察做一次,不能每个 change 重复 N 次
35
+
36
+ ## 复利
37
+
38
+ - **注入**:读取 `docs/solutions/INDEX.md`,过滤 `phase = plan OR cross-phase`,取 top-5 摘要
39
+ - **捕获**:检测可复利时刻(技术方向决策、拆分权衡等)
40
+
41
+ ## 反馈环路检查点
42
+
43
+ - plan 是否暴露了 PRD 的范围问题?
44
+ - **是** → 回退 S2,触发 PRD vN 内修订(记录变更原因)。详见 feedback-loops.md「S3 → S2」
45
+ - **否** → 进 S4
46
+
47
+ ## 完成条件
48
+
49
+ - `prd/vN/plan.md` 已产出,含 change 拆分 + 依赖 DAG + 技术方向
50
+ - `.team-flow/requirements/<req-id>/orchestrator.yaml` 中 S3 状态 = completed
@@ -0,0 +1,108 @@
1
+ # S4 拆分验证与分发(v0.7 重写,v0.17.0 审计必选)
2
+
3
+ > 原 v0.5「拆分与分发」。v0.7 新增拆分质量审计与并行策略。设计依据:设计增强方案 v0.7 §17.2 / §17.8。
4
+ > v0.17.0 变更:change-split-auditor 审计由隐含步骤升级为「必选门禁」,PASS 前不可创建 change 脚手架。change_dag 字段 `spec_dir` 更名为 `change_dir`,路径修正为 `changes/<change-name>/`。
5
+
6
+ ## 编排层 vs 执行层
7
+
8
+ | 编排层(orchestrator 自己做) | 执行层(委托) |
9
+ |------------------------------|---------------|
10
+ | 读 plan change 列表 | 拆分质量审计(`change-split-auditor` agent) |
11
+ | verdict 路由 | change 脚手架(`tf change scaffold`,建议新增 CLI) |
12
+ | 告知用户 | — |
13
+
14
+ ## 步骤
15
+
16
+ ### 1. 拆分质量审计(必选门禁,不可跳过)
17
+
18
+ 调用 `change-split-auditor` agent 对 `plan.md` 做拆分质量审计,输出审计报告(覆盖矩阵 / DAG 无环 / 粒度均衡 / 字段完整 / **拆分维度合规**)。质量自检清单:
19
+
20
+ **必选约束**:审计 verdict = PASS 是 Step 3(创建脚手架)的前置条件。
21
+ verdict = FAIL → 必须回退 S3 调整拆分后重新审计,不可绕过直接创建 change。
22
+
23
+ - **所有权粒度合规**(v0.9 根因判据,D5 硬门禁):每个 change 是否对应一个所有权自包含的架构设计单元;是否存在 ≥2 change 瓜分同一聚合/上下文/读模型/契约所有权(切碎 = FAIL);是否细到无设计单元可识别(FAIL);是否横跨多个无关节所有权单元(FAIL)
24
+ - **粒度合理性**:太大 → 实施困难;太小 → 管理开销(advisory,不单独 FAIL)
25
+ - **依赖 DAG**:是否有环、关键路径是否过长
26
+ - **并行策略建议**:哪些 change 可并行(同 parallel_group)、哪些必须串行
27
+ - **验收标准预分配**:从 PRD 功能清单映射到每个 change 的 AC(覆盖矩阵)——此映射将在 Step 3.5 落盘到 change-brief.md
28
+
29
+ ### 2. 反馈环路检查点
30
+
31
+ - 依赖图是否可执行?粒度是否合理?
32
+ - **否** → 回退 S3 调整拆分策略。详见 feedback-loops.md「S4 → S3」
33
+ - **是** → 分发
34
+
35
+ ### 3. 创建 change 脚手架
36
+
37
+ 按 plan 中的 change 拆分方案,为每个 change 创建目录并初始化状态文件:
38
+
39
+ ```bash
40
+ mkdir -p changes/<change-name>
41
+ npx --yes --package @xulthekl/team-flow@0.22.4 tf state init changes/<change-name>
42
+ ```
43
+
44
+ > ⚠️ **路径约束**:change 脚手架目录固定为项目根 `changes/<change-name>/`。
45
+ > 不要与 `specs/<cap>/`(change 内部行为规格目录)或 `architecture/`(change 内部架构设计目录)混淆。
46
+ > 不要放入 `.team-flow/`(仅存产品级编排状态)。
47
+
48
+ > 建议新增 `tf change scaffold` CLI 一次性完成目录创建 + state init + change_dag 写入(确定性脚本,无需 LLM 判断)。(规划中,尚未实现——v0.17.0 时仍用上方手动步骤)
49
+
50
+ ### 3.5 落盘 change-brief.md(v0.9 新增,产品级→变更级交接物)
51
+
52
+ > **设计意图**:S3/S4 已把每个 change 的 scope、AC、依赖、技术方向定稿,但这些信息此前只活在产品级 `prd/vN/plan.md`,变更层(workflow-start / need-explorer / spec-writer)读不到,导致变更层在 DP-0 重新询问意图、在 need-explorer 重新决策拆分——两层产物断链。本步骤把产品级决策投影到 change 目录内的 `change-brief.md`,作为**上游输入交接物**,让变更层可继承而非重做。
53
+
54
+ **职责边界(写死)**:auditor 是只读 agent,**只在审计报告里输出 Dim1 覆盖矩阵**;**落盘动作归 orchestrator 自己**(与 Step 4 写 change_dag 同属编排层自做,见上文「编排层 vs 执行层」表)。即:读取 auditor 报告 Dim1 矩阵 → orchestrator 写入 brief 的 AC 段。
55
+
56
+ 为每个已创建脚手架的 change 写 `changes/<change-name>/change-brief.md`(已存在则**覆盖更新**——防 S4→S3 回退调整后 brief 陈旧,呼应 SKILL.md「已建 change 目录保留增量调整」):
57
+
58
+ ```markdown
59
+ ---
60
+ upstream_source: orchestrator # orchestrator | manual | null
61
+ upstream_req_id: <req-id> # 对应 .team-flow/requirements/<req-id>/
62
+ upstream_plan_ref: prd/vN/plan.md # hotfix/快速通道为 null
63
+ upstream_change_id: C2 # 对应 change_dag.id
64
+ plan_hash: sha256:<plan.md 内容摘要> # 检测产品层改动后变更层未同步
65
+ ---
66
+ # Change Brief: <change-name>
67
+
68
+ ## Scope
69
+ <用户故事/功能模块级 scope 描述,与 plan.md 该 change 的 Scope 一致>
70
+
71
+ ## 约束
72
+ <来自 plan.md 的全局约束 / 该 change 的已知约束>
73
+
74
+ ## AC 列表
75
+ <取自 auditor 报告 Dim1 覆盖矩阵中映射到本 change 的 AC,逐条列出>
76
+
77
+ ## 全局技术方向
78
+ <取自 plan.md 高阶技术设计段的要点指针:模块边界/技术选型/数据流方向,供 spec-writer 作 design.md 约束>
79
+
80
+ ## PRD & plan 引用
81
+ - PRD: prd/vN/prd.md §<相关章节>
82
+ - Plan: prd/vN/plan.md ### <C-ID>
83
+ ```
84
+
85
+ **hash 豁免(重要)**:change-brief.md 放在 change 根目录,**不**属于 team-flow 五产物(proposal/specs/design/tasks/execution-contract),因此天然**不进入 `artifacts_hash`**(`hash.mjs` 只统计前四类)。空 change 的 `artifacts_hash` 仍为 null,状态机的"无产物"判定不受污染——**绝不**让 brief 入 hash。
86
+
87
+ **双源权威规则**:scope/技术方向以 `prd/vN/plan.md` 为准、AC 以 PRD 功能清单为准;**brief 只是 S4 时刻的投影快照**,不是第二真相源。若变更层发现 brief 与 plan.md 冲突,以 plan.md 为准并触发 Brief drift 提示(见 workflow-start「Staleness Detection」)。
88
+
89
+ ### 4. 写入 change_dag
90
+
91
+ 把每个 change 的 id / change_dir / state_file / depends_on / priority / parallel_group / status 写入 `.team-flow/requirements/<req-id>/orchestrator.yaml` 的 `change_dag`。详见 state-model.md「change_dag 结构」。
92
+
93
+ ### 5. 分发
94
+
95
+ 按依赖顺序建议执行顺序,告知用户各 change 已就绪:
96
+
97
+ ```
98
+ Change C1 已就绪,运行 /workflow-start 进入变更级流程。
99
+ 执行顺序建议:C1 → (C2 ∥ C3) → C4(C2/C3 可并行)
100
+ ```
101
+
102
+ ## 完成条件
103
+
104
+ - change-split-auditor 审计 verdict = PASS(必选门禁已通过,含 v0.9 D5 拆分维度合规)
105
+ - 所有 change 目录已创建在项目根 `changes/` 下(非 `specs/` 或 `.team-flow/`),`.team-flow.yaml` 已初始化
106
+ - 每个 change 目录已落盘 `change-brief.md`(v0.9 交接物,含 scope/AC/技术方向/frontmatter)
107
+ - `.team-flow/requirements/<req-id>/orchestrator.yaml` 的 `change_dag` 已填充
108
+ - S4 状态 = completed,已告知用户执行顺序
@@ -0,0 +1,61 @@
1
+ # S5 全局监控(v0.7 修订,多 change 时必选)
2
+
3
+ > v0.7 变更:change 数量 ≥ 2 时 S5 由「可选」升级为「必选」。设计依据:设计增强方案 v0.7 §17.2 / §17.3 / §17.8 / §17.9。
4
+
5
+ ## 必选条件
6
+
7
+ - change 数量 = 1 → S5 自然跳过
8
+ - change 数量 ≥ 2 → **S5 必选**
9
+
10
+ ## 编排层 vs 执行层
11
+
12
+ | 编排层(orchestrator 自己做) | 执行层(委托) |
13
+ |------------------------------|---------------|
14
+ | 读状态文件 | 跨 change 一致性检查(`cross-change-consistency-checker` agent) |
15
+ | 触发时机判断 | 单 change 合并门禁(复用 `code-reviewer` agent) |
16
+ | 冲突处置路由 | 重规划评估(`replan-analyst`,种子提示,只评估不决策) |
17
+ | 用户确认 | — |
18
+
19
+ ## 监控职责
20
+
21
+ ### 1. 进度跟踪
22
+
23
+ 通过各 change 的 `.team-flow.yaml` 状态同步到 `.team-flow/requirements/<req-id>/orchestrator.yaml` 的 `change_dag[].status`。
24
+
25
+ ### 2. 跨 change 一致性检测
26
+
27
+ 调用 `cross-change-consistency-checker` agent(插件 agent,跨 skill 复用价值)检测:
28
+ - 共享聚合/实体的变更是否冲突
29
+ - API 变更是否影响其他 change
30
+ - 原型漂移(change 实现与全局 prototype/ 是否一致)
31
+
32
+ ### 3. 复利晋升
33
+
34
+ change closing 时检查经验晋升(change 内经验 → 产品级经验):
35
+
36
+ ```bash
37
+ npx --yes --package @xulthekl/team-flow@0.22.4 tf solutions promote <change-dir>
38
+ ```
39
+
40
+ ### 4. 动态重规划触发
41
+
42
+ S5 是动态重规划的主要触发点。当检测到需要重新拆分(跨 change 冲突)时,触发 S5 → S4 回退。重规划评估流程与红/绿/灰区边界详见 state-model.md「动态重规划」。
43
+
44
+ ## S5 → S4 回退的在途 change 处置(A3)
45
+
46
+ 回退前必须评估在途 change 状态(前置条件分区):
47
+
48
+ | 区域 | 条件 | 处置 |
49
+ |------|------|------|
50
+ | **绿区** | 所有 change 未 executing | 可直接回退重新拆分 |
51
+ | **灰区** | 有 change executing | 逐个确认:暂停 / 废弃 / 保持 |
52
+ | **红区** | 已 closing/closed | 只能新 change 修正(hotfix 路径),delta 已合并不可回退 |
53
+
54
+ 在途 change 的处置决策记入 `replan_log`。已 closing/closed 的 change 其 delta 已合并,只能通过新 change 修正。详见 feedback-loops.md「S5 → S4」。
55
+
56
+ ## 完成条件
57
+
58
+ - 所有 change closed
59
+ - 复利晋升已完成
60
+ - 跨 change 一致性已确认(无未解决冲突)
61
+ - S5 状态 = completed