fix deferred behavior
This commit is contained in:
parent
f49cdcc297
commit
067233f7f3
2 changed files with 16 additions and 12 deletions
|
|
@ -213,8 +213,11 @@ func (al *AgentLoop) ensureMCPInitialized(ctx context.Context) error {
|
|||
// The per-server Deferred field takes precedence over the global discoveryEnabled
|
||||
// default. When Deferred is nil, discoveryEnabled is used as the fallback.
|
||||
func serverIsDeferred(discoveryEnabled bool, serverCfg config.MCPServerConfig) bool {
|
||||
if !discoveryEnabled {
|
||||
return false
|
||||
}
|
||||
if serverCfg.Deferred != nil {
|
||||
return *serverCfg.Deferred
|
||||
}
|
||||
return discoveryEnabled
|
||||
return true
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,31 +21,32 @@ func TestServerIsDeferred(t *testing.T) {
|
|||
serverDeferred *bool
|
||||
want bool
|
||||
}{
|
||||
// --- per-server override wins regardless of global setting ---
|
||||
// --- global false always wins: per-server deferred is ignored ---
|
||||
{
|
||||
name: "per-server deferred=true overrides global false",
|
||||
name: "global false: per-server deferred=true is ignored",
|
||||
discoveryEnabled: false,
|
||||
serverDeferred: boolPtr(true),
|
||||
want: true,
|
||||
want: false,
|
||||
},
|
||||
{
|
||||
name: "per-server deferred=false overrides global true",
|
||||
name: "global false: per-server deferred=false stays false",
|
||||
discoveryEnabled: false,
|
||||
serverDeferred: boolPtr(false),
|
||||
want: false,
|
||||
},
|
||||
// --- global true: per-server override applies ---
|
||||
{
|
||||
name: "global true: per-server deferred=false opts out",
|
||||
discoveryEnabled: true,
|
||||
serverDeferred: boolPtr(false),
|
||||
want: false,
|
||||
},
|
||||
{
|
||||
name: "per-server deferred=true with global true",
|
||||
name: "global true: per-server deferred=true stays true",
|
||||
discoveryEnabled: true,
|
||||
serverDeferred: boolPtr(true),
|
||||
want: true,
|
||||
},
|
||||
{
|
||||
name: "per-server deferred=false with global false",
|
||||
discoveryEnabled: false,
|
||||
serverDeferred: boolPtr(false),
|
||||
want: false,
|
||||
},
|
||||
// --- no per-server override: fall back to global ---
|
||||
{
|
||||
name: "no per-server field, global discovery enabled",
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue