提交前必读(请勿删除本节)
您当前的 newapi 版本
请填写,例如:v1.0.0
v0.13.1(自定义构建 ruitu-securewrite-20250425T034800Z)
提交确认
功能描述
当 channel affinity 规则的 skip_retry_on_failure=true 时,如果被强制指定的 channel(如 channel_id=7)因自动测试失败而被禁用(auto_ban),系统会直接返回 403 错误:
403 Forbidden: "The channel selected by channel affinity has been disabled, and retry was stopped by rule."
即使同一个上游(如 api.vivajane.pro)有其他可用 channel(如 4、5、6),也无法切换。
建议解决方案:为 channel affinity 规则添加 fallback_channel_ids 字段。当主 channel 不可用时,按顺序尝试备用 channel。
示例:
{
"name": "codex cli trace",
"skip_retry_on_failure": true,
"fallback_channel_ids": [4, 5, 6]
}
应用场景
用户使用多个 channel 指向同一个上游的不同 API key(如 api.vivajane.pro 的多个 key),通过 channel affinity 规则实现负载均衡和一致性路由。但当某个 channel 因自动测试误判被禁用时,整个服务中断。添加 fallback 可以提高可用性。
关联 issue(格式不规范被关闭):#4544
提交前必读(请勿删除本节)
您当前的 newapi 版本
请填写,例如:
v1.0.0提交确认
功能描述
当 channel affinity 规则的
skip_retry_on_failure=true时,如果被强制指定的 channel(如 channel_id=7)因自动测试失败而被禁用(auto_ban),系统会直接返回 403 错误:即使同一个上游(如 api.vivajane.pro)有其他可用 channel(如 4、5、6),也无法切换。
建议解决方案:为 channel affinity 规则添加
fallback_channel_ids字段。当主 channel 不可用时,按顺序尝试备用 channel。示例:
{ "name": "codex cli trace", "skip_retry_on_failure": true, "fallback_channel_ids": [4, 5, 6] }应用场景
用户使用多个 channel 指向同一个上游的不同 API key(如 api.vivajane.pro 的多个 key),通过 channel affinity 规则实现负载均衡和一致性路由。但当某个 channel 因自动测试误判被禁用时,整个服务中断。添加 fallback 可以提高可用性。
关联 issue(格式不规范被关闭):#4544