Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
26 lines
857 B
Go
26 lines
857 B
Go
package modelplan
|
|
|
|
import "context"
|
|
|
|
// CompositeAgentTargetBindingResolver merges default-model projections from
|
|
// legacy fixed-target bindings and first-class WorkspaceAgents so plan change
|
|
// events invalidate every affected AgentGUI composer.
|
|
type CompositeAgentTargetBindingResolver []AgentTargetBindingResolver
|
|
|
|
func (resolvers CompositeAgentTargetBindingResolver) ResolveBoundAgentTargetDefaultModels(ctx context.Context, workspaceID string, planID string) (map[string]string, error) {
|
|
result := map[string]string{}
|
|
for _, resolver := range resolvers {
|
|
if resolver == nil {
|
|
continue
|
|
}
|
|
defaults, err := resolver.ResolveBoundAgentTargetDefaultModels(ctx, workspaceID, planID)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
for agentTargetID, defaultModel := range defaults {
|
|
result[agentTargetID] = defaultModel
|
|
}
|
|
}
|
|
return result, nil
|
|
}
|