v1.14.0
What's Changed
- ci: shard unit and e2e tests by @steebchen in #3645
- feat: new-account credit purchase kill switch by @steebchen in #3649
- fix(models): restore vertex flex on 3.7 flash by @steebchen in #3651
- feat(admin): block signups by country by @smakosh in #3648
- feat(admin): link org billing to Stripe by @steebchen in #3652
- perf(admin): load DevPass data client-side by @steebchen in #3653
- ci: reduce unit test shards to 5 by @steebchen in #3654
- feat(models): sync Novita mappings and pricing by @steebchen in #3657
- fix(api): grant billed tier on devpass renewal by @steebchen in #3658
- feat(billing): admin-configurable 3D Secure by @steebchen in #3661
- feat(migration): add copy-prompt CTA to guides by @smakosh in #3660
- feat(ui): point template demos at Ploy by @smakosh in #3663
- fix(api): resolve beacon country from LB header by @steebchen in #3662
- fix(api): use headers for signup country by @steebchen in #3667
- feat(models): add Baidu Qianfan International by @steebchen in #3571
- fix(api): link Discord support escalations by @steebchen in #3670
- fix(models): correct Grok effort tiers by @steebchen in #3669
- feat(models): deepseek v4 GA deployments on bytedance by @steebchen in #3650
- fix(models): limit deactivation warnings by @steebchen in #3671
- fix(models): bytedance v3.2 output cap and tiers by @steebchen in #3655
- feat(models): support a base URL for Anthropic by @steebchen in #3672
- fix(models): correct deepinfra quantization metadata by @AmineAce in #3664
- feat(ui): add partners page by @smakosh in #3668
- feat: per-org rate limits, spend & top-up caps by @steebchen in #2646
- fix(models): deactivate Cerebras Llama 3.3 by @steebchen in #3677
- feat(vertex): support projectless API keys by @steebchen in #3675
- feat(models): add DeepSeek V4 Flash on Gonka24 by @steebchen in #3609
- feat: flag abusive-IP signups as high risk by @steebchen in #3656
- fix(gateway): consume invalid AWS EventStream frames by @pacocartones in #3676
- fix(routing): clarify multiplier behavior by @steebchen in #3681
- fix(models): point Fireworks V4 Pro at 0813 GA by @steebchen in #3682
- docs(blog): add azure foundry vs copilot post by @smakosh in #3680
- feat(devpass): confirm high-use resets by @steebchen in #3679
- feat(alerts): notify on billing and risk flags by @steebchen in #3678
- fix(models): correct stale reseller pricing by @steebchen in #3684
- feat(gateway): double DevPass base limits by @steebchen in #3686
- fix(billing): cap top-up choices by @steebchen in #3687
- feat(legal): add provider disclosures by @steebchen in #3688
- feat(models): add glm-5.3 on zai by @smakosh in #3605
- feat(admin): archive flagged accounts by @steebchen in #3692
- fix(routing): show custom models by @steebchen in #3691
- fix(gateway): normalize streaming chunks by @steebchen in #3694
- fix(actions): normalize Google schema enums by @steebchen in #3695
- fix(gateway): route custom models on auto by @steebchen in #3690
- fix(devpass): expose cache write toggle by @steebchen in #3696
- fix(video): log polling error responses by @steebchen in #3693
- chore(models): deactivate retired Opus models by @steebchen in #3699
- feat(models): add Grok 4.6 on Bedrock by @steebchen in #3697
- revert: restore DevPass rate limit defaults by @steebchen in #3698
- feat(models): update Gonka24 DeepSeek Flash by @steebchen in #3700
- feat(admin): paste allowed model lists by @steebchen in #3702
- refactor: rename root models canonical by @steebchen in #3701
- feat(models): add GLM-5.2 Turbo and SCX AU region by @bhuvan2134686 in #3646
- fix(gateway): canonicalize response model ids by @steebchen in #3707
- fix: exclude client errors from uptime by @steebchen in #3709
- chore(models): deactivate NanoGPT mappings by @steebchen in #3710
- fix(models): update ByteDance V4 pricing by @steebchen in #3674
- feat(ui): og images + rankings bar chart by @smakosh in #3713
- fix(models): retire Nebius models by @steebchen in #3717
- fix(api): bound log message scrubbing by @steebchen in #3718
- feat(devpass): hide Flex for new users by @steebchen in #3719
- docs: document OpenCode's two provider entries by @RATCHAW in #3716
- fix(anthropic): correct cache breakpoint handling by @RATCHAW in #3723
- chore(anthropic): drop stale beta headers by @RATCHAW in #3708
- feat(models): restore RanoAI DeepSeek by @steebchen in #3724
- fix(gateway): route matching custom models by @steebchen in #3726
- fix(api): expose key creator and project by @steebchen in #3725
- fix(typo): InclusionAI Ling Flash 3.0 by @vicovaro in #3711
- feat(keys): describe and filter BYOK keys by @steebchen in #3728
- fix(routing): separate filtered candidates by @steebchen in #3732
- feat(caching): add client-managed cache mode by @RATCHAW in #3730
- docs: TanStack AI integration guide + blog post by @smakosh in #3731
- feat(admin): manage payment methods by @steebchen in #3727
- ci: unblock image publishing from tests by @steebchen in #3734
- feat(gateway): per-org concurrency + overload caps by @steebchen in #2668
- fix(gateway): honor custom streaming by @steebchen in #3733
- feat(enterprise): enforce license gating by @steebchen in #3683
- fix(gateway): normalize null tool call types by @steebchen in #3706
- fix(ui): show discounts in model OG cards by @steebchen in #3736
- fix(ui): remove duplicate discount badges by @steebchen in #3737
- feat(models): add Grok 4.6 Vertex mapping by @steebchen in #3735
- fix(video): map xAI moderation failures by @steebchen in #3704
- fix(worker): keep plan overflow off personal credits by @steebchen in #3705
- fix(ui): render AWS Mantle OG logo by @steebchen in #3739
- revert: plan overflow guard on personal credits by @steebchen in #3738
- fix(gateway): preserve multiple choices by @serhiizghama in #3155
- docs(changelog): concurrency limits + roundup by @smakosh in #3743
- fix(ui): enhance models page capability display by @AmineAce in #3712
- feat(gateway): route on tool_choice support by @steebchen in #3519
- feat(models): add Qwen3 0.6B embedder by @steebchen in #3746
- fix(gateway): include tools in cache key by @RATCHAW in #3747
- fix(models): together DeepSeek V4 returns reasoning by @steebchen in #3748
- feat(models): add MiMo provider mappings by @steebchen in #3742
- fix(shared): block IPv6 transition ranges by @steebchen in #3753
- feat(admin): show token split in stats table by @steebchen in #3750
- docs: forbid log-table reads on the gateway path by @steebchen in #3755
- fix(gateway): validate message roles by @steebchen in #3745
- fix(api): scope IAM rule mutations to the API key by @steebchen in #3757
- fix(gateway): scope response cache keys by project by @steebchen in #3758
- perf(worker): settle billing into balances faster by @steebchen in #3761
- fix(api): re-verify email on change, gate admin by @steebchen in #3754
- perf: react best practices audit fixes by @smakosh in #3647
- fix(security): prevent polynomial ReDoS by @steebchen in #3762
- fix(gateway): validate provider image URLs by @steebchen in #3763
- feat(ui): show API key limit status + filters by @steebchen in #3752
- feat(models): add DeepSeek time-based pricing by @steebchen in #3744
- fix(playground): harden MCP server URLs by @steebchen in #3764
- feat(admin): batch delete chat support chats by @smakosh in #3766
- fix(gateway): avoid reasoning storage cost by @steebchen in #3765
- feat: improve agent readiness of llmgateway.io by @smakosh in #3769
- feat(realtime): pin instructions at secret mint by @RATCHAW in #3777
- chore(deps-dev): bump commitlint in / by @dependabot[bot] in #3773
- test(models): pin the off-peak day to the vendor clock, not UTC by @xyzs996 in #3776
- chore(deps-dev): bump @types/node in / by @dependabot[bot] in #3772
- fix(gateway): wait for handler tails on shutdown by @steebchen in #3767
- docs(guides): add Empryo integration guide by @proxysoul in #3779
- fix(docs): constrain Empryo guide icon by @proxysoul in #3783
New Contributors
Full Changelog: v1.13.0...v1.14.0