π¦ New version release - #337
Merged
Merged
Conversation
brentrager
force-pushed
the
changeset-release/main
branch
from
August 8, 2026 13:56
86f41d9 to
89562f0
Compare
brentrager
enabled auto-merge (squash)
August 8, 2026 13:56
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@smooai/smooth-operator@1.36.12
Patch Changes
f6a7652: fix(dotnet): log the exception behind every
INTERNAL_ERROR, and read the sharedSMOOAI_*gateway env varsTwo bugs, one of which hid the other.
th-e7ef23 β the swallowed exception. Both places
FrameDispatcherturns an exception into theprotocol's
INTERNAL_ERROR(the dispatcher's outer guard and the spawned turn's guard) discarded theexception entirely. A server whose every turn failed logged nothing β no exception, no stack, at any
level. Both sites now route through
LogInternalError, which records the action, the requestId and theexception (with stack) at
Errorlevel, falling back to stderr when noILoggeris wired. The wiremessage is unchanged: still generic, still leaks no detail to the client.
th-df7007 β every .NET turn returned
INTERNAL_ERROR. The host read the gateway URL/key/model fromSMOOTH_GATEWAY_URL/SMOOTH_GATEWAY_KEY/SMOOTH_MODEL, but rust, go, ts and python all read theSMOOAI_*spelling. Any launcher or bench using the shared contract left the .NET host keyless, so everyturn hit the gateway with the literal key
"unset"and got backHTTP 401 β¦ LiteLLM Virtual Key expectedβ surfaced as a bare
INTERNAL_ERRORwith zero tool calls. The host now readsSMOOAI_GATEWAY_URL/SMOOAI_GATEWAY_KEY/SMOOAI_MODELfirst, with theSMOOTH_*names kept as a fallback for existingdeployments.
Same swallow in the siblings. The Go dispatcher dropped the
errat all seven of itsINTERNAL_ERRORsites and the Python dispatcher dropped the exception at both of its own; both nowlog it (Go through a single
internalErrorchokepoint usinglog/slog, Python vialogging.exception). TypeScript already logged viaconsole.error; Rust puts the detail on the wire.@smooai/smooth-operator-web-chat-example@0.0.48
Patch Changes