speccore 8.3.175 → 8.3.177
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/dist/cli.js +13 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/analyze.d.ts +1 -1
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +118 -0
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/doc2spec.d.ts +1 -0
- package/dist/commands/doc2spec.d.ts.map +1 -1
- package/dist/commands/doc2spec.js +131 -0
- package/dist/commands/doc2spec.js.map +1 -1
- package/dist/commands/units.d.ts +10 -0
- package/dist/commands/units.d.ts.map +1 -0
- package/dist/commands/units.js +280 -0
- package/dist/commands/units.js.map +1 -0
- package/dist/core/feature-metadata.d.ts +45 -0
- package/dist/core/feature-metadata.d.ts.map +1 -0
- package/dist/core/feature-metadata.js +180 -0
- package/dist/core/feature-metadata.js.map +1 -0
- package/dist/core/handoff-generator.d.ts +14 -0
- package/dist/core/handoff-generator.d.ts.map +1 -0
- package/dist/core/handoff-generator.js +218 -0
- package/dist/core/handoff-generator.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doc2spec.d.ts","sourceRoot":"","sources":["../../src/commands/doc2spec.ts"],"names":[],"mappings":"AAuGA,eAGA,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAS7C,CAAC;AAYF,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"doc2spec.d.ts","sourceRoot":"","sources":["../../src/commands/doc2spec.ts"],"names":[],"mappings":"AAuGA,eAGA,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAS7C,CAAC;AAYF,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwD9E"}
|
|
@@ -417,6 +417,12 @@ async function processSingle(options) {
|
|
|
417
417
|
logger_1.logger.info(` 3. speccore iteration split`);
|
|
418
418
|
logger_1.logger.info(` 4. speccore execute --task=Task-001 --force`);
|
|
419
419
|
}
|
|
420
|
+
// ── 功能单元拆分(--split)──
|
|
421
|
+
if (options.split && !taskId) {
|
|
422
|
+
logger_1.logger.info('');
|
|
423
|
+
logger_1.logger.info('🔪 开始功能单元拆分...');
|
|
424
|
+
await splitDocumentToUnits(iterDir, outputPath, platformLabel, (0, path_1.basename)(options.file));
|
|
425
|
+
}
|
|
420
426
|
}
|
|
421
427
|
catch (error) {
|
|
422
428
|
spinner.fail(`转换失败: ${error}`);
|
|
@@ -742,4 +748,129 @@ async function importExcelBugList(file, iteration) {
|
|
|
742
748
|
logger_1.logger.info(` speccore analyze --prompt -I ${iteration}`);
|
|
743
749
|
logger_1.logger.info(` speccore execute --prompt -t Task-001 -I ${iteration}`);
|
|
744
750
|
}
|
|
751
|
+
/**
|
|
752
|
+
* 将转换后的文档拆分为功能单元,写入 features/
|
|
753
|
+
*/
|
|
754
|
+
async function splitDocumentToUnits(iterDir, outputPath, platformLabel, sourceFileName) {
|
|
755
|
+
const content = await (0, fs_extra_1.readFile)(outputPath, 'utf-8');
|
|
756
|
+
const units = scanUnits(content);
|
|
757
|
+
if (units.length === 0) {
|
|
758
|
+
logger_1.logger.warn('未检测到可拆分的功能单元,跳过拆分');
|
|
759
|
+
return;
|
|
760
|
+
}
|
|
761
|
+
logger_1.logger.info(`🔍 检测到 ${units.length} 个候选功能单元`);
|
|
762
|
+
for (const u of units) {
|
|
763
|
+
logger_1.logger.info(` • ${u.title}`);
|
|
764
|
+
}
|
|
765
|
+
const featuresDir = (0, path_1.join)(iterDir, '010-requirements', 'features');
|
|
766
|
+
await (0, fs_extra_1.ensureDir)(featuresDir);
|
|
767
|
+
let written = 0;
|
|
768
|
+
for (const unit of units) {
|
|
769
|
+
const unitDirName = sanitizeUnitName(unit.title);
|
|
770
|
+
const unitDir = (0, path_1.join)(featuresDir, unitDirName);
|
|
771
|
+
await (0, fs_extra_1.ensureDir)(unitDir);
|
|
772
|
+
await (0, fs_extra_1.ensureDir)((0, path_1.join)(unitDir, '.meta'));
|
|
773
|
+
const unitContent = extractUnitContent(content, unit);
|
|
774
|
+
const readmePath = (0, path_1.join)(unitDir, 'README.md');
|
|
775
|
+
await (0, fs_extra_1.writeFile)(readmePath, unitContent);
|
|
776
|
+
// 来源标记
|
|
777
|
+
const sourceMeta = `---\norigin: doc2spec\nsource_file: ${sourceFileName}\nsource_section: "${unit.sourceSection}"\nplatform: ${platformLabel}\ncreated_at: ${new Date().toISOString().split('T')[0]}\nstatus: draft\n---\n`;
|
|
778
|
+
await (0, fs_extra_1.writeFile)((0, path_1.join)(unitDir, '.meta', 'source'), sourceMeta);
|
|
779
|
+
// 端覆盖矩阵(初始值,后续由 analyze / 用户调整)
|
|
780
|
+
const platforms = platformLabel
|
|
781
|
+
.split(/[,,;;]/)
|
|
782
|
+
.map(p => p.trim())
|
|
783
|
+
.filter(Boolean);
|
|
784
|
+
const matrixContent = `# ${unit.title} - 端覆盖矩阵\n\nfeature: ${unit.title}\nplatforms:\n${platforms.map(p => ` - ${p}`).join('\n') || ' - backend'}\ndependencies: []\napis: []\n`;
|
|
785
|
+
await (0, fs_extra_1.writeFile)((0, path_1.join)(unitDir, '_matrix.md'), matrixContent);
|
|
786
|
+
// 初始变更记录
|
|
787
|
+
const changelogContent = `# ${unit.title} - 变更履历\n\n## v1 - ${new Date().toISOString().split('T')[0]}\n**类型**: 新增\n**来源**: doc2spec --split\n**说明**: 从 ${sourceFileName} 的「${unit.sourceSection}」章节拆分\n`;
|
|
788
|
+
await (0, fs_extra_1.writeFile)((0, path_1.join)(unitDir, 'CHANGELOG.md'), changelogContent);
|
|
789
|
+
written++;
|
|
790
|
+
logger_1.logger.info(` ✅ ${unit.title} → features/${unitDirName}/`);
|
|
791
|
+
}
|
|
792
|
+
// 更新 features/INDEX.md
|
|
793
|
+
const featuresIndexPath = (0, path_1.join)(featuresDir, 'INDEX.md');
|
|
794
|
+
let featuresIndex = '# 功能单元索引\n\n> 由 doc2spec --split 自动生成\n\n';
|
|
795
|
+
featuresIndex += '| 功能单元 | 来源章节 | 状态 | 涉及端 |\n';
|
|
796
|
+
featuresIndex += '| :--- | :--- | :--- | :--- |\n';
|
|
797
|
+
for (const unit of units) {
|
|
798
|
+
featuresIndex += `| ${unit.title} | ${unit.sourceSection} | draft | ${platformLabel} |\n`;
|
|
799
|
+
}
|
|
800
|
+
await (0, fs_extra_1.writeFile)(featuresIndexPath, featuresIndex);
|
|
801
|
+
logger_1.logger.success(`✅ 已拆分 ${written} 个功能单元到 features/`);
|
|
802
|
+
logger_1.logger.info(` 📂 ${featuresDir}/`);
|
|
803
|
+
}
|
|
804
|
+
/**
|
|
805
|
+
* 扫描 Markdown 内容,识别功能单元边界
|
|
806
|
+
* 策略:以 ## 级别标题作为功能单元主边界,### 作为子章节
|
|
807
|
+
*/
|
|
808
|
+
function scanUnits(content) {
|
|
809
|
+
const lines = content.split('\n');
|
|
810
|
+
const units = [];
|
|
811
|
+
let currentUnit = null;
|
|
812
|
+
for (let i = 0; i < lines.length; i++) {
|
|
813
|
+
const line = lines[i];
|
|
814
|
+
const h2Match = line.match(/^##\s+(.+)$/);
|
|
815
|
+
const h3Match = line.match(/^###\s+(.+)$/);
|
|
816
|
+
if (h2Match) {
|
|
817
|
+
// 结束上一个单元
|
|
818
|
+
if (currentUnit) {
|
|
819
|
+
currentUnit.endLine = i - 1;
|
|
820
|
+
units.push(currentUnit);
|
|
821
|
+
}
|
|
822
|
+
// 开始新单元
|
|
823
|
+
currentUnit = {
|
|
824
|
+
title: h2Match[1].trim(),
|
|
825
|
+
level: 2,
|
|
826
|
+
startLine: i,
|
|
827
|
+
endLine: lines.length - 1,
|
|
828
|
+
sourceSection: h2Match[1].trim(),
|
|
829
|
+
};
|
|
830
|
+
}
|
|
831
|
+
else if (h3Match && !currentUnit) {
|
|
832
|
+
// 如果文档以 ### 开头(没有 ##),以 ### 作为单元边界
|
|
833
|
+
currentUnit = {
|
|
834
|
+
title: h3Match[1].trim(),
|
|
835
|
+
level: 3,
|
|
836
|
+
startLine: i,
|
|
837
|
+
endLine: lines.length - 1,
|
|
838
|
+
sourceSection: h3Match[1].trim(),
|
|
839
|
+
};
|
|
840
|
+
}
|
|
841
|
+
}
|
|
842
|
+
// 结束最后一个单元
|
|
843
|
+
if (currentUnit) {
|
|
844
|
+
currentUnit.endLine = lines.length - 1;
|
|
845
|
+
units.push(currentUnit);
|
|
846
|
+
}
|
|
847
|
+
// 过滤掉非功能单元的章节(如"附录"、"术语表"等)
|
|
848
|
+
const skipPatterns = /^(附录|术语表|参考文献|目录|引言|概述|总结|致谢|版权声明|修订记录|changelog|glossary|references|table of contents|introduction|overview|summary|acknowledgments)/i;
|
|
849
|
+
return units.filter(u => !skipPatterns.test(u.title));
|
|
850
|
+
}
|
|
851
|
+
/**
|
|
852
|
+
* 提取指定单元的内容
|
|
853
|
+
*/
|
|
854
|
+
function extractUnitContent(content, unit) {
|
|
855
|
+
const lines = content.split('\n');
|
|
856
|
+
const unitLines = lines.slice(unit.startLine, unit.endLine + 1);
|
|
857
|
+
// 如果单元内容太短(<10行),可能是一个无效单元,返回原始内容
|
|
858
|
+
if (unitLines.length < 10) {
|
|
859
|
+
return unitLines.join('\n');
|
|
860
|
+
}
|
|
861
|
+
// 构建单元文档
|
|
862
|
+
let result = `# ${unit.title}\n\n`;
|
|
863
|
+
result += `> 来源: ${unit.sourceSection}\n> 生成时间: ${new Date().toISOString().split('T')[0]}\n\n`;
|
|
864
|
+
result += unitLines.join('\n');
|
|
865
|
+
return result;
|
|
866
|
+
}
|
|
867
|
+
/**
|
|
868
|
+
* 清理单元名称,用于目录名
|
|
869
|
+
*/
|
|
870
|
+
function sanitizeUnitName(name) {
|
|
871
|
+
return name
|
|
872
|
+
.replace(/[^a-zA-Z0-9\u4e00-\u9fa5\-_]/g, '')
|
|
873
|
+
.replace(/^-+|-+$/g, '')
|
|
874
|
+
.slice(0, 50) || 'untitled';
|
|
875
|
+
}
|
|
745
876
|
//# sourceMappingURL=doc2spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doc2spec.js","sourceRoot":"","sources":["../../src/commands/doc2spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doc2spec.js","sourceRoot":"","sources":["../../src/commands/doc2spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"units.d.ts","sourceRoot":"","sources":["../../src/commands/units.ts"],"names":[],"mappings":"AAaA,UAAU,YAAY;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAkDvE"}
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.unitsCommand = unitsCommand;
|
|
4
|
+
/**
|
|
5
|
+
* units — 功能单元管理
|
|
6
|
+
*
|
|
7
|
+
* 管理 010-requirements/features/ 下的功能单元:
|
|
8
|
+
* - 列出、查看、调整功能单元
|
|
9
|
+
* - 交互式合并、拆分、重命名
|
|
10
|
+
* - 查看变更履历
|
|
11
|
+
*/
|
|
12
|
+
const logger_1 = require("../utils/logger");
|
|
13
|
+
const fs_extra_1 = require("fs-extra");
|
|
14
|
+
const path_1 = require("path");
|
|
15
|
+
async function unitsCommand(options) {
|
|
16
|
+
const iter = options.iter || '';
|
|
17
|
+
if (!iter) {
|
|
18
|
+
logger_1.logger.error('请指定迭代: speccore units --iter=<迭代>');
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const iterDir = `Iteration-${iter.replace(/^Iteration-/, '')}`;
|
|
22
|
+
const featuresDir = (0, path_1.join)(iterDir, '010-requirements', 'features');
|
|
23
|
+
if (!(await (0, fs_extra_1.pathExists)(featuresDir))) {
|
|
24
|
+
logger_1.logger.warn(`未找到功能单元目录: ${featuresDir}`);
|
|
25
|
+
logger_1.logger.info('请先运行: speccore doc2spec --file PRD.docx --split --iter=<迭代>');
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
// ── 列出功能单元 ──
|
|
29
|
+
if (options.list || (!options.edit && !options.delete && !options.merge)) {
|
|
30
|
+
await listUnits(featuresDir);
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
// ── 编辑功能单元 ──
|
|
34
|
+
if (options.edit) {
|
|
35
|
+
const unitName = typeof options.edit === 'string' ? options.edit : '';
|
|
36
|
+
if (unitName) {
|
|
37
|
+
await editUnit(featuresDir, unitName);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
await interactiveEdit(featuresDir);
|
|
41
|
+
}
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
// ── 删除功能单元 ──
|
|
45
|
+
if (options.delete) {
|
|
46
|
+
await deleteUnit(featuresDir, options.delete);
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
// ── 合并功能单元 ──
|
|
50
|
+
if (options.merge) {
|
|
51
|
+
const names = options.merge.split(',').map(s => s.trim());
|
|
52
|
+
if (names.length < 2) {
|
|
53
|
+
logger_1.logger.error('合并需要至少两个单元: --merge="单元A,单元B"');
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
await mergeUnits(featuresDir, names);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* 列出所有功能单元
|
|
62
|
+
*/
|
|
63
|
+
async function listUnits(featuresDir) {
|
|
64
|
+
const entries = await (0, fs_extra_1.readdir)(featuresDir, { withFileTypes: true });
|
|
65
|
+
const units = entries.filter(e => e.isDirectory() && !e.name.startsWith('.') && e.name !== 'INDEX.md');
|
|
66
|
+
if (units.length === 0) {
|
|
67
|
+
logger_1.logger.info('暂无功能单元');
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
logger_1.logger.info(`📦 功能单元 (${units.length}个):`);
|
|
71
|
+
logger_1.logger.info('');
|
|
72
|
+
logger_1.logger.info('┌────┬────────────────────────────┬──────────┬────────────────────────────┐');
|
|
73
|
+
logger_1.logger.info('│ 序号 │ 功能单元 │ 状态 │ 来源 │');
|
|
74
|
+
logger_1.logger.info('├────┼────────────────────────────┼──────────┼────────────────────────────┤');
|
|
75
|
+
for (let i = 0; i < units.length; i++) {
|
|
76
|
+
const unitDir = (0, path_1.join)(featuresDir, units[i].name);
|
|
77
|
+
const meta = await readUnitMeta(unitDir);
|
|
78
|
+
const status = meta.status || 'unknown';
|
|
79
|
+
const source = meta.source_file || meta.origin || 'unknown';
|
|
80
|
+
const displayName = units[i].name;
|
|
81
|
+
logger_1.logger.info(`│ ${String(i + 1).padStart(2)} │ ${displayName.padEnd(26)} │ ${status.padEnd(8)} │ ${source.padEnd(26)} │`);
|
|
82
|
+
}
|
|
83
|
+
logger_1.logger.info('└────┴────────────────────────────┴──────────┴────────────────────────────┘');
|
|
84
|
+
logger_1.logger.info('');
|
|
85
|
+
logger_1.logger.info('操作: speccore units --edit [单元名]');
|
|
86
|
+
logger_1.logger.info(' speccore units --merge "单元A,单元B"');
|
|
87
|
+
logger_1.logger.info(' speccore units --delete <单元名>');
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* 读取单元元信息
|
|
91
|
+
*/
|
|
92
|
+
async function readUnitMeta(unitDir) {
|
|
93
|
+
const metaPath = (0, path_1.join)(unitDir, '.meta', 'source');
|
|
94
|
+
if (!(await (0, fs_extra_1.pathExists)(metaPath))) {
|
|
95
|
+
return {};
|
|
96
|
+
}
|
|
97
|
+
const content = await (0, fs_extra_1.readFile)(metaPath, 'utf-8');
|
|
98
|
+
const meta = {};
|
|
99
|
+
for (const line of content.split('\n')) {
|
|
100
|
+
const match = line.match(/^(\w+):\s*(.+)$/);
|
|
101
|
+
if (match) {
|
|
102
|
+
meta[match[1]] = match[2].trim();
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
return meta;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* 编辑单个功能单元(显示内容摘要)
|
|
109
|
+
*/
|
|
110
|
+
async function editUnit(featuresDir, unitName) {
|
|
111
|
+
const unitDir = (0, path_1.join)(featuresDir, unitName);
|
|
112
|
+
if (!(await (0, fs_extra_1.pathExists)(unitDir))) {
|
|
113
|
+
logger_1.logger.error(`功能单元不存在: ${unitName}`);
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
const readmePath = (0, path_1.join)(unitDir, 'README.md');
|
|
117
|
+
if (!(await (0, fs_extra_1.pathExists)(readmePath))) {
|
|
118
|
+
logger_1.logger.error(`单元内容不存在: ${readmePath}`);
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
const content = await (0, fs_extra_1.readFile)(readmePath, 'utf-8');
|
|
122
|
+
const lines = content.split('\n');
|
|
123
|
+
const title = lines[0].replace(/^#\s*/, '');
|
|
124
|
+
logger_1.logger.info(`📄 ${unitName}`);
|
|
125
|
+
logger_1.logger.info(` 标题: ${title}`);
|
|
126
|
+
logger_1.logger.info(` 行数: ${lines.length}`);
|
|
127
|
+
logger_1.logger.info(` 路径: ${readmePath}`);
|
|
128
|
+
logger_1.logger.info('');
|
|
129
|
+
// 显示前 10 行预览
|
|
130
|
+
const preview = lines.slice(0, 10).join('\n');
|
|
131
|
+
logger_1.logger.info('内容预览:');
|
|
132
|
+
logger_1.logger.info(preview);
|
|
133
|
+
if (lines.length > 10) {
|
|
134
|
+
logger_1.logger.info(`... (${lines.length - 10} 行省略)`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* 交互式编辑(菜单模式)
|
|
139
|
+
*/
|
|
140
|
+
async function interactiveEdit(featuresDir) {
|
|
141
|
+
await listUnits(featuresDir);
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* 删除功能单元
|
|
145
|
+
*/
|
|
146
|
+
async function deleteUnit(featuresDir, unitName) {
|
|
147
|
+
const unitDir = (0, path_1.join)(featuresDir, unitName);
|
|
148
|
+
if (!(await (0, fs_extra_1.pathExists)(unitDir))) {
|
|
149
|
+
logger_1.logger.error(`功能单元不存在: ${unitName}`);
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
// 备份:移动到 .trash/
|
|
153
|
+
const trashDir = (0, path_1.join)(featuresDir, '.trash');
|
|
154
|
+
await (0, fs_extra_1.ensureDir)(trashDir);
|
|
155
|
+
const trashPath = (0, path_1.join)(trashDir, `${unitName}-${Date.now()}`);
|
|
156
|
+
// 记录删除前的快照和变更
|
|
157
|
+
await createVersionSnapshot(unitDir);
|
|
158
|
+
await appendChangelog(unitDir, {
|
|
159
|
+
version: 'v-deleted',
|
|
160
|
+
type: 'delete',
|
|
161
|
+
description: `删除并备份到 .trash/${(0, path_1.basename)(trashPath)}`,
|
|
162
|
+
timestamp: new Date().toISOString(),
|
|
163
|
+
});
|
|
164
|
+
// 简单重命名作为删除(实际项目中可用 fs-extra 的 move)
|
|
165
|
+
// 这里用 copy + remove 模拟
|
|
166
|
+
const fs = require('fs-extra');
|
|
167
|
+
await fs.copy(unitDir, trashPath);
|
|
168
|
+
await (0, fs_extra_1.remove)(unitDir);
|
|
169
|
+
logger_1.logger.success(`已删除功能单元: ${unitName}`);
|
|
170
|
+
logger_1.logger.info(` 备份位置: ${trashPath}`);
|
|
171
|
+
// 更新 INDEX.md
|
|
172
|
+
await updateFeaturesIndex(featuresDir);
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* 合并功能单元
|
|
176
|
+
*/
|
|
177
|
+
async function mergeUnits(featuresDir, names) {
|
|
178
|
+
// 验证所有单元存在
|
|
179
|
+
for (const name of names) {
|
|
180
|
+
const unitDir = (0, path_1.join)(featuresDir, name);
|
|
181
|
+
if (!(await (0, fs_extra_1.pathExists)(unitDir))) {
|
|
182
|
+
logger_1.logger.error(`功能单元不存在: ${name}`);
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
// 合并内容
|
|
187
|
+
const mergedName = `${names[0]}-merged`;
|
|
188
|
+
const mergedDir = (0, path_1.join)(featuresDir, mergedName);
|
|
189
|
+
await (0, fs_extra_1.ensureDir)(mergedDir);
|
|
190
|
+
await (0, fs_extra_1.ensureDir)((0, path_1.join)(mergedDir, '.meta'));
|
|
191
|
+
let mergedContent = `# 合并单元: ${names.join(' + ')}\n\n`;
|
|
192
|
+
mergedContent += `> 合并时间: ${new Date().toISOString().split('T')[0]}\n`;
|
|
193
|
+
mergedContent += `> 来源单元: ${names.join(', ')}\n\n`;
|
|
194
|
+
mergedContent += '---\n\n';
|
|
195
|
+
for (const name of names) {
|
|
196
|
+
const readmePath = (0, path_1.join)(featuresDir, name, 'README.md');
|
|
197
|
+
const content = await (0, fs_extra_1.readFile)(readmePath, 'utf-8');
|
|
198
|
+
mergedContent += `## ${name}\n\n${content}\n\n`;
|
|
199
|
+
}
|
|
200
|
+
await (0, fs_extra_1.writeFile)((0, path_1.join)(mergedDir, 'README.md'), mergedContent);
|
|
201
|
+
// 记录合并操作
|
|
202
|
+
const adjustmentMeta = `---\noperation: merge\nsource_units: ${names.join(', ')}\nmerged_name: ${mergedName}\ntime: ${new Date().toISOString()}\n---\n`;
|
|
203
|
+
await (0, fs_extra_1.writeFile)((0, path_1.join)(mergedDir, '.meta', 'adjustment'), adjustmentMeta);
|
|
204
|
+
// 标记原单元为 deprecated,并记录变更
|
|
205
|
+
for (const name of names) {
|
|
206
|
+
const unitDir = (0, path_1.join)(featuresDir, name);
|
|
207
|
+
await createVersionSnapshot(unitDir);
|
|
208
|
+
await appendChangelog(unitDir, {
|
|
209
|
+
version: 'v-deprecated',
|
|
210
|
+
type: 'merge',
|
|
211
|
+
description: `合并到 ${mergedName}`,
|
|
212
|
+
timestamp: new Date().toISOString(),
|
|
213
|
+
});
|
|
214
|
+
const metaPath = (0, path_1.join)(unitDir, '.meta', 'source');
|
|
215
|
+
if (await (0, fs_extra_1.pathExists)(metaPath)) {
|
|
216
|
+
let meta = await (0, fs_extra_1.readFile)(metaPath, 'utf-8');
|
|
217
|
+
meta = meta.replace(/status:\s*\w+/, 'status: deprecated');
|
|
218
|
+
await (0, fs_extra_1.writeFile)(metaPath, meta);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
// 记录合并后单元的创建
|
|
222
|
+
await appendChangelog(mergedDir, {
|
|
223
|
+
version: 'v1',
|
|
224
|
+
type: 'merge',
|
|
225
|
+
description: `由 ${names.join(', ')} 合并而成`,
|
|
226
|
+
timestamp: new Date().toISOString(),
|
|
227
|
+
});
|
|
228
|
+
logger_1.logger.success(`已合并功能单元: ${names.join(' + ')} → ${mergedName}`);
|
|
229
|
+
// 更新 INDEX.md
|
|
230
|
+
await updateFeaturesIndex(featuresDir);
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* 更新 features/INDEX.md
|
|
234
|
+
*/
|
|
235
|
+
async function updateFeaturesIndex(featuresDir) {
|
|
236
|
+
const entries = await (0, fs_extra_1.readdir)(featuresDir, { withFileTypes: true });
|
|
237
|
+
const units = entries.filter(e => e.isDirectory() && !e.name.startsWith('.') && e.name !== 'INDEX.md');
|
|
238
|
+
let index = '# 功能单元索引\n\n> 自动更新\n\n';
|
|
239
|
+
index += '| 功能单元 | 状态 | 来源 |\n';
|
|
240
|
+
index += '| :--- | :--- | :--- |\n';
|
|
241
|
+
for (const unit of units) {
|
|
242
|
+
const meta = await readUnitMeta((0, path_1.join)(featuresDir, unit.name));
|
|
243
|
+
const status = meta.status || 'unknown';
|
|
244
|
+
const source = meta.source_file || meta.origin || 'unknown';
|
|
245
|
+
index += `| ${unit.name} | ${status} | ${source} |\n`;
|
|
246
|
+
}
|
|
247
|
+
await (0, fs_extra_1.writeFile)((0, path_1.join)(featuresDir, 'INDEX.md'), index);
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* 创建版本快照(备份当前 README.md 到 .meta/versions/)
|
|
251
|
+
*/
|
|
252
|
+
async function createVersionSnapshot(unitDir) {
|
|
253
|
+
const readmePath = (0, path_1.join)(unitDir, 'README.md');
|
|
254
|
+
if (!(await (0, fs_extra_1.pathExists)(readmePath)))
|
|
255
|
+
return;
|
|
256
|
+
const versionsDir = (0, path_1.join)(unitDir, '.meta', 'versions');
|
|
257
|
+
await (0, fs_extra_1.ensureDir)(versionsDir);
|
|
258
|
+
const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, 19);
|
|
259
|
+
const snapshotPath = (0, path_1.join)(versionsDir, `v-${timestamp}.md`);
|
|
260
|
+
const content = await (0, fs_extra_1.readFile)(readmePath, 'utf-8');
|
|
261
|
+
await (0, fs_extra_1.writeFile)(snapshotPath, content);
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* 追加变更记录到 CHANGELOG.md
|
|
265
|
+
*/
|
|
266
|
+
async function appendChangelog(unitDir, change) {
|
|
267
|
+
const changelogPath = (0, path_1.join)(unitDir, 'CHANGELOG.md');
|
|
268
|
+
let content = '';
|
|
269
|
+
if (await (0, fs_extra_1.pathExists)(changelogPath)) {
|
|
270
|
+
content = await (0, fs_extra_1.readFile)(changelogPath, 'utf-8');
|
|
271
|
+
}
|
|
272
|
+
else {
|
|
273
|
+
content = `# ${(0, path_1.basename)(unitDir)} - 变更履历\n\n`;
|
|
274
|
+
}
|
|
275
|
+
const entry = `## ${change.version} - ${change.timestamp.split('T')[0]}\n`;
|
|
276
|
+
const typeLabel = { create: '新增', update: '更新', merge: '合并', split: '拆分', delete: '删除' }[change.type];
|
|
277
|
+
content += `${entry}**类型**: ${typeLabel}\n**说明**: ${change.description}\n\n`;
|
|
278
|
+
await (0, fs_extra_1.writeFile)(changelogPath, content);
|
|
279
|
+
}
|
|
280
|
+
//# sourceMappingURL=units.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"units.js","sourceRoot":"","sources":["../../src/commands/units.ts"],"names":[],"mappings":"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"}
|