zhefox
6ab08f4014
fix(ai-formats): preserve Claude raw blocks, reasoning tokens, and test stack safety
2026-06-17 03:45:23 +08:00
zhefox
628a3a0d8d
fix(ai-formats): support cyber policy failover and custom tool/audio passthrough
2026-06-17 02:33:14 +08:00
elky
f52628e00b
Handle OpenAI Responses keepalive stream events
2026-06-16 22:52:06 +08:00
zhefox
f9d97ececb
fix(ai-formats): ignore OpenAI Responses metadata events
2026-06-16 22:34:38 +08:00
fawney19
803e555022
Merge pull request #635 from zhefox/main
...
fix(gateway): 支持 OpenAI 图片编辑端点请求
2026-06-16 22:31:52 +08:00
zhefox
b1bd727978
将 JSON 提示注入为 developer 输入
2026-06-16 21:40:15 +08:00
zhefox
c2748dc868
忽略 OpenAI Responses keepalive 事件
2026-06-16 20:00:46 +08:00
ZheFox
302620cb94
Merge branch 'fawney19:main' into main
2026-06-16 12:17:28 +08:00
AAEE86
c255f29e98
Merge remote-tracking branch 'upstream/main'
2026-06-16 10:53:47 +08:00
Kayphoon
6d1b818414
fix(usage): align cleanup loop break conditions with candidate row count
...
The cleanup loop break condition used rows_affected() from the UPDATE
statement, but for rows that only had blob/audit refs (no inline
compressed body data), the UPDATE reported 0 affected rows. This caused
the loop to exit after the first batch, skipping the majority of
candidates.
Change the break condition in all 4 cleanup functions from:
if cleaned == 0 || cleaned < batch_size
to:
if rows.len() < batch_size
This ensures the loop continues as long as SELECT returns a full batch,
regardless of how many rows the UPDATE actually modified.
Affected functions:
- cleanup_usage_raw_body_fields
- cleanup_usage_compressed_body_fields
- cleanup_usage_header_fields
- cleanup_usage_stale_body_fields
2026-06-16 04:19:58 +08:00
elky
669636d3e4
Harden PII redaction format conversion
v0.7.9
2026-06-14 20:36:57 +08:00
elky
68038c182b
Distinguish expired OAuth token status
2026-06-12 19:43:59 +08:00
elky
308cc88ef7
Fix provider deletion cleanup
2026-06-12 16:25:11 +08:00
elky
30b545785f
feat: improve failover rules and request timeline
2026-06-11 00:49:29 +08:00
elky
31fade82f6
Preserve OpenAI encrypted reasoning blocks
2026-06-10 20:02:03 +08:00
elky
0246ba93dd
fix(transport): preserve safe accept encoding
2026-06-10 19:58:57 +08:00
elky
ff7ec8575c
fix(ai-formats): ignore null stream errors
2026-06-10 18:44:46 +08:00
elky
aa58cb4a05
build: speed up release image linking
2026-06-10 18:37:23 +08:00
elky
e9b4efc2d4
fix(ai-serving): preserve explicit request encoding
2026-06-10 18:16:55 +08:00
elky
ea76f7bb0b
Support OpenAI Responses builtin tool stream items
2026-06-10 14:49:13 +08:00
elky
8edcbdcb29
feat(usage): expose request timing details
2026-06-10 09:16:15 +08:00
ndllz
5249660e07
fix: respect oauth module disabled state
2026-06-09 18:13:07 +08:00
ndllz
84b99a641a
fix: speed up usage activity heatmap render
2026-06-09 16:52:58 +08:00
AAEE86
4824e4a487
fix(frontend): 移除账号导入重复处理中提示
2026-06-09 16:40:45 +08:00
zhefox
ba723ebe48
fix(usage): always use truncated body placeholder when limit exceeded
2026-06-09 09:59:10 +08:00
zhefox
04ba8cbe9e
fix(gateway): support openai image accept negotiation
2026-06-08 20:40:30 +08:00
elky
84f41dae77
feat(format): audit same-format compatibility rewrites
2026-06-08 16:12:37 +08:00
zhefox
82040bfc21
fix(gateway): support OpenAI image edit requests
2026-06-08 13:22:08 +08:00
elky
6155ffefcc
fix(format): avoid false cache-control conversion blocks
2026-06-08 00:52:48 +08:00
elky
bf4279a590
Merge remote-tracking branch 'origin/main' into dev
...
# Conflicts:
# crates/aether-ai-formats/src/formats/openai/chat/stream.rs
# crates/aether-ai-formats/src/formats/openai/responses/response.rs
# crates/aether-ai-formats/src/formats/shared/sync_products.rs
2026-06-08 00:17:30 +08:00
elky
77759fac54
feat: 新增提供商批量处理功能
2026-06-07 22:57:02 +08:00
elky
63a2fd4dcf
Merge origin/main into dev
2026-06-06 03:11:38 +08:00
elky
7a19891c60
fix: distinguish unaudited conversion fields
2026-06-06 00:35:27 +08:00
AAEE86
85573d7980
Merge remote-tracking branch 'upstream/main'
2026-06-05 08:28:43 +08:00
zhefox
ebd59246a8
fix(test): assert responses timestamps and output text in finalize tests
2026-06-04 17:35:10 +08:00
zhefox
fd27f55fe5
fix(provider): normalize OpenAI Responses modern fields and stream events
2026-06-04 15:45:37 +08:00
fawney19
69b8b96fb8
Merge pull request #625 from stabey/pr/responses-call-items-cache-control-20260604
...
fix: 剥离 Codex cache_control 并完善 Responses 工具调用展示
2026-06-04 13:59:56 +08:00
fawney19
19d1d36043
Merge pull request #620 from zhefox/main
...
fix(provider): 修复 Chat reasoning_effort 值域与 Responses 扩展透传
2026-06-04 13:59:42 +08:00
stabey
9f19ca5754
fix(usage): keep streamed call args in responses completion
...
The response.completed fallback rebuilt every call item with responsesCallInput(), which returns '{}' for a function_call lacking arguments. Since '{}' is truthy, ensureToolCall overwrote arguments already collected from streamed delta events. Guard the completed branch with responsesCallHasInput (matching the output_item.done branch) so empty/default inputs no longer clobber streamed args, and align its dedupe key with the streaming phase to avoid duplicate tool-call rendering when an item has no id. Drop the now-dead '工具调用' fallbacks since responsesCallName never returns empty.
2026-06-04 13:30:20 +08:00
stabey
2de2a792f6
fix(codex): strip cache_control before responses upstream
2026-06-04 12:01:36 +08:00
stabey
ada690624b
fix(usage): render responses call items in conversation view
2026-06-04 11:06:36 +08:00
elky
465476985b
fix: preserve provider schema drift safely
2026-06-03 22:29:24 +08:00
elky
da5624c98e
chore: add format field coverage generator
2026-06-03 21:44:33 +08:00
elky
b2f68bbaf7
feat: enforce full format field coverage audit
2026-06-03 21:18:49 +08:00
elky
7507af5829
feat: audit strict format conversion contracts
2026-06-03 20:27:15 +08:00
zhefox
5e39801bba
fix(provider): clamp reasoning effort and filter chat extensions
2026-06-03 10:52:26 +08:00
elky
5ac153a0bb
Fix gateway nextest stack limit
v0.7.8
2026-06-03 01:32:25 +08:00
elky
c7a5155ce4
Fix sync CLI test stack overflow
2026-06-03 01:12:40 +08:00
elky
869c3d3037
Fix finalize local test stack overflow
2026-06-03 00:48:36 +08:00
elky
ef6a11c146
fix(gateway): preserve heartbeat no-path fallback
2026-06-03 00:25:01 +08:00