speccore 8.3.275 → 8.3.277

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,8 @@ description: >
6
6
  双模式:默认人机交互(每个节点停下确认);用户说「全自动/自动跑/别停」时切全自动模式(节点间不等待,
7
7
  但范围确认、质量门禁失败、冒烟失败仍停下)。支持步骤回退重跑(重分析 / 重拆指定模块 / 重执行单任务)。
8
8
  触发词:spec once、/once、一次跑完、快速跑、快速分析、小步快跑、端到端 等。
9
+ 用户仅询问使用方法(「spec-once 怎么用 / 使用说明 / 使用步骤 / 能干什么」)时不启动流程,
10
+ 按正文「使用说明」节输出纯文字指南,不要执行任何 speccore 命令。
9
11
  与流水线(speccore run/dev)的区别:spec-once 由宿主 AI 单会话编排现有命令,
10
12
  覆盖「开发到部署验证」的快速闭环(不含 PR 提交/归档收尾,那些按需走 pr/done),
11
13
  适合少量功能单元(建议 ≤3 个)的快速推进;大范围多单元请走流水线。
@@ -15,6 +17,36 @@ disable-model-invocation: false
15
17
 
16
18
  # spec-once — 单会话端到端执行
17
19
 
20
+ ## 使用说明(用户仅询问「怎么用/使用说明/使用步骤/能干什么」时,输出本指南,不启动流程)
21
+
22
+ **它是什么**:SpecCore 的单会话端到端编排技能——把「需求 → 澄清 → 分析 → 拆分任务 → 开发 → 冒烟 → 部署验证」整条链在这一次对话里跑完,全程由 AI 按剧本编排 speccore 命令。
23
+
24
+ **怎么触发**:直接对 AI 说,例如:
25
+ - 「spec once,帮我从 features/ 下的门禁授权同步开始跑」
26
+ - 「一次跑完这个文档:/path/to/PRD.docx」
27
+ - 「小步快跑:做一个会议室签到功能」(一句话需求也可以)
28
+
29
+ **三种入口**:
30
+ 1. **已切好的功能单元**——说单元名或「全部」(建议 ≤3 个,多了建议走流水线)
31
+ 2. **一个需求文档地址**——.md 直接切分;.docx/.pdf 先转 Markdown 再切分
32
+ 3. **一句话需求**——AI 先整理成 PRD 级需求文档,再切分
33
+
34
+ **两种执行模式**:
35
+ - **人机交互(默认)**:每个节点停下等你确认(范围 → 分析 → 拆分 → 执行 → 冒烟 → 部署),适合要盯过程的场景
36
+ - **全自动**:说「全自动/别停下」即可,节点间不等待;只有三个安全点会停下:范围确认、质量门禁失败、冒烟失败
37
+
38
+ **六步流程**:① 范围确认 → ② 澄清与分析(生成 020-specs 规格文档)→ ③ 拆分任务(生成 030-tasks 任务)→ ④ 执行开发(生成代码)→ ⑤ 本地冒烟(编译+测试)→ ⑥ 本地部署验证(默认不自动执行,要你说「部署」才做)
39
+
40
+ **跑完后可继续**:`speccore pr` 提交代码建 PR、`speccore done` 归档收尾(按需,不自动)。
41
+
42
+ **哪一步不满意可回退重跑**:
43
+ - 分析不好 → 重分析该单元(覆盖前自动备份)
44
+ - 拆分不合理 → 只重拆指定模块(旧任务自动备份,其它保留)
45
+ - 执行不满意 → 重执行单个任务
46
+ - 切分不理想 → 重切同名单元三选一(跳过/覆盖/重命名)
47
+
48
+ **适用边界**:少量单元(≤3)的快速闭环;不适合大范围多单元(走 `speccore run` 流水线)。
49
+
18
50
  ## 定位
19
51
  把「澄清→分析→拆分→执行→冒烟→部署验证」六步装进一次会话,一步到位。
20
52
  底层全部复用 speccore 现有命令,本 skill 只做编排与交互节点(像 article-to-html 一样
package/README.en.md CHANGED
@@ -117,6 +117,7 @@ Can't remember 60 commands? These are the ones that matter:
117
117
  | `run` | named pipeline entry (preset / range) |
118
118
  | `ask` | natural-language entry (auto-orchestration) |
119
119
  | `doc2spec` | import PRD → SpecCore MD |
120
+ | `unitize` | split requirement doc → feature units (formerly doc2spec --split) |
120
121
  | `req-doc` | one-liner requirement → PRD doc |
121
122
  | `analyze` | AI requirement analysis |
122
123
  | `taskify` | split requirements into dev tasks |
@@ -140,6 +141,10 @@ speccore ask "deploy for me" # → run --preset deploy
140
141
  speccore ask "from analyze to develop" # → run --from analyze --to execute
141
142
  ```
142
143
 
144
+ ### ⚡ spec-once single-session end-to-end
145
+
146
+ One "spec once" phrase packs the whole requirement-to-deploy chain into a single session: entry (feature units / doc path / one-liner) → clarify → analyze → taskify → execute → local smoke → deploy verification. **Dual mode**: interactive by default (pauses at every node); say "full-auto / don't stop" to switch to auto mode (pauses only at three safety points: scope confirmation, quality-gate failure, smoke failure). Unsatisfied with a step? **Roll back and rerun**: re-analyze (`analyze --unit` overwrite + backup), re-taskify (`taskify --modules`), re-execute (`execute` single task), re-unitize (`unitize --on-duplicate`). Best for a few feature units (≤3); larger scope goes through `speccore run`.
147
+
143
148
  ### 🧠 Knowledge graph & code graph
144
149
 
145
150
  ```bash
package/README.md CHANGED
@@ -117,6 +117,7 @@ settings:
117
117
  | `run` | 命名流水线入口(preset / 起止点) |
118
118
  | `ask` | 自然语言入口(说人话,自动编排) |
119
119
  | `doc2spec` | 导入 PRD → SpecCore MD |
120
+ | `unitize` | 切分需求文档 → 功能单元(原 doc2spec --split) |
120
121
  | `req-doc` | 一句话需求 → PRD 文档 |
121
122
  | `analyze` | AI 需求分析 |
122
123
  | `taskify` | 拆分需求为开发任务 |
@@ -141,6 +142,10 @@ speccore ask "从分析到开发" # → run --from analyze --to e
141
142
  speccore ask "分析本迭代需求,跳过澄清" # → analyze --skip-clarify
142
143
  ```
143
144
 
145
+ ### ⚡ spec-once 单会话端到端
146
+
147
+ 一句「spec once」把需求到部署整条链装进一次会话:需求入口(功能单元 / 文档地址 / 一句话需求)→ 澄清 → 分析 → 拆分任务 → 开发 → 本地冒烟 → 部署验证。**双模式**:默认人机交互(每个节点停下确认),说「全自动/别停」切全自动(仅范围确认、质量门禁失败、冒烟失败三个安全点停下)。哪一步不满意可**回退重跑**:重分析(`analyze --unit` 覆盖+备份)、重拆(`taskify --modules`)、重执行(`execute` 单任务)、重切(`unitize --on-duplicate`)。适合少量功能单元(≤3)的快速闭环,大范围走 `speccore run` 流水线。
148
+
144
149
  ### 🧠 知识图谱 & 代码图谱
145
150
 
146
151
  `speccore graph` 统一查询(知识 + 代码),`speccore knowledge` 可视化图谱:
@@ -1 +1 @@
1
- {"version":3,"file":"about.d.ts","sourceRoot":"","sources":["../../src/commands/about.ts"],"names":[],"mappings":"AAKA,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CA8KlD"}
1
+ {"version":3,"file":"about.d.ts","sourceRoot":"","sources":["../../src/commands/about.ts"],"names":[],"mappings":"AAKA,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAuLlD"}
@@ -33,9 +33,16 @@ async function aboutCommand() {
33
33
  { icon: '🚀', title: '环境驱动部署', desc: 'pipeline --env 自动 merge → build → deploy' },
34
34
  { icon: '🧪', title: '配置驱动测试', desc: 'verify --config 多环境/多页面批量测试' },
35
35
  { icon: '🔍', title: 'Spec 自审', desc: 'review 命令让 AI 自检分析文档质量并输出修订建议' },
36
+ { icon: '⚡', title: 'spec-once 单会话闭环', desc: '一句「spec once」需求到部署端到端,双模式 + 回退重跑' },
37
+ { icon: '✂️', title: 'unitize 切分', desc: '需求切功能单元(ASCII 目录名),同名三选一可回滚' },
36
38
  ];
37
39
  // 近期亮点
38
40
  const highlights = [
41
+ 'spec-once 单会话端到端 — 「spec once」一句话跑完需求→分析→拆分→开发→冒烟→部署,人机交互/全自动双模式',
42
+ '步骤回退重跑 — 重分析/重拆/重执行/重切四路径,哪一步不满意都无需推倒重来',
43
+ 'unitize 同名三选一 — skip/overwrite(时间戳备份可回滚)/rename,重切不再慌乱',
44
+ 'taskify --modules 范围重建 — 只重拆指定模块,旧任务自动备份其余保留,告别 --force 全量推倒',
45
+ '功能单元目录 ASCII 化 — 英文 slug + 拼音兜底 + LLM 英译,中文路径兼容风险归零',
39
46
  '环境驱动部署 — pipeline --env 自动读取环境配置 branch,merge → build → deploy',
40
47
  '五层环境模型 — local / dev / test / staging / production,支持任意数量自定义环境',
41
48
  '全命令 Skill 覆盖 — 26+ 命令均有 /命令 + 自然语言 快捷入口',
@@ -55,6 +62,8 @@ async function aboutCommand() {
55
62
  ];
56
63
  // 重要里程碑版本
57
64
  const milestones = [
65
+ { v: '8.3.277', date: '2026-09', desc: '拆分流健壮性加固 + 备份目录指纹隔离(五类静默失败清零)' },
66
+ { v: '8.3.275', date: '2026-09', desc: '步骤重跑体系(taskify --modules / unitize 同名三选一)+ spec-once 双模式' },
58
67
  { v: '8.3.146', date: '2026-09', desc: 'Spec 自审 + 端名动态化 + 全面清理 backend/frontend 硬编码' },
59
68
  { v: '8.3', date: '2026-09', desc: '环境驱动部署 + 全命令 Skill 覆盖 + 配置驱动测试' },
60
69
  { v: '6.8', date: '2026-08', desc: '统一检索层 + RAG 检索 + 全局知识沉淀' },
@@ -1 +1 @@
1
- {"version":3,"file":"about.js","sourceRoot":"","sources":["../../src/commands/about.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"about.js","sourceRoot":"","sources":["../../src/commands/about.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"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"}
@@ -1125,7 +1125,8 @@ async function analyzeCommand(options) {
1125
1125
  try {
1126
1126
  const featureEntries = await (0, fs_extra_2.readdir)(featuresDir, { withFileTypes: true });
1127
1127
  for (const fe of featureEntries) {
1128
- if (fe.isDirectory() && !fe.name.startsWith('.')) {
1128
+ // v8.3.277: 排除时间戳备份目录(unitize overwrite 产生的 xxx-20260924083058)
1129
+ if (fe.isDirectory() && !fe.name.startsWith('.') && !(0, task_utils_1.isTimestampBackup)(fe.name)) {
1129
1130
  const readmePath = await (0, feature_source_1.resolveUnitSourcePath)((0, path_1.join)(featuresDir, fe.name));
1130
1131
  if (await (0, fs_extra_1.pathExists)(readmePath))
1131
1132
  requirements.push(readmePath);