文件
tennis-training-hub/docs/verified-features.md
2026-03-14 22:25:19 +08:00

3.7 KiB
原始文件 Blame 文件历史

Verified Features

本文档记录当前已经通过自动化验证或构建验证的项目。更新时间2026-03-14 22:24 CST。

最新完整验证记录

  • 通过命令:pnpm verify
  • 验证时间2026-03-14 22:23 CST
  • 结果摘要:pnpm check 通过,pnpm test 通过74/74pnpm test:go 通过,pnpm build 通过,pnpm test:e2e 通过5/5

生产部署联测

项目 验证方式 状态
https://te.hao.work/ HTTPS 访问 curl -I https://te.hao.work/ 通过
站点 TLS 证书 Let’s Encrypt ECDSA 证书已签发并由宿主机 nginx 加载 通过
生产首页、登录页、录制页浏览器打开 Playwright 访问 https://te.hao.work//login/recorder 通过
生产前端运行时异常检查 Playwright pageerror / console.error 检查 通过
媒体健康检查 curl http://127.0.0.1:8081/media/health 通过
compose 自包含服务 docker compose psapp / db / media / worker 正常运行,migrate 成功退出 通过

构建与编译通过

项目 验证方式 状态
TypeScript 类型检查 pnpm check 通过
Node 应用生产构建 pnpm build 通过
Go 媒体服务编译 pnpm test:go 中的 go build ./... 通过

单元与路由验证

模块 验证方式 状态
auth pnpm test 通过
profile pnpm test 通过
plan pnpm test 通过
video pnpm test 通过
analysis pnpm test 通过
record pnpm test 通过
rating pnpm test 通过
checkin pnpm test 通过
badge pnpm test 通过
leaderboard pnpm test 通过
tutorial / reminder / notification 路由校验 pnpm test 通过
media 工具函数 pnpm test 通过
登录 URL 回退逻辑 pnpm test 通过

Go 媒体服务验证

功能 验证方式 状态
/media/health go test ./... 通过
会话状态聚合 go test ./... 通过
单片段归档回放产物生成 go test ./... 通过

浏览器 E2E 已验证主流程

模块 验证内容 状态
登录 用户名输入、登录提交、跳转仪表盘 通过
仪表盘 认证后主标题与入口按钮渲染 通过
训练计划 训练计划页加载与生成入口可见 通过
视频库 视频卡片渲染 通过
实时分析 摄像头启动入口渲染 通过
在线录制 启动摄像头、开始录制、手动标记、结束归档 通过
录制结果入库 归档完成后视频库可见录制结果 通过

LLM 模块验证

项目 验证方式 状态
.env 中的 LLM_API_URL / LLM_API_KEY / LLM_MODEL pnpm test:llm 通过
https://one.hao.work/v1/chat/completions 联通性 pnpm test:llm 实际返回文本 通过

已知非阻断警告

  • 测试与开发日志中会出现 OAUTH_SERVER_URL 未配置提示;当前 mocked auth 和本地验证链路不依赖真实 OAuth 服务,因此不会导致失败
  • pnpm build 仍有 Vite 大 chunk 警告;当前属于性能优化待办,不影响本次产物生成
  • Playwright 运行依赖 mocked media/network,不等价于真机摄像头、真实弱网和真实 WebRTC 质量验收

当前未纳入自动验证的内容

  • 真实摄像头权限与真实编码质量
  • 真实 WebRTC 网络连通性
  • 真正的 FFmpeg 多片段重编码质量
  • 真机 iOS / Android 浏览器的真实媒体兼容差异

以上内容仍建议在预发或本地联调时补充人工验证。