Skip to content

解释(Explanation)

本目录定位:理解导向。讲清「为什么这样设计」:背景、约束、被否决的方案、权衡。

写作要求

  • 可以有观点,但必须标注权衡(「选择了 A 牺牲了 B,因为……」)
  • 引用 ADR 编号,不复制 ADR 内容
  • 不放操作步骤(那是 guides/ 的事),不堆参数表(那是 reference/ 的事)

判断标准:如果读者看完能回答「为什么不是别的方案」,这篇就成功了。

现有文档

文档回答的问题关联
product-profile-and-plugin-registry-design.md产品画像与插件注册中心为什么这样设计plugin/ 规范
current-module-classification.md现行模块分类的全景与归类逻辑architecture/module-map.md
ai-companion-flutter-ui.mdAI 助手冷启动的 Flutter UI 设计蓝图

相关入口

  • architecture/:架构活跃文档(overview、module-map、database-access、module-layer-cheatsheet)
  • archive/architecture/:已完成的架构历程(DDD 迁移状态、fastdfs→Garage 迁移、资源访问控制演进)

待补(Phase 4 深化)

主题回答的问题素材来源
四层架构设计理由为什么 Handler→Logic→DS→Repo 单向依赖ADR-0001 + module-layer-cheatsheet
TSID 选型为什么不用自增 ID / UUIDv4ADR-0004 + CONVENTIONS
E2EE 密钥轮换设计密钥怎么换、为什么这样换guides/e2ee/
Garage S3 直传设计为什么附件不走后端中转archive/architecture/fastdfs-to-garage-migration.md
插件系统隔离模型插件为什么不能直接碰核心reference/plugin/

IMBoy — 企业私有化即时通讯平台