将 Worker 发现、路由画像、容量与执行传输抽象为平台无关接口,新增 Kubernetes 和静态容量适配器,并以 shadow 模式接入生产配置。 实现网络与容量评分、路由防抖、池队列、同步 Worker 租约、一次性执行令牌,以及提交状态不明时禁止重复分配的安全语义。 新增 0105 兼容迁移、管理接口、指标、OpenAPI 和回归测试。已执行全量 Go 测试、go vet、OpenAPI、迁移安全、Compose 与 Kustomize 验证。
19 lines
485 B
Go
19 lines
485 B
Go
package httpapi
|
|
|
|
import (
|
|
"net/http/httptest"
|
|
"testing"
|
|
|
|
"github.com/easyai/easyai-ai-gateway/apps/api/internal/clients"
|
|
)
|
|
|
|
func TestApplyRunErrorHeadersUsesRouteRetryAfter(t *testing.T) {
|
|
recorder := httptest.NewRecorder()
|
|
applyRunErrorHeaders(recorder, &clients.ClientError{
|
|
Code: "upstream_route_unavailable", Details: map[string]any{"retryAfterSeconds": 10},
|
|
})
|
|
if got := recorder.Header().Get("Retry-After"); got != "10" {
|
|
t.Fatalf("Retry-After=%q, want 10", got)
|
|
}
|
|
}
|