ChemEngAI产品设计
子系统设计
产品与系统设计 · v0.1 草案

平台底座

让不同模块认识同一个项目、同一个对象,并按同一范围访问数据。

查看 Markdown

它解决什么问题

每个模块都需要知道“谁在操作、属于哪个项目、引用哪份文件、发生了什么变化”。底座把这些通用机制统一起来。

负责什么

  • 组织、身份、项目成员和访问范围。
  • 文件存储、元信息、内容校验和受控下载。
  • 跨模块对象引用、版本索引和依赖登记。
  • 事件投递、通用待办与操作记录。
  • 模块注册、能力声明和公共配置。

实验有效性、模型收敛、方案评审等业务规则由对应模块维护。

内部结构建议

组件做什么
身份与访问服务校验人、Agent 和工具在项目内的权限
对象目录根据 ID 找到拥有模块及可访问版本
文件服务管文件内容、校验值、来源和可见范围
依赖与事件服务登记输入输出关系,可靠通知相关模块
操作记录与待办记录行为者,向相应人员呈现需处理事项

对象目录保存定位与引用信息;具体业务字段由各模块维护,避免公共底座膨胀成包办一切的数据模型。

一个动作如何经过底座

研究人员上传仪器文件。文件服务返回资产引用与校验值,实验模块把它关联到指定 Run。底座记录操作者与事件,研究工作台显示新的可分析数据。

文件上传成功但关联失败时,界面展示待关联状态,允许补交关联操作。重复提交使用同一提交标识,避免产生两个实验附件记录。

模块间契约

业务对象由拥有模块创建。其他模块登记引用时包含项目、对象类型、ID 和版本。检索、预览、下载与 Agent 读取都校验同一访问范围。

事件最少说明发生了什么、源对象版本、所属项目、事件 ID 和时间。消费方可重复处理同一通知,而不会重复产生副作用。

失败和恢复

通知延迟时业务事实仍由源模块确认;后台重投后更新汇总视图。文件暂不可用时展示缺失产物状态,不把引用失效解释为数据不存在。

备份恢复需要验证文件与对象引用能重新对应,已发布成果可以完整重建。

怎样独立打包

它作为每个独立产品的必要基础能力随包交付。不同产品可以使用同一套实现,按需要启用文件、事件或组织管理功能。

首期验证

两个项目之间的数据访问隔离、对象版本定位、文件上传下载、重复事件处理,以及一条完整的来源链。身份供应商、存储产品与权限细粒度仍需选型。

本页内容