speccore 7.3.1 → 7.4.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.
- package/dist/cli.js +0 -2
- package/dist/cli.js.map +1 -1
- package/dist/commands/analyze.d.ts +0 -1
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +34 -19
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +212 -123
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/iteration/split.d.ts +0 -1
- package/dist/commands/iteration/split.d.ts.map +1 -1
- package/dist/commands/iteration/split.js +23 -3
- package/dist/commands/iteration/split.js.map +1 -1
- package/dist/core/ask-engine.d.ts.map +1 -1
- package/dist/core/ask-engine.js +1 -4
- package/dist/core/ask-engine.js.map +1 -1
- package/dist/core/intent-recognition.d.ts.map +1 -1
- package/dist/core/intent-recognition.js +0 -4
- package/dist/core/intent-recognition.js.map +1 -1
- package/dist/core/questions.d.ts +15 -0
- package/dist/core/questions.d.ts.map +1 -1
- package/dist/core/questions.js +50 -0
- package/dist/core/questions.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAgBA,UAAU,UAAU;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAC3B,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAeD,wBAAsB,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAuEnE"}
|
package/dist/commands/dev.js
CHANGED
|
@@ -47,6 +47,7 @@ const context_1 = require("../core/context");
|
|
|
47
47
|
const spec_paths_1 = require("../core/spec-paths");
|
|
48
48
|
const ask_host_ai_2 = require("../core/ask-host-ai");
|
|
49
49
|
const pipeline_engine_1 = require("../core/pipeline-engine");
|
|
50
|
+
const questions_1 = require("../core/questions");
|
|
50
51
|
const I18N = {
|
|
51
52
|
zh: { title: 'SPECCORE DEV', subtitle: '阶段完成', subtitleGuide: 'Pipeline 引导', next: '下一步', autoAll: '一键自动', skip: '跳过当前', restart: '重新开始', inputPlaceholder: '或者直接说...', send: '发送', stepInit: '初始化', stepDoc: '导入需求', stepAnalyze: '分析需求', stepSplit: '拆分任务', stepExec: '执行开发', stepPr: '提交 PR', stepDone: '归档收尾', iterLabel: '迭代' },
|
|
52
53
|
en: { title: 'SPECCORE DEV', subtitle: 'phases done', subtitleGuide: 'Pipeline Guide', next: 'Next Step', autoAll: 'Auto All', skip: 'Skip', restart: 'Restart', inputPlaceholder: 'Or just say it...', send: 'Send', stepInit: 'Init', stepDoc: 'Import PRD', stepAnalyze: 'Analyze', stepSplit: 'Split Tasks', stepExec: 'Execute', stepPr: 'Create PR', stepDone: 'Archive', iterLabel: 'Iteration' },
|
|
@@ -158,6 +159,8 @@ async function autoPipeline(options) {
|
|
|
158
159
|
}
|
|
159
160
|
const iterDir = `Iteration-${iteration}`;
|
|
160
161
|
logger_1.logger.info(`\n🤖 Auto-pipeline: ${iteration}\n`);
|
|
162
|
+
const phaseResults = [];
|
|
163
|
+
const pipelineStart = Date.now();
|
|
161
164
|
// ── 解析 auto-steps 范围 ──
|
|
162
165
|
let startIdx = 0;
|
|
163
166
|
let endIdx = PIPELINE_PHASES.length - 1;
|
|
@@ -206,153 +209,239 @@ async function autoPipeline(options) {
|
|
|
206
209
|
for (let i = startIdx; i <= endIdx; i++) {
|
|
207
210
|
const phase = PIPELINE_PHASES[i];
|
|
208
211
|
logger_1.logger.info(`━━━ [${i + 1}/${endIdx - startIdx + 1}] ${phase.key} ━━━`);
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
212
|
+
const phaseStart = Date.now();
|
|
213
|
+
let phaseStatus = 'success';
|
|
214
|
+
let phaseMessage = '完成';
|
|
215
|
+
let phaseQuestions = [];
|
|
216
|
+
try {
|
|
217
|
+
switch (phase.key) {
|
|
218
|
+
case 'init': {
|
|
219
|
+
if (!(await (0, fs_extra_1.pathExists)('.speccore'))) {
|
|
220
|
+
(0, child_process_1.execSync)('speccore init', { stdio: 'inherit' });
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
logger_1.logger.info(' ✅ 已初始化,跳过');
|
|
224
|
+
}
|
|
225
|
+
break;
|
|
213
226
|
}
|
|
214
|
-
|
|
215
|
-
|
|
227
|
+
case 'doc2spec': {
|
|
228
|
+
const reqDoc = (0, path_1.join)(iterDir, '010-requirements', 'REQUIREMENT.md');
|
|
229
|
+
const hasFeatures = await hasFeatureDirs(iterDir);
|
|
230
|
+
if (!(await (0, fs_extra_1.pathExists)(reqDoc)) && !hasFeatures) {
|
|
231
|
+
logger_1.logger.info(' ℹ️ 未找到需求文档,跳过(请手动 doc2spec)');
|
|
232
|
+
}
|
|
233
|
+
else {
|
|
234
|
+
// 检查需求文档是否有实质内容(不是空文件)
|
|
235
|
+
let hasContent = false;
|
|
236
|
+
try {
|
|
237
|
+
const { readFile: rf } = require('fs-extra');
|
|
238
|
+
const content = await rf(reqDoc, 'utf-8');
|
|
239
|
+
hasContent = content.replace(/^#+\s.*$/gm, '').replace(/\s/g, '').length > 50;
|
|
240
|
+
}
|
|
241
|
+
catch { }
|
|
242
|
+
if (hasContent) {
|
|
243
|
+
logger_1.logger.info(' ✅ 需求已导入且有实质内容,跳过');
|
|
244
|
+
}
|
|
245
|
+
else {
|
|
246
|
+
logger_1.logger.info(' ⚠️ 需求文档存在但内容为空,请手动 doc2spec 导入');
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
break;
|
|
216
250
|
}
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
251
|
+
case 'analyze': {
|
|
252
|
+
const analysis = await (0, spec_paths_1.resolveGlobalSpecPath)((0, path_1.join)(iterDir, '020-specs'), 'ANALYSIS.md') || (0, path_1.join)(iterDir, '020-specs', 'ANALYSIS.md');
|
|
253
|
+
const techSpec = (0, path_1.join)(iterDir, '020-specs', 'ANALYSIS.md');
|
|
254
|
+
let needsAnalysis = !(await (0, fs_extra_1.pathExists)(analysis));
|
|
255
|
+
let needsSpecs = false;
|
|
256
|
+
if (!needsAnalysis) {
|
|
257
|
+
try {
|
|
258
|
+
const { readFile: rf } = require('fs-extra');
|
|
259
|
+
const techContent = await rf(techSpec, 'utf-8');
|
|
260
|
+
const meaningful = techContent.replace(/_待填充_|_待补充_|\|\s*\|/g, '').replace(/\s/g, '');
|
|
261
|
+
needsSpecs = meaningful.length < 50;
|
|
262
|
+
}
|
|
263
|
+
catch {
|
|
264
|
+
needsSpecs = true;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
if (needsAnalysis || needsSpecs) {
|
|
268
|
+
(0, child_process_1.execSync)(`speccore analyze --auto -I ${iteration}`, { stdio: 'inherit' });
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
logger_1.logger.info(' ✅ 分析已完成,跳过');
|
|
272
|
+
phaseStatus = 'skipped';
|
|
273
|
+
phaseMessage = '分析已完成,跳过';
|
|
274
|
+
}
|
|
275
|
+
// v7.4.0+: CLARIFY_REPORT 质量检查
|
|
276
|
+
const clarifyPath = (0, path_1.join)(iterDir, '010-requirements', 'CLARIFY_REPORT.md');
|
|
277
|
+
if (await (0, fs_extra_1.pathExists)(clarifyPath)) {
|
|
278
|
+
try {
|
|
279
|
+
const clarifyContent = await (0, fs_extra_1.readFile)(clarifyPath, 'utf-8');
|
|
280
|
+
const lowScoreMatch = clarifyContent.match(/总分[::]\s*(\d+)/);
|
|
281
|
+
if (lowScoreMatch) {
|
|
282
|
+
const score = parseInt(lowScoreMatch[1]);
|
|
283
|
+
if (score < 60) {
|
|
284
|
+
logger_1.logger.warn(` ⚠️ CLARIFY_REPORT 质量评分偏低: ${score}/100`);
|
|
285
|
+
logger_1.logger.warn(` 建议重新澄清需求或手动补充后再继续`);
|
|
286
|
+
phaseStatus = 'warning';
|
|
287
|
+
phaseMessage = `CLARIFY_REPORT 质量评分 ${score}/100,建议重新澄清`;
|
|
288
|
+
phaseQuestions.push(`需求澄清质量评分 ${score}/100,低于 60 分基线`);
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
catch { }
|
|
293
|
+
}
|
|
294
|
+
break;
|
|
224
295
|
}
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
let hasContent = false;
|
|
296
|
+
case 'split': {
|
|
297
|
+
let hasTasks = false;
|
|
228
298
|
try {
|
|
229
|
-
const
|
|
230
|
-
|
|
231
|
-
hasContent = content.replace(/^#+\s.*$/gm, '').replace(/\s/g, '').length > 50;
|
|
299
|
+
const entries = await (0, fs_extra_1.readdir)((0, path_1.join)(iterDir, '030-tasks'), { withFileTypes: true });
|
|
300
|
+
hasTasks = entries.some((e) => e.isDirectory() && e.name.startsWith('Task-'));
|
|
232
301
|
}
|
|
233
302
|
catch { }
|
|
234
|
-
if (
|
|
235
|
-
|
|
303
|
+
if (!hasTasks) {
|
|
304
|
+
(0, child_process_1.execSync)(`speccore iteration split -i ${iteration} --force`, { stdio: 'inherit' });
|
|
236
305
|
}
|
|
237
306
|
else {
|
|
238
|
-
logger_1.logger.info('
|
|
307
|
+
logger_1.logger.info(' ✅ 任务已拆分,跳过');
|
|
239
308
|
}
|
|
309
|
+
break;
|
|
240
310
|
}
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
const techSpec = (0, path_1.join)(iterDir, '020-specs', 'TECH.md');
|
|
246
|
-
// 检查 ANALYSIS.md 存在且 TECH.md 有实质内容(不只是空模板)
|
|
247
|
-
let needsAnalysis = !(await (0, fs_extra_1.pathExists)(analysis));
|
|
248
|
-
let needsSpecs = false;
|
|
249
|
-
if (!needsAnalysis) {
|
|
311
|
+
case 'plan': {
|
|
312
|
+
// v6.91.1+: 检查是否已有计划,避免重复生成
|
|
313
|
+
const plansDir = (0, path_1.join)(iterDir, '000-overview', 'plans');
|
|
314
|
+
let hasPlan = false;
|
|
250
315
|
try {
|
|
251
|
-
const {
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
316
|
+
const { readdir: rd2, pathExists: pe2 } = require('fs-extra');
|
|
317
|
+
if (await pe2(plansDir)) {
|
|
318
|
+
const entries = await rd2(plansDir);
|
|
319
|
+
hasPlan = entries.some((e) => e.endsWith('.md'));
|
|
320
|
+
}
|
|
255
321
|
}
|
|
256
|
-
catch {
|
|
257
|
-
|
|
322
|
+
catch { }
|
|
323
|
+
if (hasPlan) {
|
|
324
|
+
logger_1.logger.info(' ✅ 执行计划已存在,跳过');
|
|
258
325
|
}
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
(0, child_process_1.execSync)(`speccore analyze --auto -I ${iteration}`, { stdio: 'inherit' });
|
|
262
|
-
}
|
|
263
|
-
else {
|
|
264
|
-
logger_1.logger.info(' ✅ 分析已完成,跳过');
|
|
265
|
-
}
|
|
266
|
-
break;
|
|
267
|
-
}
|
|
268
|
-
case 'split': {
|
|
269
|
-
let hasTasks = false;
|
|
270
|
-
try {
|
|
271
|
-
const entries = await (0, fs_extra_1.readdir)((0, path_1.join)(iterDir, '030-tasks'), { withFileTypes: true });
|
|
272
|
-
hasTasks = entries.some((e) => e.isDirectory() && e.name.startsWith('Task-'));
|
|
273
|
-
}
|
|
274
|
-
catch { }
|
|
275
|
-
if (!hasTasks) {
|
|
276
|
-
(0, child_process_1.execSync)(`speccore iteration split -i ${iteration} --force`, { stdio: 'inherit' });
|
|
277
|
-
}
|
|
278
|
-
else {
|
|
279
|
-
logger_1.logger.info(' ✅ 任务已拆分,跳过');
|
|
280
|
-
}
|
|
281
|
-
break;
|
|
282
|
-
}
|
|
283
|
-
case 'plan': {
|
|
284
|
-
// v6.91.1+: 检查是否已有计划,避免重复生成
|
|
285
|
-
const plansDir = (0, path_1.join)(iterDir, '000-overview', 'plans');
|
|
286
|
-
let hasPlan = false;
|
|
287
|
-
try {
|
|
288
|
-
const { readdir: rd2, pathExists: pe2 } = require('fs-extra');
|
|
289
|
-
if (await pe2(plansDir)) {
|
|
290
|
-
const entries = await rd2(plansDir);
|
|
291
|
-
hasPlan = entries.some((e) => e.endsWith('.md'));
|
|
326
|
+
else {
|
|
327
|
+
(0, child_process_1.execSync)(`speccore plan -i ${iteration} --force`, { stdio: 'inherit' });
|
|
292
328
|
}
|
|
329
|
+
break;
|
|
293
330
|
}
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
}
|
|
311
|
-
catch { }
|
|
312
|
-
if (!hasPending) {
|
|
313
|
-
logger_1.logger.info(' ✅ 所有任务已完成,跳过 execute');
|
|
314
|
-
}
|
|
315
|
-
else {
|
|
316
|
-
(0, child_process_1.execSync)(`speccore execute --auto -i ${iteration}`, { stdio: 'inherit' });
|
|
317
|
-
}
|
|
318
|
-
break;
|
|
319
|
-
}
|
|
320
|
-
case 'pr': {
|
|
321
|
-
// v6.91.1+: 检查是否有未提交的代码变更
|
|
322
|
-
let hasChanges = false;
|
|
323
|
-
try {
|
|
324
|
-
const { execSync: es2 } = await Promise.resolve().then(() => __importStar(require('child_process')));
|
|
325
|
-
const gitStatus = es2('git status --short', { encoding: 'utf-8', cwd: process.cwd() });
|
|
326
|
-
hasChanges = gitStatus.trim().length > 0;
|
|
331
|
+
case 'execute': {
|
|
332
|
+
// v6.91.1+: 检查是否还有 pending 任务
|
|
333
|
+
let hasPending = false;
|
|
334
|
+
try {
|
|
335
|
+
const { scanTasks } = await Promise.resolve().then(() => __importStar(require('../core/state')));
|
|
336
|
+
const tasks = await scanTasks(iteration);
|
|
337
|
+
hasPending = tasks.some(t => t.status === 'pending');
|
|
338
|
+
}
|
|
339
|
+
catch { }
|
|
340
|
+
if (!hasPending) {
|
|
341
|
+
logger_1.logger.info(' ✅ 所有任务已完成,跳过 execute');
|
|
342
|
+
}
|
|
343
|
+
else {
|
|
344
|
+
(0, child_process_1.execSync)(`speccore execute --auto -i ${iteration}`, { stdio: 'inherit' });
|
|
345
|
+
}
|
|
346
|
+
break;
|
|
327
347
|
}
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
348
|
+
case 'pr': {
|
|
349
|
+
// v6.91.1+: 检查是否有未提交的代码变更
|
|
350
|
+
let hasChanges = false;
|
|
351
|
+
try {
|
|
352
|
+
const { execSync: es2 } = await Promise.resolve().then(() => __importStar(require('child_process')));
|
|
353
|
+
const gitStatus = es2('git status --short', { encoding: 'utf-8', cwd: process.cwd() });
|
|
354
|
+
hasChanges = gitStatus.trim().length > 0;
|
|
355
|
+
}
|
|
356
|
+
catch { }
|
|
357
|
+
if (!hasChanges) {
|
|
358
|
+
logger_1.logger.info(' ✅ 没有未提交的变更,跳过 pr');
|
|
359
|
+
}
|
|
360
|
+
else {
|
|
361
|
+
(0, child_process_1.execSync)(`speccore pr -i ${iteration} --force`, { stdio: 'inherit' });
|
|
362
|
+
}
|
|
363
|
+
break;
|
|
331
364
|
}
|
|
332
|
-
|
|
333
|
-
|
|
365
|
+
case 'done': {
|
|
366
|
+
// v6.91.1+: 检查是否已归档
|
|
367
|
+
const retroPath = (0, path_1.join)(iterDir, '000-overview', 'RETRO.md');
|
|
368
|
+
if (await (0, fs_extra_1.pathExists)(retroPath)) {
|
|
369
|
+
logger_1.logger.info(' ✅ 已生成复盘报告,跳过 done');
|
|
370
|
+
}
|
|
371
|
+
else {
|
|
372
|
+
(0, child_process_1.execSync)(`speccore done --all -i ${iteration}`, { stdio: 'inherit' });
|
|
373
|
+
}
|
|
374
|
+
break;
|
|
334
375
|
}
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
// v6.91.1+: 检查是否已归档
|
|
339
|
-
const retroPath = (0, path_1.join)(iterDir, '000-overview', 'RETRO.md');
|
|
340
|
-
if (await (0, fs_extra_1.pathExists)(retroPath)) {
|
|
341
|
-
logger_1.logger.info(' ✅ 已生成复盘报告,跳过 done');
|
|
376
|
+
case 'spec2doc': {
|
|
377
|
+
(0, child_process_1.execSync)(`speccore spec2doc -i ${iteration}`, { stdio: 'inherit' });
|
|
378
|
+
break;
|
|
342
379
|
}
|
|
343
|
-
|
|
344
|
-
|
|
380
|
+
} // end switch
|
|
381
|
+
}
|
|
382
|
+
catch (err) {
|
|
383
|
+
phaseStatus = 'failed';
|
|
384
|
+
phaseMessage = err?.message?.slice(0, 100) || '执行失败';
|
|
385
|
+
logger_1.logger.error(` ❌ ${phase.key} 失败: ${phaseMessage}`);
|
|
386
|
+
}
|
|
387
|
+
// v7.4.0+: 每个阶段执行后收集疑问
|
|
388
|
+
try {
|
|
389
|
+
const qFiles = await (0, questions_1.collectQuestionFiles)();
|
|
390
|
+
for (const qf of qFiles) {
|
|
391
|
+
if (qf.includes(`-${phase.key}-`)) {
|
|
392
|
+
phaseQuestions.push(qf.split('/').pop() || qf);
|
|
345
393
|
}
|
|
346
|
-
break;
|
|
347
|
-
}
|
|
348
|
-
case 'spec2doc': {
|
|
349
|
-
(0, child_process_1.execSync)(`speccore spec2doc -i ${iteration}`, { stdio: 'inherit' });
|
|
350
|
-
break;
|
|
351
394
|
}
|
|
352
395
|
}
|
|
396
|
+
catch { }
|
|
397
|
+
phaseResults.push({
|
|
398
|
+
key: phase.key,
|
|
399
|
+
status: phaseStatus,
|
|
400
|
+
message: phaseMessage,
|
|
401
|
+
questions: phaseQuestions,
|
|
402
|
+
duration: Math.round((Date.now() - phaseStart) / 1000),
|
|
403
|
+
});
|
|
353
404
|
logger_1.logger.info('');
|
|
354
405
|
}
|
|
355
|
-
|
|
406
|
+
// v7.4.0+: 生成 Pipeline 总结报告
|
|
407
|
+
const totalDuration = Math.round((Date.now() - pipelineStart) / 1000);
|
|
408
|
+
const reportDir = (0, path_1.join)(iterDir, '000-overview');
|
|
409
|
+
await (0, fs_extra_1.ensureDir)(reportDir);
|
|
410
|
+
const reportPath = (0, path_1.join)(reportDir, 'PIPELINE_REPORT.md');
|
|
411
|
+
const now = new Date().toLocaleString('zh-CN');
|
|
412
|
+
let report = `# Pipeline 执行报告\n\n`;
|
|
413
|
+
report += `> 迭代: ${iteration} | 执行时间: ${now} | 总耗时: ${totalDuration}s\n`;
|
|
414
|
+
report += `> 执行范围: ${PIPELINE_PHASES.slice(startIdx, endIdx + 1).map(p => p.key).join(' → ')}\n\n`;
|
|
415
|
+
report += `## 阶段执行结果\n\n`;
|
|
416
|
+
report += `| 阶段 | 状态 | 耗时 | 说明 |\n`;
|
|
417
|
+
report += `| :--- | :--- | :--- | :--- |\n`;
|
|
418
|
+
for (const pr of phaseResults) {
|
|
419
|
+
const icon = pr.status === 'success' ? '✅' : pr.status === 'skipped' ? '⏭️' : pr.status === 'warning' ? '⚠️' : '❌';
|
|
420
|
+
report += `| ${pr.key} | ${icon} ${pr.status} | ${pr.duration}s | ${pr.message} |\n`;
|
|
421
|
+
}
|
|
422
|
+
// 汇总所有疑问
|
|
423
|
+
const allQuestions = phaseResults.filter(pr => pr.questions.length > 0);
|
|
424
|
+
if (allQuestions.length > 0) {
|
|
425
|
+
report += `\n## 疑问清单\n\n`;
|
|
426
|
+
for (const pr of allQuestions) {
|
|
427
|
+
report += `### ${pr.key} 阶段\n\n`;
|
|
428
|
+
for (const q of pr.questions) {
|
|
429
|
+
report += `- ${q}\n`;
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
// 失败项汇总
|
|
434
|
+
const failedPhases = phaseResults.filter(pr => pr.status === 'failed');
|
|
435
|
+
if (failedPhases.length > 0) {
|
|
436
|
+
report += `\n## 失败项需要处理\n\n`;
|
|
437
|
+
for (const fp of failedPhases) {
|
|
438
|
+
report += `- **${fp.key}**: ${fp.message}\n`;
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
report += `\n---\n> 报告自动生成 by speccore dev auto-pipeline\n`;
|
|
442
|
+
await (0, fs_extra_1.writeFile)(reportPath, report, 'utf-8');
|
|
443
|
+
logger_1.logger.success(`\n✅ Pipeline 完成: ${PIPELINE_PHASES.slice(startIdx, endIdx + 1).map(p => p.key).join(' → ')}`);
|
|
444
|
+
logger_1.logger.info(`📊 执行报告 → ${reportPath}\n`);
|
|
356
445
|
}
|
|
357
446
|
async function renderDevHtml(options) {
|
|
358
447
|
const lang = options.lang || 'zh';
|
package/dist/commands/dev.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,6 @@ export interface IterationSplitOptions {
|
|
|
16
16
|
prune?: boolean;
|
|
17
17
|
modules?: string;
|
|
18
18
|
ignoreSpecsUpdate?: boolean;
|
|
19
|
-
devGuide?: boolean;
|
|
20
19
|
}
|
|
21
20
|
export declare function iterationSplitCommand(options: IterationSplitOptions): Promise<void>;
|
|
22
21
|
//# sourceMappingURL=split.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../../../src/commands/iteration/split.ts"],"names":[],"mappings":"AAoIA,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../../../src/commands/iteration/split.ts"],"names":[],"mappings":"AAoIA,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAuBD,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+xBzF"}
|
|
@@ -336,6 +336,9 @@ async function iterationSplitCommand(options) {
|
|
|
336
336
|
section._reqContent = task.reqContent;
|
|
337
337
|
if (task.techContent)
|
|
338
338
|
section._techContent = task.techContent;
|
|
339
|
+
// v7.4.0+: 保存 AI 生成的 DEV_GUIDE 内容
|
|
340
|
+
if (task.devGuideContent)
|
|
341
|
+
section._devGuideContent = task.devGuideContent;
|
|
339
342
|
if (task.sourceFile)
|
|
340
343
|
section._sourceFile = task.sourceFile;
|
|
341
344
|
if (task.functionalUnit)
|
|
@@ -518,6 +521,11 @@ async function iterationSplitCommand(options) {
|
|
|
518
521
|
}
|
|
519
522
|
await (0, fs_extra_1.writeFile)(reqPath, options.response);
|
|
520
523
|
}
|
|
524
|
+
// v7.4.0+: 从 AI 输出中提取疑问并持久化
|
|
525
|
+
const extractedQs = (0, questions_1.extractQuestionsFromText)(options.response);
|
|
526
|
+
if (extractedQs.length > 0) {
|
|
527
|
+
await (0, questions_1.writeQuestions)({ command: 'split', scope: iter }, extractedQs);
|
|
528
|
+
}
|
|
521
529
|
logger_1.logger.success('✅ 任务已创建');
|
|
522
530
|
// 备份汇总
|
|
523
531
|
if (backups.length > 0) {
|
|
@@ -695,7 +703,7 @@ async function iterationSplitCommand(options) {
|
|
|
695
703
|
// v6.76.0+: 传入过滤条件,限制拆分范围;传入已有 Task 结构,支持增量拆分
|
|
696
704
|
const modulesFilter = options.modules ? options.modules.split(',').map(m => m.trim()).filter(Boolean) : undefined;
|
|
697
705
|
const platformsFilter = options.platforms ? options.platforms.split(',').map(p => p.trim()).filter(Boolean) : undefined;
|
|
698
|
-
let splitPrompt = buildSplitPrompt(iteration, constitutionContent, reqContent2, specContents, allPlatforms, modulesFilter, platformsFilter, existingTaskStructure
|
|
706
|
+
let splitPrompt = buildSplitPrompt(iteration, constitutionContent, reqContent2, specContents, allPlatforms, modulesFilter, platformsFilter, existingTaskStructure);
|
|
699
707
|
// 注入全局上下文(INDEX + TOC 目录,AI 自主读取)
|
|
700
708
|
const { loadGlobalContext, formatGlobalContext } = await Promise.resolve().then(() => __importStar(require('../../core/prompt-builder')));
|
|
701
709
|
const globalCtx = await loadGlobalContext(process.cwd(), 'split');
|
|
@@ -1224,6 +1232,15 @@ ${apiDesc}
|
|
|
1224
1232
|
<!-- AI-FILL: 状态字段及枚举值,需与后端保持一致 -->
|
|
1225
1233
|
`);
|
|
1226
1234
|
}
|
|
1235
|
+
// v7.4.0+: DEV_GUIDE.md 写入(优先 AI 生成,回退到引用 overview 指南)
|
|
1236
|
+
const aiDevGuideContent = section._devGuideContent;
|
|
1237
|
+
if (aiDevGuideContent && aiDevGuideContent.length > 50) {
|
|
1238
|
+
await (0, fs_extra_1.writeFile)((0, path_1.join)(taskDir, '00-specs', 'DEV_GUIDE.md'), `# ${section.name} - 开发者实现指南\n\n${aiDevGuideContent}\n`);
|
|
1239
|
+
}
|
|
1240
|
+
else {
|
|
1241
|
+
// 生成引用 overview DEV_GUIDE.md 的任务级指南
|
|
1242
|
+
await (0, fs_extra_1.writeFile)((0, path_1.join)(taskDir, '00-specs', 'DEV_GUIDE.md'), `# ${section.name} - 开发者实现指南\n\n> 任务: ${taskId} | ${section.name}\n> 本任务的实现指南,结合全局开发指南使用。\n\n## 全局开发指南引用\n- DEV_GUIDE.md → ../../../overview/DEV_GUIDE.md\n\n## 本任务实现步骤\n\n<!-- AI-FILL: execute 阶段根据 REQ.md 和 TECH.md 生成具体实现步骤 -->\n\n## 关键代码示例\n\n<!-- AI-FILL: 核心逻辑的伪代码或代码片段 -->\n\n## 与存量功能的集成\n\n<!-- AI-FILL: 如何与已有代码交互、复用哪些模块 -->\n\n## 测试策略\n\n<!-- AI-FILL: 单元测试、集成测试的具体写法 -->\n\n## 注意事项\n\n<!-- AI-FILL: 常见坑点、边界条件、调试技巧 -->\n`);
|
|
1243
|
+
}
|
|
1227
1244
|
if (section.content.match(/数据库|数据表|表结构|DDL|ALTER|建表|索引/)) {
|
|
1228
1245
|
const schemaMaterial = extractRelevantSection(specContents['TECH.md'] || '', section.name, 'DDL 建表 表结构 索引 CREATE TABLE');
|
|
1229
1246
|
await (0, fs_extra_1.writeFile)((0, path_1.join)(taskDir, '00-specs', 'SCHEMA.md'), generateSchemaTemplate(section, schemaMaterial));
|
|
@@ -1368,8 +1385,10 @@ ${section.content}
|
|
|
1368
1385
|
## 共享规格引用
|
|
1369
1386
|
- REQ.md → ../../../00-specs/REQ.md
|
|
1370
1387
|
- TECH.md → ../../../00-specs/TECH.md
|
|
1388
|
+
- DEV_GUIDE.md → ../../../00-specs/DEV_GUIDE.md
|
|
1371
1389
|
- API_CONTRACT.yaml → ../../../_shared/API_CONTRACT.yaml
|
|
1372
1390
|
- CONTEXT.md → ../../../_shared/CONTEXT.md
|
|
1391
|
+
- 全局开发指南 → ../../../overview/DEV_GUIDE.md
|
|
1373
1392
|
|
|
1374
1393
|
## 跨端关联
|
|
1375
1394
|
- **共享能力**: ${sharedCap}
|
|
@@ -2427,7 +2446,7 @@ ${isH5 ? '移动端优先,适配 375/414/768' :
|
|
|
2427
2446
|
/**
|
|
2428
2447
|
* 构建完整的 AI 智能拆分 Prompt(含 SpecCore 理念 + 粒度规则 + 完整上下文)
|
|
2429
2448
|
*/
|
|
2430
|
-
function buildSplitPrompt(iteration, constitutionContent, reqContent, specContents, standardPlatforms, modulesFilter, platformsFilter, existingTasks
|
|
2449
|
+
function buildSplitPrompt(iteration, constitutionContent, reqContent, specContents, standardPlatforms, modulesFilter, platformsFilter, existingTasks) {
|
|
2431
2450
|
let p = `# SpecCore AI 智能拆分\n\n`;
|
|
2432
2451
|
p += `> 迭代: ${iteration} | 生成: ${new Date().toISOString().split('T')[0]}\n\n`;
|
|
2433
2452
|
// v6.76.0+: 拆分范围限制
|
|
@@ -2573,7 +2592,8 @@ function buildSplitPrompt(iteration, constitutionContent, reqContent, specConten
|
|
|
2573
2592
|
p += ` "owner": "建议负责人",\n`;
|
|
2574
2593
|
p += ` "sourceFile": "来源文档路径(如 bugs/login-timeout.md、features/user-auth.md)",\n`;
|
|
2575
2594
|
p += ` "reqContent": "需求描述内容(Markdown 格式,写入 REQ.md)",\n`;
|
|
2576
|
-
p += ` "techContent": "技术方案内容(Markdown 格式,写入 TECH.md)"
|
|
2595
|
+
p += ` "techContent": "技术方案内容(Markdown 格式,写入 TECH.md)",\n`;
|
|
2596
|
+
p += ` "devGuideContent": "开发者实现指南(Markdown 格式,写入 DEV_GUIDE.md):实现步骤、关键代码示例、与存量功能集成、注意事项"\n`;
|
|
2577
2597
|
p += ` }\n]\n`;
|
|
2578
2598
|
p += '```\n\n';
|
|
2579
2599
|
p += `> **functionalUnit 必须填写**:根据任务类型语义不同:\n`;
|