会员开课选课体验(2026-10-15)
- 课程目录改为新建时间倒序,同时间以课程编号倒序稳定排序;新系统
cloud: 课程使用创建时间,不使用修改时间。
- 历史数据同时存在
legacy:node:*、legacy-sync:*、[["NodeID",...]] 等来源,部分创建时间是迁移时间。历史课程统一以原课程编号倒序作为新增顺序的近似依据,不展示迁移时间为上传时间。
- 保留搜索、学阶和课程分类;点击课程整行或复选框均可选择。已开课程、不可开课程及保存期间均不可误选。
- 列表上方显示已选课程名称,可逐项取消或清空;筛选不会隐藏已选摘要。开课原因和确认按钮移至列表上方,无需滚过课程列表查找。
- 刷新目录时去掉已经开通或不再符合条件的选择。开课校验、课时规则和幂等提交不变。
验证及发布
- 管理端构建通过;9 项会员开课与课时前端测试通过。
- 新增目录排序数据库测试通过:创建日期与课程名称/编号冲突、历史迁移时间、其他租户、已删除单词与章节计数。
- 11 个云函数定义语法校验通过。
- 两个运营网关只替换
enrollmentCatalog 函数的排序规则,备份实际线上代码并在发布前检查漂移,发布后核对代码哈希。
- 使用学员 1858 的真实只读开课选项验收,发布前后 65 项内容及资格逐项一致。前五项为 464、462、454、449、447。
- 浏览器使用本地后台连接真实后端,检查整行选择、复选框只切换一次、搜索后已选摘要保留及取消、1440/390 宽度。验收拦截开课写请求,没有实际给测试学员开通课程。
- 生产后端排序已发布;前端交互为本地构建/开发后台验证,未在本任务部署前端托管资源。
私有发布备份、接口回读及浏览器截图位于 /Users/mac/.local/state/xiaoshu/cloud-releases/2026-10-15-enrollment-picker/。回滚时从原始 baseline.json 恢复本次函数,先检查其他线上功能是否已更新,避免整包覆盖。源码仅提交本次文件。