Mario Zechner
f84c4c89f5
fix(ai): restore FakeOpenAI mock .withResponse() so openai-completions tests pass
...
The openai-completions provider now calls .withResponse() on the
create() result to surface HTTP status/headers for the new onResponse
hook (d131fcd4 ). The FakeOpenAI test mock only returned an async
iterable, so 4 tests in openai-completions-tool-choice.test.ts that
actually consume the stream failed with "withResponse is not a function".
Updated the mock to return a Promise augmented with .withResponse()
resolving to { data: <async iterable>, response: { status, headers } }.
closes #3304
2026-04-16 22:57:30 +02:00
Vegard Stikbakke
45f1a2cd00
fix(ai): set session id headers for all OpenAI compatible responses ( #3264 )
2026-04-16 22:38:40 +02:00
Markus Ylisiurunen
d1c6cb1e0f
fix(ai): Fix a configuration bug with Opus 4.7 adaptive thinking ( #3286 )
2026-04-16 19:57:19 +02:00
Mario Zechner
eb1cf80b10
fix(ai,coding-agent): replace deprecated kimi k2p5 model closes #3242
2026-04-16 12:06:24 +02:00
deepkilo
3a13fa80c8
fix(ai): treat gcp vertex marker as ADC auth ( #3221 )
2026-04-15 16:20:45 +02:00
Mario Zechner
018b40c30c
fix: align OpenAI cache affinity and use uuidv7 session ids
2026-04-14 23:20:13 +02:00
Armin Ronacher
e2b40dfc81
fix(ai): strip partialJson from responses tool calls
...
Mutate persisted tool-call blocks in place on function_call completion,
remove partialJson, and emit the same reference on toolcall_end.
Add regression coverage for persisted block cleanup and event identity.
fixes #3078
2026-04-14 18:56:53 +02:00
Mario Zechner
6044cabb15
fix(ai): preserve cache_write_tokens in completions stream usage closes #2802
2026-04-04 21:39:11 +02:00
Kao Félix
758ede4da0
Enable tool streaming for newer Z.ai models ( #2732 )
2026-03-31 14:28:24 +02:00
Mario Zechner
d86122cbd3
refactor(coding-agent): add runtime host for session switching closes #2024
2026-03-31 13:49:57 +02:00
xu0o0
a3bf1eb399
fix(ai): fix bedrock throttling misidentification ( #2699 )
...
- Add NON_OVERFLOW_PATTERNS to explicitly exclude known non-overflow errors
- Consolidate Cerebras 400/413 no-body check into OVERFLOW_PATTERNS
- Format Bedrock errors as ${error.name}: ${error.message} for pattern matching
2026-03-30 17:26:03 +02:00
Mario Zechner
ef6af5ebbd
feat(ai,coding-agent): add faux provider and ModelRegistry factories
2026-03-29 21:08:50 +02:00
Mario Zechner
bc8eb74b82
fix(ai): detect Ollama overflow errors closes #2626
2026-03-27 02:50:22 +01:00
Mario Zechner
6dc43d6dd1
fix(ai): prune deprecated direct minimax models
2026-03-25 22:44:32 +01:00
Mario Zechner
bab58f821d
fix(ai): omit copilot responses reasoning default closes #2567
2026-03-24 20:39:11 +01:00
Mario Zechner
d1613e3f53
fix(ai): handle explicit thinking off across providers closes #2490
2026-03-22 20:27:44 +01:00
Mario Zechner
6129971c04
fix(ai): explicitly disable Anthropic thinking when off closes #2022
2026-03-22 19:38:54 +01:00
wjonaskr
3bcbae490c
feat(ai): add requestMetadata support to BedrockOptions for cost allocation tagging ( #2511 )
...
Add an optional requestMetadata field to BedrockOptions that forwards
key-value pairs to the Bedrock Converse API ConverseStreamCommand. Tags
appear in AWS Cost Explorer split cost allocation data, enabling callers
to attribute inference costs to specific applications or contexts.
Changes:
- Add requestMetadata?: Record<string, string> to BedrockOptions with
JSDoc documenting AWS constraints (max 50 pairs, key 64 chars, value
256 chars, no aws: prefix)
- Pass requestMetadata to commandInput via conditional spread to avoid
sending undefined when omitted
- Export BedrockOptions from package root (consistent with other
provider option types)
- Add E2E tests: metadata forwarded to SDK payload, and omitted when
not provided
closes #2510
2026-03-22 19:05:55 +01:00
Mario Zechner
b21b42d032
fix(ai): hash foreign responses tool item ids
2026-03-22 05:40:26 +01:00
Mario Zechner
78833dfcbc
chore(ai): format openai completions test
2026-03-21 09:16:49 +01:00
Cheng-Zi-Qing
7e2689ac18
packages/ai: ignore null chunks in openai-completions streams ( #2466 )
2026-03-20 20:01:28 +01:00
Mario Zechner
0d7c81ec9e
fix(ai): skip AJV validation in restricted runtimes closes #2395
2026-03-19 22:51:12 +01:00
Mario Zechner
ff1ea12324
fix(ai): ignore placeholder vertex api keys closes #2335
2026-03-18 22:51:14 +01:00
PriNova
f704ee7255
fix(ai): use OpenRouter reasoning payload ( #2298 )
...
* fix(ai): use OpenRouter reasoning payload
* fix(coding-agent): stop updating packages on startup closes #1963
* fix(ai): add openrouter thinkingFormat compat
---------
Co-authored-by: Mario Zechner <badlogicgames@gmail.com >
2026-03-18 11:23:27 +01:00
Mario Zechner
453b22397d
fix(ai): keep image tool results inline for gemini 3+ and antigravity closes #2052
2026-03-18 02:17:44 +01:00
Mario Zechner
d914d1c199
fix(coding-agent): handle z.ai network_error closes #2313
2026-03-17 22:34:49 +01:00
Mario Zechner
a7559f01e9
feat(ai): lazy-load provider modules for faster startup fixes #2297
2026-03-17 18:03:24 +01:00
Mario Zechner
dd53eb56ee
fix(ai): expose provider response ids on assistant messages fixes #2245
2026-03-17 17:11:38 +01:00
Mario Zechner
16a9b7590c
chore(ai): drop anthropic client injection test closes #2057
2026-03-17 13:32:06 +01:00
Mario Zechner
635bda80d4
Merge commit 0acb65fe from PR #2058
2026-03-17 13:31:00 +01:00
Mario Zechner
e645995a4a
fix(ai): fix anthropic oauth manual callback and refresh flow closes #2169
2026-03-15 15:40:50 +01:00
Mario Zechner
ad48b52de4
fix(ai): align codex websocket headers and terminate SSE closes #1961
2026-03-14 12:23:17 +01:00
Mario Zechner
62064b2b64
fix(ai): support xhigh for opus 4.6 by model id closes #2040
2026-03-14 04:55:03 +01:00
Mario Zechner
933348593c
fix(ai): send tool result images in function_call_output closes #2104
2026-03-14 00:49:40 +01:00
sallyom
0acb65fe1c
feat: allow injecting pre-built Anthropic client
...
Add optional `client` field to AnthropicOptions so callers can pass
alternative SDK clients (e.g. AnthropicVertex) that
share the same messages.stream() API. When omitted, behavior is unchanged.
Signed-off-by: sallyom <somalley@redhat.com >
2026-03-11 11:58:29 -04:00
Ben Hayden
fd0c7c3bdb
fix(ai): improve GitHub Copilot OAuth polling ( #1994 )
2026-03-09 20:15:17 +01:00
Gordon Hui
01f7faae9c
fix(ai): support GOOGLE_CLOUD_API_KEY for google-vertex ( #1948 ) ( #1976 )
2026-03-09 13:30:22 +01:00
Mario Zechner
ade6a35e75
fix(ai): detect z.ai context overflow
...
closes #1937
2026-03-08 00:18:29 +01:00
Mario Zechner
a31065166d
Merge branch 'feat/use-mistral-sdk'
2026-03-05 23:49:29 +01:00
Markus Ylisiurunen
f8d731a134
fix codex context window and add a few tests
2026-03-05 22:54:16 +01:00
Mario Zechner
a0d839ce84
fix(ai): use skip_thought_signature_validator for unsigned Gemini 3 tool calls
...
Replace text fallback with the official sentinel value so unsigned function
calls retain structured context in multi-turn conversations.
closes #1829
2026-03-05 22:04:00 +01:00
Mario Zechner
8f2af2ae7e
feat(ai): add github-copilot gpt-5.3-codex fallback closes #1853
2026-03-05 21:47:52 +01:00
Abdeslam Yassine Agmar
eb9f1183ad
refactor(ai): migrate mistral provider to conversations sdk
2026-03-03 17:25:50 +00:00
Mario Zechner
7b96041068
fix(ai): map groq qwen3 reasoning effort values closes #1745
2026-03-03 16:44:42 +01:00
Mario Zechner
42579dd923
feat(ai,coding-agent): add OpenCode Go provider support closes #1757
2026-03-03 16:02:29 +01:00
Mario Zechner
7bd4c45d81
fix(ai,coding-agent): update antigravity gemini 3.1 models and headers
...
fixes #1761
2026-03-03 14:54:43 +01:00
Mario Zechner
afe9ae06e8
Closes #1671 , switch to GLM-5 for tests
2026-02-27 21:35:40 +01:00
Mario Zechner
18c7ab8a47
chore(models): update Gemini 3.1 provider catalogs and antigravity opus 4.6
2026-02-19 20:33:27 +01:00
Mario Zechner
a26a9cfabd
feat: add configurable transport and codex websocket session caching
2026-02-13 23:41:49 +01:00
Nate Smyth
2419412483
refactor(ai): fix inconsistencies, trim ai code+replace tests, remove unnceccessary tool_result check
2026-02-12 18:41:12 +01:00