diff --git a/docs/testing.md b/docs/testing.md index 92ba8aa..4d2529f 100644 --- a/docs/testing.md +++ b/docs/testing.md @@ -58,6 +58,7 @@ - worker 心跳与超限任务失败收敛 - 实时分析动作分布、区间筛选和会话质量带 - PC 轻剪辑循环预览、清单导出和草稿增强 +- 教程库非网球数据清洗与 `topicArea=tennis_skill` 线上返回校验 首次在新库或新 schema 上执行前,先跑: diff --git a/docs/verified-features.md b/docs/verified-features.md index 1072761..13b3ad2 100644 --- a/docs/verified-features.md +++ b/docs/verified-features.md @@ -1,13 +1,13 @@ # Verified Features -本文档记录当前已经通过自动化验证或构建验证的项目。更新时间:2026-03-15 08:24 CST。 +本文档记录当前已经通过自动化验证或构建验证的项目。更新时间:2026-03-15 11:28 CST。 ## 最新完整验证记录 - 通过命令:`pnpm verify` - 验证时间:2026-03-15 07:58 - 08:14 CST - 结果摘要:`pnpm check`、`pnpm test`(104/104)、`pnpm test:go`、`pnpm build`、`pnpm test:e2e`(7/7)、`pnpm test:llm` 全部通过 -- 数据库状态:已执行 `set -a && source .env && set +a && pnpm exec drizzle-kit migrate`,`0008_tutorial_academy_refresh` 已成功应用 +- 数据库状态:已执行 `set -a && source .env && set +a && pnpm exec drizzle-kit migrate`,`0010_remove_non_tennis_tutorials` 已成功应用 ## 生产部署联测 @@ -15,6 +15,7 @@ |------|----------|------| | `https://te.hao.work/` HTTPS 访问 | `curl -I https://te.hao.work/` | 通过 | | `https://te.hao.work/checkin` 成就系统路由 | Playwright 登录后检查“成就系统” | 通过 | +| `https://te.hao.work/tutorials` 教程库清洗 | Playwright smoke + `tutorial.list` 线上接口校验,仅返回 `topicArea=tennis_skill` 的 11 条网球教程 | 通过 | | `https://te.hao.work/logs` 日志页访问 | `curl -I https://te.hao.work/logs` | 通过 | | `https://te.hao.work/vision-lab` 视觉测试页访问 | `curl -I https://te.hao.work/vision-lab` | 通过 | | `http://te.hao.work:8302/` 4 位端口访问 | `curl -I http://te.hao.work:8302/` | 通过 | diff --git a/drizzle/0010_remove_non_tennis_tutorials.sql b/drizzle/0010_remove_non_tennis_tutorials.sql new file mode 100644 index 0000000..94f0ba5 --- /dev/null +++ b/drizzle/0010_remove_non_tennis_tutorials.sql @@ -0,0 +1,8 @@ +DELETE FROM `tutorial_progress` +WHERE `tutorialId` IN ( + SELECT `id` FROM `tutorial_videos` + WHERE `topicArea` IS NOT NULL AND `topicArea` <> 'tennis_skill' +); +--> statement-breakpoint +DELETE FROM `tutorial_videos` +WHERE `topicArea` IS NOT NULL AND `topicArea` <> 'tennis_skill'; diff --git a/drizzle/meta/_journal.json b/drizzle/meta/_journal.json index 28729a8..1565993 100644 --- a/drizzle/meta/_journal.json +++ b/drizzle/meta/_journal.json @@ -57,6 +57,27 @@ "when": 1773543600000, "tag": "0007_grounded_live_ops", "breakpoints": true + }, + { + "idx": 8, + "version": "5", + "when": 1773600000000, + "tag": "0008_tutorial_academy_refresh", + "breakpoints": true + }, + { + "idx": 9, + "version": "5", + "when": 1773633600000, + "tag": "0009_training_profile_baseline", + "breakpoints": true + }, + { + "idx": 10, + "version": "5", + "when": 1773662400000, + "tag": "0010_remove_non_tennis_tutorials", + "breakpoints": true } ] }