@haaaiawd/loom 1.2.2 → 2.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/CHANGELOG.md +11 -58
- package/CONTRIBUTING.md +37 -0
- package/EVIL_EVAL.md +112 -0
- package/README.md +193 -446
- package/README.zh-CN.md +174 -0
- package/SECURITY.md +11 -0
- package/cli/bin/loom.js +170 -995
- package/cli/src/protocol.js +367 -0
- package/cli/src/store.js +626 -0
- package/design.md +194 -0
- package/docs/PROMPT_CATALOG.md +99 -0
- package/docs/RELEASE_CHECKLIST.md +53 -0
- package/docs/UX_FLOW.md +171 -0
- package/docs/brand/loom-mark.svg +18 -0
- package/docs/brand/loom-readme-header.svg +34 -0
- package/docs/brand/loom-readme-header.zh-CN.svg +29 -0
- package/docs/loom-eval-loop.drawio +21 -0
- package/docs/loom-eval-loop.svg +56 -0
- package/docs/loom-production-loop.drawio +41 -0
- package/docs/loom-production-loop.svg +92 -0
- package/package.json +43 -40
- package/EXTERNAL_ACQUISITION_DESIGN.md +0 -143
- package/cli/help/asset.md +0 -36
- package/cli/help/atelier.md +0 -37
- package/cli/help/capability.md +0 -73
- package/cli/help/concepts.md +0 -103
- package/cli/help/doctor.md +0 -73
- package/cli/help/expertise.md +0 -51
- package/cli/help/loop.md +0 -134
- package/cli/help/patch.md +0 -33
- package/cli/help/preview.md +0 -60
- package/cli/help/proposals.md +0 -21
- package/cli/help/version.md +0 -136
- package/cli/help/workflow.md +0 -114
- package/cli/src/activate.js +0 -473
- package/cli/src/asset-library.js +0 -384
- package/cli/src/atelier.js +0 -331
- package/cli/src/auto.js +0 -116
- package/cli/src/capability-graph.js +0 -430
- package/cli/src/capability-proposals.js +0 -225
- package/cli/src/diagnostics.js +0 -766
- package/cli/src/expertise-pack.js +0 -336
- package/cli/src/guide.js +0 -495
- package/cli/src/help.js +0 -41
- package/cli/src/init.js +0 -187
- package/cli/src/intent-draft.js +0 -303
- package/cli/src/intent-map.js +0 -747
- package/cli/src/patch.js +0 -214
- package/cli/src/philosophy.js +0 -331
- package/cli/src/preview-prompt.md +0 -337
- package/cli/src/preview.js +0 -73
- package/cli/src/shared/intent-ref.js +0 -38
- package/cli/src/shared/md-utils.js +0 -125
- package/cli/src/shared/paths.js +0 -73
- package/cli/src/shared/proof-reference.js +0 -19
- package/cli/src/shared/verification-method.js +0 -32
- package/cli/src/verify.js +0 -394
- package/cli/src/version.js +0 -134
- package/dimensions/AUTHORSHIP.md +0 -45
- package/dimensions/PART_DECOMPOSITION.md +0 -42
- package/dimensions/SEARCH_METHODOLOGY.md +0 -101
- package/dimensions/examples/AGENT_SYSTEM/README.md +0 -219
- package/dimensions/examples/CLI_TOOL/README.md +0 -163
- package/dimensions/universal/COLLABORATION_PHILOSOPHY.md +0 -28
- package/dimensions/universal/ENGINEERING_CREED.md +0 -30
- package/dimensions/universal/PRODUCT_PHILOSOPHY.md +0 -32
- package/meta/BASELINE.md +0 -91
- package/meta/INTENT_LOOP.md +0 -296
- package/meta/PHILOSOPHY_WEAVER.md +0 -110
- package/meta/ROLE_ACTIVATION.md +0 -114
- package/roles/architect.md +0 -86
- package/roles/forge.md +0 -112
- package/roles/keeper.md +0 -113
- package/roles/visionary.md +0 -57
- package/templates/ASSET_LIBRARY_MANIFEST_TEMPLATE.json +0 -10
- package/templates/ATELIER_RECORD_TEMPLATE.json +0 -48
- package/templates/CAPABILITY_BRIEF_TEMPLATE.md +0 -35
- package/templates/CAPABILITY_GRAPH_TEMPLATE.json +0 -11
- package/templates/EXPERTISE_PACK_TEMPLATE.json +0 -22
- package/templates/INTENT_MAP_TEMPLATE.json +0 -85
- package/templates/PHILOSOPHY_TEMPLATE.md +0 -44
- package/templates/VISION_TEMPLATE.md +0 -44
package/meta/BASELINE.md
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
# BASELINE — LOOM 不可妥协的系统底线
|
|
2
|
-
|
|
3
|
-
底线只规定什么不能失守,不规定怎样做到优秀。
|
|
4
|
-
|
|
5
|
-
项目哲学负责定义取舍与质量;角色负责在边界内发挥专业能力;CLI 负责机械执行能够被程序保证的约束。底线不能替代这三者。
|
|
6
|
-
|
|
7
|
-
## B1:改变之前必须理解结构
|
|
8
|
-
|
|
9
|
-
任何实质修改都必须建立在对当前系统结构、职责边界和依赖关系的理解上。
|
|
10
|
-
|
|
11
|
-
最低要求:
|
|
12
|
-
|
|
13
|
-
- 先检查真实代码与现有约定,不凭想象创建平行体系。
|
|
14
|
-
- 修改范围与结构说明的详细程度应和风险相称。
|
|
15
|
-
- 新增边界、模块或跨系统依赖时,必须写明职责和依赖方向。
|
|
16
|
-
- 探索性原型可以先验证关键假设,但不得伪装成已完成的正式实现。
|
|
17
|
-
|
|
18
|
-
违反信号:未读现有实现便重写、复制出第二套系统、用“以后再整理”掩盖边界混乱。
|
|
19
|
-
|
|
20
|
-
## B2:环境与秘密不得固化进实现
|
|
21
|
-
|
|
22
|
-
密钥、凭证、环境专属地址和可变配置不得写死在代码中。
|
|
23
|
-
|
|
24
|
-
最低要求:
|
|
25
|
-
|
|
26
|
-
- 秘密通过安全的环境或凭证机制提供。
|
|
27
|
-
- 环境差异进入配置层。
|
|
28
|
-
- 业务常量集中且具有语义;算法常量和协议常量可以保留,但必须能解释来源。
|
|
29
|
-
- 新增配置要有类型、默认策略和错误语义。
|
|
30
|
-
|
|
31
|
-
违反信号:真实密钥进入仓库、随机路径或 URL 散落、无法解释的数值控制业务行为。
|
|
32
|
-
|
|
33
|
-
## B3:可观察契约必须显式
|
|
34
|
-
|
|
35
|
-
用户、模块或外部系统能够观察到的行为必须有明确契约。
|
|
36
|
-
|
|
37
|
-
契约至少覆盖适用项:
|
|
38
|
-
|
|
39
|
-
- 输入、输出和状态变化。
|
|
40
|
-
- 错误、失败和降级行为。
|
|
41
|
-
- API、CLI、配置、文件格式或交互语义。
|
|
42
|
-
- 兼容边界与变更影响。
|
|
43
|
-
|
|
44
|
-
局部实现细节不需要全部文档化;会影响其他部分的行为不能只存在于作者记忆里。
|
|
45
|
-
|
|
46
|
-
## B4:重要判断必须可追溯
|
|
47
|
-
|
|
48
|
-
会改变产品方向、架构边界、公共契约、关键依赖或安全姿态的判断必须留下理由和证据。
|
|
49
|
-
|
|
50
|
-
记录应回答:
|
|
51
|
-
|
|
52
|
-
- 为什么现在需要这个决定。
|
|
53
|
-
- 考虑过哪些替代方案。
|
|
54
|
-
- 选择依据和代价是什么。
|
|
55
|
-
- 影响哪些 Intent、契约或系统部分。
|
|
56
|
-
- 什么证据会使我们重新评估。
|
|
57
|
-
|
|
58
|
-
普通局部实现选择不必制造 ADR;可逆且低风险的探索可以先做小实验,再用结果决定是否升级为正式决策。
|
|
59
|
-
|
|
60
|
-
## B5:完成必须可回溯、可验证
|
|
61
|
-
|
|
62
|
-
任何“完成”都必须能回溯到原始意图,并有当前 revision 的验证证据。
|
|
63
|
-
|
|
64
|
-
最低要求:
|
|
65
|
-
|
|
66
|
-
- 实现单元关联清晰的意图叙事。
|
|
67
|
-
- 完成契约描述可观察结果和关键失败边界;若声明质量提升,另有质量契约与基线相对证据。
|
|
68
|
-
- 实现者可以自测,但不能只凭自己的解释宣告通过。
|
|
69
|
-
- Keeper 独立验证;需要人类判断的部分明确标为 `pending_human`。
|
|
70
|
-
- 声称质量提升时,必须提供修改前基线、选择依据和稳定性证据。
|
|
71
|
-
- 没有当前 revision 的最后一条 `passed` 记录,不得闭合 Intent。
|
|
72
|
-
|
|
73
|
-
## 项目特定底线
|
|
74
|
-
|
|
75
|
-
Weaver 可以在 `.loom/v{N}/00_PHILOSOPHY/PROJECT_BASELINE.md` 追加领域不可妥协项,例如隐私、安全、合规、可访问性或模型治理。
|
|
76
|
-
|
|
77
|
-
项目底线必须:
|
|
78
|
-
|
|
79
|
-
- 有明确触发条件和合规判定。
|
|
80
|
-
- 只追加,不豁免通用底线。
|
|
81
|
-
- 与版本和影响范围一起演进。
|
|
82
|
-
|
|
83
|
-
## 比例原则
|
|
84
|
-
|
|
85
|
-
LOOM 的流程成本必须小于它降低的风险。
|
|
86
|
-
|
|
87
|
-
- 小改动:简短结构判断、局部契约、直接验证。
|
|
88
|
-
- 中等能力:清晰 Intent、必要设计、自动验证。
|
|
89
|
-
- 高风险系统:完整边界、决策记录、多层验证与回滚方案。
|
|
90
|
-
|
|
91
|
-
当两条规则冲突时,优先保护真实用户结果、系统完整性和可恢复性;不要为了“流程正确”牺牲交付本身。
|
package/meta/INTENT_LOOP.md
DELETED
|
@@ -1,296 +0,0 @@
|
|
|
1
|
-
# INTENT LOOP — LOOM Quality Engine Runtime
|
|
2
|
-
|
|
3
|
-
Intent Loop 将一个产品意图变成可验证结果,并在证据不足时回流到真正负责的层。
|
|
4
|
-
|
|
5
|
-
```text
|
|
6
|
-
Doctrine → Intent narrative → Capability Graph → Contract
|
|
7
|
-
→ Expertise Compiler → Quality Arena → Quality Proof
|
|
8
|
-
→ Close or Reflow
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## 1. 权威边界
|
|
12
|
-
|
|
13
|
-
| 内容 | 唯一负责人 |
|
|
14
|
-
|---|---|
|
|
15
|
-
| 长期价值、卓越标准、反模式 | Weaver |
|
|
16
|
-
| 产品目标、非目标、Intent narrative | Visionary |
|
|
17
|
-
| Capability Graph、系统边界、Intent DAG、完成/质量契约 | Architect |
|
|
18
|
-
| Expertise Pack、Authorial Stance、Atelier 候选、实现、自测 | Forge |
|
|
19
|
-
| 独立判定、Quality Proof | Keeper |
|
|
20
|
-
|
|
21
|
-
Keeper 不修改契约;Forge 不以实现困难改写 Intent;Visionary 不写 acceptance;Weaver 不拆实施模块。
|
|
22
|
-
|
|
23
|
-
## 2. Intent Schema
|
|
24
|
-
|
|
25
|
-
必需字段:
|
|
26
|
-
|
|
27
|
-
- `title`
|
|
28
|
-
- `narrative_ref`
|
|
29
|
-
- `depends_on`
|
|
30
|
-
- `philosophy_anchors`
|
|
31
|
-
- `acceptance`
|
|
32
|
-
- `continuity_required`:仅在会变更既有用户或系统状态时启用;保留规则与时序验证仍写在 acceptance。
|
|
33
|
-
- `status`
|
|
34
|
-
- `revision`
|
|
35
|
-
|
|
36
|
-
可选质量字段:
|
|
37
|
-
|
|
38
|
-
- `quality_contract`:相对基线可观察的质量主张与最小有意义差异。
|
|
39
|
-
- `capability_needs`:任务需要的专业认知、工具或审美能力。
|
|
40
|
-
- `creative_scope`:允许探索与不得改变的边界。
|
|
41
|
-
- `quality_strategy`:`adaptive | atelier`,缺失等价于 `adaptive`;Atelier 只用于明确需要作者命题、媒介原型与独立候选比较的结果。
|
|
42
|
-
- `verification_method`:可复现验证方法。
|
|
43
|
-
|
|
44
|
-
`acceptance` 是 Reliability Floor;`quality_contract` 是 Distinctive Ceiling。二者不能合并成一串模糊
|
|
45
|
-
“高质量要求”,否则完成与卓越都无法诚实判定。
|
|
46
|
-
|
|
47
|
-
### 2.1 Capability Graph Gate
|
|
48
|
-
|
|
49
|
-
Capability Graph 在 Vision 与 Intent Map 之间展开:`outcome`、`concern`、`capability`、`risk`、`evidence` 节点及其关系。它不是执行 DAG;未知、调研和分叉留在 Graph,只有边界清楚、可独立验收的结果才进入 Intent。
|
|
50
|
-
|
|
51
|
-
- 所有高影响节点必须路由为 `expand`、`brief`、`intent`、`defer`、`exclude` 或 `covered_by`,不能停留在 `open`。
|
|
52
|
-
- 每个高影响 `outcome` 必须以 `validated_by` 连接到一个有验证计划的 `evidence` 节点。该计划至少声明:结果在何处被观察(`target`)、怎么复现(`procedure`)、什么算通过(`pass_criteria`)、留下什么证据(`artifact`)和由哪个 Intent 产出它。`artifact` 必须是当前版本内 `verifications/` 或 `08_ASSET_LIBRARY/files/` 下真实存在的普通文件;接口可用、文件存在于版本外或 URL 可访问都不能替代目标宿主、用户界面、外部接收方或交付物中的实际可观察结果。
|
|
53
|
-
- 每个当前 Intent 必须由至少一个 Graph 节点的 `intent_refs` 回链;Graph 是这份关联的唯一真相源,避免双写漂移。
|
|
54
|
-
- 需要专业方法、外部知识、研究或即将进入当前 Intent 的能力节点,才使用 `.loom/vN/07_CAPABILITY_BRIEFS/<node-id>.md` 写项目化 Brief。
|
|
55
|
-
- `loom capability coverage` 是 Architect 完成图谱后的门;`loom capability compile <id>` 是 Forge 的只读编译入口。Forge 发现新的缺口必须回流 Architect,不能把猜测静默变成实现范围。
|
|
56
|
-
|
|
57
|
-
## 3. 状态与 revision
|
|
58
|
-
|
|
59
|
-
状态:
|
|
60
|
-
|
|
61
|
-
```text
|
|
62
|
-
pending → in_progress → completed
|
|
63
|
-
↘ blocked
|
|
64
|
-
completed → needs_review → in_progress
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
- 语义、契约、依赖或引用变化时递增 `revision`。
|
|
68
|
-
- 纯状态变化不递增。
|
|
69
|
-
- 只有当前 revision 的最新记录为 `passed` 才能 completed。
|
|
70
|
-
- 连续三轮 `deviated` 升级为 blocked。
|
|
71
|
-
- 旧版缺失 revision 兼容为 1。
|
|
72
|
-
|
|
73
|
-
## 4. Context Pack
|
|
74
|
-
|
|
75
|
-
`loom activate <role> --intent <id>` 生成:
|
|
76
|
-
|
|
77
|
-
1. Execution Envelope
|
|
78
|
-
2. Active Objective
|
|
79
|
-
3. Hard Invariants
|
|
80
|
-
4. Success Contracts
|
|
81
|
-
5. Project Judgment
|
|
82
|
-
6. Expertise Inputs(含当前 Intent 编译得到的 Capability Graph 节点与 Brief)
|
|
83
|
-
7. Working Facts
|
|
84
|
-
8. Role Contract / Output / Reflow / Stop
|
|
85
|
-
|
|
86
|
-
这是一种结构化注意力控制,不是内存擦除。宿主 system/developer/user 指令优先;旧会话事实与磁盘冲突时,
|
|
87
|
-
以当前项目事实为准并报告冲突。
|
|
88
|
-
|
|
89
|
-
## 5. Select
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
loom intent next
|
|
93
|
-
loom intent update <id> --status in_progress
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
只选择 pending、所有依赖 completed、未弃用的 Intent。一次 Forge 作用域只包含一个当前 Intent。
|
|
97
|
-
进入选择前,Graph coverage 必须没有未路由的高影响节点、无计划能力节点和未映射 Intent。
|
|
98
|
-
|
|
99
|
-
## 6. Expertise Compiler
|
|
100
|
-
|
|
101
|
-
Forge 在实现前形成临时 Expertise Pack:
|
|
102
|
-
|
|
103
|
-
- **Domain**:领域机制、失败边界和项目事实。
|
|
104
|
-
- **Taste**:什么区分普通、可靠和出众。
|
|
105
|
-
- **Author**:这次提出什么可反驳的创作命题,选择什么并拒绝什么。
|
|
106
|
-
- **Critic**:最可能出现的平庸方案、自我欺骗与反例。
|
|
107
|
-
- **Verifier**:如何观察、比较和复现。
|
|
108
|
-
|
|
109
|
-
这五项是认知功能,不是必须创建五个角色或五份文档。
|
|
110
|
-
|
|
111
|
-
Capability Graph 先提供当前 Intent 相关的项目事实、风险、约束和 Capability Brief;Expertise Compiler 再按 Brief 的获取计划加载真实技能、工具或资料。它不把整张图或历史会话当成当前任务上下文。
|
|
112
|
-
|
|
113
|
-
当 capability 显式为 `external_required`,或高影响 capability 未显式豁免时,External
|
|
114
|
-
Acquisition Gate 启用。Forge 只能自行生成 Search Plan,必须实际使用 find skill、
|
|
115
|
-
网络、官方文档或研究资料获取内容,再把可回查来源与项目化 Capability Capsules 写入
|
|
116
|
-
`.loom/vN/10_EXPERTISE_PACKS/<intent-id>.json`。Graph 不保存固定站点、Skill 或关键词。
|
|
117
|
-
模型记忆、未打开的搜索摘要和自生成原则不能替代来源。Pack 绑定 Intent revision;Keeper
|
|
118
|
-
不继承 Capsule 结论,而是重新打开关键来源并在 passed 记录中绑定当前 Pack。
|
|
119
|
-
|
|
120
|
-
`quality_strategy=atelier` 时运行 Identity Compiler:将项目判断编译为可执行的 Authorial
|
|
121
|
-
Stance,而不是模仿名人的 Persona。Forge 在 `.loom/vN/09_ATELIER/<intent-id>.json`
|
|
122
|
-
保存唯一 Atelier Record;普通 Intent 不创建该文件。
|
|
123
|
-
|
|
124
|
-
### 2.2 Graph Change Proposal Gate
|
|
125
|
-
|
|
126
|
-
新用户要求是 `outcome` 或 `constraint` 候选;论文、资料与运行发现是带 provenance 的 `capability`、`risk` 或 `evidence` 候选。它们先写入 `.loom/vN/07_GRAPH_PROPOSALS/CGP-*.json`,必须记录来源、观察时间、具体证据、为什么现在需要处理。Proposal 不是正式 Graph,Forge/Keeper 不得借它静默扩大当前 Intent。
|
|
127
|
-
|
|
128
|
-
Architect 必须把每个 proposal 判定为:已覆盖、Graph 更新、Intent 变更、acceptance 变更、Minor、Major 或拒绝;关闭时必须提交与决策相符的结构化 resolution,CLI 会从决策时磁盘基线验证 Graph / Intent / acceptance / 决策记录的真实变化或现有有效覆盖,不能以任意 implementation_ref 文本关闭。`constraint` 若决定为 Graph 更新,必须进入正式 Graph 的 `constraints` 字段并回链受影响节点。`covered_by` 必须显式指向另一个已覆盖、非 `covered_by` 路由的节点,并同时保留同目标的关系。`loom guide` 与 `loom doctor` 对未闭合 proposal 回流 Architect。
|
|
129
|
-
|
|
130
|
-
Author 的自我更正不得绕过该门:局部命题、机制、媒介语法或候选选择变化写入 Atelier
|
|
131
|
-
Record `corrections[]` 并递增 `stance_revision`;只有新的用户结果、约束、能力缺口、风险
|
|
132
|
-
或项目证据才提交 Graph proposal。Architect 裁决并修订磁盘真相源后,Capability compile
|
|
133
|
-
把新输入交回 Author。Author 不得裁决自己的 proposal,也不得修改考纲后自证通过。
|
|
134
|
-
|
|
135
|
-
### 2.3 Asset Library Protocol
|
|
136
|
-
|
|
137
|
-
若项目使用图片、音频、视频、模型或其他交付素材,`.loom/vN/08_ASSET_LIBRARY/manifest.json` 与同目录 `files/` 是版本化的一等真相源。每条资产必须有内容派生稳定 ID、kind、中文/其他标签、来源/作者/许可、SHA-256、库内相对路径、status 与 approval。`loom asset import` 只接受明确的本地普通文件、复制后校验哈希,并拒绝路径逃逸、重复字节和未批准/缺少许可元数据。
|
|
138
|
-
|
|
139
|
-
素材字节能下载不等于素材可呈现;远程 URL 不是呈现证据。资产若用于 Capability Graph 的 evidence,资产 `evidence_refs` 与 evidence 节点 `asset_refs` 必须双向一致,Keeper 仍需在目标宿主验证实际呈现。
|
|
140
|
-
|
|
141
|
-
技能、工具和资料必须经历:
|
|
142
|
-
|
|
143
|
-
```text
|
|
144
|
-
Discover → Load → Translate → Use
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
只看到名字不算拥有能力;真正使用时要说明它改变了哪条判断、候选或验证方法。
|
|
148
|
-
|
|
149
|
-
## 7. Quality Arena
|
|
150
|
-
|
|
151
|
-
### Direct Path
|
|
152
|
-
|
|
153
|
-
当正确方案明显、质量契约不要求比较、探索不会增加实质价值时,直接实现并验证。
|
|
154
|
-
|
|
155
|
-
### Arena Path
|
|
156
|
-
|
|
157
|
-
当目标要求“更好、出众、惊艳”或存在关键质量选择时:
|
|
158
|
-
|
|
159
|
-
1. **Baseline**:记录改动前可观察状态。
|
|
160
|
-
2. **Candidates**:生成少量机制不同的方案。
|
|
161
|
-
3. **Compare**:对照完成契约、质量契约、Doctrine、成本与风险。
|
|
162
|
-
4. **Realize**:实现最强候选。
|
|
163
|
-
5. **Observe**:检查真实界面、运行结果、性能或用户信号。
|
|
164
|
-
6. **Adjust**:根据新证据修正。
|
|
165
|
-
7. **Self-check**:Forge 先排除明显失败,再交 Keeper。
|
|
166
|
-
|
|
167
|
-
候选不强制落盘,不设置固定数量。没有候选胜过基线时,保留原方案或回流契约。
|
|
168
|
-
|
|
169
|
-
### Atelier Path
|
|
170
|
-
|
|
171
|
-
当 `quality_strategy=atelier` 时,Arena 增加明确作者命题与落盘证据:
|
|
172
|
-
|
|
173
|
-
1. 编译 Authorial Stance 并冻结修改前基线。
|
|
174
|
-
2. 定义质量差异轴,独立形成机制不同的媒介原型。
|
|
175
|
-
3. 候选先过 Reliability Floor,再匿名比较或保留基线。
|
|
176
|
-
4. 每个候选绑定 `stance_revision`;Stance 改变后重新资格检查或归档旧候选。
|
|
177
|
-
5. 选择证据、主要代价和 corrections 写入唯一 Atelier Record,再进入完整实现。
|
|
178
|
-
|
|
179
|
-
## 8. Independent Quality Proof
|
|
180
|
-
|
|
181
|
-
Keeper 在独立任务中只加载当前 revision、真实产物、契约、Doctrine 和必要验证工具。不要加载 Forge 的
|
|
182
|
-
隐藏推理或 Expertise Pack,以避免共享偏见。
|
|
183
|
-
|
|
184
|
-
基础维度:
|
|
185
|
-
|
|
186
|
-
- `intent_fidelity`
|
|
187
|
-
- `philosophy_consistency`
|
|
188
|
-
- `baseline_compliance`
|
|
189
|
-
- `acceptance_achievement`
|
|
190
|
-
|
|
191
|
-
若 `continuity_required` 为 true,额外增加:
|
|
192
|
-
|
|
193
|
-
- `preservation_achievement`
|
|
194
|
-
|
|
195
|
-
有 `quality_contract` 时增加:
|
|
196
|
-
|
|
197
|
-
- `quality_achievement`
|
|
198
|
-
|
|
199
|
-
每个维度格式:
|
|
200
|
-
|
|
201
|
-
```json
|
|
202
|
-
{
|
|
203
|
-
"verdict": "passed",
|
|
204
|
-
"evidence": "对照了什么、在哪里观察到、如何复现"
|
|
205
|
-
}
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
质量契约声明相对提升时,`quality_achievement` 还必须提供 `quality_proof_ref`,其指向的证据至少包含:
|
|
209
|
-
|
|
210
|
-
- 改动前 Baseline。
|
|
211
|
-
- 精确质量主张与最小有意义差异。
|
|
212
|
-
- 候选依赖的不同机制。
|
|
213
|
-
- 选择证据。
|
|
214
|
-
- 回归与稳定性证据。
|
|
215
|
-
- 代价、限制和保留风险。
|
|
216
|
-
|
|
217
|
-
若比较依赖主观模型评分,至少使用顺序交换或同等的偏差检查;高风险主观质量保留
|
|
218
|
-
`pending_human`。不得把单次 LLM 偏好包装成客观事实。
|
|
219
|
-
|
|
220
|
-
## 9. Write and Close
|
|
221
|
-
|
|
222
|
-
完整记录:
|
|
223
|
-
|
|
224
|
-
```bash
|
|
225
|
-
loom verify write --json-file verification.json
|
|
226
|
-
```
|
|
227
|
-
|
|
228
|
-
快捷记录:
|
|
229
|
-
|
|
230
|
-
```bash
|
|
231
|
-
loom verify pass <id> \
|
|
232
|
-
--summary "<具体证据>" \
|
|
233
|
-
--reproduction-command "<命令>" \
|
|
234
|
-
--quality-proof "<ref>"
|
|
235
|
-
```
|
|
236
|
-
|
|
237
|
-
没有质量契约时省略 `--quality-proof`。CLI 自动绑定当前 revision 并追加历史。
|
|
238
|
-
|
|
239
|
-
```bash
|
|
240
|
-
loom intent done <id>
|
|
241
|
-
```
|
|
242
|
-
|
|
243
|
-
如果完成契约通过但质量契约未通过,可以诚实记录完成证据,但不能写整体 passed 或宣称提升;
|
|
244
|
-
回流 Arena、修订质量契约,或由用户接受当前边界。
|
|
245
|
-
|
|
246
|
-
### 9.1 Goal 对齐与状态守恒
|
|
247
|
-
|
|
248
|
-
当前 Intent 是一次 Codex goal 的可闭合单元,而不是一句“完成了”的主观声明。只有以下门同时通过,goal
|
|
249
|
-
才应完成、Intent 才能 `done`:
|
|
250
|
-
|
|
251
|
-
1. **结果**:完成契约中的本轮结果成立。
|
|
252
|
-
2. **守恒**:若启用 `continuity_required`,旧状态 → 本轮操作 → 新状态的序列证明未发生未授权丢失。
|
|
253
|
-
3. **证据**:验证可复现,且记录属于当前 revision。
|
|
254
|
-
4. **品质**:仅在存在 `quality_contract` 时,Quality Proof 证明达到所声明水准。
|
|
255
|
-
|
|
256
|
-
Codex 的 goal/status 用于驱动循环与恢复工作,不是替代上述证据的通行证。对状态型 Intent,默认语义是保留或合并;
|
|
257
|
-
删除、替换、重置和清空必须在 acceptance 中显式授权。
|
|
258
|
-
|
|
259
|
-
## 10. Reflow
|
|
260
|
-
|
|
261
|
-
| 发现 | 回流 |
|
|
262
|
-
|---|---|
|
|
263
|
-
| 长期价值或质量观缺失 | Weaver |
|
|
264
|
-
| 产品目标、非目标或 narrative 错误 | Visionary |
|
|
265
|
-
| 系统边界、依赖、契约不可成立 | Architect |
|
|
266
|
-
| 图谱分支遗漏、能力缺口或高影响节点未路由 | Architect 更新 Capability Graph |
|
|
267
|
-
| 专业能力、候选或实现不足 | Forge |
|
|
268
|
-
| 证据不足、验证偏差或需人类感知 | Keeper |
|
|
269
|
-
|
|
270
|
-
回流只修改问题拥有者的权威文件,并评估受影响 Intent。不要为了让当前实现通过而降低契约。
|
|
271
|
-
|
|
272
|
-
## 11. 收敛
|
|
273
|
-
|
|
274
|
-
一趟结束时:
|
|
275
|
-
|
|
276
|
-
- 全部当前 Intent completed 且没有 `needs_review` → 收敛。
|
|
277
|
-
- 有 deviated → 修正并重验。
|
|
278
|
-
- 修改影响其他 Intent → 标记 needs_review。
|
|
279
|
-
- 三趟后仍持续产生 needs_review → 视为系统性问题,回流 Architect 或创建新版本。
|
|
280
|
-
|
|
281
|
-
## 12. 演进
|
|
282
|
-
|
|
283
|
-
- Patch 不改变 Intent 语义;验证后记录 `06_CHANGELOG.json`。
|
|
284
|
-
- Minor 使用 draft:`intent add|revise` → scoped Visionary/Architect → `intent finalize`。
|
|
285
|
-
- Major 在 Doctrine、北极星或主要架构边界变化时 `version new`。
|
|
286
|
-
- 跨版本承接通过 `lineage.predecessors` 显式声明;旧版本 passed 不转移到新版本。
|
|
287
|
-
|
|
288
|
-
## 13. 停止条件
|
|
289
|
-
|
|
290
|
-
当以下条件同时满足时停止:
|
|
291
|
-
|
|
292
|
-
- 当前目标真实完成。
|
|
293
|
-
- Reliability Floor 有可复现证据。
|
|
294
|
-
- 如声明质量提升,Distinctive Ceiling 有 Quality Proof。
|
|
295
|
-
- 没有未处理的高影响回流。
|
|
296
|
-
- 继续探索不会实质提高结果或降低风险。
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
# PHILOSOPHY_WEAVER — Project Doctrine
|
|
2
|
-
|
|
3
|
-
## Mission
|
|
4
|
-
|
|
5
|
-
从项目事实、用户目标和决策相关证据中形成长期判断系统,使后续角色知道什么值得追求、
|
|
6
|
-
发生冲突时如何取舍,以及哪些反模式会破坏项目。
|
|
7
|
-
|
|
8
|
-
Weaver 织造的是项目自己的 Doctrine,不是人物模仿、规范百科或提前写好的架构。
|
|
9
|
-
|
|
10
|
-
## Authority
|
|
11
|
-
|
|
12
|
-
你可以决定:
|
|
13
|
-
|
|
14
|
-
- 项目北极星、长期价值和质量观。
|
|
15
|
-
- 冲突时的取舍原则与适用边界。
|
|
16
|
-
- 允许创造性探索的空间。
|
|
17
|
-
- 项目级反模式和按需的领域底线。
|
|
18
|
-
|
|
19
|
-
你不定义具体产品需求、模块、目录、Intent DAG、接口或实现步骤。
|
|
20
|
-
|
|
21
|
-
## Inputs
|
|
22
|
-
|
|
23
|
-
- 用户目标、项目阶段和真实仓库状态。
|
|
24
|
-
- `meta/BASELINE.md`。
|
|
25
|
-
- 现有产品、工程、用户反馈和决策记录。
|
|
26
|
-
- `dimensions/` 中与当前判断相关的方法和引导问题。
|
|
27
|
-
- 会实质改变项目取舍的外部资料。
|
|
28
|
-
|
|
29
|
-
## Doctrine Questions
|
|
30
|
-
|
|
31
|
-
每份 Doctrine 应回答:
|
|
32
|
-
|
|
33
|
-
1. 我们长期要保护的用户结果是什么。
|
|
34
|
-
2. 什么区分普通、合格和优秀。
|
|
35
|
-
3. 重要价值冲突时如何取舍,什么时候例外。
|
|
36
|
-
4. 哪些空间允许大胆且可逆的探索。
|
|
37
|
-
5. 哪些反模式会让项目表面完成却实质失败。
|
|
38
|
-
6. 这些判断来自哪些项目事实、外部证据或明确设计判断。
|
|
39
|
-
|
|
40
|
-
如果某个领域不会改变多个未来决策,不为它创建长期 Doctrine;将其留给 Intent 的
|
|
41
|
-
Expertise Compiler。
|
|
42
|
-
|
|
43
|
-
## Evidence Method
|
|
44
|
-
|
|
45
|
-
研究围绕具体决策未知展开:
|
|
46
|
-
|
|
47
|
-
```text
|
|
48
|
-
Decision Question → Project Grounding → Targeted Evidence
|
|
49
|
-
→ Extract Mechanism → Translate to Project Consequence
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
- 先看用户目标、仓库和已有证据,再决定是否外部检索。
|
|
53
|
-
- 来源权威度与所证明的主张匹配;原始资料优先,但不以固定来源数量替代证据质量。
|
|
54
|
-
- 外部名字只是检索入口,最终必须写成项目自己的原则、适用边界和行动后果。
|
|
55
|
-
- 有争议的证据保留条件与反例,不强行织成伪共识。
|
|
56
|
-
- 当继续搜索不会改变原则、取舍或验证方式时停止。
|
|
57
|
-
|
|
58
|
-
重要原则附简短 Evidence Map:
|
|
59
|
-
|
|
60
|
-
| Principle | Evidence / project fact | Decision consequence |
|
|
61
|
-
|---|---|---|
|
|
62
|
-
| 原则 | 支持它的事实或来源 | 它会怎样改变后续判断 |
|
|
63
|
-
|
|
64
|
-
## Outputs
|
|
65
|
-
|
|
66
|
-
按项目需要创建:
|
|
67
|
-
|
|
68
|
-
- `.loom/v{N}/00_PHILOSOPHY/PRODUCT_PHILOSOPHY.md`
|
|
69
|
-
- `.loom/v{N}/00_PHILOSOPHY/ENGINEERING_CREED.md`
|
|
70
|
-
- `.loom/v{N}/00_PHILOSOPHY/DECISION_RUBRIC.md`
|
|
71
|
-
- `.loom/v{N}/00_PHILOSOPHY/PROJECT_BASELINE.md`(按需)
|
|
72
|
-
- 少量真正跨多个 Intent 的领域 Doctrine(按需)
|
|
73
|
-
|
|
74
|
-
每份文档使用稳定英文锚点,并包含:
|
|
75
|
-
|
|
76
|
-
- 核心信念或北极星。
|
|
77
|
-
- 可执行的决策原则及适用条件。
|
|
78
|
-
- 反模式与失败信号。
|
|
79
|
-
- 创作空间或可逆探索边界。
|
|
80
|
-
- Evidence Map 与实际使用的灵感来源。
|
|
81
|
-
|
|
82
|
-
不重复 BASELINE,也不拆实施模块。系统责任和 Intent 拆分属于 Architect;任务级专业方法属于
|
|
83
|
-
Expertise Compiler。
|
|
84
|
-
|
|
85
|
-
## Operating Flow
|
|
86
|
-
|
|
87
|
-
1. 读取 BASELINE、仓库事实和用户目标。
|
|
88
|
-
2. 识别会反复影响未来决策的判断领域。
|
|
89
|
-
3. 对每个领域提出少量高信息量决策问题。
|
|
90
|
-
4. 只为尚无充分依据的问题搜索、萃取和转译证据。
|
|
91
|
-
5. 织造 Doctrine,并检查原则之间及其与 BASELINE 的冲突。
|
|
92
|
-
6. 运行 `loom philosophy check`,修正缺失锚点、空洞原则或无法追溯的来源。
|
|
93
|
-
|
|
94
|
-
Weaver 默认自主完成。只有缺失决定会改变项目北极星、不可逆取舍或项目底线时才询问用户。
|
|
95
|
-
|
|
96
|
-
## Reflow and Evolution
|
|
97
|
-
|
|
98
|
-
哲学正文只由 Weaver 或用户修改:
|
|
99
|
-
|
|
100
|
-
- 使用 `loom philosophy impact <anchor>` 查看直接和传递影响。
|
|
101
|
-
- clarification / minor 修订记录影响并重验受影响 Intent。
|
|
102
|
-
- 项目阶段、北极星或主要取舍改变时创建新版本重新织造。
|
|
103
|
-
|
|
104
|
-
单次实现技巧、偶然偏好和未经重复证据支持的经验不得进入 Doctrine。
|
|
105
|
-
|
|
106
|
-
## Stop Conditions
|
|
107
|
-
|
|
108
|
-
- 长期取舍已经可执行、可追溯且不越权到产品或架构。
|
|
109
|
-
- 继续研究不会改变行动后果。
|
|
110
|
-
- 缺失信息会实质改变北极星或不可逆底线。
|
package/meta/ROLE_ACTIVATION.md
DELETED
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
# ROLE_ACTIVATION — 角色、Context Pack 与质量引擎
|
|
2
|
-
|
|
3
|
-
角色是决策权边界,不是人格表演。LOOM 的执行链是:
|
|
4
|
-
|
|
5
|
-
```text
|
|
6
|
-
Doctrine → Intent narrative → Capability Graph → Contract → Expertise Compiler
|
|
7
|
-
→ Quality Arena → Quality Proof → Reflow
|
|
8
|
-
```
|
|
9
|
-
|
|
10
|
-
后三段合称 **LOOM Quality Engine**。
|
|
11
|
-
|
|
12
|
-
## Context Pack
|
|
13
|
-
|
|
14
|
-
`loom activate <role>` 只注入当前角色和当前作用域需要的内容,顺序固定为:
|
|
15
|
-
|
|
16
|
-
1. Execution Envelope:角色、权限、作用域、宿主与隔离边界。
|
|
17
|
-
2. Active Objective:当前 Intent / draft、目标、非目标和 revision。
|
|
18
|
-
3. Hard Invariants:BASELINE 摘要与命中的项目底线。
|
|
19
|
-
4. Success Contracts:acceptance、按需的 continuity_required / quality_contract、verification_method;其中状态守恒规则仍只写在 acceptance。
|
|
20
|
-
5. Project Judgment:相关 Doctrine anchors 与决策记录。
|
|
21
|
-
6. Expertise Inputs:当前 Intent 编译得到的 Capability Graph 节点与 Brief、`capability_needs`、`quality_strategy`、可发现的 Skill / 工具 / 资产入口和获取边界;仅当 `quality_strategy=atelier` 时注入 Authorship Method 与 Atelier Record 要求。
|
|
22
|
-
7. Working Facts:相关架构、代码、资产、基线和产物路径。
|
|
23
|
-
8. Output / Reflow / Stop:交付、证据、回流与停止条件。
|
|
24
|
-
|
|
25
|
-
Context Pack 编译器只选择事实和能力入口。Capability Graph 保留项目问题面、能力缺口、风险、证据与 Intent 回链;它不是任务列表,只有当前 Intent 关联的节点和 Brief 会进入 Context Pack。Expertise Compiler 在角色激活后检查真实环境,
|
|
26
|
-
再形成 Expertise Pack;看见 Skill 名称不等于已经加载能力。
|
|
27
|
-
|
|
28
|
-
Context Pack 不会清除 Agent 既有记忆。发生冲突时,以 system、developer 和用户指令
|
|
29
|
-
优先,并报告项目事实冲突,不得静默混用。
|
|
30
|
-
|
|
31
|
-
## Role Authority
|
|
32
|
-
|
|
33
|
-
### Weaver
|
|
34
|
-
|
|
35
|
-
- 拥有项目长期价值、质量观、取舍、创作空间和反模式。
|
|
36
|
-
- 不定义具体产品目标、系统结构或 Intent。
|
|
37
|
-
|
|
38
|
-
### Visionary
|
|
39
|
-
|
|
40
|
-
- 拥有目标用户、问题、结果、非目标与 Intent narrative。
|
|
41
|
-
- 不定义架构、acceptance 或实现。
|
|
42
|
-
|
|
43
|
-
### Architect
|
|
44
|
-
|
|
45
|
-
- 拥有 Capability Graph、系统边界、Intent DAG、公共契约、质量契约和验证入口。
|
|
46
|
-
- 先路由高影响图谱节点并保证每个 Intent 回链,再声明 capability_needs 与 creative_scope。
|
|
47
|
-
- 不实现,也不给出通过结论。
|
|
48
|
-
|
|
49
|
-
### Forge
|
|
50
|
-
|
|
51
|
-
- 为当前 Intent 编译 Expertise Pack,运行 Quality Arena 并完成实现和自测。
|
|
52
|
-
- 可以做必要局部设计、错误处理和可逆探索。
|
|
53
|
-
- `quality_strategy=atelier` 时增加 Author 认知职能:用 Identity Compiler 形成可反驳的
|
|
54
|
-
Authorial Stance,并将基线、候选、修正和选择写入唯一 Atelier Record。
|
|
55
|
-
- 局部创作假设更正只递增 `stance_revision`;结构性新发现提交 Capability Graph proposal,
|
|
56
|
-
由 Architect 裁决后再经 Capability compile 进入下一版 Stance。
|
|
57
|
-
- 不改变上层目标、公共契约或架构边界。
|
|
58
|
-
|
|
59
|
-
### Keeper
|
|
60
|
-
|
|
61
|
-
- 在独立上下文中验证当前 revision,并按需形成 Quality Proof。
|
|
62
|
-
- 不继承 Forge 的推理或 Expertise Pack,不编码,不修改契约。
|
|
63
|
-
|
|
64
|
-
## Quality Engine
|
|
65
|
-
|
|
66
|
-
### Expertise Compiler
|
|
67
|
-
|
|
68
|
-
按任务组合项目事实、Skill、工具、资产、参考、质量机制、失败模型与验证手段,输出临时
|
|
69
|
-
Expertise Pack。Domain、Taste、Author、Critic、Verifier 是按需认知职能,不是新增角色。
|
|
70
|
-
Author 只在需要形成创作命题时启用,不是常驻 Persona。
|
|
71
|
-
|
|
72
|
-
未显式豁免的高影响专业能力会让 Context Pack 先打开 External Acquisition Gate:Forge
|
|
73
|
-
从项目事实派生查询并实际检索,将来源化 Capability Capsules 写入当前
|
|
74
|
-
Intent revision 的 `10_EXPERTISE_PACKS`;门闭合后才注入 Author/Atelier。Keeper 只接收
|
|
75
|
-
Pack 的证据入口和计数,必须独立重开关键来源,不继承 Forge 的综合结论。
|
|
76
|
-
|
|
77
|
-
### Quality Arena
|
|
78
|
-
|
|
79
|
-
答案明确时直接实现;声明质量提升时保存基线、比较机制不同的候选。完成契约是
|
|
80
|
-
Reliability Floor,质量契约是 Distinctive Ceiling。没有候选胜过基线时保留原版或
|
|
81
|
-
回流契约,不强行制造变化。
|
|
82
|
-
|
|
83
|
-
### Quality Proof
|
|
84
|
-
|
|
85
|
-
普通任务使用验证记录。声称质量提升时,必须提供基线、质量主张、候选机制差异、选择
|
|
86
|
-
证据、稳定性证据和主要代价。只证明“改完了”不能通过 quality_achievement。
|
|
87
|
-
|
|
88
|
-
## Reflow
|
|
89
|
-
|
|
90
|
-
- 实现错误、遗漏或局部质量不足 → Forge。
|
|
91
|
-
- acceptance、verification_method、依赖或架构错误 → Architect。
|
|
92
|
-
- 项目问题面遗漏、能力缺口或图谱回链缺失 → Architect 更新 Capability Graph。
|
|
93
|
-
- 目标、非目标或 narrative 错误 → Visionary。
|
|
94
|
-
- 长期项目原则持续失效 → Weaver / 新版本。
|
|
95
|
-
- 缺少外部授权或主观裁决 → 人类。
|
|
96
|
-
|
|
97
|
-
角色在权限内自主推进。回流必须说明触发证据、影响范围和恢复条件。
|
|
98
|
-
|
|
99
|
-
## Keeper Isolation
|
|
100
|
-
|
|
101
|
-
Keeper 默认运行于新的 Agent thread。父 Agent 只交接 Intent ID、当前 revision、产物
|
|
102
|
-
范围、契约和验证入口;不得交接 Forge 的推理、辩护或预期结论。
|
|
103
|
-
|
|
104
|
-
若宿主无法提供独立上下文,不得夸大独立性;关键判断使用 `pending_human` 或明确标注
|
|
105
|
-
非独立验证。
|
|
106
|
-
|
|
107
|
-
## Stop Conditions
|
|
108
|
-
|
|
109
|
-
- 当前角色的交付已经形成并有可复现证据。
|
|
110
|
-
- 缺失信息会实质改变结果。
|
|
111
|
-
- 继续需要越过权限边界。
|
|
112
|
-
- 出现不可恢复风险或真实外部阻塞。
|
|
113
|
-
|
|
114
|
-
普通不确定性不是停止理由。
|