speccore 5.15.0 → 5.15.1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAiG3E"}
|
package/dist/commands/analyze.js
CHANGED
|
@@ -8,6 +8,7 @@ exports.analyzeCommand = analyzeCommand;
|
|
|
8
8
|
const fs_extra_1 = require("fs-extra");
|
|
9
9
|
const path_1 = require("path");
|
|
10
10
|
const logger_1 = require("../utils/logger");
|
|
11
|
+
const question_checklist_1 = require("../core/question-checklist");
|
|
11
12
|
const context_1 = require("../core/context");
|
|
12
13
|
const next_steps_1 = require("../core/next-steps");
|
|
13
14
|
async function analyzeCommand(options) {
|
|
@@ -54,24 +55,46 @@ async function analyzeCommand(options) {
|
|
|
54
55
|
spinner = new logger_1.Spinner('生成分析报告...');
|
|
55
56
|
spinner.start();
|
|
56
57
|
const report = buildAnalysisReport(iteration, issues, codeMatches, archImpact);
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
spinner.stop(`✅ 分析完成 → ${outputPath}`);
|
|
60
|
-
// ── 5. 摘要输出 ──
|
|
58
|
+
spinner.stop(`📊 报告已生成 (${report.length} 字符)`);
|
|
59
|
+
// ── 4.5. 摘要预览 + 确认 ──
|
|
61
60
|
logger_1.logger.info('');
|
|
62
61
|
logger_1.logger.info('📊 分析摘要:');
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
const blockerCount = issues.filter(i => i.severity === 'blocker').length;
|
|
63
|
+
const warnCount = issues.filter(i => i.severity === 'warning').length;
|
|
64
|
+
if (blockerCount > 0)
|
|
65
|
+
logger_1.logger.info(` 🔴 阻断问题: ${blockerCount} 个`);
|
|
66
|
+
logger_1.logger.info(` 🟡 待确认: ${warnCount} 个`);
|
|
65
67
|
logger_1.logger.info(` 📁 涉及仓库: ${codeMatches.length} 个`);
|
|
66
|
-
logger_1.logger.info(` ⚡ 影响模块: ${archImpact.modules
|
|
68
|
+
logger_1.logger.info(` ⚡ 影响模块: ${archImpact.modules?.length || 0} 个`);
|
|
69
|
+
logger_1.logger.info(` 详细报告: ${(0, path_1.join)(iterDir, '00-需求文档', options.output || 'ANALYSIS.md')}`);
|
|
70
|
+
logger_1.logger.info('');
|
|
71
|
+
const ask = (q) => {
|
|
72
|
+
return new Promise(resolve => {
|
|
73
|
+
const rl = require('readline').createInterface({ input: process.stdin, output: process.stdout });
|
|
74
|
+
rl.question(q, (a) => { rl.close(); resolve(a); });
|
|
75
|
+
});
|
|
76
|
+
};
|
|
77
|
+
const answer = (await ask(' → 保存报告?[y]保存 [N]取消: ')).toLowerCase();
|
|
78
|
+
if (answer !== 'y' && answer !== 'yes') {
|
|
79
|
+
logger_1.logger.info('\n ❌ 已取消,报告未保存\n');
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
const outputPath = (0, path_1.join)(iterDir, '00-需求文档', options.output || 'ANALYSIS.md');
|
|
83
|
+
await (0, fs_extra_1.writeFile)(outputPath, report);
|
|
84
|
+
logger_1.logger.info(`\n ✅ 分析完成 → ${outputPath}\n`);
|
|
67
85
|
if (issues.some(i => i.severity === 'blocker')) {
|
|
68
86
|
logger_1.logger.warn('\n⚠️ 存在阻断问题,建议解决后再拆分任务。');
|
|
69
87
|
logger_1.logger.info(` 详细报告: ${outputPath}`);
|
|
70
88
|
}
|
|
71
89
|
else {
|
|
72
90
|
logger_1.logger.info('\n✅ 未发现阻断问题,可以继续拆分任务。');
|
|
73
|
-
(0, next_steps_1.showNextSteps)('analyze');
|
|
74
91
|
}
|
|
92
|
+
// Show question checklist
|
|
93
|
+
const questions = await (0, question_checklist_1.extractQuestions)(iterDir);
|
|
94
|
+
if (questions.length > 0) {
|
|
95
|
+
(0, question_checklist_1.showQuestionChecklist)(questions, '需求分析待确认');
|
|
96
|
+
}
|
|
97
|
+
(0, next_steps_1.showNextSteps)('analyze');
|
|
75
98
|
}
|
|
76
99
|
catch (error) {
|
|
77
100
|
spinner.fail(`分析失败: ${error}`);
|
|
@@ -397,63 +420,111 @@ async function perTaskAnalyze(iterDir, taskId) {
|
|
|
397
420
|
let reqContent = '';
|
|
398
421
|
if (await (0, fs_extra_1.pathExists)(reqPath))
|
|
399
422
|
reqContent = await (0, fs_extra_1.readFile)(reqPath, 'utf-8');
|
|
423
|
+
const changes = [];
|
|
400
424
|
// Enrich TECH.md
|
|
401
425
|
const techPath = (0, path_1.join)(backendDir, 'TECH.md');
|
|
426
|
+
let techContent = '';
|
|
402
427
|
if (await (0, fs_extra_1.pathExists)(techPath)) {
|
|
403
|
-
|
|
404
|
-
if (!
|
|
428
|
+
techContent = await (0, fs_extra_1.readFile)(techPath, 'utf-8');
|
|
429
|
+
if (!techContent.includes('## 分析建议')) {
|
|
430
|
+
const items = [];
|
|
405
431
|
const apis = (reqContent.match(/\/api\/[a-zA-Z0-9\/-]+/g) || []).map(a => a.trim());
|
|
406
|
-
let notes = '\n\n---\n\n## 分析建议\n\n> 自动生成,可反复修改\n\n';
|
|
407
432
|
if (apis.length > 0) {
|
|
408
|
-
|
|
433
|
+
items.push(`检测到 ${apis.length} 个 API:`);
|
|
409
434
|
for (const api of [...new Set(apis)])
|
|
410
|
-
|
|
435
|
+
items.push(` \`${api}\``);
|
|
411
436
|
}
|
|
412
437
|
if (reqContent.match(/数据库|表|DDL/))
|
|
413
|
-
|
|
438
|
+
items.push('涉及数据库变更,请补充 DDL');
|
|
414
439
|
if (reqContent.match(/权限|RBAC|鉴权/))
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
440
|
+
items.push('涉及权限控制,注意鉴权边界');
|
|
441
|
+
if (items.length > 0)
|
|
442
|
+
changes.push({ file: 'TECH.md', section: '分析建议', items });
|
|
418
443
|
}
|
|
419
444
|
}
|
|
420
445
|
// Enrich TEST.md
|
|
421
446
|
const testPath = (0, path_1.join)(backendDir, 'TEST.md');
|
|
422
447
|
if (await (0, fs_extra_1.pathExists)(testPath)) {
|
|
423
|
-
|
|
424
|
-
if (!
|
|
425
|
-
|
|
426
|
-
if (reqContent.includes('POST'))
|
|
427
|
-
|
|
428
|
-
if (reqContent.includes('GET'))
|
|
429
|
-
|
|
430
|
-
if (reqContent.includes('DELETE'))
|
|
431
|
-
|
|
432
|
-
if (reqContent.includes('权限'))
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
448
|
+
const testContent = await (0, fs_extra_1.readFile)(testPath, 'utf-8');
|
|
449
|
+
if (!testContent.includes('## 补充分析')) {
|
|
450
|
+
const items = [];
|
|
451
|
+
if (reqContent.includes('POST') || reqContent.includes('创建'))
|
|
452
|
+
items.push('[ ] 正常参数 + 异常参数测试');
|
|
453
|
+
if (reqContent.includes('GET') || reqContent.includes('查询'))
|
|
454
|
+
items.push('[ ] 分页 / 筛选 / 空结果测试');
|
|
455
|
+
if (reqContent.includes('DELETE') || reqContent.includes('删除'))
|
|
456
|
+
items.push('[ ] 删除确认 + 级联处理');
|
|
457
|
+
if (reqContent.includes('权限') || reqContent.includes('RBAC'))
|
|
458
|
+
items.push('[ ] 无权限访问 + 越权检测');
|
|
459
|
+
if (reqContent.includes('批量') || reqContent.includes('导出'))
|
|
460
|
+
items.push('[ ] 大数据量 + 超时处理');
|
|
461
|
+
if (items.length > 0)
|
|
462
|
+
changes.push({ file: 'TEST.md', section: '补充分析', items });
|
|
436
463
|
}
|
|
437
464
|
}
|
|
438
465
|
// Enrich REVIEW.md
|
|
439
466
|
const reviewPath = (0, path_1.join)(backendDir, 'REVIEW.md');
|
|
440
467
|
if (await (0, fs_extra_1.pathExists)(reviewPath)) {
|
|
441
|
-
|
|
442
|
-
if (!
|
|
443
|
-
|
|
444
|
-
if (reqContent.includes('POST'))
|
|
445
|
-
|
|
446
|
-
if (reqContent.includes('数据库'))
|
|
447
|
-
|
|
448
|
-
if (reqContent.includes('权限'))
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
468
|
+
const reviewContent = await (0, fs_extra_1.readFile)(reviewPath, 'utf-8');
|
|
469
|
+
if (!reviewContent.includes('## 本任务专项检查')) {
|
|
470
|
+
const items = [];
|
|
471
|
+
if (reqContent.includes('POST') || reqContent.includes('创建'))
|
|
472
|
+
items.push('[ ] 参数校验 + 幂等性处理');
|
|
473
|
+
if (reqContent.includes('数据库') || reqContent.includes('表'))
|
|
474
|
+
items.push('[ ] 索引覆盖 + 迁移脚本可回滚');
|
|
475
|
+
if (reqContent.includes('权限') || reqContent.includes('RBAC'))
|
|
476
|
+
items.push('[ ] 鉴权注解/中间件正确配置');
|
|
477
|
+
if (items.length > 0)
|
|
478
|
+
changes.push({ file: 'REVIEW.md', section: '本任务专项检查', items });
|
|
452
479
|
}
|
|
453
480
|
}
|
|
454
|
-
spinner.stop(
|
|
455
|
-
|
|
456
|
-
|
|
481
|
+
spinner.stop();
|
|
482
|
+
if (changes.length === 0) {
|
|
483
|
+
logger_1.logger.info(`\n ✅ ${taskEntry.name} 已是最新,无需更新`);
|
|
484
|
+
return;
|
|
485
|
+
}
|
|
486
|
+
// ── Show preview ──
|
|
487
|
+
logger_1.logger.info(`\n╔══════════════════════════════════════════╗`);
|
|
488
|
+
logger_1.logger.info(`║ 📋 ${taskEntry.name} 分析结果预览 ║`);
|
|
489
|
+
logger_1.logger.info(`╚══════════════════════════════════════════╝\n`);
|
|
490
|
+
for (const c of changes) {
|
|
491
|
+
logger_1.logger.info(` 📄 ${c.file} → 新增「${c.section}」:`);
|
|
492
|
+
for (const item of c.items) {
|
|
493
|
+
logger_1.logger.info(` ${item}`);
|
|
494
|
+
}
|
|
495
|
+
logger_1.logger.info('');
|
|
496
|
+
}
|
|
497
|
+
// ── Confirm ──
|
|
498
|
+
const ask = (q) => {
|
|
499
|
+
return new Promise(resolve => {
|
|
500
|
+
const rl = require('readline').createInterface({ input: process.stdin, output: process.stdout });
|
|
501
|
+
rl.question(q, (a) => { rl.close(); resolve(a); });
|
|
502
|
+
});
|
|
503
|
+
};
|
|
504
|
+
const answer = (await ask(` → 确认写入?[y] 确认覆盖 [N] 取消: `)).toLowerCase();
|
|
505
|
+
if (answer !== 'y' && answer !== 'yes') {
|
|
506
|
+
logger_1.logger.info('\n ❌ 已取消,文档未修改\n');
|
|
507
|
+
return;
|
|
508
|
+
}
|
|
509
|
+
// ── Apply changes ──
|
|
510
|
+
for (const c of changes) {
|
|
511
|
+
if (c.file === 'TECH.md') {
|
|
512
|
+
let notes = `\n\n---\n\n## ${c.section}\n\n> 自动生成,可反复修改\n\n`;
|
|
513
|
+
notes += c.items.map(i => `- ${i}`).join('\n') + '\n';
|
|
514
|
+
await (0, fs_extra_1.writeFile)(techPath, techContent + notes);
|
|
515
|
+
}
|
|
516
|
+
if (c.file === 'TEST.md') {
|
|
517
|
+
let notes = `\n\n---\n\n## ${c.section}\n`;
|
|
518
|
+
notes += c.items.join('\n') + '\n';
|
|
519
|
+
await (0, fs_extra_1.writeFile)(testPath, (await (0, fs_extra_1.readFile)(testPath, 'utf-8')) + notes);
|
|
520
|
+
}
|
|
521
|
+
if (c.file === 'REVIEW.md') {
|
|
522
|
+
let notes = `\n\n---\n\n## ${c.section}\n`;
|
|
523
|
+
notes += c.items.join('\n') + '\n';
|
|
524
|
+
await (0, fs_extra_1.writeFile)(reviewPath, (await (0, fs_extra_1.readFile)(reviewPath, 'utf-8')) + notes);
|
|
525
|
+
}
|
|
526
|
+
}
|
|
527
|
+
logger_1.logger.info(`\n ✅ ${taskEntry.name} 分析完成,已更新 ${changes.length} 个文件`);
|
|
457
528
|
logger_1.logger.info(' 💡 可反复运行完善:');
|
|
458
529
|
logger_1.logger.info(` speccore analyze --task=${taskId} --iteration=${iterDir.replace('期次-', '')}`);
|
|
459
530
|
logger_1.logger.info('');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"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"}
|