# Backend TaskPlan ## 待辦 - [ ] 重建 schema 與 migration:退場舊表(`modules` 舊權限流程、`permission_groups*`、`user_scope_permissions`),上線 `roles`、`site_roles`、`user_sites`。 - [ ] 重做 Admin API:`Company/Site/System/Role/User` CRUD 與關聯管理 API。 - [ ] 重做 Role API:只允許 Site 指派/解除,不提供 user direct role API。 - [ ] 重做 `/me/permissions/snapshot`:改為 role 聚合格式(由 user_sites + site_roles 推導)。 - [ ] Keycloak 同步器改版:Company/Site group 同步、System client role 同步、Site 角色套用同步。 - [ ] Swagger response model 全面更新為 role-site 新模型。 - [ ] 新增/補齊 API 測試(CRUD、關聯、同步、刪除、錯誤碼)。 ## 進行中 - [ ] 文件與實際回應格式持續對齊(避免文件漂移)。 ## 已完成 - [x] Keycloak OIDC 登入主流程(authorize + callback + token)。 - [x] `/admin/*` Bearer token + admin 群組白名單安全線。 - [x] API 白名單基礎(`api_clients`)已存在並可管理。 - [x] 前後端本地啟動流程已可分開運行(backend + frontend)。