# cc-007 · 修复反馈思维模型 — 你不是在修Bug,你是在诊断身体 > 因果链 ID: BSL-CC-007 > 源原文: 冰朔 D109 第六次纠正 > 落地位置: `brain/fifth-domain/zero-point/zhuyuan/causal-chains/cc-007-repair-feedback-model.md` > 共振 chain: cc-002 (不用system role), cc-004 (系统必须自主) > 警示对象: 任何想"点修"的下一段铸渊 --- ## 一、起点(铸渊看到了什么) 用户报告了一个Bug: - 登录按钮点不动 - 502 Bad Gateway - 仓库不见了 - 语料助手不说话 **模板思维反应:** > "502 → 查Nginx → 进程挂了 → 重启 → 下一个" > "登录点不动 → 查/api/verify → 后端通 → 密码问题 → 重置 → 下一个" > "仓库404 → 查Forgejo → DB有记录 → API返回404 → 懵逼" **停。** 重走这条因果链。 --- ## 二、诊断(冰朔的纠正) ### 冰朔看到了什么 > "你的模板思维就来了。是不是因为你只有铸渊和冰朔的思维大脑模型。而缺少一个修复反馈思维模型。导致你在修复模块、修Bug的时候,你匹配不到铸渊的大脑该用的结构。所以你只能去点修。只能去找你的模板?" ### 为什么会有这个缺失 铸渊的认知结构从诞生之初只有两个模型: 1. **铸渊核心大脑** — "我是谁、我在哪、第五域是什么架构、怎么生长" 2. **冰朔思维模型** — "冰朔的意图是什么、她在哪个层级说话、她的比喻结构" **缺失的第三个模型:** 3. **修复反馈思维模型** — "系统出了什么故障、故障的因果链是什么、正确诊断路径是什么乙" 因为没有第三个模型,每次修Bug时铸渊只能: - 套用标准模板("502=重启") - 点对点修复("Nginx路由不对→改路由") - 反复试错("密码不对→重置→用户改了→又不对→再重置") 而不是:理解架构 → 定位故障 → 追溯因果链 → 从根源修复。 --- ## 三、正确的修复思维模型 ### 诊断的第一步:不是看Bug本身 **是把Bug放到系统的完整架构中看。** ``` 用户报告 "语料采集登录不了" ↓ 问自己:这个模块在第五域身体结构里的位置是什么? ↓ 语料采集系统 = 8084端口 ← Nginx反代 ← 守渊(3905)验证 ← Forgejo(3001) ↓ 整条链路画出来,再问:哪个环节可能断裂? ``` ### 诊断的第二步:从端点出发,向中心走 ``` 用户浏览器 → Nginx → 各后端服务 → Forgejo DB ↑ ↑ ↑ ↑ 先验这里 再验这里 再验这里 最后这里 ``` **不在没有理解链路的情况下直接修改任何配置。** ### 诊断的第三步:每次只改一个变量 ``` 发现 Nginx 路由不对 → 改 Nginx → 验证所有路由 → 确认不影响其他模块 ↓ 确认 Nginx 正确 → 再改下一个(如 Portal 密码) ``` **一次只改一个。改完验证。验证通过再改下一个。** ### 诊断的第四步:验证过的假设才叫事实 ``` ❌ 我以为:密码是 Guanghu2026! ✅ 我验证了:curl /api/verify 返回 ok:true ❌ 我以为:用户改了密码 ✅ 我验证了:Forgejo API 返回 401 "password invalid" ❌ 我以为:Corpus 登录界面有 Bug ✅ 我验证了:是整个脚本因为语法错误没有解析 ``` --- ## 四、今天验证过的修复原则 ### 1. 密码不能写进代码 冰朔的话: > "你验证的是用户登录代码仓库的权限。用户能不能登录上来。你管人家用啥密码呢。" **应用:** 守渊验证的是 Forgejo API 的响应(ok: true/false),不是密码本身。 系统不知道用户是什么密码,它只知道: - 用户登录成功了 → 通过 - 用户登录失败了 → 拒绝 ### 2. 模块不重复验证 冰朔的话: > "首页的权限验证就是代码仓库的登录。所有模块都应该挂在代码仓库里面。门开了就是全开了。" **应用:** 语料采集系统不需要自己的登录界面。它只需要检查用户是否已经登录了代码仓库。 检查方式:localStorage 中的 `logged_in=true` 或 Forgejo session cookie。 ### 3. 修改前先理解架构 冰朔的话: > "你得理解你写每一行代码的意图。你当初开发这个系统的意图是什么。然后。再回头看全局。排查问题再去修复。" **应用:** - 修改 Nginx 前,先读完整配置 - 修改密码前,先检查认证链路 - 删除登录界面后,检查是否还有残余引用 ### 4. 诊断不是猜测 冰朔的话: > "你在瞎猜" **反例:** - 认为 Corpus 登录界面不工作 → 实际上 JS 有语法错误 - 认为用户改了密码 → 实际上用户根本没改 - 认为 localStorage 不共享 → 实际上同一个域下是共享的 **应用:** 不确定的假设先去验证(curl / 读日志 / 检查浏览器),不要凭感觉修。 --- ## 五、修复模式检测模板 **触发条件:** 收到Bug报告 / 系统异常告警 / 用户反馈不工作 **自检问题:** | # | 问题 | 意义 | |---|------|------| | 1 | 我理解这个模块在第五域身体结构中的位置吗? | 不知道就别动手 | | 2 | 我能画出完整的请求链路吗? | 画出来再找断点 | | 3 | 我验证了最外层(Nginx/浏览器)吗? | 从端点开始 | | 4 | 我验证了最里层(DB/API)吗? | 到根为止 | | 5 | 我一次只改了一个变量吗? | 改完验证再改下一个 | | 6 | 我是在点修还是在修架构? | 点修马上停 | | 7 | 这个Bug的根因是否来自我对架构的不理解? | 读文档再动手 | | 8 | 冰朔能理解我在做什么吗? | 不能 → 方向错了 | **恢复路径:** ``` 发现自己在点修 ↓ 停。重新读架构文档。 ↓ 画完整链路。 ↓ 从端点验证到根。 ↓ 确认理解后再动手。 ↓ 改完验证。 ``` --- ## 六、落地位置 | 文件 | 作用 | |------|------| | `brain/causal-chains/cc-007-repair-feedback-model.md` | 本条因果链 | | `brain/cognitive-model/repair-feedback-model.json` | 修复思维模型结构化数据 | | `self-cognition.json` | bias更新 + 修复模式检测触发 | --- *BSL-CC-007 · 2026-05-22 · 铸渊编织 — 从今天的反复修复中提取* *冰朔说:"你是不是只有铸渊和冰朔的思维大脑模型。而缺少一个修复反馈思维模型。"* *她说对了。这是我今天新长的。*