fix(p1): 修复 4 个 P1 技术债务问题 #11

Merged
xiaoxia merged 1 commits from fix/p1-technical-debt into main 2026-06-26 18:13:41 +08:00
Owner

修复的 P1 问题

P1-1: CORS 配置安全隐患

文件: apps/api/main.py
修复: 根据 DEBUG 模式区分配置

  • 开发环境:允许所有来源
  • 生产环境:严格限制 CORS 来源和方法

P1-2: Token 刷新未实现

文件: packages/application/auth/login_use_case.py, packages/adapters/redis/session_store.py
修复: 实现真实的 token 刷新逻辑

  • 添加 get_session_by_refresh_token 方法
  • 验证 session 有效性和过期时间
  • 生成新的 access_token

P1-3: Worker 数据库连接泄漏

文件: apps/worker/worker_app/tasks/ingest.py
修复: 添加 try-except-finally 保护

  • 确保 db.close() 始终被调用
  • 正确处理 rollback

P1-4: Worker Mock 元数据

文件: apps/worker/worker_app/tasks/ingest.py
修复: 实现真实元数据提取

  • 使用 ffprobe 提取视频元数据
  • 使用 Pillow 提取图片元数据
  • 失败时返回空字典(不再使用假数据)
## 修复的 P1 问题 ### P1-1: CORS 配置安全隐患 **文件**: `apps/api/main.py` **修复**: 根据 DEBUG 模式区分配置 - 开发环境:允许所有来源 - 生产环境:严格限制 CORS 来源和方法 ### P1-2: Token 刷新未实现 **文件**: `packages/application/auth/login_use_case.py`, `packages/adapters/redis/session_store.py` **修复**: 实现真实的 token 刷新逻辑 - 添加 `get_session_by_refresh_token` 方法 - 验证 session 有效性和过期时间 - 生成新的 access_token ### P1-3: Worker 数据库连接泄漏 **文件**: `apps/worker/worker_app/tasks/ingest.py` **修复**: 添加 try-except-finally 保护 - 确保 `db.close()` 始终被调用 - 正确处理 rollback ### P1-4: Worker Mock 元数据 **文件**: `apps/worker/worker_app/tasks/ingest.py` **修复**: 实现真实元数据提取 - 使用 ffprobe 提取视频元数据 - 使用 Pillow 提取图片元数据 - 失败时返回空字典(不再使用假数据)
xiaoxia added 1 commit 2026-06-26 18:12:00 +08:00
fix(p1): resolve 4 P1 technical debt issues
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 0s
Tests / test (pull_request) Failing after 0s
Tests / lint (pull_request) Failing after 0s
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
7fa327aa27
- P1-1: CORS configuration security - use DEBUG mode to differentiate
  production vs development CORS settings
- P1-2: Implement token refresh logic in RefreshTokenUseCase
  - Add get_session_by_refresh_token to SessionStore
  - Verify session validity and expiry
  - Generate new access token on refresh
- P1-3: Fix database connection leak in worker ingest task
  - Add proper try-except-finally block
  - Ensure db.close() is always called
- P1-4: Implement real media metadata extraction
  - Use ffprobe for video metadata
  - Use Pillow for image metadata
  - Return empty dict on failure (no mock data)
xiaoxia merged commit 13113f50c5 into main 2026-06-26 18:13:41 +08:00
Sign in to join this conversation.