@haaaiawd/loom 0.9.0 → 1.0.0
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/LICENSE +21 -0
- package/README.md +87 -52
- package/cli/bin/loom.js +438 -149
- package/cli/help/concepts.md +93 -72
- package/cli/help/doctor.md +71 -121
- package/cli/help/loop.md +120 -135
- package/cli/help/patch.md +33 -0
- package/cli/help/preview.md +2 -1
- package/cli/help/version.md +92 -16
- package/cli/help/workflow.md +89 -100
- package/cli/src/activate.js +302 -73
- package/cli/src/auto.js +41 -18
- package/cli/src/diagnostics.js +223 -50
- package/cli/src/guide.js +127 -38
- package/cli/src/init.js +50 -29
- package/cli/src/intent-draft.js +303 -0
- package/cli/src/intent-map.js +540 -54
- package/cli/src/patch.js +214 -0
- package/cli/src/philosophy.js +181 -156
- package/cli/src/preview-prompt.md +13 -6
- package/cli/src/preview.js +1 -0
- package/cli/src/shared/intent-ref.js +38 -0
- package/cli/src/shared/proof-reference.js +19 -0
- package/cli/src/shared/verification-method.js +32 -0
- package/cli/src/verify.js +204 -51
- package/cli/src/version.js +5 -4
- package/dimensions/PART_DECOMPOSITION.md +42 -203
- package/dimensions/SEARCH_METHODOLOGY.md +101 -97
- package/dimensions/examples/AGENT_SYSTEM/README.md +1 -1
- package/dimensions/examples/CLI_TOOL/README.md +1 -1
- package/dimensions/universal/COLLABORATION_PHILOSOPHY.md +28 -77
- package/dimensions/universal/ENGINEERING_CREED.md +30 -74
- package/dimensions/universal/PRODUCT_PHILOSOPHY.md +32 -70
- package/meta/BASELINE.md +91 -276
- package/meta/INTENT_LOOP.md +242 -737
- package/meta/PHILOSOPHY_WEAVER.md +110 -343
- package/meta/ROLE_ACTIVATION.md +103 -267
- package/package.json +4 -3
- package/roles/architect.md +71 -111
- package/roles/forge.md +87 -126
- package/roles/keeper.md +99 -223
- package/roles/visionary.md +57 -86
- package/templates/INTENT_MAP_TEMPLATE.json +24 -10
- package/templates/PHILOSOPHY_TEMPLATE.md +44 -75
- package/templates/VISION_TEMPLATE.md +44 -67
package/cli/help/preview.md
CHANGED
|
@@ -43,7 +43,8 @@ preview_mtime >= source_latest_mtime → fresh
|
|
|
43
43
|
- `03_DECISIONS/`
|
|
44
44
|
- `04_INTENT_MAP.json`
|
|
45
45
|
- `05_VERIFICATION.md`
|
|
46
|
-
- `06_CHANGELOG.
|
|
46
|
+
- `06_CHANGELOG.json`(Patch 唯一权威来源)
|
|
47
|
+
- `06_CHANGELOG.md`(确定性生成投影)
|
|
47
48
|
- `verifications/`
|
|
48
49
|
|
|
49
50
|
## 为什么不直接打开旧 preview
|
package/cli/help/version.md
CHANGED
|
@@ -2,23 +2,95 @@
|
|
|
2
2
|
|
|
3
3
|
LOOM 用 .loom/v{N}/ 目录支持多版本共存与演进。
|
|
4
4
|
|
|
5
|
-
##
|
|
6
|
-
|
|
7
|
-
| 变更类型 | 判定标准 | 处理方式 |
|
|
8
|
-
|---|---|---|
|
|
9
|
-
|
|
|
10
|
-
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
5
|
+
## 什么时候演进版本
|
|
6
|
+
|
|
7
|
+
| 变更类型 | 判定标准 | 处理方式 |
|
|
8
|
+
|---|---|---|
|
|
9
|
+
| Patch | 不触及 Intent,不改变验收契约,只修 bug / 样式 / 实现细节 | 当前版本内修正,跑验证并记录 changelog;不进入 Intent Loop |
|
|
10
|
+
| Minor | 新增或修改 Intent,但不改哲学前提、不改愿景北极星、不改架构边界 | 当前版本内改(变更回流机制),相关 Intent 进入 pending / needs_review |
|
|
11
|
+
| Major | 哲学前提变了、愿景北极星变了、架构边界变了 | 创建新版本 |
|
|
12
|
+
|
|
13
|
+
判定由用户 + Agent 对话完成,CLI 不做决策。
|
|
14
|
+
|
|
15
|
+
哲学修订可用 CLI 做后果分析和审计记录,但 CLI 不自动编辑哲学正文:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
loom philosophy impact <anchor>
|
|
19
|
+
loom philosophy revise <anchor> --classification clarification --reason "<why>"
|
|
20
|
+
loom philosophy revise <anchor> --classification minor --reason "<why>"
|
|
21
|
+
loom philosophy revise <anchor> --classification major --reason "<why>"
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
前两条 revise 在没有 `--confirm` 时严格只读,并返回精确确认命令。确认 clarification 时 `--review` 必须为空,所有直接引用和传递影响均归入 `--unaffected`。确认 minor 时每个影响必须恰好一次归入 `--review` 或 `--unaffected`;review 中仅 `completed` 转为 `needs_review`,其余状态原样报告。两者均不改 acceptance,并写入下一个 `03_DECISIONS/PHIL-REV-NNN.md`。Major 即使带 `--confirm` 也不改当前版本,只提示 `loom version new`。哲学正文随后由 Weaver/用户单独编辑。
|
|
25
|
+
|
|
26
|
+
## Patch 流程
|
|
27
|
+
|
|
28
|
+
Patch 用于纯实现修正:bugfix、样式微调、文案 typo、测试补强。它不改变 Intent,也不改变验收契约。
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
# 1. 确认当前 Intent 都已完成
|
|
32
|
+
loom guide
|
|
33
|
+
|
|
34
|
+
# 2. 修改实现细节后,按项目约定跑测试 / lint
|
|
35
|
+
|
|
36
|
+
# 3. 如修复影响已有承诺,补一条验证记录
|
|
37
|
+
loom verify write --json-file <path>
|
|
38
|
+
|
|
39
|
+
# 4. 通过 CLI 写入权威 JSON 并生成 Markdown 投影
|
|
40
|
+
loom patch record --json-file <path>
|
|
41
|
+
loom patch validate
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Patch 不应使用 `loom version new`,也不应新增 Intent。如果变更需要改验收契约,它已经不是 Patch。
|
|
45
|
+
完整输入契约见 `loom help patch`。
|
|
46
|
+
|
|
47
|
+
## Minor 流程
|
|
48
|
+
|
|
49
|
+
Minor 用于当前哲学和架构边界内的能力演进。
|
|
50
|
+
|
|
51
|
+
常见情况:
|
|
52
|
+
- 新增功能 → 由 Visionary 补叙事,Architect 增加 Intent,再进入 Intent Loop
|
|
53
|
+
- 修改已有功能承诺 → 将相关 Intent 标记为 `needs_review`,重新验证 / 实现
|
|
54
|
+
- 一个改动影响已完成 Intent → 通过反向依赖 / 哲学引用找影响面,标记 `needs_review`
|
|
55
|
+
- 当前版本能力退出但仍需保留历史与依赖图 → 用 `intent deprecate` 记录 lifecycle,不虚构 `deprecated` status
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# 新增:先创建 draft,再分别由 Visionary / Architect 补齐叙事、契约和锚点
|
|
59
|
+
loom intent add --title "<title>" --depends-on INT-001,INT-002
|
|
60
|
+
loom activate visionary --intent INT-003
|
|
61
|
+
loom activate architect --intent INT-003
|
|
62
|
+
loom intent finalize INT-003
|
|
63
|
+
|
|
64
|
+
# 修订:revision 自动递增,并返回直接/传递反向依赖
|
|
65
|
+
loom intent revise <id> --reason "<why>"
|
|
66
|
+
loom activate visionary --intent <id>
|
|
67
|
+
loom activate architect --intent <id>
|
|
68
|
+
# 必须完整分类所有直接与传递下游;review 会使已完成下游回流复验
|
|
69
|
+
loom intent finalize <id> --review <ids> --unaffected <ids>
|
|
70
|
+
|
|
71
|
+
# 弃用:先评估,确认时完整分类所有直接和传递依赖方
|
|
72
|
+
loom intent deprecate <id> --reason "<why>"
|
|
73
|
+
loom intent deprecate <id> --reason "<why>" --confirm --review <ids> --unaffected <ids>
|
|
74
|
+
|
|
75
|
+
# 继续按 guide 进入收敛趟
|
|
76
|
+
loom guide
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
`add` / `revise` 在 finalize 前不修改官方 `04_INTENT_MAP.json` 和 `topo_order`。`add` 还会向愿景和验证文档追加明确标记的 draft 章节;finalize 通过后提升这些章节并删除 draft。新增 Intent 是 `pending`;修订保留 `pending` / `in_progress` / `blocked` / `needs_review`,原 `completed` 变为 `needs_review`,旧 revision 的验证自动失效。
|
|
80
|
+
|
|
81
|
+
当前版本内演进不是偷懒;只要哲学前提、北极星、架构边界没变,Minor 就应该留在当前版本。
|
|
82
|
+
|
|
83
|
+
弃用要求目标已完成。它写入 `lifecycle.deprecation = { deprecated_at, reason, replacement }`,不改变目标的 `completed` status,也不删除节点、依赖或契约。可选 replacement 必须是另一个当前版本 Intent。所有直接和传递依赖方必须在 review/unaffected 中恰好分类一次;叶子无需分类。重复确认会失败,避免不同参数被误认为已应用。
|
|
84
|
+
|
|
85
|
+
## Major 升级流程
|
|
15
86
|
|
|
16
87
|
\`\`\`bash
|
|
17
88
|
# 1. 创建新版本(空目录 + 模板,自动切换为当前)
|
|
18
89
|
loom version new
|
|
19
90
|
|
|
20
|
-
# 2.
|
|
21
|
-
loom version diff v1 v2
|
|
91
|
+
# 2. 看文件变化与显式 Intent 沿革
|
|
92
|
+
loom version diff v1 v2
|
|
93
|
+
loom intent diff v1 v2
|
|
22
94
|
|
|
23
95
|
# 3. Weaver 读旧哲学,织造新哲学
|
|
24
96
|
loom activate weaver
|
|
@@ -39,7 +111,9 @@ loom activate architect
|
|
|
39
111
|
|
|
40
112
|
- **空目录 + 模板**:\`loom version new\` 不自动复制旧版本内容。强制重新思考——参考 ≠ 复制。
|
|
41
113
|
- **旧版本只读**:当前指针指向的版本是当前真相,旧版本保留作历史参考。
|
|
42
|
-
-
|
|
114
|
+
- **显式 Intent lineage**:可用 `lineage: { predecessors: [{ version: "v1", intent_id: "INT-003" }], change_summary, change_ref? }` 表达修订、拆分或合并。它不属于 `depends_on`;同 ID/标题不会自动映射。
|
|
115
|
+
- **版本元数据**:脚手架写入真实 `_loom_version`,并写入 `_parent_version`(v1 为 `null`,新版本为创建前的当前版本)。
|
|
116
|
+
- **历史只读**:`v1:INT-003` 可用于 `intent get/narrative/trace` 和 `verify history`,写命令仍只操作当前版本。
|
|
43
117
|
|
|
44
118
|
## 版本管理命令
|
|
45
119
|
|
|
@@ -48,13 +122,15 @@ loom version list # 列出所有版本(* 标记当前)
|
|
|
48
122
|
loom version current # 显示当前版本
|
|
49
123
|
loom version new # 创建 v{N+1} + 自动切换
|
|
50
124
|
loom version use <v> # 切换当前版本
|
|
51
|
-
loom version diff <v1> <v2> # 对比文件差异
|
|
125
|
+
loom version diff <v1> <v2> # 对比文件差异
|
|
126
|
+
loom intent diff <v1> <v2> # 对比显式 lineage 与语义字段
|
|
127
|
+
loom verify history v2:INT-007 --across-versions
|
|
52
128
|
\`\`\`
|
|
53
129
|
|
|
54
130
|
## 切换回旧版本
|
|
55
131
|
|
|
56
132
|
\`\`\`bash
|
|
57
133
|
loom version use v1 # 切回 v1 查看历史
|
|
58
|
-
loom intent trace
|
|
134
|
+
loom intent trace v1:INT-003 # 无需切换即可只读历史 Intent
|
|
59
135
|
loom version use v2 # 切回 v2 继续
|
|
60
|
-
\`\`\`
|
|
136
|
+
\`\`\`
|
package/cli/help/workflow.md
CHANGED
|
@@ -1,100 +1,89 @@
|
|
|
1
|
-
## LOOM 工作流
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
loom
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
-
|
|
86
|
-
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
## 阶段 6:版本演进(按需)
|
|
91
|
-
|
|
92
|
-
当哲学前提/愿景北极星/架构边界变了,需要 Major 升级。
|
|
93
|
-
详细流程见 \`loom help version\`。
|
|
94
|
-
|
|
95
|
-
## 核心原则
|
|
96
|
-
|
|
97
|
-
- **哲学是经线,意图是纬线** — 所有角色共享哲学锚点
|
|
98
|
-
- **底线不可协商** — BASELINE 5 条 + 项目特定底线,角色激活时强制加载
|
|
99
|
-
- **意图可回溯** — 每个 Intent 携带叙事,Keeper 独立验证忠实度
|
|
100
|
-
- **文档开销不超过开发开销** — 小项目可以粗粒度,不必教条
|
|
1
|
+
## LOOM 工作流
|
|
2
|
+
|
|
3
|
+
## 0. 诊断
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
loom guide
|
|
7
|
+
loom context
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
只读探测使用 `loom guide --dry-run`。
|
|
11
|
+
|
|
12
|
+
## 1. Doctrine — Weaver
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
loom activate weaver
|
|
16
|
+
loom philosophy check
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
输出项目长期判断、卓越标准、决策原则、创作空间、反模式与 Evidence Map。
|
|
20
|
+
研究数量不设配额;只保留真实改变判断、能够追溯的证据。
|
|
21
|
+
|
|
22
|
+
## 2. Intent — Visionary
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
loom activate visionary
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
输出产品目标、成功图景、非目标与 Intent narrative。Visionary 不写 acceptance、DAG 或架构。
|
|
29
|
+
|
|
30
|
+
## 3. Contract — Architect
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
loom activate architect
|
|
34
|
+
loom intent validate
|
|
35
|
+
loom doctor
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Architect 产出系统边界、Intent DAG、完成契约和可选质量契约,并声明
|
|
39
|
+
`capability_needs` 与 `creative_scope`。
|
|
40
|
+
|
|
41
|
+
完成契约定义 **Reliability Floor**:做到什么才算可靠完成。
|
|
42
|
+
质量契约定义 **Distinctive Ceiling**:什么可观察差异让结果不止合格。
|
|
43
|
+
|
|
44
|
+
## 4. Quality Engine — Forge 与 Keeper
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
loom intent next
|
|
48
|
+
loom intent update <id> --status in_progress
|
|
49
|
+
loom activate forge --intent <id>
|
|
50
|
+
loom activate keeper --intent <id>
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Forge 编译 Expertise Pack,在 Quality Arena 中实现与比较。
|
|
54
|
+
Keeper 从当前磁盘事实和契约独立验证,不继承 Forge 的解释。
|
|
55
|
+
|
|
56
|
+
无质量契约时,四个基础维度通过即可闭合。存在质量契约时,额外验证
|
|
57
|
+
`quality_achievement`;声明相对提升时,在该维度中链接 Quality Proof:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
loom verify pass <id> \
|
|
61
|
+
--summary "<具体证据>" \
|
|
62
|
+
--reproduction-command "<可复现命令>" \
|
|
63
|
+
--quality-proof "<基线、比较和稳定性证据的位置>"
|
|
64
|
+
|
|
65
|
+
loom intent done <id>
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
复杂或混合判定使用 `loom verify write --json-file <path>`。
|
|
69
|
+
|
|
70
|
+
## 5. Reflow
|
|
71
|
+
|
|
72
|
+
验证偏离时,不要把所有问题都扔回 Forge:
|
|
73
|
+
|
|
74
|
+
- Doctrine 不足 → Weaver
|
|
75
|
+
- 产品目标错误 → Visionary
|
|
76
|
+
- 契约、边界或依赖错误 → Architect
|
|
77
|
+
- 专业判断或实现不足 → Forge
|
|
78
|
+
- 证据不足 → Keeper 补证或 `pending_human`
|
|
79
|
+
|
|
80
|
+
连续三次 `deviated` 自动升级为 `blocked`。所有当前 revision 和当前验证 epoch 的 Intent 都有最新 passed
|
|
81
|
+
记录,且没有 `needs_review`、`loom doctor` 没有 fatal/high 风险时,本轮收敛。
|
|
82
|
+
|
|
83
|
+
## 6. 演进
|
|
84
|
+
|
|
85
|
+
- Patch:不改变 Intent 语义,验证后记录 changelog。
|
|
86
|
+
- Minor:用 `loom intent add|revise` 创建 draft,经限定作用域的 Visionary/Architect 更新后 finalize。
|
|
87
|
+
- Major:Doctrine、北极星或主要架构边界改变,使用 `loom version new`。
|
|
88
|
+
|
|
89
|
+
原则只有一句:流程成本必须小于它降低的风险;质量声明必须小于等于它拥有的证据。
|