speccore 5.96.1 → 5.97.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.
@@ -8,10 +8,10 @@
8
8
  * CLI: speccore synthesize -I <迭代名>
9
9
  *
10
10
  * 模式 B: 全自动三阶段(--full)
11
- * Phase 1: 逐端分析 → 020-specs/platforms/{端名}/ 各端独立 specs
12
- * Phase 2: 跨端综合 → 020-specs/synthesis/ CROSS_PLATFORM.md + ARCHITECTURE.md + TECH_FULL.md
13
- * Phase 3: 功能单元合成 → REQUIREMENT.md(按功能单元组织,含所有端需求)
14
- * 旧版自动归档到 020-specs/snapshots/{时间戳}/
11
+ * Phase 1: 逐端分析 → .speccore/GLOBAL/platforms/{端名}/ 各端独立 specs
12
+ * Phase 2: 跨端综合 → .speccore/GLOBAL/synthesis/ CROSS_PLATFORM.md + ARCHITECTURE.md + TECH_FULL.md
13
+ * Phase 3: 功能单元合成 → Iteration-NNN/010-requirements/REQUIREMENT.md
14
+ * 旧版自动归档到 .speccore/GLOBAL/snapshots/{时间戳}/
15
15
  * CLI: speccore synthesize --full -I <迭代名>
16
16
  *
17
17
  * 模式 C: 单阶段执行(--phase N)
@@ -1 +1 @@
1
- {"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../../src/commands/synthesize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAQH,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAkCD,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+CjF"}
1
+ {"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../../src/commands/synthesize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAQH,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAkCD,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDjF"}
@@ -9,10 +9,10 @@
9
9
  * CLI: speccore synthesize -I <迭代名>
10
10
  *
11
11
  * 模式 B: 全自动三阶段(--full)
12
- * Phase 1: 逐端分析 → 020-specs/platforms/{端名}/ 各端独立 specs
13
- * Phase 2: 跨端综合 → 020-specs/synthesis/ CROSS_PLATFORM.md + ARCHITECTURE.md + TECH_FULL.md
14
- * Phase 3: 功能单元合成 → REQUIREMENT.md(按功能单元组织,含所有端需求)
15
- * 旧版自动归档到 020-specs/snapshots/{时间戳}/
12
+ * Phase 1: 逐端分析 → .speccore/GLOBAL/platforms/{端名}/ 各端独立 specs
13
+ * Phase 2: 跨端综合 → .speccore/GLOBAL/synthesis/ CROSS_PLATFORM.md + ARCHITECTURE.md + TECH_FULL.md
14
+ * Phase 3: 功能单元合成 → Iteration-NNN/010-requirements/REQUIREMENT.md
15
+ * 旧版自动归档到 .speccore/GLOBAL/snapshots/{时间戳}/
16
16
  * CLI: speccore synthesize --full -I <迭代名>
17
17
  *
18
18
  * 模式 C: 单阶段执行(--phase N)
@@ -64,6 +64,8 @@ async function synthesizeCommand(options) {
64
64
  const specDir = (0, path_1.join)(iterDir, '020-specs');
65
65
  const convDir = (0, path_1.join)(reqDir, 'converted');
66
66
  const outputPath = (0, path_1.join)(reqDir, 'REQUIREMENT.md');
67
+ // 全局层目录:Phase 1/2 写入此处
68
+ const globalDir = (0, path_1.join)('.speccore', 'GLOBAL');
67
69
  // ── Apply 模式(简单合成,向后兼容)──
68
70
  if (options.apply && !options.applyPhase) {
69
71
  await (0, fs_extra_1.ensureDir)(reqDir);
@@ -76,23 +78,23 @@ async function synthesizeCommand(options) {
76
78
  }
77
79
  // ── Apply Phase 模式:接收某阶段的 AI 结果写入文件 ──
78
80
  if (options.applyPhase && options.apply) {
79
- await handleApplyPhase(iter, iterDir, specDir, reqDir, parseInt(options.applyPhase), options.apply);
81
+ await handleApplyPhase(iter, iterDir, globalDir, specDir, reqDir, parseInt(options.applyPhase), options.apply);
80
82
  return;
81
83
  }
82
84
  // ── --full 模式:全自动三阶段 ──
83
85
  if (options.full) {
84
- await runFullPipeline(iter, iterDir, specDir, reqDir, convDir, options.withCode);
86
+ await runFullPipeline(iter, iterDir, globalDir, specDir, reqDir, convDir, options.withCode);
85
87
  return;
86
88
  }
87
89
  // ── --phase N 模式:单阶段执行 ──
88
90
  if (options.phase) {
89
91
  const phaseNum = parseInt(options.phase);
90
92
  if (phaseNum === 1)
91
- await runPhase1(iter, iterDir, specDir, reqDir);
93
+ await runPhase1(iter, iterDir, globalDir, reqDir);
92
94
  else if (phaseNum === 2)
93
- await runPhase2(iter, iterDir, specDir, reqDir);
95
+ await runPhase2(iter, iterDir, globalDir, specDir);
94
96
  else if (phaseNum === 3)
95
- await runPhase3(iter, iterDir, specDir, reqDir, convDir, options.withCode);
97
+ await runPhase3(iter, iterDir, globalDir, specDir, reqDir, convDir, options.withCode);
96
98
  else
97
99
  logger_1.logger.error(`无效阶段: ${options.phase},可选 1/2/3`);
98
100
  return;
@@ -103,24 +105,23 @@ async function synthesizeCommand(options) {
103
105
  // ================================================================
104
106
  // Apply Phase 处理
105
107
  // ================================================================
106
- async function handleApplyPhase(iter, iterDir, specDir, reqDir, phase, content) {
107
- await (0, fs_extra_1.ensureDir)(specDir);
108
+ async function handleApplyPhase(iter, iterDir, globalDir, specDir, reqDir, phase, content) {
108
109
  if (phase === 1) {
109
- // Phase 1 apply: 写入各端 specs(按端分目录)
110
- const platformsDir = (0, path_1.join)(specDir, 'platforms');
110
+ // Phase 1 apply: 写入全局层 platforms/(按端分目录)
111
+ const platformsDir = (0, path_1.join)(globalDir, 'platforms');
111
112
  await (0, fs_extra_1.ensureDir)(platformsDir);
112
113
  const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, 16);
113
114
  await (0, fs_extra_1.writeFile)((0, path_1.join)(platformsDir, `ANALYSIS-${timestamp}.md`), content);
114
- logger_1.logger.success(`✅ Phase 1 结果已写入: 020-specs/platforms/`);
115
+ logger_1.logger.success(`✅ Phase 1 结果已写入: .speccore/GLOBAL/platforms/`);
115
116
  // 提示下一阶段
116
117
  logger_1.logger.info(`\n 📌 下一步: speccore synthesize --phase 2 -I ${iter}`);
117
118
  }
118
119
  else if (phase === 2) {
119
- // Phase 2 apply: 解析分隔标记,写入 synthesis/ 下的独立文件
120
- const synthesisDir = (0, path_1.join)(specDir, 'synthesis');
120
+ // Phase 2 apply: 解析分隔标记,写入 GLOBAL/synthesis/ 下的独立文件
121
+ const synthesisDir = (0, path_1.join)(globalDir, 'synthesis');
121
122
  await (0, fs_extra_1.ensureDir)(synthesisDir);
122
- // 备份旧版到 snapshots/
123
- const snapshotsDir = (0, path_1.join)(specDir, 'snapshots');
123
+ // 备份旧版到 GLOBAL/snapshots/
124
+ const snapshotsDir = (0, path_1.join)(globalDir, 'snapshots');
124
125
  const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, 16);
125
126
  if (await (0, fs_extra_1.pathExists)(synthesisDir)) {
126
127
  const existingFiles = (await (0, fs_extra_1.readdir)(synthesisDir)).filter(f => f.endsWith('.md'));
@@ -159,7 +160,7 @@ async function handleApplyPhase(iter, iterDir, specDir, reqDir, phase, content)
159
160
  if (!markers.some(m => content.includes(m))) {
160
161
  await (0, fs_extra_1.writeFile)((0, path_1.join)(synthesisDir, 'CROSS_PLATFORM.md'), content);
161
162
  }
162
- logger_1.logger.success(`✅ Phase 2 结果已写入: 020-specs/synthesis/`);
163
+ logger_1.logger.success(`✅ Phase 2 结果已写入: .speccore/GLOBAL/synthesis/`);
163
164
  logger_1.logger.info(` 📄 CROSS_PLATFORM.md — 跨端关系图`);
164
165
  logger_1.logger.info(` 📄 ARCHITECTURE.md — 全量架构`);
165
166
  logger_1.logger.info(` 📄 TECH_FULL.md — 全量技术方案`);
@@ -178,7 +179,7 @@ async function handleApplyPhase(iter, iterDir, specDir, reqDir, phase, content)
178
179
  // ================================================================
179
180
  // --full 全自动三阶段流水线
180
181
  // ================================================================
181
- async function runFullPipeline(iter, iterDir, specDir, reqDir, convDir, withCode) {
182
+ async function runFullPipeline(iter, iterDir, globalDir, specDir, reqDir, convDir, withCode) {
182
183
  const entries = await parseConstitution();
183
184
  if (entries.length === 0) {
184
185
  logger_1.logger.warn('CONSTITUTION.md 未配置多工程,回退到简单合成模式');
@@ -192,29 +193,29 @@ async function runFullPipeline(iter, iterDir, specDir, reqDir, convDir, withCode
192
193
  }
193
194
  // Phase 1: 逐端分析
194
195
  logger_1.logger.info(`\n━━━ Phase 1/3: 逐端分析 ━━━`);
195
- await runPhase1(iter, iterDir, specDir, reqDir);
196
+ await runPhase1(iter, iterDir, globalDir, reqDir);
196
197
  // Phase 2: 跨端综合
197
198
  logger_1.logger.info(`\n━━━ Phase 2/3: 跨端综合 ━━━`);
198
- await runPhase2(iter, iterDir, specDir, reqDir);
199
+ await runPhase2(iter, iterDir, globalDir, specDir);
199
200
  // Phase 3: 功能单元合成
200
201
  logger_1.logger.info(`\n━━━ Phase 3/3: 功能单元需求合成 ━━━`);
201
- await runPhase3(iter, iterDir, specDir, reqDir, convDir, withCode);
202
+ await runPhase3(iter, iterDir, globalDir, specDir, reqDir, convDir, withCode);
202
203
  logger_1.logger.info(`\n✅ 全量分析合成完成!`);
203
- logger_1.logger.info(` 📄 020-specs/platforms/ ← 各端分析结果`);
204
- logger_1.logger.info(` 📄 020-specs/synthesis/ ← 跨端综合文档`);
205
- logger_1.logger.info(` 📄 020-specs/snapshots/ ← 历史快照`);
204
+ logger_1.logger.info(` 📄 .speccore/GLOBAL/platforms/ ← 各端分析结果`);
205
+ logger_1.logger.info(` 📄 .speccore/GLOBAL/synthesis/ ← 跨端综合文档`);
206
+ logger_1.logger.info(` 📄 .speccore/GLOBAL/snapshots/ ← 历史快照`);
206
207
  logger_1.logger.info(` 📄 010-requirements/REQUIREMENT.md ← 按功能单元组织的完整需求`);
207
208
  }
208
209
  // ================================================================
209
210
  // Phase 1: 逐端分析
210
211
  // ================================================================
211
- async function runPhase1(iter, iterDir, specDir, reqDir) {
212
+ async function runPhase1(iter, iterDir, globalDir, reqDir) {
212
213
  const entries = await parseConstitution();
213
214
  if (entries.length === 0) {
214
215
  logger_1.logger.warn('CONSTITUTION.md 未配置工程列表,无法执行逐端分析');
215
216
  return;
216
217
  }
217
- const platformsDir = (0, path_1.join)(specDir, 'platforms');
218
+ const platformsDir = (0, path_1.join)(globalDir, 'platforms');
218
219
  await (0, fs_extra_1.ensureDir)(platformsDir);
219
220
  // 读取各端需求文档
220
221
  const platformDocs = [];
@@ -240,6 +241,24 @@ async function runPhase1(iter, iterDir, specDir, reqDir) {
240
241
  }
241
242
  }
242
243
  }
244
+ // 也读取 GLOBAL/platforms/ 下用户自建的文档作为补充
245
+ const globalPlatformsDir = (0, path_1.join)(globalDir, 'platforms');
246
+ if (await (0, fs_extra_1.pathExists)(globalPlatformsDir)) {
247
+ const gpEntries = await (0, fs_extra_1.readdir)(globalPlatformsDir, { withFileTypes: true });
248
+ for (const entry of gpEntries) {
249
+ if (entry.isDirectory()) {
250
+ const subFiles = await (0, fs_extra_1.readdir)((0, path_1.join)(globalPlatformsDir, entry.name));
251
+ for (const f of subFiles.filter(f => f.endsWith('.md') && !(0, task_utils_1.isTimestampBackup)(f))) {
252
+ const content = await (0, fs_extra_1.readFile)((0, path_1.join)(globalPlatformsDir, entry.name, f), 'utf-8');
253
+ platformDocs.push({ platform: entry.name, name: `GLOBAL/platforms/${entry.name}/${f}`, content });
254
+ }
255
+ }
256
+ else if (entry.name.endsWith('.md') && !(0, task_utils_1.isTimestampBackup)(entry.name)) {
257
+ const content = await (0, fs_extra_1.readFile)((0, path_1.join)(globalPlatformsDir, entry.name), 'utf-8');
258
+ platformDocs.push({ platform: 'global', name: `GLOBAL/platforms/${entry.name}`, content });
259
+ }
260
+ }
261
+ }
243
262
  if (platformDocs.length === 0) {
244
263
  logger_1.logger.warn('未找到各端需求文档,跳过 Phase 1');
245
264
  return;
@@ -276,37 +295,90 @@ function buildPhase1Prompt(iter, entries, platformDocs) {
276
295
  p += `\n\n---\n\n`;
277
296
  }
278
297
  }
279
- p += `## 要求\n\n`;
280
- p += `1. 对每个端独立分析,提取该端的需求规格\n`;
281
- p += `2. 每个端输出:功能清单、接口定义、数据模型、业务规则、验收标准\n`;
282
- p += `3. 按端分别组织,不要跨端合并\n`;
283
- p += `4. 标注与其他端可能的关联点(如:该 API Web 端调用)\n\n`;
298
+ p += `## 分析要求(业内专业级)\n\n`;
299
+ p += `对每个端独立分析,必须覆盖以下 **10 大维度**:\n\n`;
300
+ p += `### 1. 功能清单与用户故事\n`;
301
+ p += `- 功能列表(含优先级 P0/P1/P2)\n`;
302
+ p += `- 每个功能的用户故事:As a {角色}, I want {操作}, so that {价值}\n`;
303
+ p += `- 功能边界说明(做什么、不做什么)\n\n`;
304
+ p += `### 2. 接口定义(API 规格)\n`;
305
+ p += `- RESTful 接口表:方法 | 路径 | 请求参数 | 响应结构 | 状态码 | 说明\n`;
306
+ p += `- 请求/响应示例(JSON)\n`;
307
+ p += `- 错误码定义(按模块划分段)\n`;
308
+ p += `- 分页/排序/过滤约定\n\n`;
309
+ p += `### 3. 数据模型\n`;
310
+ p += `- 实体关系图(ER 描述)\n`;
311
+ p += `- 字段级定义:字段名 | 类型 | 长度 | 必填 | 默认值 | 约束 | 说明\n`;
312
+ p += `- 索引策略(主键/唯一/普通/复合)\n`;
313
+ p += `- 枚举值定义\n\n`;
314
+ p += `### 4. 业务规则\n`;
315
+ p += `- 核心业务逻辑(含边界条件和异常流)\n`;
316
+ p += `- 状态机流转(如有):状态 → 触发条件 → 目标状态\n`;
317
+ p += `- 数据校验规则(前端 + 后端双重校验)\n\n`;
318
+ p += `### 5. 安全分析\n`;
319
+ p += `- 认证方式(JWT/OAuth/Session)\n`;
320
+ p += `- 授权模型(RBAC/ABAC)\n`;
321
+ p += `- 敏感数据处理(脱敏/加密/日志屏蔽)\n`;
322
+ p += `- 常见防护(XSS/CSRF/SQL注入/越权访问)\n\n`;
323
+ p += `### 6. 性能特征\n`;
324
+ p += `- 预估 QPS / 并发量\n`;
325
+ p += `- 慢操作识别(批量导入/报表/搜索)\n`;
326
+ p += `- 缓存策略(哪些数据缓存/失效策略)\n`;
327
+ p += `- 数据库优化(查询优化/分表策略)\n\n`;
328
+ p += `### 7. 错误处理策略\n`;
329
+ p += `- 全局异常处理方案\n`;
330
+ p += `- 重试/降级/熔断策略\n`;
331
+ p += `- 用户可见的错误提示规范\n\n`;
332
+ p += `### 8. 测试策略\n`;
333
+ p += `- 单元测试覆盖范围\n`;
334
+ p += `- 集成测试场景\n`;
335
+ p += `- 边界用例和异常流测试\n`;
336
+ p += `- E2E 测试关键路径\n\n`;
337
+ p += `### 9. 第三方依赖\n`;
338
+ p += `- 外部 API / SDK / 中间件(名称/版本/用途)\n`;
339
+ p += `- 数据迁移方案(如有 Schema 变更)\n`;
340
+ p += `- 配置管理(环境变量/Feature Flag)\n\n`;
341
+ p += `### 10. 跨端关联点\n`;
342
+ p += `- 该端哪些功能/接口与其他端有关联\n`;
343
+ p += `- 数据流向(谁生产谁消费)\n`;
344
+ p += `- 共享的数据实体和状态\n\n`;
284
345
  p += `## 输出格式\n\n`;
346
+ p += `每个端输出一份完整文档,包含上述 10 个章节。\n`;
347
+ p += `如果某个维度在当前需求中没有内容,写“暂无”而不是省略章节。\n\n`;
285
348
  p += `\`\`\`markdown\n`;
286
349
  p += `# {端名} 端需求分析\n\n`;
287
- p += `## 1. 功能清单\n`;
288
- p += `| 功能 | 描述 | 关联端 |\n|:--|:--|:--|\n\n`;
350
+ p += `## 1. 功能清单与用户故事\n`;
351
+ p += `| # | 功能 | 优先级 | 用户故事 | 边界 |\n|:--|:--|:--:|:--|:--|\n\n`;
289
352
  p += `## 2. 接口定义\n`;
290
353
  p += `### {模块名}\n`;
291
- p += `| 方法 | 路径 | 参数 | 响应 | 说明 |\n|:--|:--|:--|:--|:--|\n\n`;
354
+ p += `| 方法 | 路径 | 参数 | 响应 | 状态码 | 说明 |\n|:--|:--|:--|:--|:--|:--|\n\n`;
292
355
  p += `## 3. 数据模型\n`;
293
356
  p += `### {实体名}\n`;
294
- p += `| 字段 | 类型 | 说明 | 约束 |\n|:--|:--|:--|:--|\n\n`;
357
+ p += `| 字段 | 类型 | 必填 | 默认值 | 约束 | 说明 |\n|:--|:--|:--:|:--|:--|:--|\n\n`;
295
358
  p += `## 4. 业务规则\n`;
296
- p += `- {规则描述}\n\n`;
297
- p += `## 5. 跨端关联点\n`;
298
- p += `- {该端的哪些功能/接口与其他端有关联}\n`;
359
+ p += `### {规则名}\n`;
360
+ p += `- 触发条件 / 处理逻辑 / 异常流\n\n`;
361
+ p += `## 5. 安全分析\n`;
362
+ p += `## 6. 性能特征\n`;
363
+ p += `## 7. 错误处理策略\n`;
364
+ p += `## 8. 测试策略\n`;
365
+ p += `## 9. 第三方依赖\n`;
366
+ p += `## 10. 跨端关联点\n`;
299
367
  p += `\`\`\`\n\n`;
300
368
  p += `## 写入命令\n`;
301
- p += `speccore synthesize --apply-phase 1 '{分析内容}' -I ${iter}\n`;
369
+ p += `speccore synthesize --apply-phase 1 '{分析内容}' -I ${iter}\n\n`;
370
+ p += `## 注意\n`;
371
+ p += `- 如果用户已在 .speccore/GLOBAL/platforms/{端名}/ 下放置了自建文档,以上分析应在其基础上补充完善,不要覆盖已有内容\n`;
372
+ p += `- 需求以产品文档为准,不要臆造需求\n`;
373
+ p += `- 保持原文档中的接口定义、字段说明等细节不丢失\n`;
302
374
  return p;
303
375
  }
304
376
  // ================================================================
305
377
  // Phase 2: 跨端综合
306
378
  // ================================================================
307
- async function runPhase2(iter, iterDir, specDir, reqDir) {
308
- // 读取 Phase 1 的结果
309
- const platformsDir = (0, path_1.join)(specDir, 'platforms');
379
+ async function runPhase2(iter, iterDir, globalDir, specDir) {
380
+ // 读取 Phase 1 的结果(从 GLOBAL/platforms/)
381
+ const platformsDir = (0, path_1.join)(globalDir, 'platforms');
310
382
  if (!await (0, fs_extra_1.pathExists)(platformsDir)) {
311
383
  logger_1.logger.warn('未找到 Phase 1 结果,请先运行: speccore synthesize --phase 1');
312
384
  return;
@@ -340,6 +412,15 @@ async function runPhase2(iter, iterDir, specDir, reqDir) {
340
412
  existingSpecs.push({ name: f, content });
341
413
  }
342
414
  }
415
+ // 也读取 GLOBAL/synthesis/ 下用户自建的文档作为补充
416
+ const synthesisDir = (0, path_1.join)(globalDir, 'synthesis');
417
+ if (await (0, fs_extra_1.pathExists)(synthesisDir)) {
418
+ const synFiles = await (0, fs_extra_1.readdir)(synthesisDir);
419
+ for (const f of synFiles.filter(f => f.endsWith('.md') && !(0, task_utils_1.isTimestampBackup)(f))) {
420
+ const content = await (0, fs_extra_1.readFile)((0, path_1.join)(synthesisDir, f), 'utf-8');
421
+ existingSpecs.push({ name: `GLOBAL/synthesis/${f}`, content });
422
+ }
423
+ }
343
424
  const prompt = buildPhase2Prompt(iter, platformSpecs, existingSpecs);
344
425
  process.stdout.write(`[SPECCORE_PHASE2]\n${prompt}`);
345
426
  process.exitCode = 11;
@@ -365,22 +446,32 @@ function buildPhase2Prompt(iter, platformSpecs, existingSpecs) {
365
446
  p += `\n\n---\n\n`;
366
447
  }
367
448
  }
368
- p += `## 分析要求\n\n`;
369
- p += `### CROSS_PLATFORM.md\n`;
370
- p += `1. 识别跨端的业务关系(如:Web 的用户列表 → 后端的用户查询 API)\n`;
371
- p += `2. 绘制跨端调用关系图(Mermaid)\n`;
372
- p += `3. 汇总接口映射表:哪个端调用哪个接口\n`;
373
- p += `4. 标注数据流向和依赖关系\n\n`;
374
- p += `### ARCHITECTURE.md\n`;
375
- p += `1. 全量系统架构(含所有端)\n`;
376
- p += `2. 服务间依赖关系\n`;
377
- p += `3. 技术栈汇总\n`;
378
- p += `4. 部署架构\n\n`;
379
- p += `### TECH_FULL.md\n`;
380
- p += `1. 全量技术方案(综合各端)\n`;
381
- p += `2. 公共模块/组件识别\n`;
382
- p += `3. 跨端共享的数据模型\n`;
383
- p += `4. 技术风险和约束\n\n`;
449
+ p += `## 分析要求(业内专业级)\n\n`;
450
+ p += `### CROSS_PLATFORM.md — 跨端业务关系\n\n`;
451
+ p += `1. **跨端调用关系图**(Mermaid sequenceDiagram/flowchart)\n`;
452
+ p += `2. **接口映射表**:前端操作 → 后端接口 → 数据表,标注所属端\n`;
453
+ p += `3. **数据流向图**:哪些数据在哪些端之间流动,谁是生产者谁是消费者\n`;
454
+ p += `4. **共享实体识别**:哪些数据模型被多端共享,状态同步策略\n`;
455
+ p += `5. **跨端事务一致性**:涉及多端操作的业务流程,如何保证一致性\n`;
456
+ p += `6. **冲突与风险**:接口不匹配、数据格式差异、版本不一致等\n\n`;
457
+ p += `### ARCHITECTURE.md — 全量架构文档\n\n`;
458
+ p += `1. **系统架构图**(Mermaid):含所有端、服务、中间件、数据库\n`;
459
+ p += `2. **服务依赖关系**:调用方向、协议(HTTP/gRPC/MQ)、同步/异步\n`;
460
+ p += `3. **技术栈汇总**:每层的语言/框架/版本/选型理由\n`;
461
+ p += `4. **部署架构**:容器化/编排/环境划分(dev/staging/prod)\n`;
462
+ p += `5. **ADR(架构决策记录)**:关键决策的背景、方案对比、最终选择、理由\n`;
463
+ p += `6. **安全架构**:认证链路、授权模型、数据加密方案、API 网关策略\n`;
464
+ p += `7. **监控告警**:关键指标(QPS/延迟/错误率)、SLA 目标、告警阈值\n`;
465
+ p += `8. **容灾方案**:降级策略、熔断规则、回滚预案、数据备份策略\n\n`;
466
+ p += `### TECH_FULL.md — 全量技术方案\n\n`;
467
+ p += `1. **全量技术方案**:综合各端的实现方案,提取公共部分\n`;
468
+ p += `2. **公共模块/组件识别**:哪些逻辑多端共享,如何复用\n`;
469
+ p += `3. **跨端共享数据模型**:统一的数据定义、类型映射\n`;
470
+ p += `4. **API 版本策略**:向后兼容方案、废弃计划\n`;
471
+ p += `5. **容量规划**:存储增长预估、带宽需求、并发上限\n`;
472
+ p += `6. **数据一致性方案**:分布式事务/最终一致/事件驱动\n`;
473
+ p += `7. **性能优化策略**:缓存层、CDN、数据库优化、异步处理\n`;
474
+ p += `8. **技术风险和约束**:已知风险、技术债、外部依赖风险\n\n`;
384
475
  p += `## 输出格式\n\n`;
385
476
  p += `请将三个文档用以下分隔标记分开:\n`;
386
477
  p += `\`\`\`\n`;
@@ -389,17 +480,21 @@ function buildPhase2Prompt(iter, platformSpecs, existingSpecs) {
389
480
  p += `===TECH_FULL===\n{TECH_FULL.md 内容}\n`;
390
481
  p += `\`\`\`\n\n`;
391
482
  p += `## 写入命令\n`;
392
- p += `speccore synthesize --apply-phase 2 '{综合内容}' -I ${iter}\n`;
483
+ p += `speccore synthesize --apply-phase 2 '{综合内容}' -I ${iter}\n\n`;
484
+ p += `## 注意\n`;
485
+ p += `- 如果用户已在 .speccore/GLOBAL/synthesis/ 下放置了自建文档,应优先参考其内容\n`;
486
+ p += `- 三个文档都必须输出,用分隔标记分开\n`;
487
+ p += `- 不要省略任何内容,每个章节都要完整\n`;
393
488
  return p;
394
489
  }
395
490
  // ================================================================
396
491
  // Phase 3: 按功能单元合成需求文档
397
492
  // ================================================================
398
- async function runPhase3(iter, iterDir, specDir, reqDir, convDir, withCode) {
399
- // 收集所有可用输入:各端 specs + 跨端综合 + 原始需求文档
493
+ async function runPhase3(iter, iterDir, globalDir, specDir, reqDir, convDir, withCode) {
494
+ // 收集所有可用输入:GLOBAL 层各端 specs + 跨端综合 + 迭代层 specs + 原始需求文档
400
495
  const allSpecs = [];
401
- // Phase 1 结果
402
- const platformsDir = (0, path_1.join)(specDir, 'platforms');
496
+ // Phase 1 结果(从 GLOBAL/platforms/)
497
+ const platformsDir = (0, path_1.join)(globalDir, 'platforms');
403
498
  if (await (0, fs_extra_1.pathExists)(platformsDir)) {
404
499
  const platformEntries = await (0, fs_extra_1.readdir)(platformsDir, { withFileTypes: true });
405
500
  for (const entry of platformEntries) {
@@ -407,20 +502,20 @@ async function runPhase3(iter, iterDir, specDir, reqDir, convDir, withCode) {
407
502
  const subFiles = await (0, fs_extra_1.readdir)((0, path_1.join)(platformsDir, entry.name));
408
503
  for (const f of subFiles.filter(f => f.endsWith('.md'))) {
409
504
  const content = await (0, fs_extra_1.readFile)((0, path_1.join)(platformsDir, entry.name, f), 'utf-8');
410
- allSpecs.push({ name: `platforms/${entry.name}/${f}`, content });
505
+ allSpecs.push({ name: `GLOBAL/platforms/${entry.name}/${f}`, content });
411
506
  }
412
507
  }
413
508
  else if (entry.name.endsWith('.md')) {
414
509
  const content = await (0, fs_extra_1.readFile)((0, path_1.join)(platformsDir, entry.name), 'utf-8');
415
- allSpecs.push({ name: `platforms/${entry.name}`, content });
510
+ allSpecs.push({ name: `GLOBAL/platforms/${entry.name}`, content });
416
511
  }
417
512
  }
418
513
  }
419
- // Phase 2 结果(从 synthesis/ 目录读取)
420
- const synthesisDir = (0, path_1.join)(specDir, 'synthesis');
514
+ // Phase 2 结果(从 GLOBAL/synthesis/)
515
+ const synthesisDir = (0, path_1.join)(globalDir, 'synthesis');
421
516
  if (await (0, fs_extra_1.pathExists)(synthesisDir)) {
422
517
  for (const f of (await (0, fs_extra_1.readdir)(synthesisDir)).filter(f => f.endsWith('.md'))) {
423
- allSpecs.push({ name: `synthesis/${f}`, content: await (0, fs_extra_1.readFile)((0, path_1.join)(synthesisDir, f), 'utf-8') });
518
+ allSpecs.push({ name: `GLOBAL/synthesis/${f}`, content: await (0, fs_extra_1.readFile)((0, path_1.join)(synthesisDir, f), 'utf-8') });
424
519
  }
425
520
  }
426
521
  // 原始需求文档
@@ -469,37 +564,69 @@ function buildPhase3Prompt(iter, allSpecs, sourceDocs) {
469
564
  p += `\n\n---\n\n`;
470
565
  }
471
566
  }
472
- p += `## 合成原则\n\n`;
567
+ p += `## 合成原则(业内专业级)\n\n`;
473
568
  p += `1. **按功能单元组织**:一个功能单元一个章节,不按端拆分\n`;
474
- p += `2. **全端聚合**:每个功能单元包含所有相关端的需求(后端 API + 前端页面 + 管理端操作)\n`;
569
+ p += `2. **全端聚合**:每个功能单元包含所有相关端的需求\n`;
475
570
  p += `3. **公共逻辑只写一次**:多端共享的逻辑放在章节开头\n`;
476
571
  p += `4. **端差异用子标题**:\`#### {端名} 端\` 子标题标出差异\n`;
477
572
  p += `5. **接口汇总**:同一功能的接口放一起,用表格标注所属端\n`;
478
- p += `6. **结构清晰**:每个功能单元遵循统一模板\n`;
479
- p += `7. **冲突标记**:需求矛盾用 ⚠️ 标注,汇总到"待确认事项"\n\n`;
573
+ p += `6. **冲突标记**:需求矛盾用 ⚠️ 标注,汇总到“待确认事项”\n\n`;
574
+ p += `## 每个功能单元必须包含的内容\n\n`;
575
+ p += `### A. 用户故事与验收标准\n`;
576
+ p += `- 用户故事:As a {角色}, I want {操作}, so that {价值}\n`;
577
+ p += `- 验收标准(Given/When/Then 格式):\n`;
578
+ p += ` - Given {前置条件}, When {操作}, Then {预期结果}\n\n`;
579
+ p += `### B. 各端需求详情\n`;
580
+ p += `- 后端:API 定义、数据模型、业务规则、错误码\n`;
581
+ p += `- 前端:页面/组件/路由/交互逻辑/状态管理\n`;
582
+ p += `- 管理端:管理页面/操作流程/权限控制\n\n`;
583
+ p += `### C. 接口汇总\n`;
584
+ p += `- 统一接口表格:方法 | 路径 | 说明 | 端 | 状态码\n`;
585
+ p += `- 请求/响应示例(JSON)\n\n`;
586
+ p += `### D. 数据字典\n`;
587
+ p += `- 字段级定义:字段名 | 类型 | 必填 | 默认值 | 约束 | 枚举值 | 说明\n`;
588
+ p += `- 状态机流转(如有):状态 → 触发条件 → 目标状态\n\n`;
589
+ p += `### E. 非功能需求\n`;
590
+ p += `- 性能要求(响应时间/并发量)\n`;
591
+ p += `- 安全要求(认证/授权/数据保护)\n`;
592
+ p += `- 兼容性要求(浏览器/设备/系统版本)\n`;
593
+ p += `- 可用性要求(SLA/容灾)\n\n`;
594
+ p += `### F. 测试要点\n`;
595
+ p += `- 关键测试场景\n`;
596
+ p += `- 边界用例\n`;
597
+ p += `- 跨端集成测试点\n\n`;
480
598
  p += `## 输出结构\n\n`;
481
599
  p += `\`\`\`markdown\n`;
482
600
  p += `# ${iter} 迭代综合需求文档\n\n`;
483
601
  p += `> 全量分析合成 | 生成时间: {当前日期}\n\n`;
484
602
  p += `## 1. 需求概述\n`;
485
- p += `> 整体业务背景、目标用户、核心场景\n\n`;
603
+ p += `> 整体业务背景、目标用户、核心场景、成功指标\n\n`;
486
604
  p += `## 2. 功能单元\n\n`;
487
- p += `### 2.1 {功能单元名}\n`;
488
- p += `> 公共逻辑描述(多端共享)\n\n`;
605
+ p += `### 2.1 {功能单元名}\n\n`;
606
+ p += `#### 用户故事\n`;
607
+ p += `- As a {角色}, I want {操作}, so that {价值}\n\n`;
608
+ p += `#### 验收标准\n`;
609
+ p += `- Given {前置}, When {操作}, Then {结果}\n\n`;
489
610
  p += `#### 后端\n`;
490
- p += `- API 定义、数据模型、业务规则\n\n`;
611
+ p += `- API 定义、数据模型、业务规则、错误码\n\n`;
491
612
  p += `#### Web 前端\n`;
492
613
  p += `- 页面、组件、交互逻辑\n\n`;
493
614
  p += `#### Admin 端\n`;
494
615
  p += `- 管理页面、操作流程\n\n`;
495
616
  p += `#### 接口汇总\n`;
496
- p += `| 方法 | 路径 | 说明 | 端 |\n|:--|:--|:--|:--|\n\n`;
497
- p += `#### 验收标准\n`;
498
- p += `- AC1: ...\n\n`;
617
+ p += `| 方法 | 路径 | 说明 | 端 | 状态码 |\n|:--|:--|:--|:--|:--|\n\n`;
618
+ p += `#### 数据字典\n`;
619
+ p += `| 字段 | 类型 | 必填 | 默认值 | 约束 | 枚举值 | 说明 |\n|:--|:--|:--:|:--|:--|:--|:--|\n\n`;
620
+ p += `#### 非功能需求\n`;
621
+ p += `- 性能 / 安全 / 兼容性\n\n`;
622
+ p += `#### 测试要点\n`;
623
+ p += `- 关键场景 / 边界用例\n\n`;
499
624
  p += `### 2.2 {功能单元名}\n`;
500
625
  p += `...\n\n`;
501
- p += `## 3. 非功能需求\n\n`;
626
+ p += `## 3. 全局非功能需求\n`;
627
+ p += `> 跨功能单元的公共要求(性能/安全/可用性/兼容性)\n\n`;
502
628
  p += `## 4. ⚠️ 待确认事项\n`;
629
+ p += `> 自动检测到的冲突、缺失、不一致\n`;
503
630
  p += `\`\`\`\n\n`;
504
631
  p += `## 要求\n`;
505
632
  p += `1. 功能单元必须是业务维度的划分(不是技术维度)\n`;
@@ -507,7 +634,10 @@ function buildPhase3Prompt(iter, allSpecs, sourceDocs) {
507
634
  p += `3. 接口必须汇总,标注所属端\n`;
508
635
  p += `4. 输出完整 Markdown,不省略\n\n`;
509
636
  p += `## 写入命令\n`;
510
- p += `speccore synthesize --apply-phase 3 '{合成内容}' -I ${iter}\n`;
637
+ p += `speccore synthesize --apply-phase 3 '{合成内容}' -I ${iter}\n\n`;
638
+ p += `## 注意\n`;
639
+ p += `- 如果用户已在 010-requirements/ 下放置了自建需求文档,应优先参考其内容\n`;
640
+ p += `- 需求以产品文档为准,不要臆造需求\n`;
511
641
  return p;
512
642
  }
513
643
  // ================================================================
@@ -1 +1 @@
1
- {"version":3,"file":"synthesize.js","sourceRoot":"","sources":["../../src/commands/synthesize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"synthesize.js","sourceRoot":"","sources":["../../src/commands/synthesize.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "speccore",
3
- "version": "5.96.1",
3
+ "version": "5.97.0",
4
4
  "description": "SpecCore - Code by Spec, Not by Vibe.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",