# 漂移清单
> 文档与代码不一致处，以代码为准。

- **Part**: 第七部分 · 参考与规范
- **Reading Time**: ~8 min
- **Estimated Tokens**: ~1153

---

下列条目是文档、注释与当前真实生产代码之间已经确认的漂移记录。阅读、排障与开发时，一律以最新代码实现与本手册的最新记录为基线。

## 已知漂移与历史修正清单

| 关注领域 | 陈旧文档/历史描述 | 代码最新事实（以此为准） | 影响与说明 |
| --- | --- | --- | --- |
| 源码目录重构 | 旧文档大量引用 src/** 与 public/** | 运行时代码已全部迁入 app/ （ app/src/ 与 app/public/ ） | 计算项目根路径需上溯三层，防止数据写到 app/data |
| 思考强度调整机制 | 旧手册声称 effort 无法动态修改，切档必须重建实例 | SDK 0.3.263 支持 applyFlagSettings({effortLevel}) 实时生效 | 彻底废弃实例销毁重建的低效方案 |
| 附件物理存放位置 | 旧文档描述附件存放在工作区 .ccm-uploads/ | 附件已搬迁至 data/uploads/ / 受管数据根目录 | 旧目录仅作只读回退，避免污染用户代码仓库的 Git 树 |
| 配置格式与单一源 | 旧文档以 .env 为主要配置说明 | 以根目录 ccm.config.json 结构化配置为首要真相源，优先于 .env | 由 config-file.js 统管读写，支持工作区热加载 |
| 契约事件数量统计 | 旧手册记录入向 32 种、出向 25 种 | 基线已演进为： 出向 27 种，入向 46 种 | 新增了已读共享、设备管理、文件检索等大量双向事件 |
| 测试运行安全防线 | 旧指南未限制宿主机测试范围 | 落地 guard-host-tests 门禁，宿主机只允许跑 4 类白名单命令 | 可能破坏数据的测试一律强制进 Docker 沙箱执行 |
| 多租户与产品立场 | 偶有讨论多租户扩展的提案 | 确立硬性规则 hard-rules.md 与产品宪法 C1–C5，坚决不做多租户 | 杜绝一切向 SaaS 模式演化的复杂设计 |

## 关于历史 design.md 标记的说明

在现有代码的注释中，可能依然能看到类似 `// 守护：SRV-003` 或引用 `docs/design.md` 的注释。这是早期架构演进留下的历史溯源锚点。历史设计文档本身早已废弃并删除，代码中的规则守护全部由 `tests/README.md` 中的不变量编号体系接管，切勿将其当作仍存在的文档路径。

## 手册维护约定

- 本手册生成物部署于 gh-pages 分支，不随 dev 主分支自动无感更新。
- 在后续的迭代中，如果生产代码发生结构性变更，必须优先将真实代码行为登记于本漂移清单，再更新全书正文。
- 严禁通过修改文档来掩盖代码实际存在的行为缺陷。
