2026-10-12,北京时间。生产应用 7pIbDBJmKx_main。
教师预约详情显示该学员全部有效的已开通课程,以开课编号区分同名课本或不同分类。默认选中排课课程,老师可以切换课本或词库,查看所选课程的单元和进度,再开始或继续本节课。学生详情不显示教师选择入口。
切换课程清空原先选中的单元,取消旧单元请求,防止迟到响应覆盖新课本;标记学完写入所选开课。加载失败、空列表、无单元时给出明确反馈,缺少有效选择不能开始词汇学习。
实际学习内容与预约计薪规则分别保存:切换课本不修改原排课的课程、开课编号、工资和课时快照。学习路由、学习草稿和学习记录携带实际选择的开课编号。不同开课的学习记录分别保存,结课汇总学习词汇,抗遗忘任务关联实际词库;仍只扣一次原预约课时。
app_lesson_courses 根据预约查找所属学员,只允许实际预约老师读取。忽略客户端传入的其他学员编号;待确认、已回收、已停用的开课不作为有效选项。xs_lesson_complete 例程。发布前备份线上代码及例程,并确认没有正在执行的结课查询。迁移不回填历史数据、不修改预约或余额,临时部署函数已删除并回读确认。migration_status 版本为 2026-10-12-lesson-course-selection-v4,包含 app_lesson_courses;线上 App 完整代码与本地打包代码一致。私有发布备份、测试日志、接口回读和事务回滚证据位于 /Users/mac/.local/state/xiaoshu/course-selection/2026-10-12/,不提交Git。夜间同步与工资结算来源完整性的验收状态未由本功能改变。