feat: 配置API(分组校验管线/整份版本/回滚/重置出厂/试金石/平台设置)
- config_validation.validate_group: 九组校验管线(类型/键 allowlist/数值 范围/prompts 大小上限 50KB·100KB/wall 全量交 compile_wall/push.prefix 跨租户查重 spec E1),错误清单中文带字段路径 - config_routes: GET/PUT config(整组替换原样入版本,MAX+1,热 reload)/ reset(按 Tenant.profile 取出厂档案组)/versions 列表·详情/rollback (旧版复制为新版本,历史不可变)/wall/test 试金石(逐句判定,不落库 不 bump)/settings 平台设置 CRUD(仅超管,resolver 接线归 Phase 3) - db.write_config_version: 版本写入公共路径(创建向导与配置 API 单一 事实源);Tenant 落 profile 列(重置出厂按它取对应档案) - _profile_snapshot/_blankify 迁 tenant_source(两路由模块共用); db_source_app/super_client 夹具收拢 conftest(两测试文件共用) - 测试: 519 → 537 全绿 Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
@@ -81,6 +81,10 @@ from app.engine.routes.chat import router as chat_router
|
||||
from app.engine.routes.chat_rest import router as chat_rest_router
|
||||
from app.engine.routes.public import router as public_router
|
||||
from app.platform.routes.auth_routes import router as platform_auth_router
|
||||
from app.platform.routes.config_routes import (
|
||||
router as platform_config_router,
|
||||
settings_router as platform_settings_router,
|
||||
)
|
||||
from app.platform.routes.tenant_routes import router as platform_tenant_router
|
||||
app.include_router(chat_router)
|
||||
app.include_router(chat_rest_router)
|
||||
@@ -88,6 +92,11 @@ app.include_router(public_router)
|
||||
# 租户管理 API(Task 5):创建向导/站点/域名/停用——同样只依赖路由层认证
|
||||
# (require_super / require_tenant),Host 豁免面归 Task 3 的前缀规则覆盖。
|
||||
app.include_router(platform_tenant_router)
|
||||
# 配置 API(Task 6):分组校验管线/整份版本/回滚/试金石/重置出厂(鉴权
|
||||
# require_tenant,租户全开)+ 平台设置(require_super)——/api/platform/
|
||||
# 前缀的 Host 豁免由 Task 3 的中间件规则统一覆盖。
|
||||
app.include_router(platform_config_router)
|
||||
app.include_router(platform_settings_router)
|
||||
# 平台认证路由(Task 2):本任务即挂——已知租户 Host(如 jiancai)下
|
||||
# /api/platform/auth/* 经 Host 中间件直达,TDD 循环闭环。Task 3 将为
|
||||
# /api/platform/ 前缀加中间件豁免(平台后台不依赖租户域名解析);
|
||||
|
||||
Reference in New Issue
Block a user