fix: 为所有 ORM 模型添加外键约束及级联删除策略 #65

Merged
xiaoxia merged 14 commits from fix/database-foreign-key-constraints into main 2026-06-28 08:47:51 +08:00

14 Commits

Author SHA1 Message Date
API文档维护Agent 01f5541e14 fix: add foreign key constraints to all ORM models
Tests / test (pull_request) Failing after 0s
Tests / lint (pull_request) Failing after 0s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
- Add 35 ForeignKey constraints across 15 tables (was zero)
- ON DELETE CASCADE for parent-child relationships (project → children)
- ON DELETE SET NULL for optional user references (created_by, assignee, etc.)
- Add relationship() with back_populates and cascade on all models
- Alter 11 columns from nullable=False to nullable=True for SET NULL
- Add 2 missing indexes on FK columns (assets.uploaded_by_user_id,
  project_titles.created_by_user_id)
- Update Pydantic response models to accept str | None for nullable fields
- Add Alembic migration 010 with complete upgrade/downgrade

Closes #17
2026-06-28 08:45:44 +08:00
API文档维护Agent e2c68888e9 refactor: 统一 OSS 配置命名(MINIO_* → OSS_*)
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
- .env.production: MINIO_* 环境变量全部改为 OSS_* 命名
  - MINIO_ENDPOINT → OSS_ENDPOINT
  - MINIO_ACCESS_KEY → OSS_ACCESS_KEY_ID
  - MINIO_SECRET_KEY → OSS_ACCESS_KEY_SECRET
  - MINIO_BUCKET → OSS_BUCKET_NAME
  - MINIO_SECURE → OSS_SECURE
  - MINIO_PUBLIC_URL → OSS_PUBLIC_URL
- .env.staging: 修正 section header 为 OSS 对象存储配置
- storage.py: 移除 MinIOService 和 get_minio_service() 向后兼容别名
- test_architecture_boundaries.py: 移除 storage.py 的 allowed 例外
- 更新文档中的 MINIO_* 示例为 OSS_*:
  - docs/CI-CD.md
  - docs/基础设施安装指南.md
  - docs/本地验证检查清单.md
  - docs/静态验证报告-2026-06-19.md
2026-06-28 08:33:48 +08:00
CI Test 28733d6fc7 feat(api): add Prometheus metrics middleware and /metrics endpoint
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
- Add prometheus-client==0.21.1 to requirements.txt
- Create PrometheusMetricsMiddleware to track HTTP request duration, count, and in-progress requests
- Add /metrics endpoint for Prometheus scraping
- Exclude health/ready/startup/metrics paths from recording to reduce noise
2026-06-28 08:32:28 +08:00
xiaoxia e10d65239e Merge pull request 'fix: 清理前端 console.log/warn/error 调试日志' (#61) from fix/console-log-cleanup into develop
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
2026-06-28 08:13:30 +08:00
xiaoxia 0f5b777043 Merge pull request 'feat(auth): Refresh Token 机制实现' (#63) from feature/refresh-token-mechanism into develop
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
2026-06-27 22:58:03 +08:00
CI Test e90076f794 feat(auth): implement refresh token mechanism
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
- Add /auth/refresh endpoint for token renewal
- Login response now includes refresh_token
- Update JWT defaults: access_token 15min, refresh_token 7days
- Reuse existing RefreshTokenUseCase with Redis session store
2026-06-27 22:57:25 +08:00
xiaoxia 2cd3cf03ff Merge pull request 'refactor: workspace_id 残留清理 - 移除所有 workspace_id 引用' (#62) from cleanup/workspace-id-removal into develop
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
2026-06-27 22:52:32 +08:00
API文档维护Agent e3fb518ab2 refactor: remove all workspace_id references from codebase
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
- Remove workspace_id from Pydantic models in project_management routes
- Remove workspace_id from SQLAlchemy and SQLite project management repos
- Remove workspace_id from worker tasks (storage keys, entity creation)
- Remove workspace_id from video dedup and title usage modules
- Remove workspace_id from generation and ingest worker tasks
- Clean workspace_id from all test files and scripts
- Remove workspace-specific test files (list_workspaces, workspace repos)

Task: #14 workspace_id 残留清理
2026-06-27 22:52:09 +08:00
Audit Bot fb996a0a65 fix: 清理前端 console.log/warn/error 调试日志
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
- 移除 ProjectGeneration.tsx 中唯一的 console.error 调用
- 确保生产构建不包含调试日志
- 前端代码中已无任何 console.log/warn/error

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-27 22:17:42 +08:00
CI Test 8d4677ddee fix: swap parameter order in upload_asset to fix Python syntax error
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
2026-06-27 21:44:15 +08:00
CI Test 9d54b3e586 fix: correct all import paths for jwt_service and password_hasher (move from domain to application)
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
2026-06-27 21:41:56 +08:00
CI Test 06574c85a2 fix: correct import paths in domain/auth/__init__.py for jwt_service and password_hasher
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
2026-06-27 21:39:56 +08:00
CI Test e1efbdaf6e fix: resolve circular import for password_hasher/password_validator in auth __init__
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
2026-06-27 21:33:51 +08:00
CI Test 5b47d1adb7 fix: 修复 password_reset_use_case 循环导入问题
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
2026-06-27 21:30:57 +08:00