From a213534dc9748687910004212f541168ce31f173 Mon Sep 17 00:00:00 2001 From: shenjiayun Date: Fri, 9 Jan 2026 11:42:06 +0800 Subject: [PATCH 1/2] temp remove evaluator space auth for testing --- .../evaluation/domain/service/evaluator_impl.go | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/backend/modules/evaluation/domain/service/evaluator_impl.go b/backend/modules/evaluation/domain/service/evaluator_impl.go index e834075ca..2bb2ff2ba 100644 --- a/backend/modules/evaluation/domain/service/evaluator_impl.go +++ b/backend/modules/evaluation/domain/service/evaluator_impl.go @@ -610,13 +610,14 @@ func (e *EvaluatorServiceImpl) RunEvaluator(ctx context.Context, request *entity return nil, errorx.NewByCode(errno.EvaluatorVersionNotFoundCode, errorx.WithExtraMsg("evaluator_version version not found")) } evaluatorDO := evaluatorDOList[0] - // 如果是预置评估器(Builtin),直接执行后续流程 - // 如果不是预置评估器,则根据 space_id 判断是否当前空间的 Evaluator - if !evaluatorDO.Builtin { - if evaluatorDO.SpaceID != request.SpaceID { - return nil, errorx.NewByCode(errno.EvaluatorVersionNotFoundCode, errorx.WithExtraMsg("evaluator_version not found in current space")) - } - } + // TODO: temp remove evaluator space auth for testing + //// 如果是预置评估器(Builtin),直接执行后续流程 + //// 如果不是预置评估器,则根据 space_id 判断是否当前空间的 Evaluator + //if !evaluatorDO.Builtin { + // if evaluatorDO.SpaceID != request.SpaceID { + // return nil, errorx.NewByCode(errno.EvaluatorVersionNotFoundCode, errorx.WithExtraMsg("evaluator_version not found in current space")) + // } + //} if allow := e.limiter.AllowInvoke(ctx, request.SpaceID); !allow { return nil, errorx.NewByCode(errno.EvaluatorQPSLimitCode, errorx.WithExtraMsg("evaluator throttled due to space-level rate limit")) } From d305726b659a81a452e9617bd69621559d560d38 Mon Sep 17 00:00:00 2001 From: shenjiayun Date: Fri, 9 Jan 2026 14:49:32 +0800 Subject: [PATCH 2/2] allow existed experiments continue running previous builtin evaluator (recognized by existing builtin_visible_version) --- .../evaluation/domain/service/evaluator_impl.go | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/backend/modules/evaluation/domain/service/evaluator_impl.go b/backend/modules/evaluation/domain/service/evaluator_impl.go index 2bb2ff2ba..e9ebce350 100644 --- a/backend/modules/evaluation/domain/service/evaluator_impl.go +++ b/backend/modules/evaluation/domain/service/evaluator_impl.go @@ -12,6 +12,7 @@ import ( "time" "github.com/bytedance/gg/gptr" + "github.com/samber/lo" "github.com/coze-dev/coze-loop/backend/infra/idgen" "github.com/coze-dev/coze-loop/backend/infra/middleware/session" @@ -610,14 +611,13 @@ func (e *EvaluatorServiceImpl) RunEvaluator(ctx context.Context, request *entity return nil, errorx.NewByCode(errno.EvaluatorVersionNotFoundCode, errorx.WithExtraMsg("evaluator_version version not found")) } evaluatorDO := evaluatorDOList[0] - // TODO: temp remove evaluator space auth for testing - //// 如果是预置评估器(Builtin),直接执行后续流程 - //// 如果不是预置评估器,则根据 space_id 判断是否当前空间的 Evaluator - //if !evaluatorDO.Builtin { - // if evaluatorDO.SpaceID != request.SpaceID { - // return nil, errorx.NewByCode(errno.EvaluatorVersionNotFoundCode, errorx.WithExtraMsg("evaluator_version not found in current space")) - // } - //} + // 如果是预置评估器(Builtin),直接执行后续流程 + // 如果不是预置评估器,则根据 space_id 判断是否当前空间的 Evaluator + if !evaluatorDO.Builtin { + if evaluatorDO.SpaceID != request.SpaceID && lo.IsEmpty(evaluatorDO.BuiltinVisibleVersion) { // 历史预置评估器允许在途实验使用 + return nil, errorx.NewByCode(errno.EvaluatorVersionNotFoundCode, errorx.WithExtraMsg("evaluator_version not found in current space")) + } + } if allow := e.limiter.AllowInvoke(ctx, request.SpaceID); !allow { return nil, errorx.NewByCode(errno.EvaluatorQPSLimitCode, errorx.WithExtraMsg("evaluator throttled due to space-level rate limit")) }