客户端已有上下文
get/login 请求已携带 workspace_id,无需新增客户端选版参数。
MINIAPP DISTRIBUTION / PLAN 484
参考 TestFlight 的构建—测试组模型:ZIP 保持不可变,服务端按组织上下文解析版本,客户端复用现有下载与回滚链。
新增 Build、Test Group、Assignment 与 Release 指针;不新建第二套对象存储、下载器或小程序容器。
VERIFIED BASELINE
代码事实与目标设计分开:下面四项来自 2026-08-21 客户端 dev-umi 与开放平台前端基线;后端表结构仍待仓库验证。
get/login 请求已携带 workspace_id,无需新增客户端选版参数。
sversion 比较、ZIP 下载、ZipSlip、staging、原子替换和失败回滚已经存在。
预签名上传、对象存储、版本创建、扫描审核和正式发布已经存在。
Apps 快照只按 appId 缓存,跨组织切换可能先运行上一个组织的版本。
ARCHITECTURE
正式版本是默认指针,组织测试绑定是覆盖规则;所有客户端拿到的仍是同一份 sversion/download_url 合同。
IMPLEMENTATION FLOW
优先级固定为:组织测试组绑定 → 当前正式版本 → 无可用构建。异常测试规则回退正式版本并记录审计。
{ appid, workspace_id }继续使用已有请求,不增加客户端可控 version_id。
{ sversion, download_url }可选增加 distribution 诊断对象,但不能成为安装分支条件。
userId / workspaceId / appIdApps 快照必须按账号和组织隔离,并在启动前取得权威解析。
DELIVERY PLAN
第一期只做组织定向,不做百分比、地区、设备、账号白名单或随机灰度。
读取后端版本表、审核事务与 resolve 入口;冻结 artifact_version 不变量。
新增测试组、组织成员、构建绑定、冲突检查、幂等与审计。
在版本管理中加入测试组下发、范围确认、停止测试与全量提升。
组织隔离缓存,启动前权威 resolve;下载与安装器保持不动。
1 个小程序、2 个组织,观察解析、下载、安装、回退和启动延迟。
DATA INVARIANTS
ACCEPTANCE GATES
INDUSTRY REFERENCES
TestFlight 提供构建—测试组关系;OpenFeature 提供上下文解析边界;Unleash 提供约束、稳定命中、审计和回滚纪律。
当前方案已经冻结产品边界和客户端最低改动;后端真实表名、事务和 resolve 查询位置仍必须从源码补证,未补证前不能写成“已实现”。