muse-agent-example/.agent/rules/模块依赖.md
zizi cf0f4fb985 W20–W24:保存知识方法、迁移框架、审校修订与案例行为的集成成果
接续 88dd570,保存 W20–W24 已实现的共享接口、业务入口、迁移、工作台、测试与文档。
W20/W22/W23 保持 in_progress,W21/W24 保持 verified;此提交不宣称方法或规则正式启用、多轮返修、真实角色评测完成。

W25 新增实验、标定、逐调用交付与角色执行及其迁移/测试/索引留在实施工作树,原有私人和旧实现保留项不纳入。

验证:离线 571、前端 33 通过;PG 469 项通过、2 项浏览器未启用,2 项误带入的 W25 用例已移出本提交;最终任务与交付边界 37 项通过。make 检查、最终类型、84 项资源及 diff 检查通过。未重跑浏览器或 Pi 宿主,不以合成调用认证外部模型效果。
独立整体审查四维通过;证据保存在 R2-20260909/提交W20-W24。
2026-09-13 16:24:42 +08:00

1.7 KiB
Raw Blame History

模块依赖规则

权威合同:docs/系统架构/新版设计/总体架构.md;机械门禁:tests/架构/test_模块依赖.py + make 检查。

  1. 业务只经公共接口:跨模块调用只走目标模块 接口.py 暴露的用例及其所需类型;禁止导入其他模块的 存储.py、模型.py 内部符号,也不得经 __all__ 公开存储类。绝对/相对导入和别名遵循相同边界,业务模块不反向依赖编排或接入。
  2. 共享基础零反向依赖:src/muse/共享/、配置.py、资源加载.py 禁止导入业务模块。启动.py 是组合入口,可以选择并绑定具体实现,但不承载业务规则。
  3. 元数据不写业务值:S04 元数据只描述、校验和投影结构;业务实例值由拥有它的业务模块写入。
  4. 技能不携带实现:.agent/skills/ 只保留方法与操作说明;禁止在技能目录放可执行脚本或 sys.path 注入。
  5. 接入与编排不操作私表:HTTP/CLI/主会话及编排禁止手写 SQL 或使用数据库游标;由所属模块的公开用例调用内部存储,不将 SQL 搬入新的跨模块捷径。
  6. 宿主不裁决正式内容:模型宿主(Pi/直接调用)只产候选与证据;作者确认与正式提交不在宿主层发生。
  7. 薄入口:python -m muse 与 CLI 分发入口只做参数解析与转交,不创建连接或写业务逻辑。具名适配器可管理已装配连接的事务范围以调用 S04 等事务参与者;连接凭据、用途和构造仍由基础设施统一处理,禁止手写 SQL。

违反任一条:先修依赖方向,再继续;不以"临时导入"放行。