新增系统管理模块 /api/v1/platform/*: - workspace 实体 CRUD(创建/列表/详情/更新/软删除) - workspace 成员 CRUD(添加/列表/更新/移除) - SystemAdminContext 依赖,仅 platform_role_id 指向 admin 角色的用户可访问 - /api/v1/auth/me 与 /auth/login 增 is_system_admin 派生字段 - 不变量:每个 workspace 至少保留一个 admin;系统管理员无法自我移除成员 - 软删除 workspace 级联软删除其成员 清理 audit_logs(无运行时写入,纯死特性): - baseline 移除 audit_logs 建表与三索引(20 → 19 tables) - 删除 AuditLogs 模型定义与 __init__.py 导出 - 清理 migrate_system_json / migrate_legacy_workspaces 中的 audit 写入与回填代码 API.md 增 §七系统管理,§七/§八/§九 顺延为 §八/§九/§十,附录 A/B 同步更新。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Migrations
MySQL 8 Alembic 迁移目录。
当前链路:
20260724_0001 完整业务 Schema 基线
20260728_0002 Demo 用户、角色、Workspace 数据
20260728_0003 调度稳定版本可见性字段
20260730_0004 编辑租约字段 redis_lock_key -> lock_key 兼容迁移
Docker Compose 中的 migrate 一次性容器会在 Backend 和 Runtime 启动前执行:
alembic upgrade head
本地执行:
export DATABASE_URL='mysql+asyncmy://user:password@127.0.0.1:3308/model_platform?charset=utf8mb4'
uv run --package backend alembic current
uv run --package backend alembic upgrade head
已发布的旧 revision 不应再修改;后续表结构调整必须新增 revision。