From 3fe547a57064d57ea32b2789363f120b7546f02f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=81=B5=E5=BA=94?= Date: Fri, 3 Jul 2026 21:56:40 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E7=94=9F=E6=88=90=20v0.1.110=20?= =?UTF-8?q?=E5=8F=91=E5=B8=83=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index d8e383e22..27dcbbd5f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,61 @@ +## [v0.1.110] - 2026-07-03 + +### 🔒 安全修复 + +- 注册登录接口添加 RateLimitMiddleware 防止暴力破解 +- JWT logout 黑名单机制,防止令牌重放攻击 +- 生产环境禁用 Swagger 文档防止信息泄露 +- `/metrics` 端点添加 Bearer Token 认证 +- 禁用 SVG 上传防止 XSS 风险 +- 删除 `decode_token_unsafe()` 方法,消除不安全的 JWT 解码 +- 移除遗留 `tasks.py` 消除 Celery 任务名冲突 +- 清理全局 `except:pass`(22处)改为 `logger.warning` 记录异常 + +### ✨ 功能 + +- 添加剪辑计划时间线场景 API (`GET /edit-plans/{id}/timeline`) +- 前端对接真实 API 替换 mock 数据 + +### 🐛 Bug 修复 + +- **[P1]** 修复登录故障 — `password_hasher` 导入错误 +- 订阅续费事务修复 — 支付回调在数据库事务中更新订阅状态 +- 账单返回空数组修复 — 从数据库查询账单记录 +- 修复 `Image.open()` 资源泄漏 +- 清理已移除 workspace 概念的残留引用 +- 修复 AssetLibrary/TemplateLibrary 类型错误 +- 修复前端 workspace 残留导致项目创建失败 +- 永久修复 nginx `proxy_pass` 配置 +- 添加 Docker DNS resolver 防止 API 容器重启后 502 +- 修复 worker healthcheck YAML 语法 +- 修复 204 响应体断言崩溃 +- 修复 Alembic 元数据漂移检测 +- 修复 migration 009 DEFAULT 表达式 PostgreSQL 兼容性 + +### 🔄 重构与清理 + +- 后端代码清理 — 移除死代码和无用文件 +- 前端代码清理 — 移除无用代码和遗留 demo +- 代码精简优化 — 移除无用代码和重复定义 +- 后端代码 black/isort 格式化 + +### 🧪 测试 + +- 完善 E2E 错误场景测试,Playwright 接入 CI +- API 集成测试补充(145 项通过) +- 添加核心流程 E2E 测试 + +### 🚀 CI/CD & 基础设施 + +- Validate 阶段添加 PostgreSQL 服务支持 +- 所有 workflow checkout 添加 5 次指数退避重试 +- 启用 BuildKit 分布式缓存 + Gitea Registry 优化构建速度 +- Deploy 阶段全面修复(E2E 服务器/Worker venv/Registry 登录) +- Docker 网络隔离 staging/production 环境 +- 修复 CI 代码质量检查(black/flake8/bandit) + +--- + ## [v0.1.88] - 2026-06-29 ### Phase 2 前端优化 - 完成 ✅