Your Name e0bd3f2911 feat: 添加核心流程测试 + 审计日志 + 修复 task_service 嵌套加载 bug
- 新增 test_auth_api.py (48 tests): 注册/登录/刷新/退出全流程覆盖
- 新增 test_tasks_api.py (38 tests): 任务 CRUD/审核/申诉/权限控制
- 新增 AuditLog 模型 + log_action 审计服务
- 新增 logging_config.py 结构化日志配置
- 修复 task_service.py 缺少 Project.brand 嵌套加载导致的 MissingGreenlet 错误
- 修复 conftest.py 添加限流清理 fixture 防止测试间干扰
- 修复 TDD 红色阶段测试文件的 import 错误 (skip)
- auth.py 集成审计日志 (注册/登录/退出)
- 全部 211 tests passed, 2 skipped

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 17:39:18 +08:00

51 lines
1.2 KiB
Python

"""
数据库模型
导出所有 ORM 模型
"""
from app.models.base import Base, TimestampMixin
from app.models.user import User, UserRole
from app.models.organization import Brand, Agency, Creator, brand_agency_association, agency_creator_association
from app.models.project import Project, project_agency_association
from app.models.task import Task, TaskStage, TaskStatus
from app.models.brief import Brief
from app.models.ai_config import AIConfig
from app.models.review import ReviewTask, Platform
from app.models.rule import ForbiddenWord, WhitelistItem, Competitor
from app.models.audit_log import AuditLog
# 保留 Tenant 兼容旧代码,但新代码应使用 Brand
from app.models.tenant import Tenant
__all__ = [
# Base
"Base",
"TimestampMixin",
# 用户与组织
"User",
"UserRole",
"Brand",
"Agency",
"Creator",
"brand_agency_association",
"agency_creator_association",
# 项目与任务
"Project",
"project_agency_association",
"Task",
"TaskStage",
"TaskStatus",
"Brief",
# AI 配置
"AIConfig",
# 审核
"ReviewTask",
"Platform",
# 规则
"ForbiddenWord",
"WhitelistItem",
"Competitor",
# 审计日志
"AuditLog",
# 兼容
"Tenant",
]