From 498c6cfae9d65098f5eb55bca4d399fb5ddc80f7 Mon Sep 17 00:00:00 2001 From: 0xff26b9a8 <25315788+0xff26b9a8@users.noreply.github.com> Date: Wed, 21 Jan 2026 10:58:39 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20schema=20=E6=B8=85?= =?UTF-8?q?=E7=90=86=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../internal/pkg/antigravity/schema_cleaner.go | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/backend/internal/pkg/antigravity/schema_cleaner.go b/backend/internal/pkg/antigravity/schema_cleaner.go index 1a06b2c8..0ee746aa 100644 --- a/backend/internal/pkg/antigravity/schema_cleaner.go +++ b/backend/internal/pkg/antigravity/schema_cleaner.go @@ -146,17 +146,10 @@ func cleanJSONSchemaRecursive(value any) any { for _, v := range schemaMap { if _, isMap := v.(map[string]any); isMap { cleanJSONSchemaRecursive(v) - } else if _, isArr := v.([]any); isArr { - // 数组内的对象也要递归 - } - } - // 稍微补全一下数组递归 - for k, v := range schemaMap { - if arr, ok := v.([]any); ok { + } else if arr, isArr := v.([]any); isArr { for _, item := range arr { cleanJSONSchemaRecursive(item) } - schemaMap[k] = arr } } } @@ -455,18 +448,18 @@ func mergeAllOf(m map[string]any) { } if len(mergedReq) > 0 { existReq, _ := m["required"].([]any) - var currentReqs []string + var validReqs []any for _, r := range existReq { if s, ok := r.(string); ok { - currentReqs = append(currentReqs, s) + validReqs = append(validReqs, s) delete(mergedReq, s) // already exists } } // append new for r := range mergedReq { - existReq = append(existReq, r) + validReqs = append(validReqs, r) } - m["required"] = existReq + m["required"] = validReqs } }