zelari-code 2.37.1 → 2.37.2

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.
@@ -11,6 +11,8 @@ function frozenProfile(input) {
11
11
  Object.freeze(input.buildRecovery);
12
12
  Object.freeze(input.sampling);
13
13
  Object.freeze(input.compaction);
14
+ if (input.stream)
15
+ Object.freeze(input.stream);
14
16
  return Object.freeze(input);
15
17
  }
16
18
  const SHARED_COMPACTION = { warnAt: 0.7, compactAt: 0.85, hardAt: 0.95 };
@@ -53,6 +55,18 @@ const GROK_CAPS = frozenProfile({
53
55
  buildRecovery: { forceToolChoice: true, maxForcedTurns: 1 },
54
56
  sampling: { temperature: 0.7 },
55
57
  compaction: { ...SHARED_COMPACTION },
58
+ // Copied from Grok Build (`~/.grok/config.toml` + user-guide):
59
+ // inference_idle_timeout_secs = 600
60
+ // max_retries = 8
61
+ // xAI SDK timeout = 3600s on reasoning models
62
+ // grok-4.6 xhigh reasons with hidden tokens + SSE keep-alives and no
63
+ // content for minutes; a 5-min useful-token idle kills BUILD.
64
+ stream: {
65
+ idleMs: 600_000,
66
+ firstTokenIdleMs: 600_000,
67
+ maxMs: 3_600_000,
68
+ maxRetries: 8,
69
+ },
56
70
  profile: 'grok',
57
71
  });
58
72
  const MINIMAX_M3_CAPS = frozenProfile({
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../../src/cli/provider/capabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../../src/cli/provider/capabilities.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA2DH,SAAS,aAAa,CAAC,KAA2B;IAChD,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM;QAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/B,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACjC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACjC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACnC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9B,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChC,IAAI,KAAK,CAAC,MAAM;QAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,iBAAiB,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAW,CAAC;AAElF,MAAM,YAAY,GAAG,aAAa,CAAC;IACjC,aAAa,EAAE,OAAO;IACtB,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE;IACxF,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE;IACxD,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC/B,aAAa,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EAAE;IAC5D,QAAQ,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE;IAC9B,UAAU,EAAE,EAAE,GAAG,iBAAiB,EAAE;IACpC,OAAO,EAAE,SAAS;CACnB,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,aAAa,CAAC;IACrC,aAAa,EAAE,SAAS;IACxB,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE;IAC9E,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;IACvD,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC/B,aAAa,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EAAE;IAC5D,QAAQ,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE;IAC9B,UAAU,EAAE,EAAE,GAAG,iBAAiB,EAAE;IACpC,OAAO,EAAE,aAAa;CACvB,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,aAAa,CAAC;IAC9B,aAAa,EAAE,OAAO;IACtB,wEAAwE;IACxE,0DAA0D;IAC1D,eAAe,EAAE,MAAM;IACvB,SAAS,EAAE;QACT,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC;QAC1C,eAAe,EAAE,KAAK;KACvB;IACD,WAAW,EAAE;QACX,SAAS,EAAE,IAAI;QACf,eAAe,EAAE,IAAI;QACrB,0BAA0B,EAAE,gBAAgB;KAC7C;IACD,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC/B,aAAa,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE;IAC3D,QAAQ,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE;IAC9B,UAAU,EAAE,EAAE,GAAG,iBAAiB,EAAE;IACpC,+DAA+D;IAC/D,sCAAsC;IACtC,oBAAoB;IACpB,gDAAgD;IAChD,qEAAqE;IACrE,8DAA8D;IAC9D,MAAM,EAAE;QACN,MAAM,EAAE,OAAO;QACf,gBAAgB,EAAE,OAAO;QACzB,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,CAAC;KACd;IACD,OAAO,EAAE,MAAM;CAChB,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,aAAa,CAAC;IACpC,aAAa,EAAE,SAAS;IACxB,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;IACrD,WAAW,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE;IACzD,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC/B,aAAa,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EAAE;IAC5D,QAAQ,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE;IAC9B,UAAU,EAAE,EAAE,GAAG,iBAAiB,EAAE;IACpC,OAAO,EAAE,SAAS;CACnB,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,aAAa,CAAC;IACpC,aAAa,EAAE,OAAO;IACtB,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;IACrD,WAAW,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE;IACzD,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC/B,aAAa,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EAAE;IAC5D,QAAQ,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE;IAC9B,UAAU,EAAE,EAAE,GAAG,iBAAiB,EAAE;IACpC,OAAO,EAAE,SAAS;CACnB,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,aAAa,CAAC;IAC7B,aAAa,EAAE,OAAO;IACtB,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;IACrD,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE;IACxD,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC/B,aAAa,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EAAE;IAC5D,QAAQ,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE;IAC9B,UAAU,EAAE,EAAE,GAAG,iBAAiB,EAAE;IACpC,OAAO,EAAE,KAAK;CACf,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,6CAA6C,CAAC;AAClE,MAAM,OAAO,GAAG,kBAAkB,CAAC;AACnC,MAAM,UAAU,GAAG,qBAAqB,CAAC;AACzC,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAC/C,MAAM,MAAM,GAAG,iBAAiB,CAAC;AAEjC,MAAM,UAAU,qBAAqB,CAAC,KAAc,EAAE,UAAmB;IACvE,MAAM,QAAQ,GAAG,UAAU,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAClD,IAAI,QAAQ,KAAK,UAAU;QAAE,OAAO,aAAa,CAAC;IAClD,IAAI,QAAQ,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IACvC,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC7C,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,aAAa,CAAC;IAC3D,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IAChD,IAAI,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACtD,IAAI,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,KAAc,EACd,UAAmB;IAEnB,QAAQ,qBAAqB,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;QACjD,KAAK,aAAa,CAAC,CAAC,OAAO,gBAAgB,CAAC;QAC5C,KAAK,MAAM,CAAC,CAAC,OAAO,SAAS,CAAC;QAC9B,KAAK,SAAS,CAAC,CAAC,OAAO,KAAK,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC;QAC9F,KAAK,KAAK,CAAC,CAAC,OAAO,QAAQ,CAAC;QAC5B,OAAO,CAAC,CAAC,OAAO,YAAY,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAc,EAAE,UAAmB;IACnE,OAAO,qBAAqB,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,aAAa,CAAC;AACpE,CAAC"}
@@ -50,11 +50,16 @@ const BACKOFF_CAP_MS = 8000;
50
50
  *
51
51
  * Now:
52
52
  * - CONNECT: wall clock until response headers (default 90s)
53
- * - STREAM_IDLE: max silence between body chunks (default 5 min)
53
+ * - FIRST_TOKEN_IDLE: silence allowed before the first useful delta
54
+ * (default 10 min — GLM-5.3/Grok thinking can sit quiet or only send
55
+ * keep-alives before reasoning_content)
56
+ * - STREAM_IDLE: max silence between useful deltas after the first
57
+ * (default 5 min)
54
58
  * - STREAM_MAX: hard cap on one stream lifetime (default 30 min)
55
59
  *
56
60
  * Env overrides:
57
61
  * ZELARI_PROVIDER_CONNECT_TIMEOUT_MS
62
+ * ZELARI_PROVIDER_FIRST_TOKEN_IDLE_MS
58
63
  * ZELARI_PROVIDER_STREAM_IDLE_MS
59
64
  * ZELARI_PROVIDER_STREAM_MAX_MS
60
65
  * ZELARI_PROVIDER_TIMEOUT_MS — legacy alias for STREAM_IDLE
@@ -71,6 +76,11 @@ export const PROVIDER_STREAM_IDLE_MS = (() => {
71
76
  const n = raw ? Number.parseInt(raw, 10) : 300_000;
72
77
  return Number.isFinite(n) && n >= 15_000 ? n : 300_000;
73
78
  })();
79
+ export const PROVIDER_FIRST_TOKEN_IDLE_MS = (() => {
80
+ const raw = process.env.ZELARI_PROVIDER_FIRST_TOKEN_IDLE_MS;
81
+ const n = raw ? Number.parseInt(raw, 10) : 600_000;
82
+ return Number.isFinite(n) && n >= 15_000 ? n : 600_000;
83
+ })();
74
84
  export const PROVIDER_STREAM_MAX_MS = (() => {
75
85
  const raw = process.env.ZELARI_PROVIDER_STREAM_MAX_MS;
76
86
  const n = raw ? Number.parseInt(raw, 10) : 1_800_000; // 30 min
@@ -78,6 +88,34 @@ export const PROVIDER_STREAM_MAX_MS = (() => {
78
88
  })();
79
89
  /** @deprecated use PROVIDER_STREAM_IDLE_MS — kept for tests that import the name. */
80
90
  const PROVIDER_TIMEOUT_MS = PROVIDER_STREAM_IDLE_MS;
91
+ /**
92
+ * Per-call stream watchdogs. Env wins when set; otherwise the harness
93
+ * profile (Grok Build-aligned 600s idle / 3600s max on grok-*).
94
+ */
95
+ export function resolveStreamTimeouts(capabilities) {
96
+ const envIdle = process.env.ZELARI_PROVIDER_STREAM_IDLE_MS ?? process.env.ZELARI_PROVIDER_TIMEOUT_MS;
97
+ const envFirst = process.env.ZELARI_PROVIDER_FIRST_TOKEN_IDLE_MS;
98
+ const envMax = process.env.ZELARI_PROVIDER_STREAM_MAX_MS;
99
+ const envRetries = process.env.ZELARI_PROVIDER_MAX_RETRIES;
100
+ const idleMs = envIdle
101
+ ? PROVIDER_STREAM_IDLE_MS
102
+ : (capabilities.stream?.idleMs ?? PROVIDER_STREAM_IDLE_MS);
103
+ const firstRaw = envFirst
104
+ ? PROVIDER_FIRST_TOKEN_IDLE_MS
105
+ : (capabilities.stream?.firstTokenIdleMs ?? PROVIDER_FIRST_TOKEN_IDLE_MS);
106
+ const maxMs = envMax
107
+ ? PROVIDER_STREAM_MAX_MS
108
+ : (capabilities.stream?.maxMs ?? PROVIDER_STREAM_MAX_MS);
109
+ const maxRetries = envRetries
110
+ ? MAX_RETRIES
111
+ : (capabilities.stream?.maxRetries ?? MAX_RETRIES);
112
+ return {
113
+ idleMs,
114
+ firstTokenIdleMs: Math.max(firstRaw, idleMs),
115
+ maxMs,
116
+ maxRetries,
117
+ };
118
+ }
81
119
  /**
82
120
  * Sleep that aborts early if the caller's signal fires (so `.cancel()` during
83
121
  * a backoff window doesn't make the user wait for a doomed retry). Resolves
@@ -100,6 +138,16 @@ function isTimeoutAbortMessage(msg) {
100
138
  m.includes('timeout') ||
101
139
  m.includes('the operation was aborted'));
102
140
  }
141
+ function formatStreamIdleError(elapsedMs, budgetMs, kind) {
142
+ const elapsedS = Math.max(1, Math.round(elapsedMs / 1000));
143
+ const budgetS = Math.max(1, Math.round(budgetMs / 1000));
144
+ const why = kind === 'keep-alive'
145
+ ? 'no content tokens — keep-alive frames don\'t count'
146
+ : 'no tokens';
147
+ return (`Provider stream idle for ${elapsedS}s of ${budgetS}s (${why}). ` +
148
+ `The model/gateway stalled — try again or switch model. ` +
149
+ `Override with ZELARI_PROVIDER_STREAM_IDLE_MS or ZELARI_PROVIDER_FIRST_TOKEN_IDLE_MS.`);
150
+ }
103
151
  /**
104
152
  * Read one stream chunk with idle + absolute max timeouts.
105
153
  *
@@ -128,9 +176,7 @@ export async function readChunkWithTimeout(reader, opts) {
128
176
  // Even if keep-alive frames keep arriving, no CONTENT has been produced
129
177
  // for idleMs — the model/gateway is stalled. Fail fast instead of
130
178
  // letting the socket keep the process alive forever.
131
- throw new Error(`Provider stream idle for ${Math.round(idleElapsed / 1000)}s ` +
132
- `(no content tokens — keep-alive frames don't count). The model/gateway stalled — ` +
133
- `try again or switch model. Override with ZELARI_PROVIDER_STREAM_IDLE_MS.`);
179
+ throw new Error(formatStreamIdleError(idleElapsed, opts.idleMs, 'keep-alive'));
134
180
  }
135
181
  const waitMs = Math.min(opts.idleMs - idleElapsed, remaining);
136
182
  let idleTimer;
@@ -140,9 +186,8 @@ export async function readChunkWithTimeout(reader, opts) {
140
186
  reader.read(),
141
187
  new Promise((_, reject) => {
142
188
  idleTimer = setTimeout(() => {
143
- reject(new Error(`Provider stream idle for ${Math.round(waitMs / 1000)}s ` +
144
- `(no tokens). The model/gateway stalled — try again or switch model. ` +
145
- `Override with ZELARI_PROVIDER_STREAM_IDLE_MS.`));
189
+ const elapsed = Date.now() - opts.lastUsefulAt();
190
+ reject(new Error(formatStreamIdleError(elapsed, opts.idleMs, 'silence')));
146
191
  }, waitMs);
147
192
  if (opts.signal) {
148
193
  onAbort = () => reject(new Error('aborted'));
@@ -169,21 +214,96 @@ function backoffDelay(attempt, retryAfterHeader) {
169
214
  return Math.min(BACKOFF_BASE_MS * 2 ** attempt, BACKOFF_CAP_MS);
170
215
  }
171
216
  /**
172
- * Does this model accept image inputs natively? No third-party vision API is
173
- * involved: the pixels go straight to the model provider as OpenAI
174
- * `image_url` content blocks, using the same API key as the text turn.
217
+ * Endpoints that rejected `image_url` this process (HTTP 400 code 1210 /
218
+ * `messages.content.type` only allows `text`). Next turns skip pixels
219
+ * instead of failing BUILD over and over.
220
+ */
221
+ const textOnlyVisionMemory = new Set();
222
+ function visionMemoryKey(model, probe) {
223
+ return `${probe?.providerId ?? ''}::${model}::${probe?.baseUrl ?? ''}`;
224
+ }
225
+ /** @internal test seam */
226
+ export function resetTextOnlyVisionMemory() {
227
+ textOnlyVisionMemory.clear();
228
+ }
229
+ /** GLM coding-plan hosts (`/api/coding/`) are text-only on the OpenAI wire. */
230
+ export function isGlmCodingEndpoint(baseUrl) {
231
+ if (!baseUrl)
232
+ return false;
233
+ return /\/coding(\/|$)/i.test(baseUrl);
234
+ }
235
+ /**
236
+ * GLM vision SKUs use a trailing `v` (glm-4.5v, glm-4v-flash) or vl/vision.
237
+ * Plain glm-5.3 / glm-5.3-flash / glm-4.5 are text-only on chat/completions.
238
+ */
239
+ export function glmModelLooksVision(model) {
240
+ const n = model.trim().toLowerCase();
241
+ if (!n)
242
+ return false;
243
+ if (/(?:^|[-_/.])(?:vl|vision)(?:[-_/.]|$)/.test(n))
244
+ return true;
245
+ return /^glm[-_.]?[\w.]*v(?:-|$)/.test(n);
246
+ }
247
+ function glmModelIsTextOnly(model) {
248
+ const n = model.trim().toLowerCase();
249
+ if (!n.startsWith('glm'))
250
+ return false;
251
+ return !glmModelLooksVision(n);
252
+ }
253
+ /**
254
+ * Z.AI / GLM coding chat: `{"error":{"code":"1210","message":"messages.content.type is invalid, allowed values: ['text']"}}`.
255
+ * Other 1210s (thinking-off, unknown model) must not strip vision.
256
+ */
257
+ export function isTextOnlyContentRejection(status, body) {
258
+ if (status !== 400)
259
+ return false;
260
+ if (!/messages\.content\.type/i.test(body))
261
+ return false;
262
+ return (/allowed values/i.test(body) ||
263
+ /\[\s*['"]text['"]\s*\]/.test(body) ||
264
+ /取值范围/.test(body) ||
265
+ /is invalid/i.test(body));
266
+ }
267
+ function messagesHaveImageUrl(messages) {
268
+ for (const m of messages) {
269
+ const content = m.content;
270
+ if (!Array.isArray(content))
271
+ continue;
272
+ for (const part of content) {
273
+ if (part &&
274
+ typeof part === 'object' &&
275
+ part.type === 'image_url') {
276
+ return true;
277
+ }
278
+ }
279
+ }
280
+ return false;
281
+ }
282
+ /**
283
+ * Does this model accept image inputs natively? Pixels go to the same
284
+ * provider as the text turn (`image_url` data URIs). No third-party vision API.
175
285
  *
176
- * Vision is ON by default for EVERY model (2.35): name-hint allowlists kept
177
- * missing new vision models (gpt-6-astra, glm-5.x, deepseek v4 …), so the
178
- * pixels are always sent and the provider decides a non-vision endpoint
179
- * either ignores the blocks or errors, and the user explicitly prefers that
180
- * over silently degrading to "pixels were not sent".
286
+ * Default is ON so a Grok (or other vision) lead still receives screenshots.
287
+ * Known text-only wires are excluded *without* a global opt-out:
288
+ * - GLM chat models that are not vision SKUs (glm-5.3, glm-4.5, …)
289
+ * - GLM coding-plan base URLs (`/api/coding/`) even for `v` SKUs
290
+ * - endpoints that already returned HTTP 400 / 1210 this process
181
291
  *
182
- * Opt-out: ZELARI_VISION=0 (or false/off) keeps the text-only payload.
292
+ * Overrides: `ZELARI_VISION=0` forces text-only; `ZELARI_VISION=1` forces pixels.
183
293
  */
184
- export function modelSupportsVision(_model) {
185
- const force = process.env.ZELARI_VISION;
186
- return !(force === '0' || force === 'false' || force === 'off');
294
+ export function modelSupportsVision(model, probe) {
295
+ const force = (process.env.ZELARI_VISION ?? '').trim().toLowerCase();
296
+ if (force === '0' || force === 'false' || force === 'off')
297
+ return false;
298
+ if (force === '1' || force === 'true' || force === 'on')
299
+ return true;
300
+ if (textOnlyVisionMemory.has(visionMemoryKey(model, probe)))
301
+ return false;
302
+ if (isGlmCodingEndpoint(probe?.baseUrl))
303
+ return false;
304
+ if (glmModelIsTextOnly(model))
305
+ return false;
306
+ return true;
187
307
  }
188
308
  /** Build a data: URI from an inline image block. */
189
309
  export function dataUriFromImage(img) {
@@ -396,6 +516,7 @@ function positiveEnvInt(name) {
396
516
  export function openaiCompatibleProvider(config) {
397
517
  return async function* (params) {
398
518
  const capabilities = capabilitiesFor(params.model, config.providerId);
519
+ const streamTimeouts = resolveStreamTimeouts(capabilities);
399
520
  // Map the provider-neutral AgentMessage[] into the OpenAI chat format.
400
521
  // The harness keeps tool results as { role: 'tool', toolCallId, content }
401
522
  // and assistant tool-call turns as { role: 'assistant', content,
@@ -403,35 +524,45 @@ export function openaiCompatibleProvider(config) {
403
524
  // translate both into the shape OpenAI expects:
404
525
  // - assistant with tool_calls: { role:'assistant', content, tool_calls:[{id,type:'function',function:{name,arguments}}] }
405
526
  // - tool result: { role: 'tool', tool_call_id, content }
406
- // Resolve vision capability once per call (model may vary per call).
407
- const vision = modelSupportsVision(params.model);
527
+ // Resolve vision once per call (model may vary). GLM coding / glm-5.3
528
+ // stay text-only so a Grok tentacle can still receive pixels.
529
+ const visionProbe = {
530
+ providerId: config.providerId,
531
+ baseUrl: config.baseUrl,
532
+ };
533
+ let vision = modelSupportsVision(params.model, visionProbe);
408
534
  const msgsIn = params.messages;
409
- // Tool-result pixels accumulated across the current consecutive tool
410
- // run, flushed as one follow-up user message after its last tool message.
411
- let toolRunImages = [];
412
- const messages = msgsIn.flatMap((m, i) => {
413
- const cacheable = !(m.role === 'user' && m.images && m.images.length > 0);
414
- if (cacheable) {
415
- const cached = messageMappingCache.get(m);
416
- if (cached)
417
- return [cached];
418
- }
419
- const mapped = mapAgentMessage(m, vision);
420
- if (cacheable)
421
- messageMappingCache.set(m, mapped);
422
- if (m.role === 'tool') {
423
- if (m.images && m.images.length > 0)
424
- toolRunImages.push(...m.images);
425
- const next = msgsIn[i + 1];
426
- const runEnds = !next || next.role !== 'tool';
427
- if (runEnds && vision && toolRunImages.length > 0) {
428
- const followUp = imagesFollowUpMessage(toolRunImages);
429
- toolRunImages = [];
430
- return [mapped, followUp];
535
+ const wireMessages = (visionFlag) => {
536
+ // Tool-result pixels accumulated across the current consecutive tool
537
+ // run, flushed as one follow-up user message after its last tool message.
538
+ let toolRunImages = [];
539
+ return msgsIn.flatMap((m, i) => {
540
+ const cacheable = visionFlag && !(m.role === 'user' && m.images && m.images.length > 0);
541
+ if (cacheable) {
542
+ const cached = messageMappingCache.get(m);
543
+ if (cached)
544
+ return [cached];
431
545
  }
432
- }
433
- return [mapped];
434
- });
546
+ const mapped = mapAgentMessage(m, visionFlag);
547
+ if (cacheable)
548
+ messageMappingCache.set(m, mapped);
549
+ if (m.role === 'tool') {
550
+ if (m.images && m.images.length > 0)
551
+ toolRunImages.push(...m.images);
552
+ const next = msgsIn[i + 1];
553
+ const runEnds = !next || next.role !== 'tool';
554
+ if (runEnds && visionFlag && toolRunImages.length > 0) {
555
+ const followUp = imagesFollowUpMessage(toolRunImages);
556
+ toolRunImages = [];
557
+ return [mapped, followUp];
558
+ }
559
+ if (runEnds)
560
+ toolRunImages = [];
561
+ }
562
+ return [mapped];
563
+ });
564
+ };
565
+ let messages = wireMessages(vision);
435
566
  // v1.36.0 (P3): per-request generation knobs. The compaction replay
436
567
  // passes purpose:'compaction' + temperature 0.1 + maxTokens so the
437
568
  // summarizer request differs from a conversation request ONLY in
@@ -512,6 +643,10 @@ export function openaiCompatibleProvider(config) {
512
643
  capabilities.buildRecovery.forceToolChoice &&
513
644
  recoveryAttempt <= capabilities.buildRecovery.maxForcedTurns;
514
645
  body.tool_choice = forceRecoveryTool ? 'required' : 'auto';
646
+ // GLM-5.x buffers tool-call args unless tool_stream=true; without it
647
+ // the socket sits silent through thinking+tools and trips stream idle.
648
+ if (config.providerId === 'glm')
649
+ body.tool_stream = true;
515
650
  }
516
651
  const headers = {
517
652
  'Content-Type': 'application/json',
@@ -533,7 +668,7 @@ export function openaiCompatibleProvider(config) {
533
668
  let response;
534
669
  let lastErrText = '';
535
670
  let lastStatus = 0;
536
- for (let attempt = 0; attempt <= MAX_RETRIES; attempt += 1) {
671
+ for (let attempt = 0; attempt <= streamTimeouts.maxRetries; attempt += 1) {
537
672
  if (params.signal?.aborted) {
538
673
  yield { kind: 'error', message: 'aborted' };
539
674
  return;
@@ -597,8 +732,8 @@ export function openaiCompatibleProvider(config) {
597
732
  }
598
733
  // Timeouts: at most 1 retry (was up to 3×5min = 20min of freeze).
599
734
  const maxAttempts = isTimeoutAbortMessage(lastErrText)
600
- ? Math.min(1, MAX_RETRIES)
601
- : MAX_RETRIES;
735
+ ? Math.min(1, streamTimeouts.maxRetries)
736
+ : streamTimeouts.maxRetries;
602
737
  if (attempt < maxAttempts) {
603
738
  await abortableSleep(backoffDelay(attempt, null), params.signal);
604
739
  continue;
@@ -611,7 +746,18 @@ export function openaiCompatibleProvider(config) {
611
746
  break;
612
747
  lastStatus = response.status;
613
748
  lastErrText = await response.text().catch(() => '');
614
- if (!RETRYABLE_STATUSES.has(response.status) || attempt >= MAX_RETRIES)
749
+ // GLM coding / text-only chat: image_url → HTTP 400 code 1210. Strip
750
+ // pixels once and resend so BUILD does not die; remember the wire.
751
+ if (vision &&
752
+ isTextOnlyContentRejection(lastStatus, lastErrText) &&
753
+ messagesHaveImageUrl(messages)) {
754
+ textOnlyVisionMemory.add(visionMemoryKey(params.model, visionProbe));
755
+ vision = false;
756
+ messages = wireMessages(false);
757
+ body.messages = messages;
758
+ continue;
759
+ }
760
+ if (!RETRYABLE_STATUSES.has(response.status) || attempt >= streamTimeouts.maxRetries)
615
761
  break;
616
762
  // Retryable: back off honoring Retry-After if the provider set it.
617
763
  const retryAfter = response.headers.get('retry-after');
@@ -672,20 +818,22 @@ export function openaiCompatibleProvider(config) {
672
818
  }
673
819
  toolCallAccumulator.clear();
674
820
  };
675
- const streamDeadline = Date.now() + PROVIDER_STREAM_MAX_MS;
821
+ const streamDeadline = Date.now() + streamTimeouts.maxMs;
676
822
  // Timestamp of the last delta that actually produced harness-visible
677
823
  // content (text/thinking/tool_call/usage). Updated on every useful
678
824
  // emission so SSE keep-alive frames cannot reset the idle budget.
679
825
  let lastUsefulAt = Date.now();
826
+ let emittedUseful = false;
680
827
  const markUseful = () => {
681
828
  lastUsefulAt = Date.now();
829
+ emittedUseful = true;
682
830
  };
683
831
  try {
684
832
  while (true) {
685
833
  let chunk;
686
834
  try {
687
835
  chunk = await readChunkWithTimeout(reader, {
688
- idleMs: PROVIDER_STREAM_IDLE_MS,
836
+ idleMs: emittedUseful ? streamTimeouts.idleMs : streamTimeouts.firstTokenIdleMs,
689
837
  deadlineMs: streamDeadline,
690
838
  signal: params.signal,
691
839
  lastUsefulAt: () => lastUsefulAt,
@@ -759,9 +907,28 @@ export function openaiCompatibleProvider(config) {
759
907
  },
760
908
  };
761
909
  }
762
- if (typeof delta?.content === 'string' && delta.content.length > 0) {
910
+ const content = delta?.content;
911
+ if (typeof content === 'string' && content.length > 0) {
763
912
  markUseful();
764
- yield { kind: 'text', delta: delta.content };
913
+ yield { kind: 'text', delta: content };
914
+ }
915
+ else if (Array.isArray(content)) {
916
+ for (const part of content) {
917
+ if (!part || typeof part !== 'object')
918
+ continue;
919
+ const p = part;
920
+ const text = typeof p.text === 'string' ? p.text : '';
921
+ if (!text)
922
+ continue;
923
+ markUseful();
924
+ const partType = typeof p.type === 'string' ? p.type : 'text';
925
+ yield {
926
+ kind: partType === 'reasoning' || partType === 'thinking'
927
+ ? 'thinking'
928
+ : 'text',
929
+ delta: text,
930
+ };
931
+ }
765
932
  }
766
933
  // Chain-of-thought / reasoning channel. GLM, DeepSeek, Qwen and
767
934
  // MiniMax expose this separately from `content` so it never needs
@@ -769,16 +936,31 @@ export function openaiCompatibleProvider(config) {
769
936
  // the harness never emits a `thinking_delta` BrainEvent, the
770
937
  // desktop's thinking-render path stays dead, and reasoning either
771
938
  // leaks inline as <think> tags or is silently dropped.
772
- const reasoning = delta?.reasoning_content ??
773
- delta?.reasoning;
774
- if (typeof reasoning === 'string' && reasoning.length > 0) {
939
+ const reasoningRaw = delta?.reasoning_content ??
940
+ delta?.reasoning ??
941
+ delta?.thinking;
942
+ const reasoning = typeof reasoningRaw === 'string'
943
+ ? reasoningRaw
944
+ : reasoningRaw &&
945
+ typeof reasoningRaw === 'object' &&
946
+ typeof reasoningRaw.text === 'string'
947
+ ? reasoningRaw.text
948
+ : reasoningRaw &&
949
+ typeof reasoningRaw === 'object' &&
950
+ typeof reasoningRaw.content === 'string'
951
+ ? reasoningRaw.content
952
+ : '';
953
+ if (reasoning.length > 0) {
775
954
  markUseful();
776
955
  yield { kind: 'thinking', delta: reasoning };
777
956
  }
778
957
  // MiniMax-M3 reasoning_split format: reasoning_details[{text}]
779
958
  // may be cumulative across chunks (same pattern as content buffer).
780
959
  const details = delta?.reasoning_details;
781
- if (Array.isArray(details)) {
960
+ if (Array.isArray(details) && details.length > 0) {
961
+ // grok-4.6 may stream encrypted/opaque reasoning_details with
962
+ // no `text` while hidden reasoning is still running.
963
+ markUseful();
782
964
  for (const d of details) {
783
965
  if (!d || typeof d !== 'object')
784
966
  continue;
@@ -811,6 +993,10 @@ export function openaiCompatibleProvider(config) {
811
993
  // args (e.g. write_file content containing JSON). The
812
994
  // harness executes tools only on finish, so deferring the
813
995
  // parse has no behavioral effect.
996
+ // Fragments ARE useful progress — GLM can stream args for
997
+ // minutes; not marking them left lastUsefulAt at request
998
+ // start and tripped FIRST_TOKEN / STREAM idle.
999
+ markUseful();
814
1000
  for (const tc of delta.tool_calls) {
815
1001
  const idx = tc.index ?? 0;
816
1002
  const existing = toolCallAccumulator.get(idx) ?? {
@@ -1 +1 @@
1
- {"version":3,"file":"openai-compatible.js","sourceRoot":"","sources":["../../../src/cli/provider/openai-compatible.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-compatible.js","sourceRoot":"","sources":["../../../src/cli/provider/openai-compatible.ts"],"names":[],"mappings":"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"}