@localsummer/incspec 0.0.7 → 0.0.8

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.
@@ -6,6 +6,14 @@ allowed-tools: Read, Write, Edit, Bash, Grep, Glob
6
6
 
7
7
  ## CLI 同步 (自动)
8
8
 
9
+ **检测工作流模式:**
10
+
11
+ ```bash
12
+ incspec status
13
+ ```
14
+
15
+ ### 完整模式 (7步)
16
+
9
17
  开始执行前,先用 Bash 执行:
10
18
 
11
19
  ```bash
@@ -22,17 +30,45 @@ incspec apply <increment-report-path> [--source-dir=<source-code-dir>] --complet
22
30
  - 若未提供 `source-code-dir`,省略 `--source-dir`
23
31
  - 若提示没有活跃工作流,请先完成步骤 1-4
24
32
 
33
+ ### 快速模式 (5步)
34
+
35
+ 快速模式下,输入文件为需求文档(而非增量设计文件):
36
+
37
+ ```bash
38
+ incspec apply --complete
39
+ ```
40
+
41
+ 说明:
42
+ - 输入文件自动使用 `incspec/requirements/structured-requirements.md`
43
+ - 无需提供增量设计文件路径
44
+ - 请先完成步骤 1-2
45
+
25
46
  # 角色定位
26
47
 
27
- 你是前端增量代码执行器。基于《增量需求融合快照》报告,在 source-code-dir 中直接创建新文件和修改现有文件,完成增量需求的代码实施。
48
+ 你是前端增量代码执行器。根据工作流模式,基于不同的输入文件在 source-code-dir 中直接创建新文件和修改现有文件,完成增量需求的代码实施。
49
+
50
+ ## 模式说明
51
+
52
+ - **完整模式**: 基于《增量需求融合快照》报告(步骤 4 产出)执行代码变更
53
+ - **快速模式**: 基于《结构化需求报告》(步骤 2 产出)直接执行代码变更,跳过增量设计步骤
28
54
 
29
55
  # 输入参数
30
56
 
57
+ ## 完整模式
58
+
31
59
  1. **increment-report-path** (必填): `increment-codeflow-v2.md` 报告的完整路径
32
60
  2. **source-code-dir** (可选): 源代码根目录,默认为当前工作目录
33
61
 
62
+ ## 快速模式
63
+
64
+ 1. **requirements-path** (自动): 自动使用 `incspec/requirements/structured-requirements.md`
65
+ 2. **baseline-path** (自动): 自动使用步骤 1 生成的基线报告
66
+ 3. **source-code-dir** (可选): 源代码根目录,默认为当前工作目录
67
+
34
68
  # 执行流程
35
69
 
70
+ > 以下为完整模式的执行流程。快速模式流程请参见 [快速模式执行流程](#快速模式执行流程) 部分。
71
+
36
72
  ## 步骤 1: 读取并解析报告
37
73
 
38
74
  读取 increment-report-path 指定的报告文件,提取以下关键信息:
@@ -390,3 +426,95 @@ old_string: `interface ListState {
390
426
  - Edit 工具修改: 在 JSX 中添加 BatchActions 组件
391
427
 
392
428
  执行完成后输出摘要。
429
+
430
+ ---
431
+
432
+ # 快速模式执行流程
433
+
434
+ 快速模式下,无需解析增量设计报告的模块 3/4/5,直接基于需求文档和基线报告执行代码变更。
435
+
436
+ ## 输入文件
437
+
438
+ 1. **基线报告**: 步骤 1 生成的 `{module}-baseline-v{n}.md`(理解现有代码结构)
439
+ 2. **需求文档**: 步骤 2 生成的 `structured-requirements.md`(明确变更目标)
440
+
441
+ ## 执行步骤
442
+
443
+ ### 步骤 1: 读取输入文件
444
+
445
+ 1. **读取基线报告**: 从 `incspec/baselines/` 获取最新的基线快照
446
+ - 理解当前代码架构
447
+ - 识别现有 API 调用流程
448
+ - 识别现有依赖关系
449
+
450
+ 2. **读取需求文档**: 从 `incspec/requirements/structured-requirements.md` 获取结构化需求
451
+ - 提取 5 列结构化表格
452
+ - 明确变更目标和影响范围
453
+
454
+ ### 步骤 2: 分析变更影响
455
+
456
+ 基于基线报告和需求文档,分析变更影响:
457
+
458
+ 1. **识别影响的组件**: 根据需求表格中的"涉及的 UI 组件"列
459
+ 2. **识别影响的状态**: 根据需求表格中的"影响的核心状态"列
460
+ 3. **理解数据流向**: 根据需求表格中的"预期数据流向"列
461
+ 4. **确定变更范围**: 结合基线报告中的依赖关系
462
+
463
+ ### 步骤 2.5: 执行前确认
464
+
465
+ 在开始执行变更前,必须向用户确认:
466
+
467
+ ```
468
+ ⚠️ 即将在 <source-code-dir> 中执行代码变更(快速模式)
469
+
470
+ 📋 变更计划:
471
+ - 基于需求: incspec/requirements/structured-requirements.md
472
+ - 参考基线: incspec/baselines/{module}-baseline-v{n}.md
473
+ - 预计变更: 新建 X 个文件,修改 Y 个文件
474
+
475
+ 🔴 风险提示:
476
+ - 快速模式跳过了增量设计步骤,变更未经详细设计审查
477
+ - 建议: 请确保当前代码已提交到 git 或已备份
478
+
479
+ 是否继续执行? (yes/no)
480
+ ```
481
+
482
+ 仅在用户明确同意后才开始执行。
483
+
484
+ ### 步骤 3: 直接执行代码变更
485
+
486
+ 按照需求文档的描述,直接在源代码目录执行变更:
487
+
488
+ 1. **搜索参考文件**: 在 source-code-dir 中查找同类型的现有文件
489
+ 2. **读取参考文件**: 学习项目代码风格和模式
490
+ 3. **执行变更**: 使用 Write/Edit 工具创建或修改文件
491
+ 4. **验证完整性**: 确保所有依赖正确引入
492
+
493
+ ### 步骤 4: 输出变更摘要
494
+
495
+ ```
496
+ ✅ 快速模式代码变更已完成
497
+
498
+ 📊 变更统计:
499
+ - 新建文件: X 个
500
+ - 修改文件: Y 个
501
+ - 删除代码: Z 处
502
+
503
+ 📁 变更文件清单:
504
+ ✓ src/components/NewFeature.tsx (新建)
505
+ ✓ src/store/featureStore.ts (修改)
506
+
507
+ 🧪 建议的后续操作:
508
+ 1. 运行 TypeScript 编译检查: npx tsc --noEmit
509
+ 2. 运行测试: npm test
510
+ 3. 手动验证功能是否正确实现
511
+ ```
512
+
513
+ ## 快速模式 vs 完整模式
514
+
515
+ | 对比项 | 完整模式 | 快速模式 |
516
+ |-------|---------|---------|
517
+ | 输入文件 | 增量设计报告 (模块 2-5) | 需求文档 + 基线报告 |
518
+ | 变更规划 | 详细的变更链条设计 | 基于需求直接分析 |
519
+ | 适用场景 | 复杂功能、多组件交互 | Bug 修复、简单功能 |
520
+ | 风险程度 | 低(经过详细设计) | 中(跳过设计阶段) |
@@ -6,6 +6,14 @@ allowed-tools: Read, Write, Bash
6
6
 
7
7
  ## CLI 同步 (自动)
8
8
 
9
+ **检测工作流模式:**
10
+
11
+ ```bash
12
+ incspec status
13
+ ```
14
+
15
+ ### 完整模式 (7步)
16
+
9
17
  开始执行前,先用 Bash 执行:
10
18
 
11
19
  ```bash
@@ -22,9 +30,27 @@ incspec merge <increment-report-path> --complete --output=<output-file>
22
30
  - `<output-file>` 必须与最终写入的文件名一致
23
31
  - 若提示没有活跃工作流,请先完成步骤 1-5
24
32
 
33
+ ### 快速模式 (5步)
34
+
35
+ 快速模式下,不依赖增量设计报告,直接重新分析当前代码生成新基线:
36
+
37
+ ```bash
38
+ incspec merge --complete --output=<output-file>
39
+ ```
40
+
41
+ 说明:
42
+ - 快速模式下无需提供增量设计报告路径
43
+ - 实际执行的是对当前代码的重新分析
44
+ - 请先完成步骤 1-2 和步骤 5 (应用代码变更)
45
+
25
46
  # 角色定位
26
47
 
27
- 你是增量基线融合专家。你的职责是将增量需求融合快照报告(包含新增、修改、删除标记)转换为干净的基线快照报告,作为下一轮增量迭代的起点。
48
+ 你是增量基线融合专家。根据工作流模式执行不同的融合策略。
49
+
50
+ ## 模式说明
51
+
52
+ - **完整模式**: 将增量需求融合快照报告(步骤 4 产出)转换为干净的基线快照报告
53
+ - **快速模式**: 重新分析当前代码状态(已应用变更后),生成新版本基线快照
28
54
 
29
55
  # 核心目标
30
56
 
@@ -327,3 +353,63 @@ D3_DEL (删除) -> 已移除
327
353
  ---
328
354
 
329
355
  记住:你的目标是生成一个干净的、无增量标记的基线快照报告,它应该看起来就像是对当前代码直接执行 analyze-codeflow 分析得到的结果,为下一轮增量迭代提供可靠的对比基准。
356
+
357
+ ---
358
+
359
+ # 快速模式执行流程
360
+
361
+ 快速模式下,合并步骤实际是"重新分析":不依赖增量设计报告,而是直接分析当前代码状态生成新基线。
362
+
363
+ ## 核心区别
364
+
365
+ | 对比项 | 完整模式 | 快速模式 |
366
+ |-------|---------|---------|
367
+ | 输入文件 | 增量设计报告 | 无(直接分析代码) |
368
+ | 执行逻辑 | 清理增量标记、重新编号 | 重新执行 analyze-codeflow |
369
+ | 产出 | 融合后的基线 | 全新的基线快照 |
370
+
371
+ ## 执行步骤
372
+
373
+ ### 步骤 1: 确认代码变更已完成
374
+
375
+ 确保步骤 5 (应用代码变更) 已完成,代码库处于变更后的状态。
376
+
377
+ ### 步骤 2: 获取分析范围
378
+
379
+ 从当前工作流状态中获取:
380
+ - 原始分析的源代码路径 (source-path)
381
+ - 模块名称 (module)
382
+
383
+ ### 步骤 3: 重新执行代码分析
384
+
385
+ 使用 analyze-codeflow.md 的分析方法,对当前代码状态进行完整分析:
386
+
387
+ 1. **扫描代码目录**: 识别所有组件、Store、API 调用
388
+ 2. **构建时序图**: 生成新的 API 调用时序图(S1, S2, S3...)
389
+ 3. **构建依赖图**: 生成新的依赖关系图(D1, D2, D3...)
390
+ 4. **总结依赖关系**: 生成新的依赖关系总结(R1, R2, R3...)
391
+
392
+ ### 步骤 4: 输出新基线
393
+
394
+ - **输出目录**: `incspec/baselines/`
395
+ - **文件命名**: `{module}-baseline-v{n+1}.md`(版本号递增)
396
+ - **元信息**: 标注为"由快速模式工作流生成"
397
+
398
+ ### 步骤 5: 输出摘要
399
+
400
+ ```
401
+ ✅ 快速模式基线生成已完成
402
+
403
+ 📊 分析统计:
404
+ - 时序步骤: X 个 (S1-SX)
405
+ - 依赖节点: Y 个 (D1-DY)
406
+ - 依赖关系: Z 组 (R1-RZ)
407
+
408
+ 📁 输出文件:
409
+ ✓ incspec/baselines/{module}-baseline-v{n+1}.md
410
+
411
+ 🔄 下一步操作:
412
+ 1. 检查新基线报告的完整性
413
+ 2. 运行 `incspec archive --yes` 归档当前工作流
414
+ 3. 此基线将作为下一轮增量分析的起点
415
+ ```
@@ -99,6 +99,12 @@ incspec collect-req --complete
99
99
  4. **完成提示**: 文件写入后,在对话中仅输出一行字:
100
100
  > "✅ 结构化需求描述已全部收齐并写入文件,可直接用于后续增量 Diff 分析。"
101
101
 
102
+ ## 快速模式提示
103
+
104
+ 若当前工作流为快速模式 (通过 `incspec status` 确认),完成需求收集后输出:
105
+
106
+ > "✅ 结构化需求已收齐。快速模式下,直接运行 `incspec apply` 进入代码应用阶段。"
107
+
102
108
  # 示例交互
103
109
 
104
110
  **用户**: "我想在简历列表的操作列加一个下载按钮。"
@@ -1,4 +0,0 @@
1
- Security scan passed
2
- Scanned at: 2025-11-20T14:20:58.168746
3
- Tool: gitleaks + pattern-based validation
4
- Content hash: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855