0004. 单仓库,核心先是单个 crate

状态:接受日期:2026-10-08

决定

一个仓库放核心、接口、设计规范、各平台应用与文档。核心起步是一个 heartwood lib crate 按模块组织,另有 grain(C ABI)与 yumu(CLI)两个 crate。某个模块超过约 2000 行或需要独立编译特性时再拆 crate。

理由

多 crate 过早拆分增加样板与跨 crate 可见性的噪音,与"代码简洁"目标相悖。单仓库让接口变更与两侧适配在同一个 PR 完成。

源文件 docs/adr/0004-monorepo-single-crate.md 更新于 2026-10-08