diff --git a/client/src/lib/changelog.ts b/client/src/lib/changelog.ts index 70782be..ca9b0f5 100644 --- a/client/src/lib/changelog.ts +++ b/client/src/lib/changelog.ts @@ -8,6 +8,26 @@ export type ChangeLogEntry = { }; export const CHANGE_LOG_ENTRIES: ChangeLogEntry[] = [ + { + version: "2026.03.16-live-analysis-runtime-migration", + releaseDate: "2026-03-16", + repoVersion: "PENDING", + summary: "修复实时分析因缺失 `live_analysis_runtime` 表导致的启动失败,并补齐迁移记录避免后续部署再次漏表。", + features: [ + "生产库补建 `live_analysis_runtime` 表,并补写 `__drizzle_migrations` 中缺失的 `0011_live_analysis_runtime` 记录", + "仓库内 Drizzle migration journal 补齐 `0011_live_analysis_runtime` 条目,后续 `docker compose` 部署可正确感知该迁移", + "实时分析启动链路恢复,`/live-camera` 再次可以读取 runtime 锁并正常进入分析准备流程", + "线上 smoke 已确认 `https://te.hao.work/` 正在提供本次新构建,当前前端资源为 `assets/index-B3BN5hY-.js` 与 `assets/index-BL6GQzUF.css`", + ], + tests: [ + "pnpm check", + "pnpm exec vitest run server/features.test.ts", + "pnpm build", + "docker compose exec -T db mysql ... SHOW TABLES LIKE 'live_analysis_runtime'", + "curl -I https://te.hao.work/live-camera", + "Playwright smoke: 登录 `H1` 后访问 `/live-camera`,`analysis.runtimeGet` / `analysis.runtimeAcquire` / `analysis.runtimeRelease` 全部返回 200", + ], + }, { version: "2026.03.16-live-camera-multidevice-viewer", releaseDate: "2026-03-16", diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 07e6b88..d6e8fdc 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -1,5 +1,33 @@ # Tennis Training Hub - 变更日志 +## 2026.03.16-live-analysis-runtime-migration (2026-03-16) + +### 功能更新 + +- 修复生产环境缺失 `live_analysis_runtime` 表导致 `/live-camera` 启动实时分析时报 SQL 查询失败的问题 +- 生产库已补建 `live_analysis_runtime` 表,并写入缺失的 `0011_live_analysis_runtime` 迁移记录,避免后续重复报错 +- 仓库内 `drizzle/meta/_journal.json` 已补齐 `0011_live_analysis_runtime` 条目,后续 `docker compose` 部署可正确识别该迁移 +- 实时分析 runtime 锁恢复正常后,同账号多端互斥与同步观看流程可继续工作 + +### 测试 + +- `pnpm check` +- `pnpm exec vitest run server/features.test.ts` +- `pnpm build` +- `docker compose exec -T db mysql ... SHOW TABLES LIKE 'live_analysis_runtime'` +- `curl -I https://te.hao.work/live-camera` +- Playwright smoke:登录 `H1` 后访问 `/live-camera`,`analysis.runtimeGet` / `analysis.runtimeAcquire` / `analysis.runtimeRelease` 全部返回 `200` + +### 线上 smoke + +- `https://te.hao.work/` 已切换到本次新构建 +- 当前公开站点前端资源 revision:`assets/index-B3BN5hY-.js` 与 `assets/index-BL6GQzUF.css` +- `/live-camera` 已恢复可用,线上不再出现 `live_analysis_runtime` 缺表导致的 SQL 查询失败 + +### 仓库版本 + +- `PENDING` + ## 2026.03.16-live-camera-multidevice-viewer (2026-03-16) ### 功能更新 diff --git a/drizzle/meta/_journal.json b/drizzle/meta/_journal.json index 1565993..31bacdc 100644 --- a/drizzle/meta/_journal.json +++ b/drizzle/meta/_journal.json @@ -78,6 +78,13 @@ "when": 1773662400000, "tag": "0010_remove_non_tennis_tutorials", "breakpoints": true + }, + { + "idx": 11, + "version": "5", + "when": 1773691200000, + "tag": "0011_live_analysis_runtime", + "breakpoints": true } ] }