diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index ee0707fae..a2295f0b2 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -144,9 +144,9 @@ jobs: uses: actions/checkout@v4 - name: Set up Go - uses: actions/setup-go@v4 + uses: actions/setup-go@v5 with: - go-version: "1.25" + go-version: "1.26" cache: true cache-dependency-path: go/*/go.sum @@ -265,13 +265,13 @@ jobs: - name: Set up Go uses: actions/setup-go@v5 with: - go-version: "1.25" + go-version: "1.26" cache: true cache-dependency-path: go/*/go.sum - name: golangci-lint uses: golangci/golangci-lint-action@v9 with: - version: v2.8.0 + version: v2.11.3 working-directory: go/core python-test: @@ -340,7 +340,7 @@ jobs: - name: Set up Go uses: actions/setup-go@v5 with: - go-version: "1.25" + go-version: "1.26" cache: true cache-dependency-path: go/*/go.sum diff --git a/go/.golangci.yaml b/go/.golangci.yaml index 85e62030c..117076ada 100644 --- a/go/.golangci.yaml +++ b/go/.golangci.yaml @@ -1,6 +1,6 @@ version: "2" run: - go: "1.25" + go: "1.26" timeout: 10m allow-parallel-runners: true linters: diff --git a/go/adk/go.mod b/go/adk/go.mod index c5c2dcdf0..d1a7a71e5 100644 --- a/go/adk/go.mod +++ b/go/adk/go.mod @@ -1,6 +1,6 @@ module github.com/kagent-dev/kagent/go/adk -go 1.25.7 +go 1.26.1 require ( github.com/a2aproject/a2a-go v0.3.6 diff --git a/go/adk/go.sum b/go/adk/go.sum index 046ea87d7..0076e003b 100644 --- a/go/adk/go.sum +++ b/go/adk/go.sum @@ -9,6 +9,7 @@ cloud.google.com/go/compute/metadata v0.9.0/go.mod h1:E0bWwX5wTnLPedCKqk3pJmVgCB github.com/a2aproject/a2a-go v0.3.6 h1:VbRoM2MNsfc7o4GkjGt3KZCjbqILAJq846K1z8rpHTc= github.com/a2aproject/a2a-go v0.3.6/go.mod h1:I7Cm+a1oL+UT6zMoP+roaRE5vdfUa1iQGVN8aSOuZ0I= github.com/anthropics/anthropic-sdk-go v1.26.0 h1:oUTzFaUpAevfuELAP1sjL6CQJ9HHAfT7CoSYSac11PY= +github.com/anthropics/anthropic-sdk-go v1.26.0/go.mod h1:qUKmaW+uuPB64iy1l+4kOSvaLqPXnHTTBKH6RVZ7q5Q= github.com/aws/aws-sdk-go-v2 v1.41.2 h1:LuT2rzqNQsauaGkPK/7813XxcZ3o3yePY0Iy891T2ls= github.com/aws/aws-sdk-go-v2 v1.41.2/go.mod h1:IvvlAZQXvTXznUPfRVfryiG1fbzE2NGK6m9u39YQ+S4= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.3 h1:tW1/Rkad38LA15X4UQtjXZXNKsCgkshC3EbmcUmghTg= @@ -42,12 +43,16 @@ github.com/aws/smithy-go v1.24.1/go.mod h1:LEj2LM3rBRQJxPZTB4KuzZkaZYnZPnvgIhb4p github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cncf/xds/go v0.0.0-20251210132809-ee656c7534f5 h1:6xNmx7iTtyBRev0+D/Tv1FZd4SCg8axKApyNyRsAt/w= +github.com/cncf/xds/go v0.0.0-20251210132809-ee656c7534f5/go.mod h1:KdCmV+x/BuvyMxRnYBlmVaq4OLiKW6iRQfvC62cvdkI= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/dnaeon/go-vcr v1.2.0 h1:zHCHvJYTMh1N7xnV7zf1m1GPBF9Ad0Jk/whtQ1663qI= +github.com/dnaeon/go-vcr v1.2.0/go.mod h1:R4UdLID7HZT3taECzJs4YgbbH6PIGXB6W/sc5OLb6RQ= github.com/envoyproxy/go-control-plane v0.14.0 h1:hbG2kr4RuFj222B6+7T83thSPqLjwBIfQawTkC++2HA= github.com/envoyproxy/go-control-plane/envoy v1.36.0 h1:yg/JjO5E7ubRyKX3m07GF3reDNEnfOboJ0QySbH736g= +github.com/envoyproxy/go-control-plane/envoy v1.36.0/go.mod h1:ty89S1YCCVruQAm9OtKeEkQLTb+Lkz0k8v9W0Oxsv98= github.com/envoyproxy/protoc-gen-validate v1.3.0 h1:TvGH1wof4H33rezVKWSpqKz5NXWg5VPuZ0uONDT6eb4= +github.com/envoyproxy/protoc-gen-validate v1.3.0/go.mod h1:HvYl7zwPa5mffgyeTUHA9zHIH36nmrm7oCbo4YKoSWA= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= @@ -88,6 +93,7 @@ github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/modelcontextprotocol/go-sdk v1.4.0 h1:u0kr8lbJc1oBcawK7Df+/ajNMpIDFE41OEPxdeTLOn8= github.com/modelcontextprotocol/go-sdk v1.4.0/go.mod h1:Nxc2n+n/GdCebUaqCOhTetptS17SXXNu9IfNTaLDi1E= github.com/openai/openai-go/v3 v3.26.0 h1:bRt6H/ozMNt/dDkN4gobnLqaEGrRGBzmbVs0xxJEnQE= +github.com/openai/openai-go/v3 v3.26.0/go.mod h1:cdufnVK14cWcT9qA1rRtrXx4FTRsgbDPW7Ia7SS5cZo= github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 h1:GFCKgmp0tecUJ0sJuv4pzYCqS9+RGSn52M3FUwPs+uo= github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10/go.mod h1:t/avpk3KcrXxUnYOhZhMXJlSEyie6gQbtLq5NM3loB8= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= @@ -120,12 +126,19 @@ go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.6 go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0 h1:RbKq8BG0FI8OiXhBfcRtqqHcZcka+gU3cskNuf05R18= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0/go.mod h1:h06DGIukJOevXaj/xrNjhi/2098RZzcLTbc0jDAUbsg= go.opentelemetry.io/otel v1.42.0 h1:lSQGzTgVR3+sgJDAU/7/ZMjN9Z+vUip7leaqBKy4sho= +go.opentelemetry.io/otel v1.42.0/go.mod h1:lJNsdRMxCUIWuMlVJWzecSMuNjE7dOYyWlqOXWkdqCc= go.opentelemetry.io/otel/log v0.18.0 h1:XgeQIIBjZZrliksMEbcwMZefoOSMI1hdjiLEiiB0bAg= +go.opentelemetry.io/otel/log v0.18.0/go.mod h1:KEV1kad0NofR3ycsiDH4Yjcoj0+8206I6Ox2QYFSNgI= go.opentelemetry.io/otel/metric v1.42.0 h1:2jXG+3oZLNXEPfNmnpxKDeZsFI5o4J+nz6xUlaFdF/4= +go.opentelemetry.io/otel/metric v1.42.0/go.mod h1:RlUN/7vTU7Ao/diDkEpQpnz3/92J9ko05BIwxYa2SSI= go.opentelemetry.io/otel/sdk v1.42.0 h1:LyC8+jqk6UJwdrI/8VydAq/hvkFKNHZVIWuslJXYsDo= +go.opentelemetry.io/otel/sdk v1.42.0/go.mod h1:rGHCAxd9DAph0joO4W6OPwxjNTYWghRWmkHuGbayMts= go.opentelemetry.io/otel/sdk/log v0.18.0 h1:n8OyZr7t7otkeTnPTbDNom6rW16TBYGtvyy2Gk6buQw= +go.opentelemetry.io/otel/sdk/log v0.18.0/go.mod h1:C0+wxkTwKpOCZLrlJ3pewPiiQwpzycPI/u6W0Z9fuYk= go.opentelemetry.io/otel/sdk/metric v1.42.0 h1:D/1QR46Clz6ajyZ3G8SgNlTJKBdGp84q9RKCAZ3YGuA= +go.opentelemetry.io/otel/sdk/metric v1.42.0/go.mod h1:Ua6AAlDKdZ7tdvaQKfSmnFTdHx37+J4ba8MwVCYM5hc= go.opentelemetry.io/otel/trace v1.42.0 h1:OUCgIPt+mzOnaUTpOQcBiM/PLQ/Op7oq6g4LenLmOYY= +go.opentelemetry.io/otel/trace v1.42.0/go.mod h1:f3K9S+IFqnumBkKhRJMeaZeNk9epyhnCmQh/EysQCdc= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= @@ -135,9 +148,11 @@ go.uber.org/zap v1.27.1/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= golang.org/x/crypto v0.48.0 h1:/VRzVqiRSggnhY7gNRxPauEQ5Drw9haKdM0jqfcCFts= golang.org/x/crypto v0.48.0/go.mod h1:r0kV5h3qnFPlQnBSrULhlsRfryS2pmewsg+XfMgkVos= golang.org/x/net v0.51.0 h1:94R/GTO7mt3/4wIKpcR5gkGmRLOuE/2hNGeWq/GBIFo= +golang.org/x/net v0.51.0/go.mod h1:aamm+2QF5ogm02fjy5Bb7CQ0WMt1/WVM7FtyaTLlA9Y= golang.org/x/oauth2 v0.35.0 h1:Mv2mzuHuZuY2+bkyWXIHMfhNdJAdwW3FuWeCPYN5GVQ= golang.org/x/oauth2 v0.35.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA= golang.org/x/sync v0.20.0 h1:e0PTpb7pjO8GAtTs2dQ6jYa5BWYlMuX047Dco/pItO4= +golang.org/x/sync v0.20.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0= golang.org/x/sys v0.41.0 h1:Ivj+2Cp/ylzLiEU89QhWblYnOE9zerudt9Ftecq2C6k= golang.org/x/sys v0.41.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= @@ -157,14 +172,18 @@ google.golang.org/api v0.252.0/go.mod h1:dnHOv81x5RAmumZ7BWLShB/u7JZNeyalImxHmtT google.golang.org/genai v1.40.0 h1:kYxyQSH+vsib8dvsgyLJzsVEIv5k3ZmHJyVqdvGncmc= google.golang.org/genai v1.40.0/go.mod h1:A3kkl0nyBjyFlNjgxIwKq70julKbIxpSxqKO5gw/gmk= google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171 h1:tu/dtnW1o3wfaxCOjSLn5IRX4YDcJrtlpzYkhHhGaC4= +google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171/go.mod h1:M5krXqk4GhBKvB596udGL3UyjL4I1+cTbK0orROM9ng= google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171 h1:ggcbiqK8WWh6l1dnltU4BgWGIGo+EVYxCaAPih/zQXQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= google.golang.org/grpc v1.79.2 h1:fRMD94s2tITpyJGtBBn7MkMseNpOZU8ZxgC3MMBaXRU= +google.golang.org/grpc v1.79.2/go.mod h1:KmT0Kjez+0dde/v2j9vzwoAScgEPx/Bw1CYChhHLrHQ= google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10= +gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= rsc.io/omap v1.2.0 h1:c1M8jchnHbzmJALzGLclfH3xDWXrPxSUHXzH5C+8Kdw= diff --git a/go/api/go.mod b/go/api/go.mod index bb47fd6c5..ef7ee47e9 100644 --- a/go/api/go.mod +++ b/go/api/go.mod @@ -1,6 +1,6 @@ module github.com/kagent-dev/kagent/go/api -go 1.25.7 +go 1.26.1 require ( github.com/google/uuid v1.6.0 diff --git a/go/api/go.sum b/go/api/go.sum index 1feb1d35a..3718a1eb2 100644 --- a/go/api/go.sum +++ b/go/api/go.sum @@ -133,6 +133,7 @@ github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvM github.com/prometheus/common v0.67.5 h1:pIgK94WWlQt1WLwAC5j2ynLaBRDiinoAb86HZHTUGI4= github.com/prometheus/common v0.67.5/go.mod h1:SjE/0MzDEEAyrdr5Gqc6G+sXI67maCxzaT3A2+HqjUw= github.com/prometheus/procfs v0.20.1 h1:XwbrGOIplXW/AU3YhIhLODXMJYyC1isLFfYCsTEycfc= +github.com/prometheus/procfs v0.20.1/go.mod h1:o9EMBZGRyvDrSPH1RqdxhojkuXstoe4UlK79eF5TGGo= github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ= github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc= github.com/segmentio/asm v1.2.0 h1:9BQrFxC+YOHJlTlHGkTrFWf59nbL3XnCoFLTwDCI7ys= @@ -180,9 +181,11 @@ golang.org/x/crypto v0.48.0/go.mod h1:r0kV5h3qnFPlQnBSrULhlsRfryS2pmewsg+XfMgkVo golang.org/x/mod v0.33.0 h1:tHFzIWbBifEmbwtGz65eaWyGiGZatSrT9prnU8DbVL8= golang.org/x/mod v0.33.0/go.mod h1:swjeQEj+6r7fODbD2cqrnje9PnziFuw4bmLbBZFrQ5w= golang.org/x/net v0.51.0 h1:94R/GTO7mt3/4wIKpcR5gkGmRLOuE/2hNGeWq/GBIFo= +golang.org/x/net v0.51.0/go.mod h1:aamm+2QF5ogm02fjy5Bb7CQ0WMt1/WVM7FtyaTLlA9Y= golang.org/x/oauth2 v0.35.0 h1:Mv2mzuHuZuY2+bkyWXIHMfhNdJAdwW3FuWeCPYN5GVQ= golang.org/x/oauth2 v0.35.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA= golang.org/x/sync v0.20.0 h1:e0PTpb7pjO8GAtTs2dQ6jYa5BWYlMuX047Dco/pItO4= +golang.org/x/sync v0.20.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0= golang.org/x/sys v0.41.0 h1:Ivj+2Cp/ylzLiEU89QhWblYnOE9zerudt9Ftecq2C6k= golang.org/x/sys v0.41.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= golang.org/x/term v0.40.0 h1:36e4zGLqU4yhjlmxEaagx2KuYbJq3EwY8K943ZsHcvg= diff --git a/go/core/cli/internal/tui/workspace.go b/go/core/cli/internal/tui/workspace.go index f7a5fbc74..be7510b8c 100644 --- a/go/core/cli/internal/tui/workspace.go +++ b/go/core/cli/internal/tui/workspace.go @@ -23,7 +23,6 @@ import ( "github.com/kagent-dev/kagent/go/core/cli/internal/tui/theme" "github.com/kagent-dev/kagent/go/core/internal/utils" "github.com/kagent-dev/kagent/go/core/internal/version" - "k8s.io/utils/ptr" a2aclient "trpc.group/trpc-go/trpc-a2a-go/client" "trpc.group/trpc-go/trpc-a2a-go/protocol" ) @@ -177,8 +176,8 @@ func (m *workspaceModel) loadSessions() tea.Cmd { func (m *workspaceModel) createSession(name string) tea.Cmd { return func() tea.Msg { res, err := m.client.Session.CreateSession(context.Background(), &api.SessionRequest{ - Name: ptr.To(name), - AgentRef: ptr.To(m.agentRef), + Name: new(name), + AgentRef: new(m.agentRef), }) if err != nil { return createSessionMsg{session: nil, err: err} diff --git a/go/core/go.mod b/go/core/go.mod index 7894614f2..337f325f9 100644 --- a/go/core/go.mod +++ b/go/core/go.mod @@ -1,6 +1,6 @@ module github.com/kagent-dev/kagent/go/core -go 1.25.7 +go 1.26.1 require ( dario.cat/mergo v1.0.2 diff --git a/go/core/hack/makeagentconfig/main.go b/go/core/hack/makeagentconfig/main.go index c7eb3ee0e..e5af8818e 100644 --- a/go/core/hack/makeagentconfig/main.go +++ b/go/core/hack/makeagentconfig/main.go @@ -27,11 +27,11 @@ func main() { Description: "Test agent", URL: "http://localhost:8080", Capabilities: server.AgentCapabilities{ - Streaming: ptrTo(true), StateTransitionHistory: ptrTo(true), + Streaming: new(true), StateTransitionHistory: new(true), }, DefaultInputModes: []string{"text"}, DefaultOutputModes: []string{"text"}, - Skills: []server.AgentSkill{{ID: "test", Name: "test", Description: ptrTo("test"), Tags: []string{"test"}}}, + Skills: []server.AgentSkill{{ID: "test", Name: "test", Description: new("test"), Tags: []string{"test"}}}, } // do we have mcp everything port open? @@ -42,7 +42,7 @@ func main() { Params: adk.StreamableHTTPConnectionParams{ Url: "http://127.0.0.1:3001/mcp", Headers: map[string]string{}, - Timeout: ptrTo(30.0), + Timeout: new(30.0), }, Tools: []string{}, }, @@ -61,7 +61,3 @@ func main() { os.WriteFile("config.json", bCfg, 0644) os.WriteFile("agent-card.json", bCard, 0644) } - -func ptrTo[T any](v T) *T { - return &v -} diff --git a/go/core/internal/controller/agent_controller.go b/go/core/internal/controller/agent_controller.go index 29f99be11..4c048290b 100644 --- a/go/core/internal/controller/agent_controller.go +++ b/go/core/internal/controller/agent_controller.go @@ -23,7 +23,6 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/types" - "k8s.io/utils/ptr" ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/builder" "sigs.k8s.io/controller-runtime/pkg/client" @@ -68,7 +67,7 @@ func (r *AgentController) Reconcile(ctx context.Context, req ctrl.Request) (ctrl func (r *AgentController) SetupWithManager(mgr ctrl.Manager) error { build := ctrl.NewControllerManagedBy(mgr). WithOptions(controller.Options{ - NeedLeaderElection: ptr.To(true), + NeedLeaderElection: new(true), }). For(&v1alpha2.Agent{}, builder.WithPredicates(predicate.Or(predicate.GenerationChangedPredicate{}, predicate.LabelChangedPredicate{}))) diff --git a/go/core/internal/controller/mcp_server_tool_controller.go b/go/core/internal/controller/mcp_server_tool_controller.go index 12531c7f8..67c3490ee 100644 --- a/go/core/internal/controller/mcp_server_tool_controller.go +++ b/go/core/internal/controller/mcp_server_tool_controller.go @@ -28,7 +28,6 @@ import ( "github.com/kagent-dev/kmcp/api/v1alpha1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" - "k8s.io/utils/ptr" ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/builder" "sigs.k8s.io/controller-runtime/pkg/controller" @@ -75,7 +74,7 @@ func (r *MCPServerToolController) SetupWithManager(mgr ctrl.Manager) error { } return ctrl.NewControllerManagedBy(mgr). WithOptions(controller.Options{ - NeedLeaderElection: ptr.To(true), + NeedLeaderElection: new(true), }). For(&v1alpha1.MCPServer{}, builder.WithPredicates( predicate.GenerationChangedPredicate{}, diff --git a/go/core/internal/controller/modelconfig_controller.go b/go/core/internal/controller/modelconfig_controller.go index a925cc414..b4d00201c 100644 --- a/go/core/internal/controller/modelconfig_controller.go +++ b/go/core/internal/controller/modelconfig_controller.go @@ -24,7 +24,6 @@ import ( corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/types" - "k8s.io/utils/ptr" ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/builder" "sigs.k8s.io/controller-runtime/pkg/client" @@ -61,7 +60,7 @@ func (r *ModelConfigController) Reconcile(ctx context.Context, req ctrl.Request) func (r *ModelConfigController) SetupWithManager(mgr ctrl.Manager) error { return ctrl.NewControllerManagedBy(mgr). WithOptions(controller.Options{ - NeedLeaderElection: ptr.To(true), + NeedLeaderElection: new(true), }). For(&v1alpha2.ModelConfig{}, builder.WithPredicates(predicate.GenerationChangedPredicate{})). Watches( diff --git a/go/core/internal/controller/modelproviderconfig_controller.go b/go/core/internal/controller/modelproviderconfig_controller.go index 38c01ddf7..6f56166a2 100644 --- a/go/core/internal/controller/modelproviderconfig_controller.go +++ b/go/core/internal/controller/modelproviderconfig_controller.go @@ -24,7 +24,6 @@ import ( corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/types" - "k8s.io/utils/ptr" ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/builder" "sigs.k8s.io/controller-runtime/pkg/client" @@ -59,7 +58,7 @@ func (r *ModelProviderConfigController) Reconcile(ctx context.Context, req ctrl. func (r *ModelProviderConfigController) SetupWithManager(mgr ctrl.Manager) error { return ctrl.NewControllerManagedBy(mgr). WithOptions(controller.Options{ - NeedLeaderElection: ptr.To(true), + NeedLeaderElection: new(true), }). For(&v1alpha2.ModelProviderConfig{}, builder.WithPredicates(predicate.GenerationChangedPredicate{})). Watches( diff --git a/go/core/internal/controller/remote_mcp_server_controller.go b/go/core/internal/controller/remote_mcp_server_controller.go index cb0c027c0..a37015feb 100644 --- a/go/core/internal/controller/remote_mcp_server_controller.go +++ b/go/core/internal/controller/remote_mcp_server_controller.go @@ -24,7 +24,6 @@ import ( "github.com/kagent-dev/kagent/go/core/internal/controller/reconciler" "k8s.io/apimachinery/pkg/runtime" - "k8s.io/utils/ptr" ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/controller" "sigs.k8s.io/controller-runtime/pkg/log" @@ -58,7 +57,7 @@ func (r *RemoteMCPServerController) Reconcile(ctx context.Context, req ctrl.Requ func (r *RemoteMCPServerController) SetupWithManager(mgr ctrl.Manager) error { return ctrl.NewControllerManagedBy(mgr). WithOptions(controller.Options{ - NeedLeaderElection: ptr.To(true), + NeedLeaderElection: new(true), }). For(&v1alpha2.RemoteMCPServer{}). Named("remotemcpserver"). diff --git a/go/core/internal/controller/service_controller.go b/go/core/internal/controller/service_controller.go index b69e4612b..c8eaa8832 100644 --- a/go/core/internal/controller/service_controller.go +++ b/go/core/internal/controller/service_controller.go @@ -26,7 +26,6 @@ import ( corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/runtime" - "k8s.io/utils/ptr" ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/client" "sigs.k8s.io/controller-runtime/pkg/controller" @@ -65,7 +64,7 @@ func (r *ServiceController) Reconcile(ctx context.Context, req ctrl.Request) (ct func (r *ServiceController) SetupWithManager(mgr ctrl.Manager) error { return ctrl.NewControllerManagedBy(mgr). WithOptions(controller.Options{ - NeedLeaderElection: ptr.To(true), + NeedLeaderElection: new(true), }). WithEventFilter(predicate.NewPredicateFuncs(func(obj client.Object) bool { labels := obj.GetLabels() diff --git a/go/core/internal/controller/translator/agent/adk_api_translator.go b/go/core/internal/controller/translator/agent/adk_api_translator.go index b3f7b36d5..fb231c62c 100644 --- a/go/core/internal/controller/translator/agent/adk_api_translator.go +++ b/go/core/internal/controller/translator/agent/adk_api_translator.go @@ -34,7 +34,6 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/intstr" - "k8s.io/utils/ptr" "sigs.k8s.io/controller-runtime/pkg/client" "sigs.k8s.io/controller-runtime/pkg/controller/controllerutil" "trpc.group/trpc-go/trpc-a2a-go/server" @@ -481,7 +480,7 @@ func (a *adkApiTranslator) buildManifest( { ServiceAccountToken: &corev1.ServiceAccountTokenProjection{ Audience: "kagent", - ExpirationSeconds: ptr.To(int64(3600)), + ExpirationSeconds: new(int64(3600)), Path: "kagent-token", }, }, @@ -514,12 +513,12 @@ func (a *adkApiTranslator) buildManifest( securityContext = dep.SecurityContext.DeepCopy() // If sandbox is needed, ensure Privileged is set (may override user setting) if needSandbox { - securityContext.Privileged = ptr.To(true) + securityContext.Privileged = new(true) } } else if needSandbox { // Only create security context if sandbox is needed securityContext = &corev1.SecurityContext{ - Privileged: ptr.To(true), + Privileged: new(true), } } // If neither user-provided securityContext nor sandbox is needed, securityContext remains nil @@ -629,7 +628,7 @@ func (a *adkApiTranslator) translateInlineAgent(ctx context.Context, agent *v1al Instruction: rawSystemMessage, Model: model, ExecuteCode: agent.Spec.Declarative.ExecuteCodeBlocks, - Stream: ptr.To(agent.Spec.Declarative.Stream), + Stream: new(agent.Spec.Declarative.Stream), } // Translate context management configuration @@ -822,7 +821,7 @@ func addTLSConfiguration(modelDeploymentData *modelDeploymentData, tlsConfig *v1 VolumeSource: corev1.VolumeSource{ Secret: &corev1.SecretVolumeSource{ SecretName: tlsConfig.CACertSecretRef, - DefaultMode: ptr.To(int32(0444)), // Read-only for all users + DefaultMode: new(int32(0444)), // Read-only for all users }, }, }) @@ -1245,10 +1244,10 @@ func (a *adkApiTranslator) translateStreamableHttpTool(ctx context.Context, serv Headers: headers, } if server.Spec.Timeout != nil { - params.Timeout = ptr.To(server.Spec.Timeout.Seconds()) + params.Timeout = new(server.Spec.Timeout.Seconds()) } if server.Spec.SseReadTimeout != nil { - params.SseReadTimeout = ptr.To(server.Spec.SseReadTimeout.Seconds()) + params.SseReadTimeout = new(server.Spec.SseReadTimeout.Seconds()) } if server.Spec.TerminateOnClose != nil { params.TerminateOnClose = server.Spec.TerminateOnClose @@ -1279,10 +1278,10 @@ func (a *adkApiTranslator) translateSseHttpTool(ctx context.Context, server *v1a Headers: headers, } if server.Spec.Timeout != nil { - params.Timeout = ptr.To(server.Spec.Timeout.Seconds()) + params.Timeout = new(server.Spec.Timeout.Seconds()) } if server.Spec.SseReadTimeout != nil { - params.SseReadTimeout = ptr.To(server.Spec.SseReadTimeout.Seconds()) + params.SseReadTimeout = new(server.Spec.SseReadTimeout.Seconds()) } return params, nil } diff --git a/go/core/internal/controller/translator/agent/adk_api_translator_test.go b/go/core/internal/controller/translator/agent/adk_api_translator_test.go index fdffabf88..4344f68b2 100644 --- a/go/core/internal/controller/translator/agent/adk_api_translator_test.go +++ b/go/core/internal/controller/translator/agent/adk_api_translator_test.go @@ -16,7 +16,6 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" schemev1 "k8s.io/client-go/kubernetes/scheme" - "k8s.io/utils/ptr" "sigs.k8s.io/controller-runtime/pkg/client" "sigs.k8s.io/controller-runtime/pkg/client/fake" ) @@ -470,7 +469,7 @@ func Test_AdkApiTranslator_ServiceAccountNameOverride(t *testing.T) { ModelConfig: "test-model", Deployment: &v1alpha2.DeclarativeDeploymentSpec{ SharedDeploymentSpec: v1alpha2.SharedDeploymentSpec{ - ServiceAccountName: ptr.To("custom-sa"), + ServiceAccountName: new("custom-sa"), }, }, }, @@ -990,8 +989,8 @@ func Test_AdkApiTranslator_MergeDeploymentData(t *testing.T) { ModelConfig: agentModel, Context: &v1alpha2.ContextConfig{ Compaction: &v1alpha2.ContextCompressionConfig{ - CompactionInterval: ptr.To(5), - OverlapSize: ptr.To(2), + CompactionInterval: new(5), + OverlapSize: new(2), Summarizer: &v1alpha2.ContextSummarizerConfig{ ModelConfig: &summarizerModel, }, @@ -1186,15 +1185,15 @@ func Test_AdkApiTranslator_ContextConfig(t *testing.T) { name: "compaction only", agent: makeAgent(&v1alpha2.ContextConfig{ Compaction: &v1alpha2.ContextCompressionConfig{ - CompactionInterval: ptr.To(5), - OverlapSize: ptr.To(2), + CompactionInterval: new(5), + OverlapSize: new(2), }, }), assertConfig: func(t *testing.T, cfg *adk.AgentConfig) { require.NotNil(t, cfg.ContextConfig) require.NotNil(t, cfg.ContextConfig.Compaction) - assert.Equal(t, ptr.To(5), cfg.ContextConfig.Compaction.CompactionInterval) - assert.Equal(t, ptr.To(2), cfg.ContextConfig.Compaction.OverlapSize) + assert.Equal(t, new(5), cfg.ContextConfig.Compaction.CompactionInterval) + assert.Equal(t, new(2), cfg.ContextConfig.Compaction.OverlapSize) assert.Nil(t, cfg.ContextConfig.Compaction.SummarizerModel) }, }, @@ -1202,29 +1201,29 @@ func Test_AdkApiTranslator_ContextConfig(t *testing.T) { name: "compaction with all optional fields", agent: makeAgent(&v1alpha2.ContextConfig{ Compaction: &v1alpha2.ContextCompressionConfig{ - CompactionInterval: ptr.To(10), - OverlapSize: ptr.To(3), - TokenThreshold: ptr.To(1000), - EventRetentionSize: ptr.To(5), + CompactionInterval: new(10), + OverlapSize: new(3), + TokenThreshold: new(1000), + EventRetentionSize: new(5), }, }), assertConfig: func(t *testing.T, cfg *adk.AgentConfig) { require.NotNil(t, cfg.ContextConfig) require.NotNil(t, cfg.ContextConfig.Compaction) - assert.Equal(t, ptr.To(10), cfg.ContextConfig.Compaction.CompactionInterval) - assert.Equal(t, ptr.To(3), cfg.ContextConfig.Compaction.OverlapSize) - assert.Equal(t, ptr.To(1000), cfg.ContextConfig.Compaction.TokenThreshold) - assert.Equal(t, ptr.To(5), cfg.ContextConfig.Compaction.EventRetentionSize) + assert.Equal(t, new(10), cfg.ContextConfig.Compaction.CompactionInterval) + assert.Equal(t, new(3), cfg.ContextConfig.Compaction.OverlapSize) + assert.Equal(t, new(1000), cfg.ContextConfig.Compaction.TokenThreshold) + assert.Equal(t, new(5), cfg.ContextConfig.Compaction.EventRetentionSize) }, }, { name: "compaction with summarizer using agent model", agent: makeAgent(&v1alpha2.ContextConfig{ Compaction: &v1alpha2.ContextCompressionConfig{ - CompactionInterval: ptr.To(5), - OverlapSize: ptr.To(2), + CompactionInterval: new(5), + OverlapSize: new(2), Summarizer: &v1alpha2.ContextSummarizerConfig{ - PromptTemplate: ptr.To("Summarize: {{events}}"), + PromptTemplate: new("Summarize: {{events}}"), }, }, }), @@ -1240,10 +1239,10 @@ func Test_AdkApiTranslator_ContextConfig(t *testing.T) { name: "compaction with summarizer using separate model", agent: makeAgent(&v1alpha2.ContextConfig{ Compaction: &v1alpha2.ContextCompressionConfig{ - CompactionInterval: ptr.To(5), - OverlapSize: ptr.To(2), + CompactionInterval: new(5), + OverlapSize: new(2), Summarizer: &v1alpha2.ContextSummarizerConfig{ - ModelConfig: ptr.To("summarizer-model"), + ModelConfig: new("summarizer-model"), }, }, }), diff --git a/go/core/internal/controller/translator/agent/deployments.go b/go/core/internal/controller/translator/agent/deployments.go index 43e1a298f..0899894bb 100644 --- a/go/core/internal/controller/translator/agent/deployments.go +++ b/go/core/internal/controller/translator/agent/deployments.go @@ -8,7 +8,6 @@ import ( corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/resource" - "k8s.io/utils/ptr" "github.com/kagent-dev/kagent/go/api/v1alpha2" "github.com/kagent-dev/kagent/go/core/internal/controller/translator/labels" @@ -115,7 +114,7 @@ func resolveInlineDeployment(agent *v1alpha2.Agent, mdd *modelDeploymentData) (* "/config", } - serviceAccountName := ptr.To(agent.Name) + serviceAccountName := new(agent.Name) // Start with spec deployment spec spec := v1alpha2.DeclarativeDeploymentSpec{} @@ -178,7 +177,7 @@ func resolveInlineDeployment(agent *v1alpha2.Agent, mdd *modelDeploymentData) (* // Precedence: agent-level serviceAccountName > global default > auto-created SA (agent name) if dep.ServiceAccountName == nil { if DefaultServiceAccountName != "" { - dep.ServiceAccountName = ptr.To(DefaultServiceAccountName) + dep.ServiceAccountName = new(DefaultServiceAccountName) } else { dep.ServiceAccountName = serviceAccountName } @@ -230,7 +229,7 @@ func resolveByoDeployment(agent *v1alpha2.Agent) (*resolvedDeployment, error) { replicas := spec.Replicas if replicas == nil { - replicas = ptr.To(int32(1)) + replicas = new(int32(1)) } dep := &resolvedDeployment{ @@ -259,9 +258,9 @@ func resolveByoDeployment(agent *v1alpha2.Agent) (*resolvedDeployment, error) { // Precedence: agent-level serviceAccountName > global default > auto-created SA (agent name) if dep.ServiceAccountName == nil { if DefaultServiceAccountName != "" { - dep.ServiceAccountName = ptr.To(DefaultServiceAccountName) + dep.ServiceAccountName = new(DefaultServiceAccountName) } else { - dep.ServiceAccountName = ptr.To(agent.Name) + dep.ServiceAccountName = new(agent.Name) } } diff --git a/go/core/internal/controller/translator/agent/security_context_test.go b/go/core/internal/controller/translator/agent/security_context_test.go index 2156b9953..6124ad639 100644 --- a/go/core/internal/controller/translator/agent/security_context_test.go +++ b/go/core/internal/controller/translator/agent/security_context_test.go @@ -11,7 +11,6 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" schemev1 "k8s.io/client-go/kubernetes/scheme" - "k8s.io/utils/ptr" "sigs.k8s.io/controller-runtime/pkg/client/fake" "github.com/kagent-dev/kagent/go/api/v1alpha2" @@ -35,17 +34,17 @@ func TestSecurityContext_AppliedToPodSpec(t *testing.T) { Deployment: &v1alpha2.DeclarativeDeploymentSpec{ SharedDeploymentSpec: v1alpha2.SharedDeploymentSpec{ PodSecurityContext: &corev1.PodSecurityContext{ - RunAsUser: ptr.To(int64(1000)), - RunAsGroup: ptr.To(int64(1000)), - FSGroup: ptr.To(int64(1000)), - RunAsNonRoot: ptr.To(true), + RunAsUser: new(int64(1000)), + RunAsGroup: new(int64(1000)), + FSGroup: new(int64(1000)), + RunAsNonRoot: new(true), SupplementalGroups: []int64{1000}, }, SecurityContext: &corev1.SecurityContext{ - RunAsUser: ptr.To(int64(1000)), - RunAsGroup: ptr.To(int64(1000)), - RunAsNonRoot: ptr.To(true), - AllowPrivilegeEscalation: ptr.To(false), + RunAsUser: new(int64(1000)), + RunAsGroup: new(int64(1000)), + RunAsNonRoot: new(true), + AllowPrivilegeEscalation: new(false), Capabilities: &corev1.Capabilities{ Drop: []corev1.Capability{"ALL"}, Add: []corev1.Capability{"NET_BIND_SERVICE"}, @@ -142,8 +141,8 @@ func TestSecurityContext_OnlyPodSecurityContext(t *testing.T) { Deployment: &v1alpha2.DeclarativeDeploymentSpec{ SharedDeploymentSpec: v1alpha2.SharedDeploymentSpec{ PodSecurityContext: &corev1.PodSecurityContext{ - RunAsUser: ptr.To(int64(2000)), - RunAsGroup: ptr.To(int64(2000)), + RunAsUser: new(int64(2000)), + RunAsGroup: new(int64(2000)), }, }, }, @@ -217,8 +216,8 @@ func TestSecurityContext_OnlyContainerSecurityContext(t *testing.T) { Deployment: &v1alpha2.DeclarativeDeploymentSpec{ SharedDeploymentSpec: v1alpha2.SharedDeploymentSpec{ SecurityContext: &corev1.SecurityContext{ - RunAsUser: ptr.To(int64(3000)), - RunAsGroup: ptr.To(int64(3000)), + RunAsUser: new(int64(3000)), + RunAsGroup: new(int64(3000)), }, }, }, @@ -295,8 +294,8 @@ func TestSecurityContext_WithSandbox(t *testing.T) { Deployment: &v1alpha2.DeclarativeDeploymentSpec{ SharedDeploymentSpec: v1alpha2.SharedDeploymentSpec{ SecurityContext: &corev1.SecurityContext{ - RunAsUser: ptr.To(int64(1000)), - RunAsGroup: ptr.To(int64(1000)), + RunAsUser: new(int64(1000)), + RunAsGroup: new(int64(1000)), }, }, }, diff --git a/go/core/internal/controller/translator/agent/utils.go b/go/core/internal/controller/translator/agent/utils.go index ee390ef2a..a9dda8e5b 100644 --- a/go/core/internal/controller/translator/agent/utils.go +++ b/go/core/internal/controller/translator/agent/utils.go @@ -7,7 +7,6 @@ import ( "github.com/kagent-dev/kagent/go/api/v1alpha2" "github.com/kagent-dev/kagent/go/core/internal/utils" - "k8s.io/utils/ptr" "trpc.group/trpc-go/trpc-a2a-go/server" ) @@ -17,9 +16,9 @@ func GetA2AAgentCard(agent *v1alpha2.Agent) *server.AgentCard { Description: agent.Spec.Description, URL: fmt.Sprintf("http://%s.%s:8080", agent.Name, agent.Namespace), Capabilities: server.AgentCapabilities{ - Streaming: ptr.To(true), - PushNotifications: ptr.To(false), - StateTransitionHistory: ptr.To(true), + Streaming: new(true), + PushNotifications: new(false), + StateTransitionHistory: new(true), }, // Can't be null for Python, so set to empty list Skills: []server.AgentSkill{}, diff --git a/go/core/internal/httpserver/handlers/modelconfig.go b/go/core/internal/httpserver/handlers/modelconfig.go index 421b65ddc..9e022f9f9 100644 --- a/go/core/internal/httpserver/handlers/modelconfig.go +++ b/go/core/internal/httpserver/handlers/modelconfig.go @@ -165,8 +165,7 @@ func getStructJSONKeys(structType reflect.Type) []string { if structType.Kind() != reflect.Struct { return keys } - for i := 0; i < structType.NumField(); i++ { - field := structType.Field(i) + for field := range structType.Fields() { jsonTag := field.Tag.Get("json") if jsonTag != "" && jsonTag != "-" { tagParts := strings.Split(jsonTag, ",") diff --git a/go/core/internal/httpserver/handlers/sessions_test.go b/go/core/internal/httpserver/handlers/sessions_test.go index 65f57c700..30ec56f2e 100644 --- a/go/core/internal/httpserver/handlers/sessions_test.go +++ b/go/core/internal/httpserver/handlers/sessions_test.go @@ -13,7 +13,6 @@ import ( "github.com/stretchr/testify/require" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/types" - "k8s.io/utils/ptr" "sigs.k8s.io/controller-runtime/pkg/client/fake" "github.com/kagent-dev/kagent/go/api/database" @@ -69,7 +68,7 @@ func TestSessionsHandler(t *testing.T) { createTestSession := func(dbClient database.Client, sessionID, userID string, agentID string) *database.Session { session := &database.Session{ ID: sessionID, - Name: ptr.To(sessionID), + Name: new(sessionID), UserID: userID, AgentID: &agentID, } @@ -123,7 +122,7 @@ func TestSessionsHandler(t *testing.T) { sessionReq := api.SessionRequest{ AgentRef: &agentRef, - Name: ptr.To("test-session"), + Name: new("test-session"), } jsonBody, _ := json.Marshal(sessionReq) diff --git a/go/core/internal/httpserver/handlers/toolservers_test.go b/go/core/internal/httpserver/handlers/toolservers_test.go index d25b1d952..90a949394 100644 --- a/go/core/internal/httpserver/handlers/toolservers_test.go +++ b/go/core/internal/httpserver/handlers/toolservers_test.go @@ -29,7 +29,6 @@ import ( "github.com/kagent-dev/kagent/go/core/internal/httpserver/handlers" common "github.com/kagent-dev/kagent/go/core/internal/utils" "github.com/kagent-dev/kmcp/api/v1alpha1" - "k8s.io/utils/ptr" ) func TestToolServersHandler(t *testing.T) { @@ -161,7 +160,7 @@ func TestToolServersHandler(t *testing.T) { }, }, Timeout: &metav1.Duration{Duration: 30 * time.Second}, - TerminateOnClose: ptr.To(true), + TerminateOnClose: new(true), }, }, } diff --git a/go/core/internal/httpserver/handlers/utils.go b/go/core/internal/httpserver/handlers/utils.go index 1ebeeb628..66ffc415d 100644 --- a/go/core/internal/httpserver/handlers/utils.go +++ b/go/core/internal/httpserver/handlers/utils.go @@ -7,7 +7,6 @@ import ( corev1 "k8s.io/api/core/v1" apierrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/utils/ptr" "sigs.k8s.io/controller-runtime/pkg/client" "github.com/kagent-dev/kagent/go/api/v1alpha1" @@ -41,7 +40,7 @@ func createSecretWithOwnerReference( Kind: ownerKind, Name: owner.GetName(), UID: owner.GetUID(), - Controller: ptr.To(true), + Controller: new(true), }}, }, StringData: data, diff --git a/go/core/test/e2e/invoke_api_test.go b/go/core/test/e2e/invoke_api_test.go index f1cd5b4c6..8a605fb0f 100644 --- a/go/core/test/e2e/invoke_api_test.go +++ b/go/core/test/e2e/invoke_api_test.go @@ -18,7 +18,6 @@ import ( k8s_runtime "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/util/retry" - "k8s.io/utils/ptr" "sigs.k8s.io/controller-runtime/pkg/client" "github.com/kagent-dev/kagent/go/api/v1alpha2" @@ -1216,7 +1215,7 @@ func TestE2EIAgentRunsCode(t *testing.T) { // Setup specific resources modelCfg := setupModelConfig(t, cli, baseURL) agent := setupAgentWithOptions(t, cli, modelCfg.Name, nil, AgentOptions{ - ExecuteCode: ptr.To(true), + ExecuteCode: new(true), }) // Setup A2A client diff --git a/go/go.work b/go/go.work index 90f30295e..43c666f88 100644 --- a/go/go.work +++ b/go/go.work @@ -1,4 +1,4 @@ -go 1.25.7 +go 1.26.1 use ( ./adk