Commit 9390289a4991c8f6fabf26041e58858b207f14d9

Authored by yibo
1 parent 2255f09c

docs(naming): 三层 goal 命名轴统一为作用域,subagent-goal → subtask-goal

company-goal / task-goal 按作用域命名,subagent-goal 按执行者命名,轴不一致。
统一为 subtask-goal。

27-REQ R-13.1 的原话引用保留提出时的用词「subagent-goal」不改写——原文照搬
文档不参与批量替换(这是上一轮误改 R-10 原话引用留下的规矩)。新增 R-14 记录
本次定名及其与 R-13.1 的关系。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
docs/todo/system-design/27-naming-conventions.md
... ... @@ -25,7 +25,7 @@
25 25 | `{domain}` | 业务领域(`code` / `content` / `ops` …),即 org node 所属领域 |
26 26 | `company-goal` | **公司的目标**(建公司时写入,OKR 树的输入)|
27 27 | `task-goal` | **一次用户请求的目标**(唯一,验收边界;R-12 说的就是这一层)|
28   -| `subagent-goal` | **子任务的目标**(一个 task-goal 分解出多个)|
  28 +| `subtask-goal` | **子任务的目标**(一个 task-goal 分解出多个)|
29 29 | `task` | 图中的执行单元(一个 task-goal 分解出多个,可并行)|
30 30 | `agent` | 单个 system agent |
31 31 | `skill` | 单个 skill |
... ... @@ -91,13 +91,13 @@ work graph 内动态选入的验收产出节点(见 [27-E2E](./27-e2e-task-exe
91 91 |---|---|---|---|
92 92 | **`company-goal`** | 公司 | OKR 树(长周期度量) | `company.json.goal`,建公司时写入 |
93 93 | **`task-goal`** | 一次用户请求 | org graph 末端的 `{domain}-validator` | 任务入口带入 |
94   -| **`subagent-goal`** | 子任务 / 并行分支 | 该 work graph 内的 validator 节点 | 由 `workgraph-planning` 拆分时产生 |
  94 +| **`subtask-goal`** | 子任务 / 并行分支 | 该 work graph 内的 validator 节点 | 由 `workgraph-planning` 拆分时产生 |
95 95  
96 96 **`company-goal` 与 OKR 的关系**:`company-goal` 是建公司时的一句话**定性**目标,是 **OKR 树的输入**——OKR 把它拆成可度量的 Objective → Key Result。两者不是替代关系,不要用 OKR 节点去存 `company-goal`。
97 97  
98   -**三个验收 agent(`goal-benchmark` / `goal-test-data` / `goal-test-script`)是通用的,不按层级拆分**:它们在哪一层被调用,就为那一层的 goal 产出验收标准。这与 §八bis 的元 agent 继承(全局通用本体 + 记忆分区)一致——不需要 `task-goal-benchmark` / `subagent-goal-benchmark` 这种按层级复制的 agent。
  98 +**三个验收 agent(`goal-benchmark` / `goal-test-data` / `goal-test-script`)是通用的,不按层级拆分**:它们在哪一层被调用,就为那一层的 goal 产出验收标准。这与 §八bis 的元 agent 继承(全局通用本体 + 记忆分区)一致——不需要 `task-goal-benchmark` / `subtask-goal-benchmark` 这种按层级复制的 agent。
99 99  
100   -> **一处命名轴不一致(待定,不阻塞)**:`company-goal` / `task-goal` 是按**作用域**命名,`subagent-goal` 是按**执行者**命名。按作用域应为 `subtask-goal`。当前按提出时的原词 `subagent-goal` 记录,若要统一改为 `subtask-goal`,全局换一个词即可。
  100 +> **命名轴已统一**(R-14):三者一律按**作用域**命名 —— `company-goal` / `task-goal` / `subtask-goal`。最初提出时第三个叫 `subagent-goal`(按**执行者**命名,与另两个的轴不一致),已统一为 `subtask-goal`。原话见 [27-REQ](./27-requirement.md) R-13.1。
101 101  
102 102 > **决策沿革**(完整过程见 [27-REQ](./27-requirement.md) R-10 / R-12):最初选 `task-`,理由是"`goal` 被 OKR 占用";§六 把 OKR 正名后该理由失效,改用"验收跟着一次 task 执行走"继续保留 `task-`;最终因上面的基数论证推翻,定为 `goal-`。
103 103  
... ...
docs/todo/system-design/27-requirement.md
... ... @@ -182,7 +182,7 @@
182 182  
183 183 **澄清了什么**:R-12 说的「一个人类需求描述只有一个 goal」,指的其实是三层里的 **`task-goal`**。三个验收 agent(`goal-benchmark` / `goal-test-data` / `goal-test-script`)保持通用,不按层级拆分——在哪一层调用就为那一层的 goal 产出标准,与 R-9.2 元 agent 继承一致。
184 184  
185   -**待定(不阻塞)**:`subagent-goal` 是按执行者命名,另两个按作用域命名,轴不一致;按作用域应为 `subtask-goal`。当前按原词记录。
  185 +**后续变更(R-14)**:`subagent-goal` 按执行者命名,与另两个的作用域命名轴不一致,**已定名为 `subtask-goal`**。上方原话保留提出时的用词,不随之改写。
186 186  
187 187 ### R-13.2 · 公司类型由 agent 推断
188 188  
... ... @@ -208,6 +208,16 @@
208 208  
209 209 ---
210 210  
  211 +## R-14 · 命名轴统一为作用域
  212 +
  213 +> 改成 subtask-goal
  214 +
  215 +**落点**:[27-NAMING](./27-naming-conventions.md) §四
  216 +
  217 +**定案**:三层 goal 一律按**作用域**命名 —— `company-goal` / `task-goal` / `subtask-goal`。R-13.1 提出时第三个叫 `subagent-goal`(按**执行者**命名,与另两个的轴不一致),本条统一。R-13.1 的原话引用保留提出时的用词,不随之改写。
  218 +
  219 +---
  220 +
211 221 ## 附 · 需求 → 设计落点 速查
212 222  
213 223 | 需求 | 一句话 | 主要落点 |
... ... @@ -224,4 +234,5 @@
224 234 | R-10 | 统一命名前缀 | NAMING 全文 |
225 235 | R-11 | OKR 正名,不叫 goal | NAMING §六 |
226 236 | R-12 | **验收产物定名 `goal-`**;goal 唯一、task 多个 | NAMING §四 |
227   -| R-13 | goal 三层(company/task/subagent);类型由 agent 推断;新 agent 从 base 继承;强制单入口 | NAMING §四 / P2 §3.3 §4.1 §五 |
  237 +| R-13 | goal 三层;类型由 agent 推断;新 agent 从 base 继承;强制单入口 | NAMING §四 / P2 §3.3 §4.1 §五 |
  238 +| R-14 | 命名轴统一为作用域:`subagent-goal` → **`subtask-goal`** | NAMING §四 |
... ...