diegosouzapw
95ffc21b60
feat(3.0.0-rc.5): Registered Keys Provisioning API ( #464 )
...
Complete implementation of auto-provisioning API:
- DB migration 008: registered_keys, provider_key_limits, account_key_limits
- src/lib/db/registeredKeys.ts: full quota enforcement, idempotency, sha256
hashing, budget tracking, window auto-reset
- POST /api/v1/registered-keys — issue with quota check
- GET /api/v1/registered-keys — list (masked)
- GET|DELETE /api/v1/registered-keys/[id] — get/revoke
- POST /api/v1/registered-keys/[id]/revoke — explicit revoke
- GET /api/v1/quotas/check — pre-validate without issuing
- GET|PUT /api/v1/providers/[id]/limits — provider limits CRUD
- GET|PUT /api/v1/accounts/[id]/limits — account limits CRUD
- POST /api/v1/issues/report — optional GitHub issue reporting
(requires GITHUB_ISSUES_REPO + GITHUB_ISSUES_TOKEN env vars)
- Exported all from localDb.ts
2026-03-22 15:33:45 -03:00
diegosouzapw
f3c5e55b26
feat(3.0.0-rc.4): merge PR #530 — OpenCode Zen and Go providers
...
Includes all commits from @kang-heewon's PR #530 :
- OpencodeExecutor with multi-format routing
- opencode-zen + opencode-go registered in provider registry
- UI metadata added to providers.ts
- Unit tests for OpencodeExecutor (improved to avoid state coupling)
Cherry-picked from add-opencode-providers into 3.0.0-rc.
Conflicts resolved: executors/index.ts (merged pollinations+cloudflare-ai),
providerRegistry.ts (kept testKeyBaseUrl from rc.2 + PR's authType/models).
2026-03-22 15:23:00 -03:00
diegosouzapw
aa93a3f2e2
feat(3.0.0-rc.3): provider icons, model auto-sync, Gemini OAuth fix
...
feat(ui): ProviderIcon component with @lobehub/icons + PNG fallback (#529 )
- 130+ providers covered by Lobehub SVG components via LobehubErrorBoundary
- Falls back to existing /providers/{id}.png, then generic icon
- Replaces manual img state machine in ProviderCard + ApiKeyProviderCard
feat(scheduler): modelSyncScheduler — 24h model list auto-update (#488 )
- Syncs 16 major providers every 24h (MODEL_SYNC_INTERVAL_HOURS configurable)
- Wired into POST /api/sync/initialize startup hook
fix(oauth): Gemini CLI — clear error when client_secret missing in Docker (#537 )
2026-03-22 15:01:38 -03:00
diegosouzapw
8b9abcb6cc
fix(3.0.0-rc.2): resolve issues #536 , #535 , #524
...
fix(providers): LongCat AI key validation — correct base URL and auth header (#536 )
- baseUrl: longcat.chat/api/v1/chat/completions -> api.longcat.chat/openai
- authHeader: 'bearer' -> 'Authorization' + authPrefix: 'Bearer'
fix(combo): implement pinnedModel override in comboAgentMiddleware (#535 )
- Previously: pinnedModel was detected but body.model was never updated
- Now: body = { ...body, model: pinnedModel } when context_cache_protection fires
fix(cli-tools): add OpenCode config save to guide-settings endpoint (#524 )
- Added 'opencode' case to switch in guide-settings/[toolId]/route.ts
- saveOpenCodeConfig(): XDG_CONFIG_HOME aware, writes [provider.omniroute] TOML block
2026-03-22 13:31:56 -03:00
diegosouzapw
1ecc1908c7
chore(3.0.0-rc.1): bump version to 3.0.0-rc.1, close resolved issues, update CHANGELOG
...
- package.json: 2.9.5 → 3.0.0-rc.1
- docs/openapi.yaml: version → 3.0.0-rc.1
- CHANGELOG.md: add [3.0.0-rc.1] section with all batch1-3 fixes
- scripts/check-docs-sync.mjs: isSemver now accepts pre-release versions (X.Y.Z-prerelease.N)
Closed issues: #489 , #492 , #510 , #513 , #520 , #521 , #522 , #525 , #527 , #532
RC versioning: rc.1 → rc.2 → rc.N on each VPS deploy until v3.0.0 is approved
2026-03-22 12:25:30 -03:00
diegosouzapw
e5988764ce
chore(release): v2.9.5 — OpenCode providers, embedding credentials fix, CLI masked key fix, CACHE_TAG_PATTERN fix
...
- feat(providers): add OpenCode Zen and Go providers with multi-format executor (PR #530 by @kang-heewon)
- fix(embeddings): use provider node ID for custom embedding provider credential lookup (PR #528 by @jacob2826)
- fix(cli-tools): resolve real API key from DB (keyId) before writing to CLI config files (#523 , #526 )
- fix(combo): update CACHE_TAG_PATTERN to match literal \\n prefix/suffix around omniModel tag (#531 )
- chore: bump version to 2.9.5 in package.json + docs/openapi.yaml
- docs: update CHANGELOG.md with v2.9.5 release notes
2026-03-22 10:30:04 -03:00
diegosouzapw
2f2d6b8535
chore(release): v2.9.4 — bug fixes ( #491 , #515 , #517 )
...
- fix(translator): preserve prompt_cache_key in Responses API translation (#517 )
- fix(combo): escape \n in tagContent for valid JSON injection (#515 )
- fix(usage): sync expired token status back to DB on live auth failure (#491 )
- chore: bump version to 2.9.4 in package.json + docs/openapi.yaml
- docs: update CHANGELOG.md with v2.9.4 release notes
2026-03-21 17:37:51 -03:00
diegosouzapw
f0419396b5
chore(release): bump version to 2.9.3, update CHANGELOG
...
- Version bumped from 2.9.2 → 2.9.3 in package.json + docs/openapi.yaml
- CHANGELOG.md updated with full release notes for 2.9.3
(5 new free providers, 2 metadata updates, 2 custom executors, docs)
2026-03-21 15:44:35 -03:00
diegosouzapw
3859f1c9ae
chore(release): v2.9.2 — transcription Content-Type fix, Deepgram language detection, TTS error display
...
- fix(transcription): resolveAudioContentType() maps video/mp4 → audio/mp4 for Deepgram/HuggingFace
- fix(transcription): detect_language=true + punctuate=true for Deepgram auto-detection
- fix(tts): upstreamErrorResponse() correctly extracts string from nested error objects
- docs: README transcription/TTS rows updated with provider counts and capabilities
- i18n: sync 29/30 language README files with updated feature descriptions
- chore: bump version 2.9.1 → 2.9.2
2026-03-21 13:54:22 -03:00
diegosouzapw
03f2ef1e2b
fix: omniModel SSE tag data loss + v2.9.1 release ( #511 )
2026-03-21 08:55:28 -03:00
diegosouzapw
c74ed29739
chore(release): v2.9.0 — cross-platform machineId, per-key rate limits, streaming cache, Alibaba DashScope, search analytics, ZWS v5, 8 issues closed
2026-03-20 20:12:34 -03:00
diegosouzapw
4d64e64127
fix: KIRO MITM card text + v2.8.9 release ( #505 )
2026-03-20 16:14:49 -03:00
diegosouzapw
4003c38fd1
fix: OAuth batch test crash + Test All button on provider pages (v2.8.8)
2026-03-20 15:09:48 -03:00
diegosouzapw
48754fd999
release: v2.8.7 — Bottleneck 429 drop (PR #495 ), custom embedding provider fix ( #496 )
2026-03-20 12:57:08 -03:00
diegosouzapw
38266bf2ff
release: v2.8.6 — MiniMax role fix (PR #494 ), KIRO MITM card ( #487 ), triage 8 issues
2026-03-20 12:26:27 -03:00
diegosouzapw
b62e6c5a69
release: v2.8.5 — fix zombie SSE, context cache tag, KIRO MITM
...
Bug Fixes:
- #473 : Reduce STREAM_IDLE_TIMEOUT_MS 300s→120s for faster zombie stream fallback
- #474 : Fix injectModelTag() to handle first-turn (no assistant messages)
- #481 : Change KIRO configType guide→mitm for dashboard MITM controls
- CI: Fix E2E test modal overlay interception
Closed External Issues:
- #468 : Gemini CLI remote (superseded by #462 deprecation)
- #438 : Claude write files (external CLI issue)
- #439 : AppImage (documented libfuse2 workaround)
- #402 : ARM64 DMG damaged (documented xattr -cr workaround)
- #460 : Windows CLI PATH (documented fix)
2026-03-19 20:29:14 -03:00
diegosouzapw
eeb9c69aa3
chore(release): v2.8.4 — Gemini CLI deprecation, VM guide i18n, flatted security fix
...
- #462 : gemini-cli marked deprecated, Zod schema expanded
- #471 : VM guide added to i18n pipeline, 30 locale translations regenerated
- #484 : bump flatted 3.3.3→3.4.2 (CWE-1321)
- Closed : #472 , #471 , #483
2026-03-19 16:32:23 -03:00
dependabot[bot]
9d6296f610
deps: bump flatted from 3.3.3 to 3.4.2
...
Bumps [flatted](https://github.com/WebReflection/flatted ) from 3.3.3 to 3.4.2.
- [Commits](https://github.com/WebReflection/flatted/compare/v3.3.3...v3.4.2 )
---
updated-dependencies:
- dependency-name: flatted
dependency-version: 3.4.2
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-19 19:02:01 +00:00
diegosouzapw
fd2a1320e0
fix: resolve issues #462 , #471 — deprecate gemini-cli, regenerate VM guide i18n
...
- #462 : Mark gemini-cli provider as deprecated in providers.ts
Add deprecated, deprecationReason, hasFree, freeNote, authHint, apiHint
to Zod provider schema
- #471 : Add VM_DEPLOYMENT_GUIDE.md to DOC_SOURCE_FILES in generate-multilang.mjs
Delete 29 stale PT-language copies and regenerate from EN source
for all 30 locales (29 auto-translated + 1 Czech from PR #482 )
2026-03-19 15:57:55 -03:00
diegosouzapw
601cc21a44
feat: call log response content, per-model tool call ID, key PATCH & validation ( #470 )
2026-03-19 08:41:01 -03:00
diegosouzapw
a09b298127
feat(release): v2.7.10 — Alibaba Cloud Coding, Kimi Coding API-key, Docker pino fix
2026-03-19 01:50:00 -03:00
diegosouzapw
718be831af
feat(release): v2.7.7 — Docker pino crash fix + Codex responses worker fix
...
- fix(docker): copy pino-abstract-transport + pino-pretty in standalone (#449 )
- fix(responses): remove initTranslators() from /v1/responses route (#450 )
- chore(deps): commit package-lock.json with each version bump
2026-03-18 15:13:26 -03:00
diegosouzapw
81c43b45fb
fix: pino-abstract-transport missing in Docker + responses worker crash + lock sync
...
- fix(docker): copy pino-abstract-transport and pino-pretty explicitly in
runner-base stage — Next.js standalone trace omits them, causing
'Cannot find module pino-abstract-transport' crash on startup (#449 )
- fix(responses): remove initTranslators() call from /v1/responses route —
bootstrapping translator registry from a Next.js Route Handler worker
caused 'the worker has exited' uncaughtException on Codex CLI requests.
Translators are already bootstrapped server-side via open-sse (#450 )
- chore: include package-lock.json in commit (was being left behind on
version bumps, causing npm ci to install inconsistent deps in Docker)
2026-03-18 15:08:57 -03:00
dependabot[bot]
f9dd967bc5
deps: bump next from 16.1.6 to 16.1.7
...
Bumps [next](https://github.com/vercel/next.js ) from 16.1.6 to 16.1.7.
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/compare/v16.1.6...v16.1.7 )
---
updated-dependencies:
- dependency-name: next
dependency-version: 16.1.7
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-17 16:14:44 +00:00
diegosouzapw
f02c5b5c69
fix(install/v2.6.10): Windows better-sqlite3 prebuilt download ( #426 )
...
npm version patch run BEFORE staging files — this is an ATOMIC commit.
Adds Strategy 1.5 to scripts/postinstall.mjs:
- Uses @mapbox/node-pre-gyp install --fallback-to-build=false
(bundled within better-sqlite3) to download the correct prebuilt
binary for the current OS/arch (win32-x64/arm64, darwin-x64/arm64)
WITHOUT requiring node-gyp, Python, or MSVC build tools.
- Tries node-pre-gyp.cmd (Windows) or node-pre-gyp (Unix) from .bin/
with fallback to direct path in @mapbox/node-pre-gyp/bin/
- Falls back to npm rebuild only if prebuilt download fails.
- Windows-specific error: shows Option A (npx node-pre-gyp) and
Option B (rebuild) with Visual Studio Build Tools links.
Fixes : #426 (better_sqlite3.node is not a valid Win32 application)
2026-03-17 10:09:45 -03:00
diegosouzapw
838f1d645c
fix(v2.6.9): CI budget checks, #409 file attachments, atomic release workflow
...
Includes version bump — v2.6.9 — committed ATOMICALLY with all changes:
fixes:
- fix(ci/t11): Remove 'any' from comments in openai-responses.ts + chatCore.ts
(\bany\b regex counted comment text as explicit any violations)
- fix(chatCore/#409): Normalize unsupported content part types before forwarding
Cursor sends {type:'file'} for .md attachments; Copilot/OpenAI providers reject
with 'type has to be either image_url or text'. Now: file/document→text block,
unknown types dropped with debug log. Fixes claude-* models via github-copilot.
workflow:
- chore(generate-release): ATOMIC COMMIT RULE — npm version patch MUST run before
feature commits so the release tag always points to a commit with full changes
2026-03-17 09:09:01 -03:00
diegosouzapw
ce2c30c437
chore(release): v2.6.8 — combo agents, auto-update, detailed logs, MITM Kiro
2026-03-17 08:58:03 -03:00
diegosouzapw
e45ef00bef
chore(release): v2.6.7 — SSE fixes, local provider_nodes, proxy registry
...
PRs merged: #414 (deps) #415 #417 #419 #420 #421 (SSE fixes)
#418 (Claude passthrough) #422 #416 #423 (local nodes)
#427 (strip empty blocks) #428 (OAuth refreshable)
#429 (proxy registry)
Contributors: @prakersh, @Regis-RCR, @dependabot
2026-03-17 08:17:11 -03:00
Diego Rodrigues de Sa e Souza
650b415537
Merge pull request #414 from diegosouzapw/dependabot/npm_and_yarn/development-cc00f57801
...
deps: bump the development group with 4 updates
2026-03-17 08:09:25 -03:00
diegosouzapw
a9f69711c6
fix(build): remove node: protocol prefix from all src/ imports (#turbopack-compat)
...
Turbopack (Next.js 15) does not process node: URL prefixes correctly when
bundling server-side files that get transitively included. Removed the node:
prefix from 17 files:
- src/lib/db/migrationRunner.ts (node:fs, node:path, node:url)
- src/lib/db/core.ts (node:path, node:fs)
- src/lib/db/backup.ts (node:path, node:fs)
- src/lib/db/prompts.ts (node:fs)
- src/lib/dataPaths.ts (node:path, node:os)
- src/app/api/settings/route.ts
- src/app/api/storage/health/route.ts
- src/app/api/oauth/[provider]/[action]/route.ts
- src/app/api/db-backups/{exportAll,import,export}/route.ts
- src/shared/middleware/correlationId.ts
- src/shared/utils/requestId.ts
- src/lib/apiBridgeServer.ts
- src/lib/cacheLayer.ts
- src/lib/semanticCache.ts
- src/lib/oauth/providers/kimi-coding.ts
Also updated generate-release.md: Docker Hub sync and dual-VPS deploy
are now mandatory steps in every release.
2026-03-17 04:24:46 -03:00
diegosouzapw
a8ab16a720
chore(release): v2.6.5 — reasoning params filter, local 404 fix, Kilo Gateway, dep bumps
...
- fix(sse): strip unsupported params for o1/o1-mini/o1-pro/o3/o3-mini (PR #412 @Regis-RCR)
- fix(sse): model-only lockout (5s) for local provider 404 (PR #410 @Regis-RCR)
- feat(api): Kilo Gateway provider — 335+ models, alias 'kg' (PR #408 @Regis-RCR)
- deps: better-sqlite3 12.8, undici 7.24.4, https-proxy-agent 8 (PR #413 )
2026-03-17 03:05:45 -03:00
Diego Rodrigues de Sa e Souza
a00ef0fc7e
Merge pull request #413 from diegosouzapw/dependabot/npm_and_yarn/production-4d4ff746af
...
deps: bump the production group with 5 updates
2026-03-17 03:03:49 -03:00
diegosouzapw
6fa77a63d7
chore(release): v2.6.4 — model name fixes across providers
2026-03-17 01:59:25 -03:00
dependabot[bot]
9b00f5d550
deps: bump the development group with 4 updates
...
Bumps the development group with 4 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ), [lint-staged](https://github.com/lint-staged/lint-staged ), [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint ) and [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest ).
Updates `@types/node` from 25.4.0 to 25.5.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `lint-staged` from 16.3.2 to 16.4.0
- [Release notes](https://github.com/lint-staged/lint-staged/releases )
- [Changelog](https://github.com/lint-staged/lint-staged/blob/main/CHANGELOG.md )
- [Commits](https://github.com/lint-staged/lint-staged/compare/v16.3.2...v16.4.0 )
Updates `typescript-eslint` from 8.57.0 to 8.57.1
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.1/packages/typescript-eslint )
Updates `vitest` from 4.0.18 to 4.1.0
- [Release notes](https://github.com/vitest-dev/vitest/releases )
- [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.0/packages/vitest )
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-version: 25.5.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development
- dependency-name: lint-staged
dependency-version: 16.4.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development
- dependency-name: typescript-eslint
dependency-version: 8.57.1
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development
- dependency-name: vitest
dependency-version: 4.1.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-16 19:04:07 +00:00
dependabot[bot]
d98ec59c79
deps: bump the production group with 5 updates
...
Bumps the production group with 5 updates:
| Package | From | To |
| --- | --- | --- |
| [better-sqlite3](https://github.com/WiseLibs/better-sqlite3 ) | `12.6.2` | `12.8.0` |
| [https-proxy-agent](https://github.com/TooTallNate/proxy-agents/tree/HEAD/packages/https-proxy-agent ) | `7.0.6` | `8.0.0` |
| [undici](https://github.com/nodejs/undici ) | `7.24.2` | `7.24.4` |
| [wreq-js](https://github.com/sqdshguy/wreq-js ) | `2.1.1` | `2.2.0` |
| [zustand](https://github.com/pmndrs/zustand ) | `5.0.11` | `5.0.12` |
Updates `better-sqlite3` from 12.6.2 to 12.8.0
- [Release notes](https://github.com/WiseLibs/better-sqlite3/releases )
- [Commits](https://github.com/WiseLibs/better-sqlite3/compare/v12.6.2...v12.8.0 )
Updates `https-proxy-agent` from 7.0.6 to 8.0.0
- [Release notes](https://github.com/TooTallNate/proxy-agents/releases )
- [Changelog](https://github.com/TooTallNate/proxy-agents/blob/main/packages/https-proxy-agent/CHANGELOG.md )
- [Commits](https://github.com/TooTallNate/proxy-agents/commits/https-proxy-agent@8.0.0/packages/https-proxy-agent )
Updates `undici` from 7.24.2 to 7.24.4
- [Release notes](https://github.com/nodejs/undici/releases )
- [Commits](https://github.com/nodejs/undici/compare/v7.24.2...v7.24.4 )
Updates `wreq-js` from 2.1.1 to 2.2.0
- [Release notes](https://github.com/sqdshguy/wreq-js/releases )
- [Commits](https://github.com/sqdshguy/wreq-js/compare/v2.1.1...v2.2.0 )
Updates `zustand` from 5.0.11 to 5.0.12
- [Release notes](https://github.com/pmndrs/zustand/releases )
- [Commits](https://github.com/pmndrs/zustand/compare/v5.0.11...v5.0.12 )
---
updated-dependencies:
- dependency-name: better-sqlite3
dependency-version: 12.8.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: production
- dependency-name: https-proxy-agent
dependency-version: 8.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: production
- dependency-name: undici
dependency-version: 7.24.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production
- dependency-name: wreq-js
dependency-version: 2.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: production
- dependency-name: zustand
dependency-version: 5.0.12
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-16 19:03:12 +00:00
diegosouzapw
9b255e643a
chore(release): v2.6.3 — compile-time hash-strip fix, Synthetic provider (PR #404 ), VPS PM2 path fix
2026-03-16 11:00:43 -03:00
diegosouzapw
5d7772ecb0
chore(release): v2.6.2 — fix all module hashing, Anthropic tools filter, custom endpoint paths, Alibaba Cloud provider
2026-03-16 09:53:32 -03:00
diegosouzapw
44478c36a3
chore(release): v2.6.0 — issue resolution sprint ( #390 #340 #344 #377 #378 #337 )
2026-03-15 19:15:38 -03:00
diegosouzapw
2979a36a7c
chore(release): v2.5.9 — codex passthrough + route validation + JWT persist
2026-03-15 15:46:06 -03:00
diegosouzapw
c905119d82
fix(build): remove --webpack from prepublish.mjs — fixes VPS app/server.js missing in npm package
2026-03-15 14:56:20 -03:00
diegosouzapw
ccf9d9214a
chore(release): v2.5.7 — media playground error handling fixes
2026-03-15 13:55:28 -03:00
diegosouzapw
441534853b
chore(release): v2.5.6 — Antigravity OAuth fix, JWT session persistence
2026-03-15 13:05:52 -03:00
diegosouzapw
8e06dc5ace
chore(release): v2.5.5 — model list dedup, Electron build hardening, Kiro credit tracking
2026-03-15 12:34:58 -03:00
diegosouzapw
4b7a9233e7
chore(release): v2.5.4 — logger fix, login bootstrap, HMR origins, CI hardening
2026-03-15 01:12:27 -03:00
diegosouzapw
245243c7e7
chore: release v2.5.2 (version bump, npm conflict with 2.5.1)
2026-03-14 16:01:14 -03:00
diegosouzapw
759ac0df3d
chore: release v2.5.1
...
- PR #368 : gpt-5.4 in Codex model registry (cx/gpt-5.4, codex/gpt-5.4)
- PR #367 : Codex fast tier toggle (default-off, full stack, 48 tests)
- PR #366 : Codex quota policy 5h/weekly with auto-rotation
- fix #356 : analytics charts show provider display names not raw IDs
2026-03-14 15:55:06 -03:00
diegosouzapw
da14390fe0
chore: release v2.5.0
...
Includes:
- PR #363 : strict-random strategy, API key controls, connection groups, Limits UX (AndersonFirmino)
- PR #365 : external pricing sync with LiteLLM 3-tier resolution (Regis-RCR)
- fix #355 : stream idle timeout 60s → 300s for thinking models
- fix #350 : combo test bypasses REQUIRE_API_KEY via X-Internal-Test header
- fix #346 : filter tools with empty function.name before forwarding upstream
2026-03-14 15:31:27 -03:00
diegosouzapw
1b354be827
feat: T07 — API Key Round-Robin per provider connection
...
- New: open-sse/services/apiKeyRotator.ts — round-robin rotation
between primary API key + providerSpecificData.extraApiKeys[]
- Modified: open-sse/executors/base.ts — buildHeaders() rotates key
using getRotatingApiKey() when extraApiKeys configured
- Modified: open-sse/handlers/chatCore.ts — injects connectionId into
credentials to enable per-connection rotation index tracking
- Modified: providers/[id]/page.tsx — 'Extra API Keys' UI section in
EditConnectionModal: add/remove keys, persisted in providerSpecificData
T08 (quota window rolling) and T13 (wildcard model routing) confirmed
already implemented in accountFallback.ts and wildcardRouter.ts.
2026-03-14 15:03:54 -03:00
diegosouzapw
75a6d850fc
chore: release v2.4.3
...
- fix: Codex/GitHub limits page HTTP 500 → graceful 401/403 messages
- fix: MaintenanceBanner false-positive on page load (stale closure)
- fix: add title tooltips to edit/delete buttons in ConnectionCard
- feat: add fill-first and p2c routing strategies to combo picker
- feat: Free Stack template pre-fills 7 free provider models
- feat: combo create/edit modal wider (max-w-4xl)
2026-03-14 12:49:36 -03:00
dependabot[bot]
56936fe0e3
deps: bump undici from 7.24.1 to 7.24.2 ( #361 )
...
Bumps [undici](https://github.com/nodejs/undici ) from 7.24.1 to 7.24.2.
- [Release notes](https://github.com/nodejs/undici/releases )
- [Commits](https://github.com/nodejs/undici/compare/v7.24.1...v7.24.2 )
---
updated-dependencies:
- dependency-name: undici
dependency-version: 7.24.2
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-14 10:58:46 -03:00