elky
4e47c00154
fix(dev): bootstrap embedded web dependencies
2026-09-04 12:03:57 +08:00
elky
313a637982
refactor(data): drop sqlite no-op migration
2026-09-04 11:47:05 +08:00
elky
bac6d6866a
refactor(data): remove unpublished legacy cleanup migrations
2026-09-04 11:26:59 +08:00
elky
579f2c7cc1
feat(security): harden gateway boundaries and usage policies
...
Consolidate subscription usage policy enforcement, privacy-safe persistence, and gateway security hardening into one reviewable change.
Includes bounded HTTP and execution envelopes, header and protocol guards, DNS and relay validation, authentication and secret projection hardening, secure backup/install paths, and regression coverage.
2026-09-04 03:45:52 +08:00
elky
ddcbeb3ae9
Merge remote-tracking branch 'origin/main' into worktree-linear-enchanting-bunny
2026-09-03 22:32:25 +08:00
ZheFox
e25fc984af
Merge pull request #792 from zhefox/codex/antigravity-import-email
...
fix(antigravity): preserve imported account email
2026-09-03 22:25:57 +08:00
ZheFox
4cf47b1dee
fix(antigravity): preserve imported account email
2026-09-03 22:22:33 +08:00
elky
95cbd43097
test(gateway): align local execution fixtures with routing
2026-09-03 22:10:11 +08:00
ZheFox
09005939bf
Merge pull request #791 from zhefox/codex/model-pricing-source-selection
...
feat(frontend): persist model pricing sources
2026-09-03 21:48:48 +08:00
ZheFox
7b612b8b5a
feat(frontend): persist model pricing sources
2026-09-03 20:49:42 +08:00
elky
670d5e8d33
Merge remote-tracking branch 'origin/main' into worktree-linear-enchanting-bunny
2026-09-03 20:49:18 +08:00
elky
1de2e70d41
test(gateway): seed default routing strategy in request fixtures
2026-09-03 20:39:48 +08:00
ZheFox
89b57464d2
Merge pull request #790 from zhefox/codex/fix-antigravity-quota
...
fix(frontend): deduplicate Antigravity quota groups
2026-09-03 19:59:46 +08:00
ZheFox
09ef3adf70
fix(frontend): deduplicate Antigravity quota groups
2026-09-03 19:22:42 +08:00
ZheFox
3dfc15963c
Merge pull request #789 from zhefox/codex/fix-antigravity-quota
...
Codex/fix antigravity quota
2026-09-03 18:48:58 +08:00
ZheFox
f6884eb8c4
fix(gemini): accept signature-only reasoning exhaustion
2026-09-03 17:57:40 +08:00
ZheFox
f8b4382a54
test(gateway): align Claude response message ids
2026-09-03 17:04:22 +08:00
ZheFox
d78b5a81fb
fix(gemini): preserve thought-only max-token responses
2026-09-03 17:04:12 +08:00
ZheFox
89fe9e9f0a
fix(runtime): avoid JSON precision stream regression
2026-09-03 16:10:30 +08:00
elky
4291a91dc0
test(gateway): pass routing policy to affinity effects
2026-09-03 15:50:53 +08:00
ZheFox
4c6bafe255
Merge remote-tracking branch 'upstream/main' into codex/fix-antigravity-quota
2026-09-03 15:50:22 +08:00
ZheFox
979dbc4b33
fix(data): preserve jsonb numbers for metadata CAS
2026-09-03 14:37:10 +08:00
elky
9309ad844f
test(gateway): align routing fixtures with strategy policies
2026-09-03 14:11:15 +08:00
ZheFox
d672ba2068
test(gateway): seed routing strategy for antigravity flows
2026-09-03 13:45:57 +08:00
ZheFox
587486ab0c
Merge remote-tracking branch 'upstream/main' into codex/fix-antigravity-quota
2026-09-03 13:24:39 +08:00
ZheFox
40a5e1470d
fix(gateway): persist quota refresh from strong catalog reads
2026-09-03 13:16:40 +08:00
elky
058660ec2e
fix(data): include routing order in postgres snapshot
2026-09-03 12:51:37 +08:00
elky
668bf5e40f
test(data): include latest migration snapshot
2026-09-03 12:27:12 +08:00
elky
77f93c638d
Merge codex/routing-strategy-consolidation into main
2026-09-03 12:00:51 +08:00
elky
d0c0996b9f
Merge origin/main into provider billing form fix
2026-09-03 11:36:49 +08:00
fawney
2cb4d554aa
feat(routing): consolidate scheduling strategy configuration
2026-09-03 11:05:59 +08:00
ZheFox
76fb8905c9
test(gateway): align antigravity response message id
2026-09-03 11:04:18 +08:00
ZheFox
f822df6cce
Merge remote-tracking branch 'origin/main' into codex/fix-antigravity-quota
2026-09-03 10:46:49 +08:00
ZheFox
45c840b8d3
fix(providers): refresh Antigravity grouped quotas
2026-09-03 10:46:44 +08:00
elky
214f3d6406
fix(providers): hide billing fields in provider form
2026-09-02 23:17:01 +08:00
fawney
e8d9877b79
Merge remote-tracking branch 'origin/main'
2026-09-02 22:08:36 +08:00
fawney19
cae9aa4134
Merge pull request #784 from fawney19/worktree-linear-enchanting-bunny
...
feat(routing): move sticky-key retries into routing policy with lazy attempts
2026-09-02 20:56:03 +08:00
elky
7323d41fbe
feat(routing): move sticky-key retries into routing policy with lazy attempts
...
Replace the provider/endpoint max_retries fields as the source of same-key
retries with a routing policy setting, sticky_key_attempts (default 2). Only
the first-ranked candidate is retried on the same key; every failover
candidate gets a single attempt so failover keeps advancing instead of
retrying each fallback key.
Materialize exactly one attempt per candidate and derive same-key retries in
the attempt loop after a candidate-scoped failure, so the retry budget no
longer inflates up-front materialization and needs no upper bound. The budget
travels in the report context; retries reuse the plan with a fresh candidate
id and incremented retry index. Pool groups only retry their first key within
the retry-index stride.
Expose the setting in the routing profile editor and the set_scheduling rule
action, and drop the max_retries input from the provider form.
2026-09-02 20:48:40 +08:00
fawney19
e3644c6142
Merge pull request #779 from fawney19/worktree-linear-enchanting-bunny
...
feat(routing): make routing profiles the sole scheduler policy source
2026-09-02 17:16:57 +08:00
elky
415b2da81b
feat(routing): make routing profiles the sole scheduler policy source
...
Bootstrap an enabled system-default routing group from the legacy
scheduler config keys on startup, resolve the default ordering config
from that group before falling back to the legacy keys, and stop merging
keep_priority_on_conversion with the legacy flag when a policy is
resolved. Thread the policy-derived ordering config into candidate
preselection so it no longer reads system config independently.
Add per-API-format key priority overrides so a key serving several
formats keeps independent ordering, matching the legacy
global_priority_by_format semantics. Expose keep_priority_on_conversion
in the routing profile editor and read the effective policy in the
model routing preview, monitoring metrics and provider page badge.
2026-09-02 17:04:04 +08:00
zhefox
cc6f5e89b6
Merge remote-tracking branch 'zhefox/main' into zhefox-main
2026-09-02 15:57:43 +08:00
zhefox
2ed2cc66ef
fix(formats): retain response field normalization import
2026-09-02 15:44:15 +08:00
zhefox
b1bf7837cf
style: format quota and response changes
2026-09-02 15:40:40 +08:00
zhefox
77229943d1
fix(pool): preserve generic quota windows for model scheduling
2026-09-02 15:29:56 +08:00
zhefox
a0369cf49a
Merge remote-tracking branch 'zhefox/main' into zhefox-main
...
# Conflicts:
# crates/aether-admin/src/provider/quota.rs
# crates/aether-ai/formats/src/formats/openai/chat/stream.rs
# crates/aether-ai/formats/src/formats/openai/responses/mod.rs
# crates/aether-provider/pool/src/provider.rs
# crates/aether-provider/pool/src/quota.rs
2026-09-02 15:25:27 +08:00
zhefox
dbbe7b22ab
fix(pool): isolate dynamic model quota buckets and 429 scheduling
2026-09-02 15:23:23 +08:00
elky
166236c2ee
Merge origin/main into CI dependency fix
2026-09-02 12:30:31 +08:00
ZheFox
0371a961d6
Merge pull request #777 from zhefox/main
...
Fix detection of DeepSeek custom relay models in gateway
2026-09-02 11:24:55 +08:00
ZheFox
144a28f544
feat(admin-users): add plan entitlement revocation flow
2026-09-02 11:23:24 +08:00
elky
611c29f1f5
ci: install VSCodex web dependencies in nightly build
2026-09-02 11:17:06 +08:00