From 367b4d5035c92abf423659e7b8a807f1ca8a425e Mon Sep 17 00:00:00 2001 From: yibo Date: Tue, 18 Aug 2026 15:23:02 +0800 Subject: [PATCH] docs(27-P3C): 登记批 1 顺手要收敛的一处路径重复,以及一处刻意不做的改名 --- docs/todo/system-design/27-p3c-goal-task-model.md | 6 ++++++ 1 file changed, 6 insertions(+), 0 deletions(-) diff --git a/docs/todo/system-design/27-p3c-goal-task-model.md b/docs/todo/system-design/27-p3c-goal-task-model.md index 3a5d49a..723404b 100644 --- a/docs/todo/system-design/27-p3c-goal-task-model.md +++ b/docs/todo/system-design/27-p3c-goal-task-model.md @@ -485,6 +485,12 @@ for (const t of queuedTasks) { 全部挂在 `server/routes/company.js`。错误响应沿用现有 `{ error, hint, ... }` 形态。 +> **批 1 顺手收敛一处**(不是为改而改 —— 批 1 本来就要大改这个文件):`company.js` 里 `const TEMPLATES_DIR` 被**重复定义了 7 次**,其中 6 处硬编码 `path.resolve(__dirname, '../../system/agents')`,只有 1 处(`:220`)用了权威访问器 `locator.AGENTS_ROOT`。2026-08-18 的 agent 目录重构刚把这个路径搬过一次 —— **下次再搬,改 6 处、漏 1 处就是一个静默 bug**。收敛成模块级的一份 `locator.AGENTS_ROOT` 即可。 +> +> 这与本文档反复点名的是**同一个病**:`canDispatch` 的取值域被前端复述过一份(§六.3 的教训)、`ACTIVE_ROOT_RUN_STATUS` 在两个文件里逐字重复(§九.1)、`isUngraduatedStatus()` 的取值域不许在别处复述(§四.9)。**同一个事实只能有一处持有者 —— 路径也是事实。** +> +> (顺带记一条**不做**的:`company-service.js` 的 `const TEMPLATES_DIR = locator.AGENTS_ROOT` 名字已过期,读的人会以为它指 `system/templates`。但改名要动 50 处、跨 6 个文件、零功能收益 —— 不值得,留着这条记录说明它是已知的、不是没人看见。) + ### 6.1 先做一件清理:退役 OKR 的 `/goals` 别名 `index.js` / `agent-server.js` 里 `app.use('/api/goals', require('./routes/okr'))` 与 `company.js` 的 `okrPath()` 里那条 `/:companyId/goals${suffix}` 一并删除。§二.3 已核实**零调用方**。删完 `/goals` 这个词在整套 API 里只剩一个含义。 -- libgit2 0.21.4