# Tennis Training Hub - 变更日志 ## 2026.03.15-live-analysis-leave-hint (2026-03-15) ### 功能更新 - 实时分析进行中显示“不要关闭浏览器或切走页面”提示 - 点击“结束分析”后,保存阶段显示“请暂时停留当前页面”提示 - 保存完成后明确提示“现在可以关闭浏览器或切换到其他页面” - 分析中和保存中增加离开页面提醒,减少误关导致的数据丢失 ### 测试 - `pnpm check` - `pnpm build` ### 仓库版本 - `pending-commit` ## 2026.03.15-training-generator-collapse (2026-03-15) ### 功能更新 - 训练页右侧“重新生成计划”面板在桌面端默认折叠到右侧 - 点击右侧折叠栏后展开完整生成器,可调整周期并重新生成计划 - 移动端继续保持完整面板直接可见 - 未生成计划时点击“前往生成训练计划”会先自动展开,再滚动到面板位置 ### 测试 - `pnpm check` - `pnpm build` ### 仓库版本 - `1ce94f6` ## 2026.03.15-progress-time-actions (2026-03-15) ### 功能更新 - 最近训练记录摘要行默认显示到秒的具体时间,统一按 `Asia/Shanghai` 展示 - 录制类训练记录在列表中直接显示动作数、主动作和前 3 个动作统计 - 训练记录展开态中的动作明细改为中文动作标签,便于直接阅读 - 提醒页通知时间统一切换为 `Asia/Shanghai` ### 测试 - `pnpm check` - `pnpm build` ### 仓库版本 - `71caf0d` ## 2026.03.15-session-changelog (2026-03-15) ### 功能更新 - 用户名登录生成独立 `sid`,同一账号在多个设备或浏览器上下文中登录时不再互相顶掉 session - 新增应用内更新日志页面 `/changelog`,展示版本号、发布日期、仓库版本和测试记录 - 训练进度页最近训练记录支持展开,展示具体上海时间、动作数、主动作、动作明细、录制有效性和备注 - 录制页补齐动作抽样摘要、无效录制标记与 media 预归档状态的前端展示 - Dashboard、任务中心、管理台、训练页、评分页、日志页、视觉测试页、视频库等高频页面统一使用 `Asia/Shanghai` 时间显示 ### 测试 - `pnpm check` - `pnpm test` - `pnpm test:go` - `pnpm build` - Playwright 线上 smoke: - `https://te.hao.work/` 使用两个浏览器上下文分别登录 `H1`,两端 dashboard 均保持有效 - 当前线上 `/changelog` 仍返回旧前端构建,待部署最新版本后需要复测该页面 ### 仓库版本 - `a9ea94f` ## v3.0.0 (2026-03-14) ### 新增功能 - **训练视频教程库**:分类浏览(正手/反手/发球/截击/脚步/体能),含要点说明和常见错误 - **教程自评系统**:星级自评、学习笔记、已学标记、学习进度追踪 - **训练提醒通知**:支持训练/打卡/分析多类型提醒,自定义时间和重复日期 - **浏览器通知推送**:Notification API集成,权限管理和状态提示 - **通知记录管理**:未读计数、全部标记已读、历史记录浏览 - **文案调整**:去除冗余描述,简化为直接信息反馈 ### 数据库变更 - 新增 `tutorial_videos` 表(教程视频库) - 新增 `tutorial_progress` 表(学习进度追踪) - 新增 `training_reminders` 表(训练提醒设置) - 新增 `notification_log` 表(通知记录) ### 测试 - 测试用例从47个增加到65个 - 新增教程库、提醒、通知相关测试 --- ## v2.0.0 (2026-03-14) ### 新增功能 - **社区排行榜**:支持按NTRP评分、训练时长、训练次数、击球数四种维度排名 - **每日打卡系统**:日历视图展示打卡记录,自动计算连续打卡天数 - **成就徽章系统**:24种成就徽章,涵盖里程碑、训练、连续打卡、视频、分析、评分6个类别 - **实时摄像头分析**:支持手机/电脑摄像头实时捕捉和MediaPipe姿势分析 - **摄像头位置确认提示**:引导用户调整摄像头位置 - **在线录制系统**:稳定压缩流录制,自适应码率1-2.5Mbps - **断线自动重连**:摄像头意外断开时自动检测并重新连接 - **自动剪辑功能**:基于运动检测自动标记关键时刻 - **移动端适配**:安全区域、触摸优化、横屏支持 - **手机摄像头优化**:前后摄像头切换、自适应分辨率 ### 数据库变更 - 新增 `daily_checkins` 表 - 新增 `user_badges` 表 - `users` 表新增 `currentStreak`、`longestStreak`、`totalShots` 字段 ### 测试 - 测试用例从15个增加到47个 - 新增打卡、徽章、排行榜相关测试 ### 文档 - 新增 README.md - 新增API接口文档 - 新增数据库设计文档 - 新增功能列表清单 - 新增代码规范文档 - 新增变更日志 --- ## v1.0.0 (2026-03-14) ### 初始版本 - 用户名简单登录系统 - AI训练计划生成(初/中/高级) - 视频上传功能(webm/mp4) - MediaPipe浏览器端姿势识别 - 姿势矫正建议系统(AI生成) - 训练计划自动调整 - NTRP自动评分系统(五维度加权) - 训练进度追踪(可视化图表) - 视频库管理 - 击球次数统计 - 挥拍速度估算 - 运动轨迹可视化 - 帧级别关键时刻标注 - 球员统计面板 ### 数据库 - 初始9张表设计 - Drizzle ORM集成 - 3次数据库迁移 ### 测试 - 15个核心功能测试