speccore 6.18.3 → 6.30.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/.agents/skills/spec-execute/SKILL.md +7 -3
- package/dist/cli.js +1 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/analyze.d.ts +1 -0
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +234 -47
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/context-output.d.ts.map +1 -1
- package/dist/commands/context-output.js +19 -10
- package/dist/commands/context-output.js.map +1 -1
- package/dist/commands/doc2spec.js +1 -1
- package/dist/commands/doc2spec.js.map +1 -1
- package/dist/commands/execute.d.ts.map +1 -1
- package/dist/commands/execute.js +383 -101
- package/dist/commands/execute.js.map +1 -1
- package/dist/commands/global-status.js +2 -2
- package/dist/commands/global-status.js.map +1 -1
- package/dist/commands/import.d.ts +1 -1
- package/dist/commands/import.js +2 -4
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +36 -282
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/iteration/create.js +7 -10
- package/dist/commands/iteration/create.js.map +1 -1
- package/dist/commands/iteration/split.js +296 -131
- package/dist/commands/iteration/split.js.map +1 -1
- package/dist/commands/iteration-from-global.js +1 -1
- package/dist/commands/retro.d.ts.map +1 -1
- package/dist/commands/retro.js +60 -3
- package/dist/commands/retro.js.map +1 -1
- package/dist/commands/status-panel.d.ts.map +1 -1
- package/dist/commands/status-panel.js +24 -8
- package/dist/commands/status-panel.js.map +1 -1
- package/dist/commands/synthesize.d.ts +2 -2
- package/dist/commands/synthesize.js +146 -196
- package/dist/commands/synthesize.js.map +1 -1
- package/dist/commands/task/new.js +43 -26
- package/dist/commands/task/new.js.map +1 -1
- package/dist/core/ai-context-generator.js +1 -1
- package/dist/core/analyze-engine.d.ts.map +1 -1
- package/dist/core/analyze-engine.js +307 -9
- package/dist/core/analyze-engine.js.map +1 -1
- package/dist/core/execution-state.d.ts +24 -0
- package/dist/core/execution-state.d.ts.map +1 -1
- package/dist/core/execution-state.js +135 -0
- package/dist/core/execution-state.js.map +1 -1
- package/dist/core/knowledge-graph.d.ts.map +1 -1
- package/dist/core/knowledge-graph.js +190 -65
- package/dist/core/knowledge-graph.js.map +1 -1
- package/dist/core/next-steps.js +2 -2
- package/dist/core/next-steps.js.map +1 -1
- package/dist/core/prompt-builder.d.ts.map +1 -1
- package/dist/core/prompt-builder.js +43 -22
- package/dist/core/prompt-builder.js.map +1 -1
- package/dist/core/quality-audit.d.ts +41 -0
- package/dist/core/quality-audit.d.ts.map +1 -0
- package/dist/core/quality-audit.js +345 -0
- package/dist/core/quality-audit.js.map +1 -0
- package/dist/core/rag-engine.d.ts.map +1 -1
- package/dist/core/rag-engine.js +38 -6
- package/dist/core/rag-engine.js.map +1 -1
- package/dist/core/spec-merger.d.ts.map +1 -1
- package/dist/core/spec-merger.js +22 -27
- package/dist/core/spec-merger.js.map +1 -1
- package/dist/core/validator.d.ts.map +1 -1
- package/dist/core/validator.js +43 -0
- package/dist/core/validator.js.map +1 -1
- package/dist/core/verify-engine.d.ts +1 -1
- package/dist/core/verify-engine.d.ts.map +1 -1
- package/dist/core/verify-engine.js +71 -8
- package/dist/core/verify-engine.js.map +1 -1
- package/package.json +1 -1
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
*
|
|
11
11
|
* 模式 B: 全自动三阶段(--full)
|
|
12
12
|
* Phase 1: 逐端分析 → .speccore/GLOBAL/platforms/{端名}/ 各端独立 specs
|
|
13
|
-
* Phase 2:
|
|
14
|
-
* Phase 3:
|
|
13
|
+
* Phase 2: 跨端关系提取(直接读 PRD)→ .speccore/GLOBAL/synthesis/ CROSS_PLATFORM.md + ARCHITECTURE.md + TECH_FULL.md
|
|
14
|
+
* Phase 3: 生成索引 → .speccore/GLOBAL/INDEX.md(供 AI 导航)
|
|
15
15
|
* 旧版自动归档到 .speccore/GLOBAL/snapshots/{时间戳}/
|
|
16
16
|
* CLI: speccore synthesize --full -I <迭代名>
|
|
17
17
|
*
|
|
@@ -199,14 +199,14 @@ async function runFullPipeline(iter, iterDir, globalDir, specDir, reqDir, convDi
|
|
|
199
199
|
// Phase 2: 跨端综合
|
|
200
200
|
logger_1.logger.info(`\n━━━ Phase 2/3: 跨端综合 ━━━`);
|
|
201
201
|
await runPhase2(iter, iterDir, globalDir, specDir);
|
|
202
|
-
// Phase 3:
|
|
203
|
-
logger_1.logger.info(`\n━━━ Phase 3/3:
|
|
202
|
+
// Phase 3: 生成索引
|
|
203
|
+
logger_1.logger.info(`\n━━━ Phase 3/3: 生成索引 ━━━`);
|
|
204
204
|
await runPhase3(iter, iterDir, globalDir, specDir, reqDir, convDir, withCode);
|
|
205
205
|
logger_1.logger.info(`\n✅ 全量分析合成完成!`);
|
|
206
206
|
logger_1.logger.info(` 📄 .speccore/GLOBAL/platforms/ ← 各端分析结果`);
|
|
207
207
|
logger_1.logger.info(` 📄 .speccore/GLOBAL/synthesis/ ← 跨端综合文档`);
|
|
208
|
+
logger_1.logger.info(` 📄 .speccore/GLOBAL/INDEX.md ← 全局索引`);
|
|
208
209
|
logger_1.logger.info(` 📄 .speccore/GLOBAL/snapshots/ ← 历史快照`);
|
|
209
|
-
logger_1.logger.info(` 📄 010-requirements/REQUIREMENT.md ← 按功能单元组织的完整需求`);
|
|
210
210
|
}
|
|
211
211
|
// ================================================================
|
|
212
212
|
// Phase 1: 逐端分析
|
|
@@ -427,33 +427,37 @@ function buildPhase1Prompt(iter, entries, platformDocs) {
|
|
|
427
427
|
// Phase 2: 跨端综合
|
|
428
428
|
// ================================================================
|
|
429
429
|
async function runPhase2(iter, iterDir, globalDir, specDir) {
|
|
430
|
-
//
|
|
431
|
-
const
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
const platformEntries = await (0, fs_extra_1.readdir)(platformsDir, { withFileTypes: true });
|
|
439
|
-
for (const entry of platformEntries) {
|
|
440
|
-
if (entry.isDirectory()) {
|
|
441
|
-
const subFiles = await (0, fs_extra_1.readdir)((0, path_1.join)(platformsDir, entry.name));
|
|
442
|
-
for (const f of subFiles.filter(f => f.endsWith('.md'))) {
|
|
443
|
-
const content = await (0, fs_extra_1.readFile)((0, path_1.join)(platformsDir, entry.name, f), 'utf-8');
|
|
444
|
-
platformSpecs.push({ name: `${entry.name}/${f}`, content });
|
|
445
|
-
}
|
|
430
|
+
// 直接读取 PRD 原文(不再依赖 Phase 1 的二手分析)
|
|
431
|
+
const reqDir = (0, path_1.join)(iterDir, '010-requirements');
|
|
432
|
+
const prdDocs = [];
|
|
433
|
+
// 读取 converted/ 下的需求文档
|
|
434
|
+
const convDir = (0, path_1.join)(reqDir, 'converted');
|
|
435
|
+
if (await (0, fs_extra_1.pathExists)(convDir)) {
|
|
436
|
+
for (const f of (await (0, fs_extra_1.readdir)(convDir)).filter(f => f.endsWith('.md') && !(0, task_utils_1.isTimestampBackup)(f))) {
|
|
437
|
+
prdDocs.push({ name: f, content: await (0, fs_extra_1.readFile)((0, path_1.join)(convDir, f), 'utf-8') });
|
|
446
438
|
}
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
439
|
+
}
|
|
440
|
+
// 也读取 REQUIREMENT.md(如果存在且不是 converted/ 的副本)
|
|
441
|
+
const reqFile = (0, path_1.join)(reqDir, 'REQUIREMENT.md');
|
|
442
|
+
if (await (0, fs_extra_1.pathExists)(reqFile)) {
|
|
443
|
+
const content = await (0, fs_extra_1.readFile)(reqFile, 'utf-8');
|
|
444
|
+
if (!prdDocs.some(d => d.content === content)) {
|
|
445
|
+
prdDocs.push({ name: 'REQUIREMENT.md', content });
|
|
450
446
|
}
|
|
451
447
|
}
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
448
|
+
// features/ 下的补充需求
|
|
449
|
+
const featuresDir = (0, path_1.join)(reqDir, 'features');
|
|
450
|
+
if (await (0, fs_extra_1.pathExists)(featuresDir)) {
|
|
451
|
+
for (const e of await (0, fs_extra_1.readdir)(featuresDir, { withFileTypes: true })) {
|
|
452
|
+
if (e.isDirectory() && !e.name.startsWith('.')) {
|
|
453
|
+
const readme = (0, path_1.join)(featuresDir, e.name, 'README.md');
|
|
454
|
+
if (await (0, fs_extra_1.pathExists)(readme)) {
|
|
455
|
+
prdDocs.push({ name: `features/${e.name}/README.md`, content: await (0, fs_extra_1.readFile)(readme, 'utf-8') });
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
}
|
|
455
459
|
}
|
|
456
|
-
//
|
|
460
|
+
// 已有的 020-specs/ 作为补充参考
|
|
457
461
|
const existingSpecs = [];
|
|
458
462
|
if (await (0, fs_extra_1.pathExists)(specDir)) {
|
|
459
463
|
const specFiles = await (0, fs_extra_1.readdir)(specDir);
|
|
@@ -462,7 +466,7 @@ async function runPhase2(iter, iterDir, globalDir, specDir) {
|
|
|
462
466
|
existingSpecs.push({ name: f, content });
|
|
463
467
|
}
|
|
464
468
|
}
|
|
465
|
-
//
|
|
469
|
+
// GLOBAL/synthesis/ 下用户自建的文档作为补充
|
|
466
470
|
const synthesisDir = (0, path_1.join)(globalDir, 'synthesis');
|
|
467
471
|
if (await (0, fs_extra_1.pathExists)(synthesisDir)) {
|
|
468
472
|
const synFiles = await (0, fs_extra_1.readdir)(synthesisDir);
|
|
@@ -471,21 +475,31 @@ async function runPhase2(iter, iterDir, globalDir, specDir) {
|
|
|
471
475
|
existingSpecs.push({ name: `GLOBAL/synthesis/${f}`, content });
|
|
472
476
|
}
|
|
473
477
|
}
|
|
474
|
-
|
|
478
|
+
if (prdDocs.length === 0) {
|
|
479
|
+
logger_1.logger.warn('未找到 PRD 需求文档,请先导入: speccore doc2spec -f <文件> --iter <迭代名>');
|
|
480
|
+
return;
|
|
481
|
+
}
|
|
482
|
+
const prompt = buildPhase2Prompt(iter, prdDocs, existingSpecs, synthesisDir);
|
|
475
483
|
process.stdout.write(`[SPECCORE_PHASE2]\n${prompt}`);
|
|
476
484
|
process.exitCode = 11;
|
|
477
485
|
}
|
|
478
|
-
function buildPhase2Prompt(iter,
|
|
479
|
-
let p = `# Phase 2:
|
|
486
|
+
function buildPhase2Prompt(iter, prdDocs, existingSpecs, synthesisDir) {
|
|
487
|
+
let p = `# Phase 2: 跨端关系提取\n\n`;
|
|
480
488
|
p += `## 目标\n`;
|
|
481
|
-
p +=
|
|
482
|
-
p += `1. **CROSS_PLATFORM.md** —
|
|
483
|
-
p += `2. **ARCHITECTURE.md** —
|
|
484
|
-
p += `3. **TECH_FULL.md** —
|
|
485
|
-
p +=
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
+
p += `从迭代「${iter}」的 PRD 原文中直接提取跨端关系,生成三份跨端文档:\n`;
|
|
490
|
+
p += `1. **CROSS_PLATFORM.md** — 跨端业务关系:接口映射、数据流向、共享实体\n`;
|
|
491
|
+
p += `2. **ARCHITECTURE.md** — 系统架构全景:技术栈、部署、安全、监控\n`;
|
|
492
|
+
p += `3. **TECH_FULL.md** — 跨端技术方案:API 汇总、共享模型、技术约束\n\n`;
|
|
493
|
+
p += `> ⚠️ 核心原则:从 PRD 中**提取**已有信息,不做二次分析推断\n\n`;
|
|
494
|
+
// 工程配置
|
|
495
|
+
p += `## 工程配置\n\n`;
|
|
496
|
+
p += `| 工程 | 源码路径 | 对应需求端 |\n`;
|
|
497
|
+
p += `|:--|:--|:--|\n`;
|
|
498
|
+
p += `> 从 PRD 内容推断工程与端的关系\n\n`;
|
|
499
|
+
p += `## PRD 原文\n\n`;
|
|
500
|
+
for (const doc of prdDocs) {
|
|
501
|
+
p += `### ${doc.name}\n\n`;
|
|
502
|
+
p += doc.content.slice(0, 8000);
|
|
489
503
|
p += `\n\n---\n\n`;
|
|
490
504
|
}
|
|
491
505
|
if (existingSpecs.length > 0) {
|
|
@@ -496,32 +510,33 @@ function buildPhase2Prompt(iter, platformSpecs, existingSpecs) {
|
|
|
496
510
|
p += `\n\n---\n\n`;
|
|
497
511
|
}
|
|
498
512
|
}
|
|
499
|
-
|
|
513
|
+
// ── 提取要求 ──
|
|
514
|
+
p += `## 提取要求\n\n`;
|
|
500
515
|
p += `### CROSS_PLATFORM.md — 跨端业务关系\n\n`;
|
|
501
|
-
p +=
|
|
502
|
-
p += `
|
|
503
|
-
p += `
|
|
504
|
-
p += `
|
|
505
|
-
p += `
|
|
506
|
-
p += `
|
|
507
|
-
p +=
|
|
508
|
-
p += `
|
|
509
|
-
p += `
|
|
510
|
-
p +=
|
|
511
|
-
p +=
|
|
512
|
-
p += `
|
|
513
|
-
p += `
|
|
514
|
-
p += `
|
|
515
|
-
p += `
|
|
516
|
-
p +=
|
|
517
|
-
p +=
|
|
518
|
-
p +=
|
|
519
|
-
p += `
|
|
520
|
-
p += `
|
|
521
|
-
p += `
|
|
522
|
-
p += `
|
|
523
|
-
p += `
|
|
524
|
-
p += `
|
|
516
|
+
p += `从 PRD 中提取以下跨端关系(**提取,不是推断**):\n`;
|
|
517
|
+
p += `1. **接口映射表**:列出 PRD 中所有 API 接口,标注每个接口被哪些端调用\n`;
|
|
518
|
+
p += ` - 格式:方法 | 路径 | 说明 | 提供端 | 消费端\n`;
|
|
519
|
+
p += `2. **共享数据模型**:哪些数据实体被多端共享(从 PRD 数据字典提取)\n`;
|
|
520
|
+
p += ` - 标注每个实体被哪些端读写\n`;
|
|
521
|
+
p += `3. **数据流向图**(Mermaid flowchart):数据在生产端和消费端之间的流动\n`;
|
|
522
|
+
p += `4. **跨端调用关系图**(Mermaid sequenceDiagram):典型业务流程中各端的交互顺序\n`;
|
|
523
|
+
p += `5. **端专属功能清单**:哪些功能只属于某一个端(从 PRD 的端标注章节提取)\n`;
|
|
524
|
+
p += `6. **状态流转中各端角色**:谁触发状态变更、谁消费状态变更\n\n`;
|
|
525
|
+
p += `### ARCHITECTURE.md — 系统架构\n\n`;
|
|
526
|
+
p += `从 PRD 中提取架构信息:\n`;
|
|
527
|
+
p += `1. **系统架构图**(Mermaid):所有端 + 后端服务 + 数据库 + 中间件\n`;
|
|
528
|
+
p += `2. **技术栈汇总**:从 PRD 推断每端的语言/框架/协议\n`;
|
|
529
|
+
p += `3. **认证授权链路**:从 PRD 认证模块提取(如 JWT 流程、Token 刷新)\n`;
|
|
530
|
+
p += `4. **数据架构**:核心数据模型 + 关系(从 PRD 数据字典提取)\n`;
|
|
531
|
+
p += `5. **非功能需求汇总**:性能/安全/可用性/兼容性(从 PRD 非功能需求章节提取)\n\n`;
|
|
532
|
+
p += `### TECH_FULL.md — 跨端技术方案\n\n`;
|
|
533
|
+
p += `从 PRD 中提取技术要点:\n`;
|
|
534
|
+
p += `1. **API 接口汇总**:所有端的所有接口,按模块分组,标注所属端\n`;
|
|
535
|
+
p += `2. **共享数据模型**:统一的数据字典(从 PRD 提取,不重新定义)\n`;
|
|
536
|
+
p += `3. **各端技术约束**:从 PRD 端专属章节提取(如 H5 适配、小程序包限制等)\n`;
|
|
537
|
+
p += `4. **性能要求**:从 PRD 提取具体指标(如 P95 < 500ms、首屏 < 2s)\n`;
|
|
538
|
+
p += `5. **安全要求**:从 PRD 提取(如 JWT 认证、HTTPS、加密方案)\n`;
|
|
539
|
+
p += `6. **容量规划线索**:从 PRD 提取用户量/数据量级等线索\n\n`;
|
|
525
540
|
p += `## 输出格式\n\n`;
|
|
526
541
|
p += `请将三个文档用以下分隔标记分开:\n`;
|
|
527
542
|
p += `\`\`\`\n`;
|
|
@@ -534,161 +549,96 @@ function buildPhase2Prompt(iter, platformSpecs, existingSpecs) {
|
|
|
534
549
|
p += `## 注意\n`;
|
|
535
550
|
p += `- 如果用户已在 .speccore/GLOBAL/synthesis/ 下放置了自建文档,应优先参考其内容\n`;
|
|
536
551
|
p += `- 三个文档都必须输出,用分隔标记分开\n`;
|
|
537
|
-
p += `-
|
|
552
|
+
p += `- **以 PRD 为准**,提取已有信息,不要臆造 PRD 中没有的内容\n`;
|
|
553
|
+
p += `- 如果 PRD 中某个维度没有描述,写"PRD 未涉及"而不是自行推断\n`;
|
|
538
554
|
return p;
|
|
539
555
|
}
|
|
540
556
|
// ================================================================
|
|
541
|
-
// Phase 3:
|
|
557
|
+
// Phase 3: 生成索引(替代原"功能单元合成")
|
|
542
558
|
// ================================================================
|
|
543
559
|
async function runPhase3(iter, iterDir, globalDir, specDir, reqDir, convDir, withCode) {
|
|
544
|
-
//
|
|
545
|
-
|
|
546
|
-
|
|
560
|
+
// Phase 3 不再合成合并文档,改为生成全局索引
|
|
561
|
+
await generatePhase3Index(iter, iterDir, globalDir, specDir, reqDir);
|
|
562
|
+
}
|
|
563
|
+
// ================================================================
|
|
564
|
+
// Phase 3 索引生成
|
|
565
|
+
// ================================================================
|
|
566
|
+
async function generatePhase3Index(iter, iterDir, globalDir, specDir, reqDir) {
|
|
567
|
+
const lines = [];
|
|
568
|
+
lines.push(`# ${iter} 迭代 — 全局知识索引`);
|
|
569
|
+
lines.push(`> 自动生成于 ${new Date().toISOString().split('T')[0]},供 analyze/split/execute 智能注入\n`);
|
|
570
|
+
// 工程列表
|
|
571
|
+
lines.push(`## 工程列表\n`);
|
|
572
|
+
try {
|
|
573
|
+
const entries = await parseConstitution();
|
|
574
|
+
for (const e of entries) {
|
|
575
|
+
lines.push(`- **${e.project}** (${e.srcPath}) → 端: ${e.platforms.join(', ')}`);
|
|
576
|
+
}
|
|
577
|
+
}
|
|
578
|
+
catch { /* ignore */ }
|
|
579
|
+
lines.push('');
|
|
580
|
+
// 各端分析文档(Phase 1 产出)
|
|
547
581
|
const platformsDir = (0, path_1.join)(globalDir, 'platforms');
|
|
548
582
|
if (await (0, fs_extra_1.pathExists)(platformsDir)) {
|
|
549
|
-
|
|
550
|
-
|
|
583
|
+
lines.push(`## 各端分析文档\n`);
|
|
584
|
+
lines.push(`> Phase 1 逐端专业分析,各端独立\n`);
|
|
585
|
+
const entries = await (0, fs_extra_1.readdir)(platformsDir, { withFileTypes: true });
|
|
586
|
+
for (const entry of entries) {
|
|
551
587
|
if (entry.isDirectory()) {
|
|
552
|
-
const
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
588
|
+
const files = (await (0, fs_extra_1.readdir)((0, path_1.join)(platformsDir, entry.name)))
|
|
589
|
+
.filter(f => f.endsWith('.md') && !(0, task_utils_1.isTimestampBackup)(f));
|
|
590
|
+
lines.push(`- **${entry.name}** (${files.length} 个文档)`);
|
|
591
|
+
for (const f of files) {
|
|
592
|
+
lines.push(` - \`${(0, path_1.join)('platforms', entry.name, f)}\``);
|
|
556
593
|
}
|
|
557
594
|
}
|
|
558
|
-
else if (entry.name.endsWith('.md')) {
|
|
559
|
-
const content = await (0, fs_extra_1.readFile)((0, path_1.join)(platformsDir, entry.name), 'utf-8');
|
|
560
|
-
allSpecs.push({ name: `GLOBAL/platforms/${entry.name}`, content });
|
|
561
|
-
}
|
|
562
595
|
}
|
|
596
|
+
lines.push('');
|
|
563
597
|
}
|
|
564
|
-
// Phase 2
|
|
598
|
+
// 跨端综合文档(Phase 2 产出)
|
|
565
599
|
const synthesisDir = (0, path_1.join)(globalDir, 'synthesis');
|
|
566
600
|
if (await (0, fs_extra_1.pathExists)(synthesisDir)) {
|
|
567
|
-
|
|
568
|
-
|
|
601
|
+
lines.push(`## 跨端综合文档\n`);
|
|
602
|
+
lines.push(`> Phase 2 从 PRD 直接提取的跨端关系\n`);
|
|
603
|
+
const files = (await (0, fs_extra_1.readdir)(synthesisDir)).filter(f => f.endsWith('.md') && !(0, task_utils_1.isTimestampBackup)(f));
|
|
604
|
+
for (const f of files) {
|
|
605
|
+
const content = await (0, fs_extra_1.readFile)((0, path_1.join)(synthesisDir, f), 'utf-8');
|
|
606
|
+
const firstSection = content.match(/##\s+(.+)/);
|
|
607
|
+
lines.push(`- **${f}**${firstSection ? ` — ${firstSection[1]}` : ''}`);
|
|
608
|
+
lines.push(` - \`${(0, path_1.join)('synthesis', f)}\``);
|
|
569
609
|
}
|
|
610
|
+
lines.push('');
|
|
570
611
|
}
|
|
571
|
-
//
|
|
572
|
-
|
|
573
|
-
if (await (0, fs_extra_1.pathExists)(
|
|
574
|
-
|
|
575
|
-
|
|
612
|
+
// 原始需求文档导航
|
|
613
|
+
lines.push(`## 原始需求文档\n`);
|
|
614
|
+
if (await (0, fs_extra_1.pathExists)((0, path_1.join)(reqDir, 'converted'))) {
|
|
615
|
+
const convFiles = (await (0, fs_extra_1.readdir)((0, path_1.join)(reqDir, 'converted')))
|
|
616
|
+
.filter(f => f.endsWith('.md') && !(0, task_utils_1.isTimestampBackup)(f));
|
|
617
|
+
for (const f of convFiles) {
|
|
618
|
+
lines.push(`- \`${(0, path_1.join)('010-requirements/converted', f)}\``);
|
|
576
619
|
}
|
|
577
620
|
}
|
|
578
|
-
// features/ 下
|
|
579
621
|
const featuresDir = (0, path_1.join)(reqDir, 'features');
|
|
580
622
|
if (await (0, fs_extra_1.pathExists)(featuresDir)) {
|
|
581
|
-
|
|
623
|
+
const featureEntries = await (0, fs_extra_1.readdir)(featuresDir, { withFileTypes: true });
|
|
624
|
+
for (const e of featureEntries) {
|
|
582
625
|
if (e.isDirectory() && !e.name.startsWith('.')) {
|
|
583
|
-
|
|
584
|
-
if (await (0, fs_extra_1.pathExists)(readme)) {
|
|
585
|
-
sourceDocs.push({ name: `features/${e.name}/README.md`, content: await (0, fs_extra_1.readFile)(readme, 'utf-8') });
|
|
586
|
-
}
|
|
626
|
+
lines.push(`- \`${(0, path_1.join)('010-requirements/features', e.name, 'README.md')}\``);
|
|
587
627
|
}
|
|
588
628
|
}
|
|
589
629
|
}
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
p += `每个功能单元一个章节,包含该功能关联的所有端的需求。\n\n`;
|
|
603
|
-
p += `## 输入:全量分析结果\n\n`;
|
|
604
|
-
for (const spec of allSpecs) {
|
|
605
|
-
p += `### ${spec.name}\n\n`;
|
|
606
|
-
p += spec.content.slice(0, 6000);
|
|
607
|
-
p += `\n\n---\n\n`;
|
|
608
|
-
}
|
|
609
|
-
if (sourceDocs.length > 0) {
|
|
610
|
-
p += `## 输入:原始需求文档\n\n`;
|
|
611
|
-
for (const doc of sourceDocs) {
|
|
612
|
-
p += `### ${doc.name}\n\n`;
|
|
613
|
-
p += doc.content.slice(0, 4000);
|
|
614
|
-
p += `\n\n---\n\n`;
|
|
615
|
-
}
|
|
616
|
-
}
|
|
617
|
-
p += `## 合成原则(业内专业级)\n\n`;
|
|
618
|
-
p += `1. **按功能单元组织**:一个功能单元一个章节,不按端拆分\n`;
|
|
619
|
-
p += `2. **全端聚合**:每个功能单元包含所有相关端的需求\n`;
|
|
620
|
-
p += `3. **公共逻辑只写一次**:多端共享的逻辑放在章节开头\n`;
|
|
621
|
-
p += `4. **端差异用子标题**:\`#### {端名} 端\` 子标题标出差异\n`;
|
|
622
|
-
p += `5. **接口汇总**:同一功能的接口放一起,用表格标注所属端\n`;
|
|
623
|
-
p += `6. **冲突标记**:需求矛盾用 ⚠️ 标注,汇总到“待确认事项”\n\n`;
|
|
624
|
-
p += `## 每个功能单元必须包含的内容\n\n`;
|
|
625
|
-
p += `### A. 用户故事与验收标准\n`;
|
|
626
|
-
p += `- 用户故事:As a {角色}, I want {操作}, so that {价值}\n`;
|
|
627
|
-
p += `- 验收标准(Given/When/Then 格式):\n`;
|
|
628
|
-
p += ` - Given {前置条件}, When {操作}, Then {预期结果}\n\n`;
|
|
629
|
-
p += `### B. 各端需求详情\n`;
|
|
630
|
-
p += `- 后端:API 定义、数据模型、业务规则、错误码\n`;
|
|
631
|
-
p += `- 前端:页面/组件/路由/交互逻辑/状态管理\n`;
|
|
632
|
-
p += `- 管理端:管理页面/操作流程/权限控制\n\n`;
|
|
633
|
-
p += `### C. 接口汇总\n`;
|
|
634
|
-
p += `- 统一接口表格:方法 | 路径 | 说明 | 端 | 状态码\n`;
|
|
635
|
-
p += `- 请求/响应示例(JSON)\n\n`;
|
|
636
|
-
p += `### D. 数据字典\n`;
|
|
637
|
-
p += `- 字段级定义:字段名 | 类型 | 必填 | 默认值 | 约束 | 枚举值 | 说明\n`;
|
|
638
|
-
p += `- 状态机流转(如有):状态 → 触发条件 → 目标状态\n\n`;
|
|
639
|
-
p += `### E. 非功能需求\n`;
|
|
640
|
-
p += `- 性能要求(响应时间/并发量)\n`;
|
|
641
|
-
p += `- 安全要求(认证/授权/数据保护)\n`;
|
|
642
|
-
p += `- 兼容性要求(浏览器/设备/系统版本)\n`;
|
|
643
|
-
p += `- 可用性要求(SLA/容灾)\n\n`;
|
|
644
|
-
p += `### F. 测试要点\n`;
|
|
645
|
-
p += `- 关键测试场景\n`;
|
|
646
|
-
p += `- 边界用例\n`;
|
|
647
|
-
p += `- 跨端集成测试点\n\n`;
|
|
648
|
-
p += `## 输出结构\n\n`;
|
|
649
|
-
p += `\`\`\`markdown\n`;
|
|
650
|
-
p += `# ${iter} 迭代综合需求文档\n\n`;
|
|
651
|
-
p += `> 全量分析合成 | 生成时间: {当前日期}\n\n`;
|
|
652
|
-
p += `## 1. 需求概述\n`;
|
|
653
|
-
p += `> 整体业务背景、目标用户、核心场景、成功指标\n\n`;
|
|
654
|
-
p += `## 2. 功能单元\n\n`;
|
|
655
|
-
p += `### 2.1 {功能单元名}\n\n`;
|
|
656
|
-
p += `#### 用户故事\n`;
|
|
657
|
-
p += `- As a {角色}, I want {操作}, so that {价值}\n\n`;
|
|
658
|
-
p += `#### 验收标准\n`;
|
|
659
|
-
p += `- Given {前置}, When {操作}, Then {结果}\n\n`;
|
|
660
|
-
p += `#### 后端\n`;
|
|
661
|
-
p += `- API 定义、数据模型、业务规则、错误码\n\n`;
|
|
662
|
-
p += `#### Web 前端\n`;
|
|
663
|
-
p += `- 页面、组件、交互逻辑\n\n`;
|
|
664
|
-
p += `#### Admin 端\n`;
|
|
665
|
-
p += `- 管理页面、操作流程\n\n`;
|
|
666
|
-
p += `#### 接口汇总\n`;
|
|
667
|
-
p += `| 方法 | 路径 | 说明 | 端 | 状态码 |\n|:--|:--|:--|:--|:--|\n\n`;
|
|
668
|
-
p += `#### 数据字典\n`;
|
|
669
|
-
p += `| 字段 | 类型 | 必填 | 默认值 | 约束 | 枚举值 | 说明 |\n|:--|:--|:--:|:--|:--|:--|:--|\n\n`;
|
|
670
|
-
p += `#### 非功能需求\n`;
|
|
671
|
-
p += `- 性能 / 安全 / 兼容性\n\n`;
|
|
672
|
-
p += `#### 测试要点\n`;
|
|
673
|
-
p += `- 关键场景 / 边界用例\n\n`;
|
|
674
|
-
p += `### 2.2 {功能单元名}\n`;
|
|
675
|
-
p += `...\n\n`;
|
|
676
|
-
p += `## 3. 全局非功能需求\n`;
|
|
677
|
-
p += `> 跨功能单元的公共要求(性能/安全/可用性/兼容性)\n\n`;
|
|
678
|
-
p += `## 4. ⚠️ 待确认事项\n`;
|
|
679
|
-
p += `> 自动检测到的冲突、缺失、不一致\n`;
|
|
680
|
-
p += `\`\`\`\n\n`;
|
|
681
|
-
p += `## 要求\n`;
|
|
682
|
-
p += `1. 功能单元必须是业务维度的划分(不是技术维度)\n`;
|
|
683
|
-
p += `2. 每个功能单元必须包含所有相关端的需求\n`;
|
|
684
|
-
p += `3. 接口必须汇总,标注所属端\n`;
|
|
685
|
-
p += `4. 输出完整 Markdown,不省略\n\n`;
|
|
686
|
-
p += `## 写入命令\n`;
|
|
687
|
-
p += `speccore synthesize --apply-phase 3 '{合成内容}' -I ${iter}\n\n`;
|
|
688
|
-
p += `## 注意\n`;
|
|
689
|
-
p += `- 如果用户已在 010-requirements/ 下放置了自建需求文档,应优先参考其内容\n`;
|
|
690
|
-
p += `- 需求以产品文档为准,不要臆造需求\n`;
|
|
691
|
-
return p;
|
|
630
|
+
lines.push('');
|
|
631
|
+
// 使用指南
|
|
632
|
+
lines.push(`## 使用指南\n`);
|
|
633
|
+
lines.push(`- **analyze 命令**:读取对应端的分析文档 + 跨端综合文档作为上下文`);
|
|
634
|
+
lines.push(`- **split 命令**:读取 CROSS_PLATFORM.md 了解跨端关系,按端拆分任务`);
|
|
635
|
+
lines.push(`- **execute 命令**:读取对应端的分析文档 + 共享数据模型`);
|
|
636
|
+
lines.push(`- **更新时机**:PRD 变更后重新运行 synthesize --phase 2 刷新跨端文档\n`);
|
|
637
|
+
// 写入
|
|
638
|
+
const indexPath = (0, path_1.join)(globalDir, 'INDEX.md');
|
|
639
|
+
await (0, fs_extra_1.ensureDir)(globalDir);
|
|
640
|
+
await (0, fs_extra_1.writeFile)(indexPath, lines.join('\n'));
|
|
641
|
+
logger_1.logger.info(` 📇 全局索引已生成: .speccore/GLOBAL/INDEX.md`);
|
|
692
642
|
}
|
|
693
643
|
// ================================================================
|
|
694
644
|
// 生成 GLOBAL/INDEX.md 轻量索引
|
|
@@ -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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"}
|