Commit graph

1329 commits

Author SHA1 Message Date
Vegard Stikbakke
1ffeb828d3 feat(ai): add Codex device code login 2026-05-20 15:31:54 +02:00
Vegard Stikbakke
bf5ac0011e feat(ai): add device code login callback and use for copilot 2026-05-20 12:28:12 +02:00
Mario Zechner
b141e1fa24 chore: remove web-ui workspace 2026-05-20 02:26:09 +02:00
Armin Ronacher
ae9450dc51 chore(ts): use source import extensions 2026-05-20 00:04:03 +02:00
Mario Zechner
06c6c324d7 chore: enforce erasable TypeScript syntax 2026-05-19 23:15:39 +02:00
Mario Zechner
2787b601d7 fix(ai): stop defaulting max token request caps
closes #4675
2026-05-19 11:49:44 +02:00
Mario Zechner
7be75baded fix(ai): clamp OpenAI prompt cache keys
closes #4720
2026-05-19 10:51:11 +02:00
Mario Zechner
4943c1d62c Add [Unreleased] section for next cycle 2026-05-18 11:59:24 +02:00
Mario Zechner
a7d8dd3d5d Release v0.75.3 2026-05-18 11:58:34 +02:00
Mario Zechner
0c4d704a7b Add [Unreleased] section for next cycle 2026-05-18 11:47:16 +02:00
Mario Zechner
ea713ba174 Release v0.75.2 2026-05-18 11:46:23 +02:00
Mario Zechner
b8f51957a0 fix(ai): add Xiaomi reasoning replay compat
closes #4678
2026-05-18 11:15:20 +02:00
Mario Zechner
93b2e7fae7 Add [Unreleased] section for next cycle
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-05-18 02:01:57 +02:00
Mario Zechner
73a61654af Release v0.75.1 2026-05-18 02:01:03 +02:00
Mario Zechner
f1218fa8aa chore: audit unreleased changelogs 2026-05-18 02:00:07 +02:00
Mario Zechner
9e2bfc7c40 fix(ai): skip unknown bedrock content blocks
closes #4223
2026-05-18 01:42:18 +02:00
Mario Zechner
52e13870a1 fix(ai): prefix HTTP status codes onto Azure OpenAI and OpenAI Responses error messages so auto-retry fires on 5xx/429
closes #4232
2026-05-18 01:11:23 +02:00
Mario Zechner
21d80deda2 fix(ai): normalize opencode go reasoning replay
closes #4251
2026-05-18 01:11:23 +02:00
Mario Zechner
ed3904ddd3 fix(ai): switch xiaomi models to openai completions
closes #4505
2026-05-18 00:14:31 +02:00
Mario Zechner
266234047a Remove openai-codex fast model variants, they do not work 2026-05-18 00:02:52 +02:00
Mario Zechner
b256ac7d77 Closes #4342 2026-05-17 23:55:25 +02:00
Mario Zechner
7f3c340dc6 Add [Unreleased] section for next cycle
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-05-17 21:03:41 +02:00
Mario Zechner
12f5c00cc1 Release v0.75.0 2026-05-17 21:02:49 +02:00
Mario Zechner
d5ebc973d0 chore: audit unreleased changelog entries 2026-05-17 21:01:03 +02:00
Mario Zechner
a01cf7afae
Merge pull request #4603 from mattiacerutti/fix/openai-codex-model-list
fix(ai): update OpenAI Codex model list
2026-05-17 20:54:53 +02:00
Mario Zechner
6730c04a65
Merge pull request #4622 from mattiacerutti/fix/copilot-gpt-thinking-map-fix
fix(ai): map copilot gpt 5 minimal thinking to low
2026-05-17 20:53:42 +02:00
Mario Zechner
c9e7049212 fix(coding-agent): remove global fetch override closes #4619 2026-05-17 20:52:06 +02:00
Mario Zechner
6d474f8c1a fix(ai): cap context-sized default output budgets
closes #4614
2026-05-17 20:06:59 +02:00
Mattia Cerutti
485afc9c3f fix(ai): map copilot gpt minimal thinking to low 2026-05-17 12:18:50 +02:00
Mattia Cerutti
1af823be9d fix(ai): update OpenAI Codex model list 2026-05-17 03:12:19 +02:00
Mario Zechner
2c708492e3 Release v0.74.1 2026-05-17 01:35:45 +02:00
Mario Zechner
72104d88f9 docs: audit unreleased changelogs 2026-05-17 01:29:35 +02:00
Mario Zechner
c5831df689 fix(ai): vendor proxy env resolution
closes #4513
2026-05-17 00:02:37 +02:00
Mario Zechner
22a9c484e7 fix(ai): respect model output token limits
closes #4539
2026-05-16 23:33:06 +02:00
Mario Zechner
7c5c3d6fd6 fix(ai): detect litellm context overflow errors
closes #4563
2026-05-16 23:29:22 +02:00
Mario Zechner
0412f62f9e
Merge pull request #4558 from earendil-works/fix/openai-completions-throw-on-missing-finish_reason
fix(ai): openai-completions - throw error on missing finish-reason
2026-05-16 22:54:42 +02:00
Armin Ronacher
87881ca686 fix(ai): preserve OpenRouter cached token semantics
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-05-16 11:55:16 +02:00
Ramiz Wachtler
98ffad0437 fix(ai): openai-completions - throw error on missing finish-reason
- require \ before treating \ streams as successful
- add regression coverage for truncated streams without \
- closes #4345
2026-05-15 15:26:57 +02:00
Mario Zechner
a8af0b5e99 fix(ai): ignore generic GitHub tokens for Copilot auth
Some checks failed
CI / build-check-test (push) Has been cancelled
closes #4485
2026-05-15 01:26:31 +02:00
Ramiz Wachtler
0ae909316a fix(ai): honor retry-after for OpenAI Codex SSE retries
- honor `retry-after-ms` and `retry-after` for OpenAI Codex SSE retries
- add SSE retry coverage for millisecond, seconds, date, and fallback delays
2026-05-13 19:44:07 +02:00
Mario Zechner
40c05f5539
Merge pull request #4473 from apoorvumang/fix/inception-mercury-2-reasoning-off
Some checks are pending
CI / build-check-test (push) Waiting to run
fix(ai): mark inception/mercury-2 thinkingLevelMap.off as null
2026-05-13 18:48:49 +02:00
Mario Zechner
a5cca409d8 refactor(ai): use HTTP proxy agents for Bedrock
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-05-13 16:12:48 +02:00
Apoorv Saxena
e2b69a0bb1 fix(ai): mark inception/mercury-2 thinkingLevelMap.off as null
Mercury 2 in instant mode (reasoning_effort: "none") disables tool calling.
The openai-completions provider hardcodes {reasoning:{effort:"none"}} when no
explicit reasoning level is passed and thinkingLevelMap.off isn't null
(openai-completions.ts:575), so every caller that doesn't opt in to a level
silently breaks Mercury 2's agentic use cases.

Setting thinkingLevelMap.off = null on the Mercury 2 catalog entry causes the
provider to omit the reasoning param entirely, letting Mercury 2's own default
take over. Low/medium/high pass through verbatim; OpenRouter normalizes them
to Mercury's vocabulary.

Prefix-matched on "inception/mercury-2" so future Mercury 2 variants on
OpenRouter inherit the fix.
2026-05-13 19:17:36 +05:30
Armin Ronacher
64882c6a51
chore(deps): remove unused dependencies (#4453) 2026-05-12 23:35:41 +02:00
Mario Zechner
f6b6b1f052
Merge pull request #4354 from haoqixu/fix-bun-ws-proxy
fix(ai): respect proxy envs in bun's websocket
2026-05-10 18:03:48 +02:00
Mario Zechner
cb3c42ecf5
Merge pull request #4358 from yanirz/fix/fireworks-session-affinity-cache
fix(ai): add session affinity and compat fixes for Fireworks provider caching
2026-05-10 18:00:52 +02:00
Mario Zechner
533d37305c fix(ai): align copilot claude adaptive test 2026-05-10 17:51:08 +02:00
Mario Zechner
cf7f2e3dbb fix(ai): update copilot claude test model 2026-05-10 17:47:45 +02:00
yanirz
99dc6fcec8
fix(ai): add session affinity and compat fixes for Fireworks provider caching
Fireworks prompt caching is enabled by default (automatic prefix matching),
but on serverless infrastructure, requests hit random replicas. Without
session affinity, the per-replica cache misses, negating cache hit rates
and the discounted cacheRead pricing.

Changes:

- Add sendSessionAffinityHeaders and supportsCacheControlOnTools
  to AnthropicMessagesCompat interface
- Send x-session-affinity header for Fireworks (and Cloudflare AI
  Gateway Anthropic) when sessionId is available and caching is enabled
- Omit cache_control on tool definitions for Fireworks (unsupported
  per https://docs.fireworks.ai/tools-sdks/anthropic-compatibility)
- Default supportsEagerToolInputStreaming to false for Fireworks
  (unsupported field)
- Default supportsLongCacheRetention to false for Fireworks
  (cache_control.ttl not supported)
- Add compat settings to Fireworks models in generate-models.ts
- Update generated models with Fireworks compat settings
- Add integration tests for session affinity and tool compat

Refs: https://docs.fireworks.ai/guides/prompt-caching
Refs: https://docs.fireworks.ai/tools-sdks/anthropic-compatibility
2026-05-10 00:11:36 +02:00
haoqixu
8c2e3eddec fix(ai): respect proxy envs in bun's websocket
fixes #4346
2026-05-10 03:43:07 +08:00