Repoduction steps
Unmarshaling following json into MessageNewParamsvariable:
input := `
{
"messages": [
{
"role": "user",
"content": "hello"
}
],
"model": "claude-opus-4-6",
"thinking": {
"type": "adaptive"
}
}`
var msgParam anthropic.MessageNewParams
err := msgParam.UnmarshalJSON([]byte(input))
results in msgParam.Thinking.OfAdaptive field not being set.
Adding adaptive discriminator registration seems to help, missing here:
|
apijson.RegisterUnion[BetaThinkingConfigParamUnion]( |
|
"type", |
|
apijson.Discriminator[BetaThinkingConfigEnabledParam]("enabled"), |
|
apijson.Discriminator[BetaThinkingConfigDisabledParam]("disabled"), |
|
) |
|
apijson.RegisterUnion[ThinkingConfigParamUnion]( |
|
"type", |
|
apijson.Discriminator[ThinkingConfigEnabledParam]("enabled"), |
|
apijson.Discriminator[ThinkingConfigDisabledParam]("disabled"), |
|
) |
example patch: main...pawbana:anthropic-sdk-go:pb/ThinkingConfigAdaptiveParam-register-adaptive
Repoduction steps
Unmarshaling following json into
MessageNewParamsvariable:results in
msgParam.Thinking.OfAdaptivefield not being set.Adding adaptive discriminator registration seems to help, missing here:
anthropic-sdk-go/betamessage.go
Lines 325 to 329 in a380414
anthropic-sdk-go/message.go
Lines 2786 to 2790 in a380414
example patch: main...pawbana:anthropic-sdk-go:pb/ThinkingConfigAdaptiveParam-register-adaptive