@gordon.gan/specflow 1.8.0-alpha → 1.8.1-beta

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 (107) hide show
  1. package/README.md +5 -3
  2. package/dist/cli/commands/document-run.d.ts +14 -1
  3. package/dist/cli/commands/document-run.js +518 -212
  4. package/dist/core/document/chapters.js +18 -3
  5. package/dist/core/document/digests.d.ts +0 -1
  6. package/dist/core/document/digests.js +18 -10
  7. package/dist/core/document/engine.d.ts +9 -0
  8. package/dist/core/document/engine.js +273 -38
  9. package/dist/core/document/extract.d.ts +61 -0
  10. package/dist/core/document/extract.js +437 -0
  11. package/dist/core/document/forbidden-patterns.js +7 -4
  12. package/dist/core/document/gates.d.ts +13 -1
  13. package/dist/core/document/gates.js +48 -6
  14. package/dist/core/document/input-digest.d.ts +8 -0
  15. package/dist/core/document/input-digest.js +93 -14
  16. package/dist/core/document/input-features.d.ts +23 -4
  17. package/dist/core/document/input-features.js +51 -2
  18. package/dist/core/document/lint.d.ts +17 -0
  19. package/dist/core/document/lint.js +118 -0
  20. package/dist/core/document/llm.d.ts +3 -10
  21. package/dist/core/document/llm.js +3 -8
  22. package/dist/core/document/map.d.ts +6 -0
  23. package/dist/core/document/map.js +114 -30
  24. package/dist/core/document/outline.d.ts +3 -0
  25. package/dist/core/document/outline.js +52 -9
  26. package/dist/core/document/paths.d.ts +5 -5
  27. package/dist/core/document/paths.js +11 -6
  28. package/dist/core/document/profile-validator.js +33 -5
  29. package/dist/core/document/profiles.js +5 -0
  30. package/dist/core/document/render.d.ts +26 -0
  31. package/dist/core/document/render.js +110 -14
  32. package/dist/core/document/review.d.ts +19 -4
  33. package/dist/core/document/review.js +65 -20
  34. package/dist/core/document/scene-detect.d.ts +10 -3
  35. package/dist/core/document/scene-detect.js +138 -22
  36. package/dist/core/document/schemas.d.ts +188 -34
  37. package/dist/core/document/schemas.js +39 -26
  38. package/dist/integrations/shared/capability-evidence.js +4 -4
  39. package/dist/integrations/shared/command-catalog.js +2 -1
  40. package/dist/integrations/shared/parity-manifest.js +4 -4
  41. package/package.json +2 -1
  42. package/prompts/document/map/acceptance.md +1 -0
  43. package/prompts/document/map/anti-ai.md +29 -0
  44. package/prompts/document/map/api-design.md +13 -4
  45. package/prompts/document/map/architecture.md +21 -1
  46. package/prompts/document/map/benchmark.md +26 -0
  47. package/prompts/document/map/closed-loop.md +1 -0
  48. package/prompts/document/map/compat-migration.md +24 -1
  49. package/prompts/document/map/component-design.md +30 -0
  50. package/prompts/document/map/config-runtime.md +1 -0
  51. package/prompts/document/map/core-flow.md +62 -0
  52. package/prompts/document/map/core-logic.md +1 -0
  53. package/prompts/document/map/data-model.md +1 -0
  54. package/prompts/document/map/deploy.md +20 -2
  55. package/prompts/document/map/fix.md +1 -0
  56. package/prompts/document/map/frontend-architecture.md +35 -0
  57. package/prompts/document/map/goal.md +1 -0
  58. package/prompts/document/map/impact.md +1 -0
  59. package/prompts/document/map/implementability.md +1 -0
  60. package/prompts/document/map/migration-guide.md +36 -0
  61. package/prompts/document/map/mvp-boundary.md +1 -0
  62. package/prompts/document/map/non-goals.md +1 -0
  63. package/prompts/document/map/ops.md +33 -0
  64. package/prompts/document/map/performance.md +32 -0
  65. package/prompts/document/map/poc-demo.md +25 -0
  66. package/prompts/document/map/regression.md +1 -0
  67. package/prompts/document/map/reproduce.md +1 -0
  68. package/prompts/document/map/requirement.md +1 -0
  69. package/prompts/document/map/research.md +25 -0
  70. package/prompts/document/map/root-cause.md +1 -0
  71. package/prompts/document/map/signoff.md +1 -0
  72. package/prompts/document/map/state-management.md +23 -0
  73. package/prompts/document/map/tech-selection.md +13 -1
  74. package/prompts/document/map/test-strategy.md +18 -1
  75. package/prompts/document/map/ui-design.md +10 -7
  76. package/prompts/document/outline/general.md +9 -0
  77. package/prompts/document/review/ai-review.md +2 -1
  78. package/prompts/document/shared/grounding.md +84 -0
  79. package/skills/specflow-techdoc/SKILL.md +143 -0
  80. package/skills/specflow-techdoc-synth/SKILL.md +99 -0
  81. package/templates/document/chapters/api-design.yaml +6 -1
  82. package/templates/document/chapters/architecture.yaml +7 -4
  83. package/templates/document/chapters/benchmark.yaml +20 -0
  84. package/templates/document/chapters/compat-migration.yaml +7 -3
  85. package/templates/document/chapters/component-design.yaml +22 -0
  86. package/templates/document/chapters/core-flow.yaml +27 -0
  87. package/templates/document/chapters/core-logic.yaml +1 -1
  88. package/templates/document/chapters/deploy.yaml +11 -7
  89. package/templates/document/chapters/frontend-architecture.yaml +22 -0
  90. package/templates/document/chapters/migration-guide.yaml +21 -0
  91. package/templates/document/chapters/ops.yaml +25 -0
  92. package/templates/document/chapters/performance.yaml +21 -0
  93. package/templates/document/chapters/poc-demo.yaml +22 -0
  94. package/templates/document/chapters/research.yaml +22 -0
  95. package/templates/document/chapters/state-management.yaml +22 -0
  96. package/templates/document/chapters/tech-selection.yaml +6 -3
  97. package/templates/document/chapters/test-strategy.yaml +5 -2
  98. package/templates/document/chapters/ui-design.yaml +7 -1
  99. package/templates/document/profiles/0to1.yaml +41 -9
  100. package/templates/document/profiles/bugfix.yaml +8 -3
  101. package/templates/document/profiles/feature.yaml +19 -7
  102. package/templates/document/profiles/frontend-0to1.yaml +47 -0
  103. package/templates/document/profiles/migration.yaml +42 -0
  104. package/templates/document/profiles/poc.yaml +46 -0
  105. package/dist/core/document/index.d.ts +0 -7
  106. package/dist/core/document/index.js +0 -7
  107. package/skills/specflow-document/SKILL.md +0 -124
package/README.md CHANGED
@@ -259,14 +259,15 @@ specflow init
259
259
 
260
260
  ## IDE 工作流命令
261
261
 
262
- 共 **11 个**技能,命名因 IDE 而异:
262
+ 共 **12 个**技能,命名因 IDE 而异:
263
263
 
264
264
  | 阶段 | Claude Code | Cursor | Codex |
265
265
  |------|-------------|--------|-------|
266
266
  | 探索(可选) | `/specflow:explore` | `specflow:explore` | `$specflow-explore` |
267
267
  | 规划 | `/specflow:propose` | `specflow:propose` | `$specflow-propose` |
268
268
  | 精化 | `/specflow:refine` | `specflow:refine` | `$specflow-refine` |
269
- | 文档(可选) | `/specflow:document` | `specflow:document` | `$specflow-document` |
269
+ | 方案文档(可选) | `/specflow:techdoc` | `specflow:techdoc` | `$specflow-techdoc` |
270
+ | 跨仓方案(可选) | `/specflow:techdoc-synth` | `specflow:techdoc-synth` | `$specflow-techdoc-synth` |
270
271
  | 构建 | `/specflow:apply` | `specflow:apply` | `$specflow-apply` |
271
272
  | 审查 | `/specflow:review` | `specflow:review` | `$specflow-review` |
272
273
  | 测试 | `/specflow:test` | `specflow:test` | `$specflow-test` |
@@ -282,7 +283,8 @@ specflow init
282
283
  | **explore** | 读代码、比方案、定边界;产出 `explore.md`,confirmed 后 handoff 到 propose |
283
284
  | **propose** | 一次产出 proposal、delta specs、design、tasks(第一轮深度思考,非占位骨架);叙述语言跟 `artifacts.language` |
284
285
  | **refine** | 内部多轮循环(≥2 轮,AI 判断收敛);可更新任意 artifact |
285
- | **document** | 可选:`specflow document run <0to1|bugfix|feature>` 用**通用长文档引擎**生成方案文档——两遍扫描(Pass 1 大纲冻结 → Pass 2 逐章按要点填空)+ 分层真源(契约实体 zod + 受控叙述)+ 四层上下文注入(大纲要点 + 依赖摘要 + 契约注入 + 本片片段,保证注意力不稀释 / token 不易打满)+ 覆盖双通道校验 + AI Review。多业务场景 × 多方案模板,详见 `docs/GENERIC_LONGDOC_ENGINE_DESIGN.md` |
286
+ | **techdoc** | 可选:`specflow techdoc run <0to1|frontend-0to1|bugfix|feature|poc|migration>` 用**通用长文档引擎**生成方案文档——**场景轴 × 技术栈轴正交**:场景管「做什么」(0→1 / 加功能 / 修 bug / 预研选型 / 技术升级),输入特征(hasBackend / uiInScope / containsApiChange / hasPersistence)自动决定章节伸缩(纯逻辑功能 ~3 章,全栈功能 ~10 章)。两遍扫描(Pass 1 大纲冻结 → Pass 2 逐章按要点填空)+ 分层真源(契约实体 zod + 受控叙述)+ 四层上下文注入(大纲要点 + 依赖摘要 + 契约注入 + 本片片段,保证注意力不稀释 / token 不易打满)+ 覆盖双通道校验 + AI Review。审批文档走独立入口 `techdoc approve`(四件套 → 审批模式,非业务场景)。详见 `docs/GENERIC_LONGDOC_ENGINE_DESIGN.md` |
287
+ | **techdoc-synth** | 可选:`specflow techdoc synthesize --workspace-root <root>` 把多仓四件套合成**一份跨仓文档**(统一大纲 + 契约实体命名空间 `<repo>_<id>` + 每章按仓分节 + 全局结论);省略 `--profile` 时自动识别场景(`--text` 优先,其次四件套内容;不确定且有 `--text` 时确认,无 `--text` 时回退 approve)。带确定性质量门禁(validate 强制每必选章含所有仓 `### <repo>` 小节)。区别于 `techdoc approve --bundle` 的物理拼接;原有多仓多产物不受影响 |
286
288
  | **apply** | Phase A 重写 tasks.md;Phase B 按语言路由 ECC 审查 + TDD 逐任务执行;可选 `--yes` |
287
289
  | **review** | 代码审查,对照 specs 检查回归 |
288
290
  | **test** | 单元 + 集成 + E2E + 回归测试 |
@@ -1,5 +1,5 @@
1
1
  /**
2
- * CLI: specflow document {plan|validate|run} — Generic LongDoc Engine, IDE-model driven.
2
+ * CLI: specflow techdoc {plan|validate|run} — Generic LongDoc Engine, IDE-model driven.
3
3
  *
4
4
  * The engine does NOT call a third-party LLM API. In Cursor/Codex the Agent runs on the IDE's
5
5
  * model, so:
@@ -81,4 +81,17 @@ export declare function approveDocumentCommand(options: ApproveOptions): Promise
81
81
  exitCode: number;
82
82
  payload: unknown;
83
83
  }>;
84
+ export interface SynthesizeOptions {
85
+ workspaceRoot: string;
86
+ changes?: string;
87
+ profile?: string;
88
+ text?: string;
89
+ workRoot?: string;
90
+ signoff?: boolean;
91
+ json?: boolean;
92
+ }
93
+ export declare function synthesizeDocumentCommand(options: SynthesizeOptions): Promise<{
94
+ exitCode: number;
95
+ payload: unknown;
96
+ }>;
84
97
  export declare function registerDocumentRunCommand(program: Command): void;