3.6 KiB
3.6 KiB
Route Acceptance Matrix
日期:2026-05-29
目标
把 Phase 2 已经验证过的三类能力,收敛成固定入口和固定证据格式:
- 控制面
- 运行态 / 健康视图
- 数据面
当前统一入口:
scripts/acceptance/verify_route_control_plane.shscripts/acceptance/verify_route_health_ui.shscripts/acceptance/verify_route_data_plane.shscripts/acceptance/verify_route_acceptance_matrix.sh
其中 verify_route_acceptance_matrix.sh 是总入口,会按顺序执行前三个脚本并汇总 summary.json。
验收矩阵
1. 控制面
脚本:
scripts/acceptance/verify_route_control_plane.sh
验证范围:
- 创建
logical_group - 创建
logical_group_model - 创建
route - 创建
route_model GET /api/logical-groups/{group_id}PUT /api/logical-groups/{group_id}PUT /api/logical-groups/{group_id}/routes/{route_id}GET /api/logical-groups/{group_id}/routesGET /api/logical-groups/{group_id}/routes/{route_id}/models
最小输入:
CRM_BASECRM_ADMIN_TOKEN
主要产物:
01-create-group.json03-create-route.json06-update-group.json07-update-route.json10-summary.json
2. 健康视图 / 运行态
脚本:
scripts/acceptance/verify_route_health_ui.sh
验证范围:
- 公网
route-health.html页面可达 POST /api/routing/sticky/cooldownsPOST /api/routing/sticky/route-failuresGET /api/routing/routes/healthPOST /api/routing/resolveGET /api/routing/logs/failovers
最小输入:
CRM_BASECRM_ADMIN_TOKEN- 可选
ROUTE_HEALTH_PAGE_URL
主要产物:
00-route-health.html08-health-before.json09-resolve.json10-health-after.json11-failovers.json12-summary.json
3. 数据面
脚本:
scripts/acceptance/verify_route_data_plane.sh
验证范围:
- 创建临时
logical_group / route / route_model POST /api/routing/chat/completionsGET /api/routing/logs/decisions
最小输入:
CRM_BASECRM_ADMIN_TOKENSHADOW_HOST_IDSHADOW_GROUP_ID- 二选一:
SUBSCRIPTION_USER_IDGATEWAY_API_KEY
补充说明:
- 若传
SUBSCRIPTION_USER_ID,期望effective_gateway_key_source=managed_subscription - 若传
GATEWAY_API_KEY,脚本仍可跑通,但这不覆盖“自动供给 managed key”场景
主要产物:
05-route-chat.json06-decision-logs.json07-summary.json
总入口
脚本:
scripts/acceptance/verify_route_acceptance_matrix.sh
它会创建:
artifacts/phase2-routing-matrix/<timestamp>_route_matrix/
control_plane/
health_ui/
data_plane/
summary.json
summary.json 只保留最核心的摘要字段:
control_plane_group_idhealth_ui_group_iddata_plane_group_iddata_plane_request_iddata_plane_upstream_statushealth_ui_resolve_route_id
remote43 推荐执行方式
如果要避免把真实 CRM_ADMIN_TOKEN 带回本地,推荐直接在 remote43 上执行:
cd /home/ubuntu/sub2api-kimi-patched-auto2-20260525_18169
set -a
. ./.env.crm
set +a
cd /home/ubuntu/sub2api-cn-relay-manager-git-current
CRM_BASE="https://sub.tksea.top/portal-admin-api" \
SHADOW_HOST_ID="<real-shadow-host-id>" \
SHADOW_GROUP_ID="<real-shadow-group-id>" \
SUBSCRIPTION_USER_ID="<managed-user-id>" \
bash ./scripts/acceptance/verify_route_acceptance_matrix.sh
当前边界
- 脚本只负责留证据和判断通过/失败,不负责清理临时
logical_group - 数据面脚本当前仍依赖调用方提供真实
shadow_host_id / shadow_group_id - 尚未覆盖“同公开模型双线路主备”的未来策略矩阵