From e8c551bebabafb7f38b505aaaeb29448de2db671 Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Wed, 18 Mar 2026 17:08:32 +0000 Subject: [PATCH] chore(deps): upgrade openai-go/v3 to v3.28.0, drop SasSwart fork MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The SasSwart fork replace (from openai/openai-go#602) is no longer needed — upstream v3.28.0 includes those changes. The Arguments field on ResponseOutputItemUnion changed from string to ResponseOutputItemUnionArguments (a union type). Updated the one callsite and test literals accordingly. --- go.mod | 5 +---- go.sum | 4 ++-- intercept/responses/base.go | 2 +- intercept/responses/base_test.go | 8 ++++---- 4 files changed, 8 insertions(+), 11 deletions(-) diff --git a/go.mod b/go.mod index 9579d98f..0386fec7 100644 --- a/go.mod +++ b/go.mod @@ -29,7 +29,7 @@ require ( github.com/anthropics/anthropic-sdk-go v1.13.0 github.com/aws/aws-sdk-go-v2/config v1.27.27 github.com/aws/aws-sdk-go-v2/credentials v1.17.27 - github.com/openai/openai-go/v3 v3.15.0 + github.com/openai/openai-go/v3 v3.28.0 ) // Tracing-related libs. @@ -94,6 +94,3 @@ require ( // Replace sdks with our own optimized forks until relevant upstream PRs are merged. // https://github.com/anthropics/anthropic-sdk-go/pull/262 replace github.com/anthropics/anthropic-sdk-go v1.13.0 => github.com/dannykopping/anthropic-sdk-go v0.0.0-20251230111224-88a4315810bd - -// https://github.com/openai/openai-go/pull/602 -replace github.com/openai/openai-go/v3 => github.com/SasSwart/openai-go/v3 v3.0.0-20260204134041-fb987b42a728 diff --git a/go.sum b/go.sum index 35ab7cf2..1185c314 100644 --- a/go.sum +++ b/go.sum @@ -7,8 +7,6 @@ cloud.google.com/go/logging v1.8.1 h1:26skQWPeYhvIasWKm48+Eq7oUqdcdbwsCVwz5Ys0Fv cloud.google.com/go/logging v1.8.1/go.mod h1:TJjR+SimHwuC8MZ9cjByQulAMgni+RkXeI3wwctHJEI= cloud.google.com/go/longrunning v0.5.1 h1:Fr7TXftcqTudoyRJa113hyaqlGdiBQkp0Gq7tErFDWI= cloud.google.com/go/longrunning v0.5.1/go.mod h1:spvimkwdz6SPWKEt/XBij79E9fiTkHSQl/fRUUQJYJc= -github.com/SasSwart/openai-go/v3 v3.0.0-20260204134041-fb987b42a728 h1:FOjd3xOH+arcrtz1e5P6WZ/VtRD5KQHHRg4kc4BZers= -github.com/SasSwart/openai-go/v3 v3.0.0-20260204134041-fb987b42a728/go.mod h1:cdufnVK14cWcT9qA1rRtrXx4FTRsgbDPW7Ia7SS5cZo= github.com/aws/aws-sdk-go-v2 v1.30.3 h1:jUeBtG0Ih+ZIFH0F4UkmL9w3cSpaMv9tYYDbzILP8dY= github.com/aws/aws-sdk-go-v2 v1.30.3/go.mod h1:nIQjQVp5sfpQcTc9mPSr1B0PaWK5ByX9MOoDadSN4lc= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.3 h1:tW1/Rkad38LA15X4UQtjXZXNKsCgkshC3EbmcUmghTg= @@ -96,6 +94,8 @@ github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/openai/openai-go/v3 v3.28.0 h1:2+FfrCVMdGXSQrBv1tLWtokm+BU7+3hJ/8rAHPQ63KM= +github.com/openai/openai-go/v3 v3.28.0/go.mod h1:cdufnVK14cWcT9qA1rRtrXx4FTRsgbDPW7Ia7SS5cZo= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/prometheus/client_golang v1.23.2 h1:Je96obch5RDVy3FDMndoUsjAhG5Edi49h0RJWRi/o0o= diff --git a/intercept/responses/base.go b/intercept/responses/base.go index f1bc3ae7..aaada8d8 100644 --- a/intercept/responses/base.go +++ b/intercept/responses/base.go @@ -293,7 +293,7 @@ func (i *responsesInterceptionBase) recordNonInjectedToolUsage(ctx context.Conte // recording other function types to be considered: https://github.com/coder/aibridge/issues/121 switch item.Type { case string(constant.ValueOf[constant.FunctionCall]()): - args = i.parseFunctionCallJSONArgs(ctx, item.Arguments) + args = i.parseFunctionCallJSONArgs(ctx, item.Arguments.OfString) case string(constant.ValueOf[constant.CustomToolCall]()): args = item.Input default: diff --git a/intercept/responses/base_test.go b/intercept/responses/base_test.go index ad0d59ab..47d9a0d8 100644 --- a/intercept/responses/base_test.go +++ b/intercept/responses/base_test.go @@ -366,7 +366,7 @@ func TestRecordToolUsage(t *testing.T) { Type: "function_call", CallID: "call_abc", Name: "get_weather", - Arguments: "", + Arguments: oairesponses.ResponseOutputItemUnionArguments{OfString: ""}, }, }, }, @@ -390,13 +390,13 @@ func TestRecordToolUsage(t *testing.T) { Type: "function_call", CallID: "call_1", Name: "get_weather", - Arguments: `{"location": "NYC"}`, + Arguments: oairesponses.ResponseOutputItemUnionArguments{OfString: `{"location": "NYC"}`}, }, { Type: "function_call", CallID: "call_2", Name: "bad_json_args", - Arguments: `{"bad": args`, + Arguments: oairesponses.ResponseOutputItemUnionArguments{OfString: `{"bad": args`}, }, { Type: "message", @@ -413,7 +413,7 @@ func TestRecordToolUsage(t *testing.T) { Type: "function_call", CallID: "call_4", Name: "calculate", - Arguments: `{"a": 1, "b": 2}`, + Arguments: oairesponses.ResponseOutputItemUnionArguments{OfString: `{"a": 1, "b": 2}`}, }, }, },