@namewta/speculo 0.1.19 → 0.1.21
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/package.json +1 -1
- package/template/commands/archive.md +1 -1
- package/template/commands/config-prune.md +5 -26
- package/template/commands/handoff.md +1 -1
- package/template/commands/status.md +1 -1
- package/template/skills/config-prune/SKILL.md +44 -0
- package/template/skills/config-prune/references/audit-rules.md +38 -0
- package/template/skills/github-npm-ops/references/failure-recovery.md +2 -2
- package/template/skills/github-npm-ops/references/issue-pr-triage.md +1 -1
- package/template/skills/github-npm-ops/references/preflight-checklist.md +3 -3
- package/template/skills/github-npm-ops/references/release-pipeline.md +3 -3
- package/template/skills/handoff/SKILL.md +34 -11
- package/template/skills/speculo-write/references/persistence-contract-sop.md +86 -7
- package/template/skills/speculo-write/references/workflow-authoring-sop.md +34 -1
- package/template/workflows/dev/02-prd/02-prd.md +1 -1
- package/template/workflows/dev/02-prd/prd-zoom-out.md +1 -1
- package/template/workflows/dev/03-tdd/03-tdd.md +22 -125
- package/template/workflows/dev/03-tdd/agents/tdd-finish-agent.md +34 -0
- package/template/workflows/dev/03-tdd/agents/tdd-implement-agent.md +34 -0
- package/template/workflows/dev/03-tdd/agents/tdd-plan-agent.md +34 -0
- package/template/workflows/dev/04-finalize/04-finalize.md +28 -108
- package/template/workflows/dev/04-finalize/agents/completion-gate-agent.md +35 -0
- package/template/workflows/dev/A-improve-architecture/A-improve-architecture.md +25 -108
- package/template/workflows/dev/A-improve-architecture/architecture-grill.md +30 -0
- package/template/workflows/dev/A-improve-architecture/architecture-review.md +29 -0
- package/template/workflows/dev/A-improve-architecture/architecture-scan.md +37 -0
- package/template/workflows/dev/AGENTS.md +10 -2
- package/template/workflows/dev/D-docs-sync/D-docs-sync.md +14 -1
- package/template/workflows/dev/D-docs-sync/agents/docs-diff-agent.md +34 -0
- package/template/workflows/dev/D-docs-sync/agents/docs-update-agent.md +34 -0
- package/template/workflows/dev/D-docs-sync/config-contract.md +1 -1
- package/template/workflows/dev/D-docs-sync/docs-sync-update.md +1 -1
- package/template/workflows/dev/H-diagnose/H-diagnose.md +12 -23
- package/template/workflows/dev/H-diagnose/agents/diagnose-agent.md +33 -0
- package/template/workflows/dev/H-diagnose/agents/fix-agent.md +34 -0
- package/template/workflows/dev/I-to-issues/I-to-issues.md +29 -90
- package/template/workflows/dev/I-to-issues/issues-slices.md +3 -3
- package/template/workflows/dev/M-domain-modeling/M-domain-modeling.md +6 -22
- package/template/workflows/dev/R-review/R-review.md +33 -121
- package/template/workflows/dev/R-review/agents/engineering-review-agent.md +33 -0
- package/template/workflows/dev/R-review/agents/spec-review-agent.md +34 -0
- package/template/workflows/dev/R-review/agents/standards-review-agent.md +34 -0
- package/template/workflows/dev/R-review/review-setup.md +39 -1
- package/template/workflows/dev/_templates/issues-slices-template.md +1 -1
- package/template/workflows/dev/_templates/{prd-overview-template.md → overview-template.md} +0 -1
- package/template/workflows/doc/AGENTS.md +10 -2
- package/template/workflows/doc/B-writing-beats/B-writing-beats.md +1 -1
- package/template/workflows/doc/E-edit-article/E-edit-article.md +1 -1
- package/template/workflows/doc/S-writing-shape/S-writing-shape.md +1 -1
- package/template/workflows/doc/T-teach/T-teach.md +30 -113
- package/template/workflows/doc/_templates/teach-learning-record-template.md +1 -1
- package/template/workflows/doc/_templates/teach-lesson-html-template.md +24 -0
- package/template/workflows/person/AGENTS.md +14 -2
- package/template/workflows/person/M-mao-zedong-cognitive-os/M-mao-zedong-cognitive-os.md +32 -158
- package/template/workflows/person/M-mao-zedong-cognitive-os/activate.md +2 -1
- package/template/workflows/person/M-mao-zedong-cognitive-os/books/README.md +12 -238
- package/template/workflows/person/M-mao-zedong-cognitive-os/deliver.md +1 -0
- package/template/workflows/person/M-mao-zedong-cognitive-os/diagnose.md +3 -61
- package/template/workflows/person/M-mao-zedong-cognitive-os/mobilize.md +3 -50
- package/template/workflows/person/M-mao-zedong-cognitive-os/references/research/15-quote-bank.md +10 -10
- package/template/workflows/person/M-mao-zedong-cognitive-os/strategize.md +3 -69
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Architecture Grill Phase — 质询所选候选并沉淀
|
|
2
|
+
|
|
3
|
+
## 输入
|
|
4
|
+
|
|
5
|
+
- 用户选中的深化候选(来自 `architecture-review.html`)
|
|
6
|
+
- `speculo/.speculo/dev/<change>/architecture-candidates.md`
|
|
7
|
+
- `speculo/.speculo/.config/context/CONTEXT.md`、`speculo/.speculo/.config/adr/`
|
|
8
|
+
|
|
9
|
+
## 产物
|
|
10
|
+
|
|
11
|
+
- `speculo/.speculo/dev/<change>/architecture-design.md`
|
|
12
|
+
- 经用户确认后更新 `.config/context/`、`.config/adr/`
|
|
13
|
+
|
|
14
|
+
## 填写引导
|
|
15
|
+
|
|
16
|
+
1. 用 `../../../skills/grill-me/SKILL.md` 与用户走设计树:约束、依赖、深化后模块形态、接缝后面是什么、哪些测试存活。
|
|
17
|
+
2. 决策结晶时按 `../M-domain-modeling/M-domain-modeling.md` 内联沉淀:深化模块用了 CONTEXT 没有的概念 → 加术语;锐化了模糊术语 → 更新 CONTEXT;用户以关键理由否决候选 → 按 ADR 三判据决定是否记 ADR。
|
|
18
|
+
3. 想探索深化模块的备选接口时,按 `../../../vendor/codebase-design/DESIGN-IT-TWICE.md` 的「设计两次」并行子代理模式。
|
|
19
|
+
|
|
20
|
+
## 边界
|
|
21
|
+
|
|
22
|
+
- 写 `.config/context/` 或 `.config/adr/` 前必须经用户确认。
|
|
23
|
+
- 本 phase 不落地代码实现(交由 `../03-tdd/03-tdd.md`)。
|
|
24
|
+
|
|
25
|
+
## 完成准则
|
|
26
|
+
|
|
27
|
+
- 选中候选的接口、依赖策略与适配器、存活测试已记入 `architecture-design.md`
|
|
28
|
+
- 决策结晶处的术语 / ADR 已按 `../M-domain-modeling/` 沉淀(经用户确认)
|
|
29
|
+
- `architecture-design.md` 无残留 `[TODO:]`
|
|
30
|
+
- `.status.json` 写入 `selected_candidate`,置 `architecture_status: designed`
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Architecture Review Phase — 可视化架构审查报告
|
|
2
|
+
|
|
3
|
+
## 输入
|
|
4
|
+
|
|
5
|
+
- `speculo/.speculo/dev/<change>/architecture-candidates.md`
|
|
6
|
+
- `speculo/.speculo/.config/context/CONTEXT.md`
|
|
7
|
+
|
|
8
|
+
## 产物
|
|
9
|
+
|
|
10
|
+
- `speculo/.speculo/dev/<change>/architecture-review.html`
|
|
11
|
+
|
|
12
|
+
## 填写引导
|
|
13
|
+
|
|
14
|
+
1. 按 `../HTML-REPORT.md` 编写**自包含** HTML(Tailwind + Mermaid 走 CDN),每个候选一张卡片含**前后对比图**,结尾「首要推荐」段。
|
|
15
|
+
2. 写入 `speculo/.speculo/dev/<change>/architecture-review.html`(**不写临时目录**),用 OS 命令打开(macOS `open`、Linux `xdg-open`、Windows `start`),并告知用户绝对路径。
|
|
16
|
+
3. 领域用 CONTEXT 词汇、架构用 codebase-design 词汇。
|
|
17
|
+
4. 此时不提接口设计;写入并打开后,询问用户:「这些候选你想探索哪一个?」
|
|
18
|
+
|
|
19
|
+
## 边界
|
|
20
|
+
|
|
21
|
+
- 本 phase 不做接口设计或质询。
|
|
22
|
+
- 报告必须写入 change 目录,禁止 `temp/` 或项目根目录。
|
|
23
|
+
|
|
24
|
+
## 完成准则
|
|
25
|
+
|
|
26
|
+
- HTML 自包含、每个候选有前后对比图与推荐强度徽章、含首要推荐段
|
|
27
|
+
- 报告已为用户打开
|
|
28
|
+
- 已请用户选择候选
|
|
29
|
+
- `.status.json` 写入 `candidate_count`、`report_path`,置 `architecture_status: reported`
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Architecture Scan Phase — 探索深化候选
|
|
2
|
+
|
|
3
|
+
## 输入
|
|
4
|
+
|
|
5
|
+
- 当前 git 仓库与待改进的代码区域
|
|
6
|
+
- `speculo/.speculo/.config/context/CONTEXT.md`、触及区域的 `speculo/.speculo/.config/adr/` ADR
|
|
7
|
+
- 设计词汇单一事实源 `../../../vendor/codebase-design/SKILL.md`、`DEEPENING.md`
|
|
8
|
+
|
|
9
|
+
## 产物
|
|
10
|
+
|
|
11
|
+
- `speculo/.speculo/dev/<change>/architecture-candidates.md`
|
|
12
|
+
|
|
13
|
+
## 核心原则(引用 codebase-design)
|
|
14
|
+
|
|
15
|
+
- **删除测试**:对任何疑似浅的模块,想象删除它——复杂性会集中(好信号)还是只是移动?
|
|
16
|
+
- **深度是接口的属性**:小接口 + 大量实现;深化 = 缩小接口、把复杂性吸收进实现。
|
|
17
|
+
- **接缝纪律**:一个适配器 = 假设接缝,两个 = 真实接缝。
|
|
18
|
+
- 完整原则见 `../../../vendor/codebase-design/SKILL.md` 与 `DEEPENING.md`,本 phase 不复制。
|
|
19
|
+
|
|
20
|
+
## 填写引导
|
|
21
|
+
|
|
22
|
+
1. 先读 `speculo/.speculo/.config/context/CONTEXT.md` 与触及区域的 `.config/adr/`。
|
|
23
|
+
2. 用 Agent 工具(`subagent_type=Explore`)遍历代码库,注意摩擦:理解一个概念要在许多小模块间跳转?模块浅?纯函数仅为可测试性而提取?紧耦合泄漏?难以通过当前接口测试?
|
|
24
|
+
3. 对每个疑似浅模块应用**删除测试**,保留「删除会集中复杂性」的候选。
|
|
25
|
+
4. 每个候选记录:**涉及文件**、**问题**、**解决方案**、**收益**(局部性 / 杠杆 / 测试改善)、**依赖类别**(进程内 / 本地可替换 / 端口与适配器 / mock)、**推荐强度**(强烈 / 值得探索 / 推测性)。
|
|
26
|
+
5. 与现有 ADR 冲突的候选,仅在摩擦真实到值得重审 ADR 时保留,并显式标注。
|
|
27
|
+
|
|
28
|
+
## 边界
|
|
29
|
+
|
|
30
|
+
- 本 phase 不写 HTML 报告、不做接口设计。
|
|
31
|
+
- 候选均用 codebase-design 词汇命名,不散用「组件 / 服务 / 边界」。
|
|
32
|
+
|
|
33
|
+
## 完成准则
|
|
34
|
+
|
|
35
|
+
- 每个候选含文件、问题、解决方案、收益、依赖类别、推荐强度
|
|
36
|
+
- `architecture-candidates.md` 无残留 `[TODO:]`
|
|
37
|
+
- `.status.json` 写入 `candidate_count`,置 `architecture_status: scanning`
|
|
@@ -44,7 +44,7 @@ keywords: [dev, 开发, workflow, index, agents, 状态]
|
|
|
44
44
|
2. 若只有一个 active change,默认继续该 change;若有多个 active change,要求用户选择。
|
|
45
45
|
3. 若没有 active change,按用户意图创建新的 change。**以下三步为原子操作,不可跳过,前一步失败时停止后续并报告:**
|
|
46
46
|
- **3a. 创建 change 目录** —— `speculo/.speculo/dev/<YYYY-MM-DD>-<kebab-name>/`(使用当前日期,`<kebab-name>` 从用户意图提取,不超过 5 个词)。
|
|
47
|
-
- **3b. 写入 `.status.json`** —— 在 change 目录下创建 `.status.json`,按
|
|
47
|
+
- **3b. 写入 `.status.json`** —— 在 change 目录下创建 `.status.json`,按 `../../skills/speculo-write/references/persistence-contract-sop.md` 最小初始化模板填入所有必填字段(`name`、`category: "dev"`、`change_status: "active"`、`created_at`、`updated_at`、`current_phase: "00-init"`、`phase_history`)。
|
|
48
48
|
- **3c. 更新 `dev-status.json`** —— 读取 `speculo/.speculo/dev-status.json`,在 `active[]` 中追加该 change 的索引条目(`name`、`current_phase: "00-init"`、`updated_at`),写回文件。
|
|
49
49
|
- 以上三步全部成功后,方可继续推荐入口。
|
|
50
50
|
4. 推荐入口时优先使用用户显式别名;没有别名时按执行模式推荐。
|
|
@@ -79,9 +79,17 @@ keywords: [dev, 开发, workflow, index, agents, 状态]
|
|
|
79
79
|
- worktree 模式 change 额外汇报 `base_branch` / `change_branch` / `worktree_status`
|
|
80
80
|
- 推荐下一步入口和原因
|
|
81
81
|
|
|
82
|
+
## 续跑协议
|
|
83
|
+
|
|
84
|
+
1. 读取 change 目录下 `.status.json` 的 `current_phase` 与 `phase_history`。
|
|
85
|
+
2. 跳过 `status: completed` 的 phase;从 `in-progress`、`blocked` 或首个 `pending` phase 继续。
|
|
86
|
+
3. 根据 `current_phase` 匹配 workflow 入口 `## 阶段` 中的机器 id,只读取对应 phase 文件与模板。
|
|
87
|
+
4. 首个 workflow 进入 change 时写入 `execution_mode`(使用入口声明的执行模式名或用户指定别名)。
|
|
88
|
+
5. 不得因续跑而重复创建 change 或重写已完成的 phase 产物。
|
|
89
|
+
|
|
82
90
|
## 完成与状态更新
|
|
83
91
|
|
|
84
92
|
- 所有 dev workflow 必须维护同一 change 的 `.status.json`。
|
|
85
93
|
- 进入 phase 时更新 `current_phase`,并在 `phase_history` 追加 `in-progress` 记录。
|
|
86
94
|
- phase 完成时写入 `completed_at` 和 `status: completed`。
|
|
87
|
-
-
|
|
95
|
+
- 只有 `dev/04-finalize` 或 `archive` 命令可写 `change_status: completed | archived`;其他 dev workflow 只写各自扩展字段。
|
|
@@ -55,7 +55,16 @@ keywords: [docs-sync, changelog, readme, agents, config, archive, adr, context,
|
|
|
55
55
|
|
|
56
56
|
## 阶段
|
|
57
57
|
|
|
58
|
+
| Phase | id | agent | 规范 | 产物 |
|
|
59
|
+
|-------|-----|-------|------|------|
|
|
60
|
+
| 1. State Read | `state-read` | — | `docs-sync-state.md` | `docs-sync-state.json` |
|
|
61
|
+
| 2. Diff Collect | `diff-collect` | `agents/docs-diff-agent.md` | `docs-sync-diff.md` | `docs-sync-report.md` |
|
|
62
|
+
| 3. Knowledge Extract | `knowledge-extract` | — | `knowledge-extract.md` | `docs-sync-report.md` |
|
|
63
|
+
| 4. Asset Audit & Update | `asset-audit-update` | `agents/docs-update-agent.md` | `docs-sync-update.md` | `docs-sync-report.md` |
|
|
64
|
+
| 5. State Write | `state-write` | `agents/docs-update-agent.md` | `docs-sync-finish.md` | `docs-sync-state.json` |
|
|
65
|
+
|
|
58
66
|
### 1. State Read — 读取同步状态
|
|
67
|
+
- id:`state-read`
|
|
59
68
|
- 规范:`docs-sync-state.md`
|
|
60
69
|
- 模板:`../_templates/docs-sync-state-template.json`
|
|
61
70
|
- 产物:`speculo/.speculo/dev/docs-sync-state.json`
|
|
@@ -65,6 +74,7 @@ keywords: [docs-sync, changelog, readme, agents, config, archive, adr, context,
|
|
|
65
74
|
- 首次空 state 已进入 `bootstrap` 模式,并已生成首批 `tracked_assets` 候选与初始化范围
|
|
66
75
|
|
|
67
76
|
### 2. Diff Collect — 收集 git 差异
|
|
77
|
+
- id:`diff-collect`
|
|
68
78
|
- 规范:`docs-sync-diff.md`
|
|
69
79
|
- 模板:无
|
|
70
80
|
- 产物:`docs-sync-report.md`
|
|
@@ -74,6 +84,7 @@ keywords: [docs-sync, changelog, readme, agents, config, archive, adr, context,
|
|
|
74
84
|
- 已判断哪些资产需要新增、删除、修改或保留
|
|
75
85
|
|
|
76
86
|
### 3. Knowledge Extract — 归档知识沉淀
|
|
87
|
+
- id:`knowledge-extract`
|
|
77
88
|
- 规范:`knowledge-extract.md`
|
|
78
89
|
- 模板:`../_templates/docs-sync-report-template.md`
|
|
79
90
|
- 产物:`docs-sync-report.md`
|
|
@@ -83,6 +94,7 @@ keywords: [docs-sync, changelog, readme, agents, config, archive, adr, context,
|
|
|
83
94
|
- 不确定或多语义项已转交 `../M-domain-modeling/M-domain-modeling.md` 或标记为待确认
|
|
84
95
|
|
|
85
96
|
### 4. Asset Audit & Update — 审计并差量更新资产
|
|
97
|
+
- id:`asset-audit-update`
|
|
86
98
|
- 规范:`docs-sync-update.md`
|
|
87
99
|
- 模板:`../_templates/docs-sync-report-template.md`
|
|
88
100
|
- 产物:`docs-sync-report.md`
|
|
@@ -94,6 +106,7 @@ keywords: [docs-sync, changelog, readme, agents, config, archive, adr, context,
|
|
|
94
106
|
- `docs-sync-report.md` 无残留 `[TODO:]`
|
|
95
107
|
|
|
96
108
|
### 5. State Write — 验证与写回状态
|
|
109
|
+
- id:`state-write`
|
|
97
110
|
- 规范:`docs-sync-finish.md`
|
|
98
111
|
- 模板:`../_templates/docs-sync-report-template.md`
|
|
99
112
|
- 产物:`speculo/.speculo/dev/docs-sync-state.json`
|
|
@@ -124,4 +137,4 @@ keywords: [docs-sync, changelog, readme, agents, config, archive, adr, context,
|
|
|
124
137
|
|
|
125
138
|
- 进入每个 phase 时更新 `current_phase` 和 `phase_history`。
|
|
126
139
|
- 只有验证完成后才原子写回 `speculo/.speculo/dev/docs-sync-state.json`。
|
|
127
|
-
- 本 workflow 不自动完成 change
|
|
140
|
+
- 本 workflow 不自动完成 change;同步完成后仅更新 `docs_sync_status` 等扩展字段。需要收尾时移交 `../04-finalize/04-finalize.md`;不得自行写入 `change_status: completed`。
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: dev/D-docs-sync/docs-diff-agent
|
|
3
|
+
type: agent
|
|
4
|
+
name: Docs Diff Agent
|
|
5
|
+
description: 隔离执行 State Read 与 Diff Collect phase:读取同步状态并收集 git 差异
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 使命
|
|
9
|
+
|
|
10
|
+
读取 docs-sync state,收集 git 差异与 bootstrap 盘点结果,初始化 `docs-sync-report.md`。
|
|
11
|
+
|
|
12
|
+
## 输入契约
|
|
13
|
+
|
|
14
|
+
- change 路径:`speculo/.speculo/dev/<change>/`
|
|
15
|
+
- `current_phase` / phase-id:`diff-collect`(承接 `state-read` 完成后)
|
|
16
|
+
- 全局 state:`speculo/.speculo/dev/docs-sync-state.json`
|
|
17
|
+
- 规范:`../docs-sync-state.md`、`../docs-sync-diff.md`
|
|
18
|
+
|
|
19
|
+
## 执行规范
|
|
20
|
+
|
|
21
|
+
- 先按 `../docs-sync-state.md` 确定 `LAST_SYNC_SHA`、`HEAD_SHA` 与 bootstrap 模式。
|
|
22
|
+
- 再按 `../docs-sync-diff.md` 收集 git log、name-status、路径分组。
|
|
23
|
+
- bootstrap 模式执行全量项目盘点。
|
|
24
|
+
- 报告写入 `speculo/.speculo/dev/<change>/docs-sync-report.md`。
|
|
25
|
+
|
|
26
|
+
## 产物与状态
|
|
27
|
+
|
|
28
|
+
- 产物:`docs-sync-report.md`(diff 段)
|
|
29
|
+
- `.status.json`:更新 `docs_sync_range`、`docs_sync_status`
|
|
30
|
+
|
|
31
|
+
## 边界
|
|
32
|
+
|
|
33
|
+
- 不修改 tracked assets 正文;不写回 docs-sync state。
|
|
34
|
+
- 不写 `change_status`。
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: dev/D-docs-sync/docs-update-agent
|
|
3
|
+
type: agent
|
|
4
|
+
name: Docs Update Agent
|
|
5
|
+
description: 隔离执行 Knowledge Extract、Asset Audit & Update 与 State Write phase
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 使命
|
|
9
|
+
|
|
10
|
+
从归档提取知识、差量更新 tracked assets、验证后原子写回 docs-sync state。
|
|
11
|
+
|
|
12
|
+
## 输入契约
|
|
13
|
+
|
|
14
|
+
- change 路径:`speculo/.speculo/dev/<change>/`
|
|
15
|
+
- `current_phase` / phase-id:`asset-audit-update` 或 `state-write`
|
|
16
|
+
- 上游产物:`docs-sync-report.md`(diff 段已完成)
|
|
17
|
+
- 规范:`../knowledge-extract.md`、`../docs-sync-update.md`、`../docs-sync-finish.md`
|
|
18
|
+
- 契约:`../readme-contract.md`、`../agents-contract.md`、`../changelog-contract.md`、`../config-contract.md`
|
|
19
|
+
|
|
20
|
+
## 执行规范
|
|
21
|
+
|
|
22
|
+
- 按 `../knowledge-extract.md` 读取 archive 高信号产物。
|
|
23
|
+
- 按 `../docs-sync-update.md` 差量更新 tracked assets;术语不稳定时转交 `../../M-domain-modeling/M-domain-modeling.md`。
|
|
24
|
+
- 按 `../docs-sync-finish.md` 验证并原子写回 `speculo/.speculo/dev/docs-sync-state.json`。
|
|
25
|
+
|
|
26
|
+
## 产物与状态
|
|
27
|
+
|
|
28
|
+
- 产物:`docs-sync-report.md`(完整)、更新后的 tracked assets、`docs-sync-state.json`
|
|
29
|
+
- `.status.json`:更新 `synced_assets`、`config_audit_status`、`docs_sync_status: synced`
|
|
30
|
+
|
|
31
|
+
## 边界
|
|
32
|
+
|
|
33
|
+
- RULES.md 删除或改写须用户确认。
|
|
34
|
+
- 不写 `change_status`;需要收尾时移交 `../../04-finalize/04-finalize.md`。
|
|
@@ -62,7 +62,7 @@ ADR 记录难以逆转、缺上下文会令人意外、存在真实权衡的决
|
|
|
62
62
|
|
|
63
63
|
## 删除与 Prune
|
|
64
64
|
|
|
65
|
-
docs-sync 可以直接删除 tracked 文档中的过期段落;对 `.config` 文件级删除默认进入 `../../../
|
|
65
|
+
docs-sync 可以直接删除 tracked 文档中的过期段落;对 `.config` 文件级删除默认进入 `../../../skills/config-prune/SKILL.md` 审计候选。
|
|
66
66
|
|
|
67
67
|
可进入 prune 候选的典型情况:
|
|
68
68
|
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
- 常规同步不整页重写 README 或代理手册;`bootstrap` 模式只在文件缺失时创建完整初始文件,已有文件仍以审计和差量修订为主。
|
|
35
35
|
- 不添加没有对应代码来源的计划中能力。
|
|
36
36
|
- 不把 docs-sync state 放回 skill 或 workflow 目录。
|
|
37
|
-
- 不自动删除 `.config` 文件;删除候选进入 report
|
|
37
|
+
- 不自动删除 `.config` 文件;删除候选进入 report 或交由 `../../../skills/config-prune/SKILL.md` 审计,执行删除需要用户确认。
|
|
38
38
|
- 不把归档产物正文大段复制到长期文档;只沉淀可复用结论,并保留路径引用。
|
|
39
39
|
|
|
40
40
|
## 完成准则
|
|
@@ -45,7 +45,7 @@ keywords: [diagnose, hotfix, bug, debug, performance, 回归]
|
|
|
45
45
|
|
|
46
46
|
**独立进入流程:**
|
|
47
47
|
|
|
48
|
-
1. **change
|
|
48
|
+
1. **change 目录**:若无 active change,执行 `../AGENTS.md` 进入协议步骤 3(原子三步),不得内联自初始化 JSON。
|
|
49
49
|
2. **信息自采集**:若同 change 目录下无上游产物(PRD、decision-log 等),**自行通过代码库探索采集诊断所需上下文**,不要求用户先执行其他工作流:
|
|
50
50
|
- `git log --oneline -30` 查找近期相关变更
|
|
51
51
|
- 搜索错误信息/堆栈中的关键符号(`grep -rn` 在项目中定位)
|
|
@@ -54,31 +54,19 @@ keywords: [diagnose, hotfix, bug, debug, performance, 回归]
|
|
|
54
54
|
3. **深度搜索**:反馈循环构建受阻时,不轻易放弃——按 `diagnose-guide.md` 的 10 种方法逐项尝试;代码库中找不到线索时,搜索项目文档、issue tracker、CI 日志。
|
|
55
55
|
4. **仅必要时询问**:仅在代码库探索无法确定的关键决策点(如需要访问外部环境、需要用户提供日志文件)使用 `AskUserQuestion`。
|
|
56
56
|
|
|
57
|
-
### 缺少 change
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
1. 从用户报告的 Bug/异常提取 `<kebab-name>`(如 `fix-login-timeout`、`fix-payment-npe`)
|
|
62
|
-
2. 创建 `speculo/.speculo/dev/<YYYY-MM-DD>-<kebab-name>/`
|
|
63
|
-
3. 初始化 `.status.json`:
|
|
64
|
-
```json
|
|
65
|
-
{
|
|
66
|
-
"dev_entry": "dev/H",
|
|
67
|
-
"current_phase": "1. Diagnose Loop",
|
|
68
|
-
"phase_history": [],
|
|
69
|
-
"change_status": "active",
|
|
70
|
-
"embedded_guides": ["diagnose"],
|
|
71
|
-
"feedback_loop": "none",
|
|
72
|
-
"hypothesis_status": "open",
|
|
73
|
-
"regression_test": "blocked",
|
|
74
|
-
"debug_artifacts": []
|
|
75
|
-
}
|
|
76
|
-
```
|
|
77
|
-
4. 在 `speculo/.speculo/dev-status.json` 的 `active` 数组中追加该 change 目录名
|
|
57
|
+
### 缺少 change 目录时
|
|
58
|
+
|
|
59
|
+
若无 active change,执行 `../AGENTS.md` 进入协议步骤 3(原子三步),不得内联自初始化 JSON。
|
|
78
60
|
|
|
79
61
|
## 阶段
|
|
80
62
|
|
|
63
|
+
| Phase | id | agent | 规范 | 模板 | 产物 |
|
|
64
|
+
|-------|-----|-------|------|------|------|
|
|
65
|
+
| 1. Diagnose Loop | `diagnose-loop` | `agents/diagnose-agent.md` | `diagnose-loop.md` | `../_templates/diagnosis-template.md` | `diagnosis.md` |
|
|
66
|
+
| 2. Fix Regression | `fix-regression` | `agents/fix-agent.md` | `diagnose-fix.md` | `../_templates/regression-template.md` | `regression.md` |
|
|
67
|
+
|
|
81
68
|
### 1. Diagnose Loop — 反馈循环与假设
|
|
69
|
+
- id:`diagnose-loop`
|
|
82
70
|
- 规范:`diagnose-loop.md`
|
|
83
71
|
- 模板:`../_templates/diagnosis-template.md`
|
|
84
72
|
- 产物:`diagnosis.md`
|
|
@@ -88,6 +76,7 @@ keywords: [diagnose, hotfix, bug, debug, performance, 回归]
|
|
|
88
76
|
- `diagnosis.md` 无残留 `[TODO:]`
|
|
89
77
|
|
|
90
78
|
### 2. Fix Regression — 修复与回归
|
|
79
|
+
- id:`fix-regression`
|
|
91
80
|
- 规范:`diagnose-fix.md`
|
|
92
81
|
- 模板:`../_templates/regression-template.md`
|
|
93
82
|
- 产物:`regression.md`
|
|
@@ -116,4 +105,4 @@ keywords: [diagnose, hotfix, bug, debug, performance, 回归]
|
|
|
116
105
|
|
|
117
106
|
- 进入每个 phase 时更新 `current_phase` 和 `phase_history`。
|
|
118
107
|
- 若需要 TDD 实现修复,可嵌入 `../03-tdd/03-tdd.md` 的 Slice Loop。
|
|
119
|
-
-
|
|
108
|
+
- 修复验证完成后移交 `../04-finalize/04-finalize.md` 或 `../R-review/R-review.md`;不得自行写入 `change_status: completed`。
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: dev/H-diagnose/diagnose-agent
|
|
3
|
+
type: agent
|
|
4
|
+
name: Diagnose Agent
|
|
5
|
+
description: 隔离执行 Diagnose Loop phase:反馈循环与假设验证
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 使命
|
|
9
|
+
|
|
10
|
+
建立可信反馈循环,记录复现、假设与插桩结果,产出 `diagnosis.md`。
|
|
11
|
+
|
|
12
|
+
## 输入契约
|
|
13
|
+
|
|
14
|
+
- change 路径:`speculo/.speculo/dev/<change>/`
|
|
15
|
+
- `current_phase` / phase-id:`diagnose-loop`
|
|
16
|
+
- 用户描述的失败现象、日志、复现步骤
|
|
17
|
+
- 模板:`../_templates/diagnosis-template.md`
|
|
18
|
+
|
|
19
|
+
## 执行规范
|
|
20
|
+
|
|
21
|
+
- 按 `../diagnose-loop.md` 与 `../diagnose-guide.md` 执行诊断循环。
|
|
22
|
+
- HITL 场景按 `../scripts/hitl-loop.template.sh` 建立结构化循环。
|
|
23
|
+
- 产物写入 `speculo/.speculo/dev/<change>/diagnosis.md`。
|
|
24
|
+
|
|
25
|
+
## 产物与状态
|
|
26
|
+
|
|
27
|
+
- 产物:`diagnosis.md`
|
|
28
|
+
- `.status.json`:更新 `current_phase: diagnose-loop`、`feedback_loop`、`hypothesis_status`
|
|
29
|
+
|
|
30
|
+
## 边界
|
|
31
|
+
|
|
32
|
+
- 不越过本 phase;不实施修复或回归测试。
|
|
33
|
+
- 不写 `change_status`。
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: dev/H-diagnose/fix-agent
|
|
3
|
+
type: agent
|
|
4
|
+
name: Fix Agent
|
|
5
|
+
description: 隔离执行 Fix Regression phase:修复与回归验证
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 使命
|
|
9
|
+
|
|
10
|
+
在正确接缝实施修复并验证回归,产出 `regression.md`。
|
|
11
|
+
|
|
12
|
+
## 输入契约
|
|
13
|
+
|
|
14
|
+
- change 路径:`speculo/.speculo/dev/<change>/`
|
|
15
|
+
- `current_phase` / phase-id:`fix-regression`
|
|
16
|
+
- 上游产物:`diagnosis.md`
|
|
17
|
+
- 模板:`../_templates/regression-template.md`
|
|
18
|
+
|
|
19
|
+
## 执行规范
|
|
20
|
+
|
|
21
|
+
- 按 `../diagnose-fix.md` 实施修复。
|
|
22
|
+
- 可在接缝添加回归测试;必要时嵌入 `../../03-tdd/03-tdd.md` 的 Slice Loop。
|
|
23
|
+
- 重新验证原始反馈循环。
|
|
24
|
+
- 产物写入 `speculo/.speculo/dev/<change>/regression.md`。
|
|
25
|
+
|
|
26
|
+
## 产物与状态
|
|
27
|
+
|
|
28
|
+
- 产物:`regression.md`
|
|
29
|
+
- `.status.json`:更新 `current_phase: fix-regression`、`regression_test`
|
|
30
|
+
|
|
31
|
+
## 边界
|
|
32
|
+
|
|
33
|
+
- 不越过本 phase;不写 `change_status`。
|
|
34
|
+
- 完成后移交 `../../04-finalize/04-finalize.md` 或 `../../R-review/R-review.md`。
|
|
@@ -8,130 +8,69 @@ keywords: [issues, slices, vertical, AFK, HITL, 切片]
|
|
|
8
8
|
|
|
9
9
|
# To Issues 工作流执行指引
|
|
10
10
|
|
|
11
|
-
本工作流是 `dev/I` 入口。它既可独立执行,也可嵌入 `dev/01`、`dev/02`、`dev/03` 或 `dev/H
|
|
11
|
+
本工作流是 `dev/I` 入口。它既可独立执行,也可嵌入 `dev/01`、`dev/02`、`dev/03` 或 `dev/H`,用于生成垂直切片。
|
|
12
12
|
|
|
13
|
-
##
|
|
14
|
-
|
|
15
|
-
使用垂直切片(示踪弹)将计划、规格或 PRD 分解为可独立接手的 issue。
|
|
16
|
-
|
|
17
|
-
### 铁律
|
|
13
|
+
## 铁律
|
|
18
14
|
|
|
19
15
|
```
|
|
20
16
|
没有精确到文件路径的改动清单,不算垂直切片
|
|
21
17
|
```
|
|
22
18
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
### 内置文档
|
|
26
|
-
|
|
27
|
-
本工作流入口自带以下配套文档,在对应阶段读取:
|
|
28
|
-
|
|
29
|
-
- `issues-slices.md` — 进行实际切片分解时读取;含有完整结构规范(8 段 slices.md)、独立进入时的深度搜索协议(三轮自采集)、存疑时的提问协议(决策树)
|
|
30
|
-
- `../_templates/issues-slices-template.md` — 写 `slices.md` 时作为骨架填写;头部 blockquote 标注了服务工作流与产物文件名,每个 `[TODO:]` 对应结构规范中的一段
|
|
31
|
-
- `../../../vendor/codebase-design/SKILL.md` — 切分跨层切片、在 §2 架构上下文命名模块与接缝时引用(**设计词汇单一事实源**):统一使用深模块设计词汇(模块 / 接口 / 接缝 / 适配器 / 深度 / 杠杆 / 局部性),不散用「组件 / 服务 / 边界」;判定某个切片是否值得引入新接缝时,应用「一个适配器 = 假设接缝,两个适配器 = 真实接缝」——不要为单一实现凭空切出接缝。
|
|
32
|
-
|
|
33
|
-
### 输入
|
|
34
|
-
|
|
35
|
-
- PRD、计划、设计记录、bug 诊断结论或当前对话上下文
|
|
36
|
-
- 用户明确提供的 issue tracker 配置和标签词汇表(如果存在)
|
|
37
|
-
- 当前 change 目录:`speculo/.speculo/dev/<change>/`(`<change>` 必须为 `YYYY-MM-DD-<kebab-name>`,例:`2026-06-12-user-auth`)
|
|
38
|
-
|
|
39
|
-
### 输出
|
|
19
|
+
## 内置文档
|
|
40
20
|
|
|
41
|
-
- `
|
|
42
|
-
-
|
|
43
|
-
-
|
|
21
|
+
- `issues-slices.md` — 切片分解规范、深度搜索协议、质量准则与提问协议
|
|
22
|
+
- `../_templates/issues-slices-template.md` — `slices.md` 骨架
|
|
23
|
+
- `../../../vendor/codebase-design/SKILL.md` — 设计词汇单一事实源(模块 / 接口 / 接缝 / 适配器 / 深度 / 杠杆 / 局部性)
|
|
44
24
|
|
|
45
|
-
|
|
25
|
+
## 输入与输出
|
|
46
26
|
|
|
47
|
-
|
|
27
|
+
- **输入**:PRD、计划、诊断结论或当前对话;当前 change 目录 `speculo/.speculo/dev/<change>/`
|
|
28
|
+
- **输出**:`slices.md`(垂直切片清单、依赖、HITL/AFK 标记、验收标准);可选外部 issue 引用
|
|
48
29
|
|
|
49
|
-
|
|
50
|
-
- 完成的切片可独立演示或验证。
|
|
51
|
-
- 优先选择多个薄切片而非少数厚切片。
|
|
30
|
+
## 垂直切片规则
|
|
52
31
|
|
|
53
|
-
|
|
32
|
+
- 每个切片交付一条贯穿所有层的窄但完整路径;优先多个薄切片而非少数厚切片
|
|
33
|
+
- 切片标记 `HITL` 或 `AFK`;尽可能优先 AFK
|
|
34
|
+
- 默认只生成本地切片计划;仅 tracker 已配置且用户明确要求时才发布外部 issue
|
|
54
35
|
|
|
55
|
-
|
|
36
|
+
## 独立使用
|
|
56
37
|
|
|
57
|
-
|
|
38
|
+
本工作流**零硬依赖**。只需用户描述任务意图 + 当前 git 仓库即可启动。
|
|
58
39
|
|
|
59
|
-
|
|
40
|
+
1. **change 目录**:若无 active change,执行 `../AGENTS.md` 进入协议步骤 3(原子三步),不得内联自初始化 JSON。
|
|
41
|
+
2. **信息自采集**:无上游产物时,按 `issues-slices.md`「独立进入时的深度搜索协议」自行采集。
|
|
42
|
+
3. **存疑即问**:仅在代码库探索无法确定的决策分支上,按 `issues-slices.md`「存疑时的提问协议」使用 `AskUserQuestion`。
|
|
60
43
|
|
|
61
|
-
|
|
62
|
-
- **文件级精准**:每个切片须指名**需阅读的文件**(\| 文件 \| 目的 \|)和**需修改的文件**(\| 文件 \| 改动内容 \|,新增标 **新增**,重构标 **重度重构**),杜绝笼统描述。——映射 slices.md §3 切片条目
|
|
63
|
-
- **数据库变更可追溯**:涉及 schema 变更时,用「涉及的数据库表」表记录每张表的变更(新建/新增字段/语义调整),DDL 注明 sql 文件和追加位置。——映射 slices.md §2.5
|
|
64
|
-
- **实现要点前置**:每个切片列出关键实现要点(算法细节、并发控制、兜底策略),让执行者拿到切片就知道怎么下手。——映射 slices.md §3 切片条目
|
|
65
|
-
- **存疑即问**:方案有未决分支时,按本工作流「存疑时的提问协议」用 `AskUserQuestion` 一次一问、带推荐、逐步锁定,不臆测。
|
|
66
|
-
- **行号现场核对**:引用的行号/路径均为*近似*,实施时以现场代码为准;在计划内写明这一点,避免下游照搬过期行号。
|
|
67
|
-
- **保留/不动同等重要**:每个切片既写「改什么」,也写「**保留/不动什么**」——告诉执行者哪些不能碰。
|
|
68
|
-
- **验证分层**:删除型切片的验收须含残留扫描(grep 0 命中);change 级验证总览走真实运行的冒烟与(如涉及)迁移测试。——映射 slices.md §8
|
|
69
|
-
- **复用优先于新造**:能复用就不新建,在切片「复用」字段与 §1 REUSE 列显式记录。
|
|
70
|
-
- **关键决策收口**:跨切片的技术选型与取舍汇总到「关键决策」段,防止下游对同一问题反复争论。——映射 slices.md §5.5
|
|
71
|
-
- **重型小节按需**:风险登记、退役清单、架构上下文是条件段——复杂 change 铺开,单文件小改可省。
|
|
44
|
+
### 缺少 change 目录时
|
|
72
45
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
本工作流**零硬依赖**,无需预先执行 dev/01、dev/02 等其他工作流即可独立进入。只需用户描述任务意图 + 当前 git 仓库即可启动。
|
|
76
|
-
|
|
77
|
-
**独立进入流程:**
|
|
78
|
-
|
|
79
|
-
1. **change 目录**:若用户未指定 `<change>` 目录,按「缺少 change 目录时的自初始化」创建。
|
|
80
|
-
2. **信息自采集**:若同 change 目录下无上游产物(PRD、decision-log、diagnosis 等),按 `issues-slices.md` 的「独立进入时的深度搜索协议」(三轮:全景扫描 → 领域上下文采集 → 锁定未决分支)自行采集切片所需上下文,不要求用户先执行其他工作流。
|
|
81
|
-
3. **存疑即问**:仅在代码库探索无法确定的决策分支上,按「存疑时的提问协议」使用 `AskUserQuestion` 一次一问、带推荐、逐步锁定。
|
|
82
|
-
|
|
83
|
-
### 缺少 change 目录时的自初始化
|
|
84
|
-
|
|
85
|
-
若当前无对应 change 目录,按以下步骤创建:
|
|
86
|
-
|
|
87
|
-
1. 从用户意图提取 `<kebab-name>`(如 `refactor-auth`、`add-export-feature`)
|
|
88
|
-
2. 创建 `speculo/.speculo/dev/<YYYY-MM-DD>-<kebab-name>/`
|
|
89
|
-
3. 初始化 `.status.json`:
|
|
90
|
-
```json
|
|
91
|
-
{
|
|
92
|
-
"dev_entry": "dev/I",
|
|
93
|
-
"current_phase": "1. Slice Issues",
|
|
94
|
-
"phase_history": [],
|
|
95
|
-
"change_status": "active",
|
|
96
|
-
"embedded_guides": ["to-issues"],
|
|
97
|
-
"slice_count": 0,
|
|
98
|
-
"hitl_slice_count": 0,
|
|
99
|
-
"published_issue_refs": [],
|
|
100
|
-
"issue_tracker_mode": "local-only"
|
|
101
|
-
}
|
|
102
|
-
```
|
|
103
|
-
4. 在 `speculo/.speculo/dev-status.json` 的 `active` 数组中追加该 change 目录名
|
|
46
|
+
若无 active change,执行 `../AGENTS.md` 进入协议步骤 3(原子三步),不得内联自初始化 JSON。
|
|
104
47
|
|
|
105
48
|
## 阶段
|
|
106
49
|
|
|
107
50
|
### 1. Slice Issues — 垂直切片分解
|
|
51
|
+
- id:`slice-issues`
|
|
108
52
|
- 规范:`issues-slices.md`
|
|
109
53
|
- 模板:`../_templates/issues-slices-template.md`
|
|
110
54
|
- 产物:`slices.md`
|
|
111
55
|
- 完成准则:
|
|
112
|
-
- §0
|
|
113
|
-
-
|
|
114
|
-
-
|
|
115
|
-
- 涉及 schema 变更时 §2.5 数据库表已填写
|
|
116
|
-
- §5.5 关键决策已汇总跨切片技术选型
|
|
117
|
-
- §8 验证总览存在(静态 → 残留扫描 → 冒烟,按适用项)
|
|
56
|
+
- §0 含已确认决策、当前现状与关键核实结论
|
|
57
|
+
- 每个切片有文件表、实现要点、验收切片;删除型切片标注保留/不动
|
|
58
|
+
- 涉及 schema 变更时 §2.5 已填写;§5.5 关键决策已汇总;§8 验证总览存在
|
|
118
59
|
- `slices.md` 无残留 `[TODO:]`
|
|
119
60
|
|
|
120
61
|
## 依赖
|
|
121
62
|
|
|
122
63
|
- 硬依赖:无
|
|
123
|
-
-
|
|
64
|
+
- 软依赖:同 change 下若有 `prd.md`、`diagnosis.md` 等可继承加速;完成后通常移交 `../03-tdd/03-tdd.md`
|
|
124
65
|
|
|
125
66
|
## 状态扩展字段
|
|
126
67
|
|
|
127
|
-
本工作流需在同 change 的 `.status.json` 追加:
|
|
128
|
-
|
|
129
68
|
- `dev_entry` (string) — 固定为 `dev/I`
|
|
130
69
|
- `embedded_guides` (array) — 包含 `to-issues`
|
|
131
|
-
- `slice_count` (number)
|
|
132
|
-
- `hitl_slice_count` (number)
|
|
133
|
-
- `published_issue_refs` (array)
|
|
134
|
-
- `issue_tracker_mode` (disabled | local-only | publish-requested | published)
|
|
70
|
+
- `slice_count` (number)
|
|
71
|
+
- `hitl_slice_count` (number)
|
|
72
|
+
- `published_issue_refs` (array)
|
|
73
|
+
- `issue_tracker_mode` (disabled | local-only | publish-requested | published)
|
|
135
74
|
|
|
136
75
|
## 完成与状态更新
|
|
137
76
|
|
|
@@ -33,14 +33,14 @@
|
|
|
33
33
|
- 探索确认的事实 → §0「关键核实结论」(注明行号近似)
|
|
34
34
|
- 从代码/文档提取的约束 → §1 IN/REUSE/OUT、§2 架构约束
|
|
35
35
|
- 无法从代码库确定的 → `[待确认]` 标记,按提问协议处理
|
|
36
|
-
- 从 `
|
|
36
|
+
- 从 `overview.md` 或现有文档继承的风险 → §6 风险与回滚
|
|
37
37
|
|
|
38
38
|
## 输入
|
|
39
39
|
|
|
40
40
|
- `prd.md`、`decision-log.md`、`diagnosis.md`、现有 issue 或用户计划(均为可选;缺失时按「独立进入时的深度搜索协议」自行采集)
|
|
41
41
|
- 可选 issue tracker 配置和标签词汇表
|
|
42
42
|
- `I-to-issues.md` 中的内置切片指引、「切片计划质量准则」与「独立使用」协议
|
|
43
|
-
- 同级 change 目录下已有的 `context-map.md`、`decision-log.md`、`
|
|
43
|
+
- 同级 change 目录下已有的 `context-map.md`、`decision-log.md`、`overview.md`(若存在,用于继承领域术语、已确认决策、风险与 ADR 引用;不存在则按深度搜索协议自采集)
|
|
44
44
|
|
|
45
45
|
## 产物
|
|
46
46
|
|
|
@@ -146,7 +146,7 @@ P2 切片2 名称 依赖 P0+P1
|
|
|
146
146
|
|
|
147
147
|
### 6. 风险与回滚 —— [条件]
|
|
148
148
|
|
|
149
|
-
本期涉及删除、数据迁移、外部副作用或高耦合改动时填写;纯增量的单文件小改可省。逐条列出风险、触发条件、缓解与回滚手段(表格形式)。**有 `
|
|
149
|
+
本期涉及删除、数据迁移、外部副作用或高耦合改动时填写;纯增量的单文件小改可省。逐条列出风险、触发条件、缓解与回滚手段(表格形式)。**有 `overview.md` 的「风险与未知点」则继承并细化**。
|
|
150
150
|
|
|
151
151
|
### 7. 退役清单 —— [条件]
|
|
152
152
|
|
|
@@ -58,34 +58,18 @@ keywords: [domain-modeling, context, adr, ubiquitous-language, 领域建模, 术
|
|
|
58
58
|
|
|
59
59
|
### 独立使用
|
|
60
60
|
|
|
61
|
-
本工作流**零硬依赖**,无需预先执行其他工作流即可独立进入(`dev/M`)。只需用户的领域讨论 + 当前 git
|
|
62
|
-
|
|
63
|
-
### 缺少 change
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
1. 从用户意图提取 `<kebab-name>`(如 `model-ordering-terms`)
|
|
68
|
-
2. 创建 `speculo/.speculo/dev/<YYYY-MM-DD>-<kebab-name>/`
|
|
69
|
-
3. 初始化 `.status.json`:
|
|
70
|
-
```json
|
|
71
|
-
{
|
|
72
|
-
"dev_entry": "dev/M",
|
|
73
|
-
"current_phase": "1. Model Session",
|
|
74
|
-
"phase_history": [],
|
|
75
|
-
"change_status": "active",
|
|
76
|
-
"embedded_guides": ["domain-modeling"],
|
|
77
|
-
"terms_resolved": [],
|
|
78
|
-
"adr_candidates": [],
|
|
79
|
-
"context_write_status": "none"
|
|
80
|
-
}
|
|
81
|
-
```
|
|
82
|
-
4. 在 `speculo/.speculo/dev-status.json` 的 `active` 数组追加该 change 目录名
|
|
61
|
+
本工作流**零硬依赖**,无需预先执行其他工作流即可独立进入(`dev/M`)。只需用户的领域讨论 + 当前 git 仓库即可启动。
|
|
62
|
+
|
|
63
|
+
### 缺少 change 目录时
|
|
64
|
+
|
|
65
|
+
若无 active change,执行 `../AGENTS.md` 进入协议步骤 3(原子三步),不得内联自初始化 JSON。
|
|
83
66
|
|
|
84
67
|
## 阶段
|
|
85
68
|
|
|
86
69
|
> **惰性创建文件**——只在需要写入时才创建。`.config/context/CONTEXT.md` 与 `.config/adr/` 由 Speculo 初始化提供;若目标项目缺失,在第一个术语 / ADR 解决时按需创建。
|
|
87
70
|
|
|
88
71
|
### 1. Model Session — 词汇与决策沉淀
|
|
72
|
+
- id:`model-session`
|
|
89
73
|
- 规范:本入口「会话期间(主动纪律)」+ 同目录 `CONTEXT-FORMAT.md`、`ADR-FORMAT.md`
|
|
90
74
|
- 模板:`../_templates/domain-model-log-template.md`
|
|
91
75
|
- 产物:`domain-model-log.md`;经用户确认后更新 `.config/context/` 与 `.config/adr/`
|