You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* fix(transform): sync interleaved handling — exclude openrouter + always echo reasoning field
Sync two upstream behavioral refinements to the interleaved-thinking
transform (the capability system already existed):
1. Exclude openrouter from the interleaved field injection block —
openrouter has its own reasoning handling via @openrouter/ai-sdk-provider.
2. Always set the providerOptions.openaiCompatible[field] even when
reasoningText is empty — some providers (e.g. DeepSeek) return empty
reasoning_content which still needs to be echoed back in subsequent
requests; gating on non-empty dropped it.
* fix(schema): add 'reasoning' to ProviderInterleaved Literals
Sync with upstream anomalyco/opencode origin/dev which has THREE values
in the ProviderInterleaved field Literals: ['reasoning',
'reasoning_content', 'reasoning_details']. This repo was missing
'reasoning', which would cause schema validation failures for
providers declaring interleaved.field = 'reasoning'.
Also cast plugin models call to any to bridge SDK ModelV2 type mismatch.
* fix(sdk): regenerate SDK types to include 'reasoning' interleaved field
The interleaved `field` literal was extended to include 'reasoning' in the
provider/config Model schemas, but the checked-in SDK types were not
regenerated. This left `SDK.Model` out of sync, breaking share-next.ts's
discriminated union typecheck (TS2739 at share-next.ts:216). Regenerating the
SDK restores type parity and makes typecheck pass.
---------
Co-authored-by: MI <mi@MIdeMacBook-Pro.local>
0 commit comments