## Context 现有小程序是本期 Demo 的技术基线,但宿主首页、登录态、就诊人、地址、支付、订阅消息和配置下发均为既有功能或真实接口边界。本期仅允许新增病案复印页面;小程序仅在本端使用 `mrc-demo-platform` 的脱敏场景契约,不与 HIS 前端共享运行时状态。 ## Goals / Non-Goals **Goals:** - 新增独立 `packageMRC/` 分包及病案复印 Demo 入口;仅在既有首页智慧服务菜单新增单一 `病案复印(Demo)` 本地项,复用既有菜单与跳转机制。 - 以小程序 Demo Adapter 隔离页面与共享状态契约,确保页面不含真实接口地址、真实账号或敏感数据。 - 为后续 `MP-APPLY-*` 和 `MP-ORDER-001` 提供统一的 Demo 入口、演示标识和受控错误能力。 **Non-Goals:** - 除 2026-09-16 明确授权的单一本地 Demo 菜单项及其白名单路由外,不改造宿主首页宫格;不实现真实宿主桥接、登录、就诊人、地址、支付、订阅消息、配置缓存或错误上报。 - 不修改既有页面、公共组件、请求封装或生产配置;不实现任何后端、生产权限或真实联调。 ## Decisions ### 独立分包与受控首页 Demo 入口 采用 `packageMRC/` 新增分包和演示入口。为使验收人员可从宿主首页进入,2026-09-16 的明确授权允许在既有“智慧服务”菜单增加一个 `病案复印(Demo)` 本地必备项;它复用现有的菜单去重、白名单和 `navigateTo` 分发,唯一患者目标为 `/packageMRC/pages/apply-entry/index`。`/packageMRC/pages/entry/index` 保留为开发工具路由,首页不展示该项;若服务端返回该历史路由(含无前导 `/`),菜单归一化必须改写为患者入口,以保证只存在一个病案复印菜单。其他首页宫格挂载、运营配置和宿主能力仍保留给后续正式接口变更。 备选方案是将入口写入服务端运营配置,但会引入真实接口/配置依赖;另一个备选是修改既有页面临时跳转,也会改变既有行为,均不采用。 ### 以 Adapter 连接本地场景 页面只能调用小程序 Demo Adapter;Adapter 在本端实现 `getSnapshot`、场景切换/重置、申请创建和订单动作读取等 V1 语义。页面不得直接读取种子数据、与 HIS 前端通信或回退调用真实接口。 ### Demo 标识与失败关闭 新增页面持续显示“Demo 数据”标识。没有启用 Demo Adapter、场景不存在或流转非法时,页面显示受控错误并停止当前动作,不允许转用宿主真实能力。 ## Risks / Trade-offs - [首页菜单与服务端数据不一致] → 使用本地必备菜单和既有去重逻辑确保仅出现一个 Demo 入口;该项仅用于本期 Demo 验收。 - [场景种子在两端漂移] → 以 V1.1 契约的场景编号、字段与状态映射进行核对;不建立通信或服务。 - [既有模块材料含生产/历史内容] → 本变更和后续 Demo 复审记录优先于历史描述;真实宿主桥接另建正式接口变更。 ## Migration Plan 1. 新建分包、Adapter 和演示入口,保持既有页面不变。 2. 以 V1 契约完成模块级测试和 Demo 验收。 3. 正式接入时,新建变更并以真实宿主能力替换 Adapter;Demo 代码和证据保留至完成正式验收后再决定迁移策略。 ## Open Questions - 本期没有影响页面开发的开放问题。小程序 Adapter 只实现本地内存场景,不配置网络传输层。