New:Socket for Asana Is Now Available.Learn more
Get Started

@opencode-ai/ai

Package Overview
Dependencies
Maintainers
2
Versions
1112
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@opencode-ai/ai - npm Package Compare versions

Comparing version
0.0.0-dev-18575
to
0.0.0-dev-18581
+8
-7
dist/protocols/openai-chat.js

@@ -802,10 +802,9 @@ import { Effect, Schema } from "effect";

const reasoningEmitted = state.reasoningEmitted || lifecycle.reasoning.has("reasoning-0");
if (delta?.content) {
lifecycle = Lifecycle.reasoningEnd(lifecycle, events, "reasoning-0", reasoningMetadata(state.providerMetadataKey, reasoningField, reasoningDetailsObserved ? state.reasoningDetails : undefined));
// Reasoning is one response-wide channel: it stays open alongside text and
// refusal output so late reasoning deltas and details join the same block,
// and `finishEvents` closes it once with the complete metadata.
if (delta?.content)
lifecycle = Lifecycle.textDelta(lifecycle, events, "text-0", delta.content);
}
if (delta?.refusal) {
lifecycle = Lifecycle.reasoningEnd(lifecycle, events, "reasoning-0", reasoningMetadata(state.providerMetadataKey, reasoningField, reasoningDetailsObserved ? state.reasoningDetails : undefined));
if (delta?.refusal)
lifecycle = Lifecycle.textDelta(lifecycle, events, "text-0", delta.refusal);
}
// Compatible providers may omit indexes. Prefer durable identity, then use

@@ -898,3 +897,5 @@ // batch position for parallel deltas or the latest call for sparse chunks.

: { normalized: hasToolCalls ? "tool-calls" : "stop" };
const metadata = reasoningMetadata(state.providerMetadataKey, state.reasoningField, state.reasoningDetailsObserved ? state.reasoningDetails : undefined);
// Snapshot details at publish time so the emitted event never observes later
// mutation of the accumulated `reasoningDetails` array.
const metadata = reasoningMetadata(state.providerMetadataKey, state.reasoningField, state.reasoningDetailsObserved ? [...state.reasoningDetails] : undefined);
const started = state.reasoningDetailsObserved && !state.reasoningEmitted

@@ -901,0 +902,0 @@ ? Lifecycle.reasoningStart(state.lifecycle, events, "reasoning-0", reasoningMetadata(state.providerMetadataKey, state.reasoningField))

{
"$schema": "https://json.schemastore.org/package.json",
"version": "0.0.0-dev-18575",
"version": "0.0.0-dev-18581",
"name": "@opencode-ai/ai",

@@ -33,3 +33,3 @@ "type": "module",

"@effect/platform-node": "4.0.0-rc.112",
"@opencode-ai/http-recorder": "0.0.0-dev-18575",
"@opencode-ai/http-recorder": "0.0.0-dev-18581",
"@tsconfig/bun": "1.0.9",

@@ -43,3 +43,3 @@ "@types/bun": "1.3.13",

"@smithy/util-utf8": "4.2.2",
"@opencode-ai/schema": "0.0.0-dev-18575",
"@opencode-ai/schema": "0.0.0-dev-18581",
"aws4fetch": "1.0.20",

@@ -46,0 +46,0 @@ "effect": "4.0.0-rc.112",