mohdel 3.8.0 → 3.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -262,6 +262,11 @@ async function * runStreaming (envelope, client, args, config, start, deps) {
|
|
|
262
262
|
return
|
|
263
263
|
}
|
|
264
264
|
|
|
265
|
+
if (finishReason === null) {
|
|
266
|
+
yield { type: 'error', error: classifyProviderError(new Error(`${config.provider} stream ended before completion`), envelope.auth?.key, { provider: config.provider }) }
|
|
267
|
+
return
|
|
268
|
+
}
|
|
269
|
+
|
|
265
270
|
const collectedToolCalls = Object.values(toolCallAccum).map(tc => ({
|
|
266
271
|
id: tc.id,
|
|
267
272
|
function: { name: tc.name, arguments: tc.arguments }
|
|
@@ -167,12 +167,12 @@ export async function * openai (envelope, deps = {}) {
|
|
|
167
167
|
}
|
|
168
168
|
break
|
|
169
169
|
|
|
170
|
-
case 'response.failed':
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
170
|
+
case 'response.failed': {
|
|
171
|
+
const provider = providerOf(envelope.model)
|
|
172
|
+
const failure = Object.assign(new Error(`${provider} response failed`), { error: event.response?.error })
|
|
173
|
+
yield { type: 'error', error: classifyProviderError(failure, envelope.auth?.key, { provider }) }
|
|
174
|
+
return
|
|
175
|
+
}
|
|
176
176
|
|
|
177
177
|
default:
|
|
178
178
|
break
|
|
@@ -194,8 +194,9 @@ export async function * openai (envelope, deps = {}) {
|
|
|
194
194
|
}
|
|
195
195
|
|
|
196
196
|
const end = String(process.hrtime.bigint())
|
|
197
|
-
if (
|
|
198
|
-
|
|
197
|
+
if (!terminalResponse) {
|
|
198
|
+
const provider = providerOf(envelope.model)
|
|
199
|
+
yield { type: 'error', error: classifyProviderError(new Error(`${provider} stream ended before completion`), envelope.auth?.key, { provider }) }
|
|
199
200
|
return
|
|
200
201
|
}
|
|
201
202
|
// OpenAI Responses reports `output_tokens` INCLUDING reasoning
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mohdel",
|
|
3
|
-
"version": "3.8.
|
|
3
|
+
"version": "3.8.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Christophe Le Bars",
|
|
@@ -144,7 +144,7 @@
|
|
|
144
144
|
"@opentelemetry/exporter-trace-otlp-grpc": "^0.222.0",
|
|
145
145
|
"@opentelemetry/sdk-node": "^0.222.0",
|
|
146
146
|
"chalk": "^6.0.1",
|
|
147
|
-
"mohdel-thin-gate-linux-x64-gnu": "3.8.
|
|
147
|
+
"mohdel-thin-gate-linux-x64-gnu": "3.8.1"
|
|
148
148
|
},
|
|
149
149
|
"dependencies": {
|
|
150
150
|
"@anthropic-ai/sdk": "^0.129.0",
|