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
diegosouzapw
8a8a6a4a82
chore(release): v2.8.3 — Czech i18n, SSE protocol fix
...
- #482 : Czech language + VM guide EN translation (@zen0bit)
- #483 : Stop sending trailing data: null after [DONE]
2026-03-19 14:00:18 -03:00
diegosouzapw
659e2b414d
feat(release): v2.8.2 — model alias routing fix, log export, 2 merged PRs
2026-03-19 11:13:49 -03:00
diegosouzapw
a265c7096e
feat(release): v2.8.1 — streaming log fix, Kiro compat, cache tokens, Chinese i18n, configurable tool call ID
2026-03-19 08:45:54 -03:00
diegosouzapw
fe5c20a04e
feat(release): v2.8.0 — Bailian Coding Plan, editable provider URLs, 812 tests
2026-03-19 02:28:45 -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
ce34d329d3
chore(release): v2.7.9
2026-03-18 17:19:42 -03:00
diegosouzapw
1b68deb0f6
feat(release): v2.7.8 — budget save fix + combo agent UI + omniModel tag strip
...
- fix(budget): warningThreshold sent as fraction 0-1 not percentage 0-100 (#451 )
- feat(combos): Agent Features UI in combo modal (system_message, tool_filter_regex,
context_cache_protection) — previously server-only (#454 )
- fix(combos): strip <omniModel> tags before forwarding to provider (#454 )
2026-03-18 15:38:04 -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
146a491769
feat(release): v2.7.5 — login UX + Windows CLI healthcheck
...
- fix(ux): show default password hint on login page (#437 )
- fix(cli): spawn shell:true on Windows for .cmd CLI resolution (#447 )
2026-03-18 14:52:05 -03:00
diegosouzapw
684b81d835
feat(release): v2.7.4 — search playground, i18n fixes, Copilot limits, Serper validation
...
- feat(search): search playground + search tools page + local rerank (#443 @Regis-RCR)
- fix(analytics): localize day/date labels with Intl.DateTimeFormat (#444 @hijak)
- fix(copilot): correct account type display, filter unlimited quotas (#445 @hijak)
- fix(providers): stop rejecting valid Serper API keys on non-4xx (#446 @hijak)
2026-03-18 12:11:00 -03:00
diegosouzapw
896ce9c0e2
feat(release): v2.7.3 — fix Codex direct API weekly quota fallback
...
- fix(codex): resolveQuotaWindow() prefix-matches 'weekly' → 'weekly (7d)' cache keys
- fix(codex): applyCodexWindowPolicy() enforces useWeekly/use5h toggles in direct API
- 4 new regression tests, 766 total passing
- Closes #440
2026-03-18 08:41:13 -03:00
diegosouzapw
d3dfd9ce57
feat(release): v2.7.2 — fix light mode contrast in logs UI
...
- fix(logs): text colors in filter buttons + combo badge now have dark: variants
- Bumped version to 2.7.2
- Updated CHANGELOG and openapi.yaml
2026-03-18 00:42:22 -03:00
diegosouzapw
928b7120f4
feat(release): v2.7.1 — unified web search routing + Next.js 16.1.7 security
...
- POST /v1/search: 5 providers (Serper, Brave, Perplexity, Exa, Tavily), 6,500+ free/mo
- Search analytics dashboard tab + GET /api/v1/search/analytics
- db: request_type column on call_logs (migration 007)
- Next.js 16.1.7: 6 CVEs fixed (critical: CVE-2026-29057 HTTP request smuggling)
- docs/openapi.yaml: bumped to 2.7.1
2026-03-17 16:27:31 -03:00
diegosouzapw
095c84ac16
fix(providerRegistry): remove duplicate claude-haiku-4-5-20251001 from anthropic provider to prevent ambiguous model resolution
2026-03-17 13:10:23 -03: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
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
diegosouzapw
6fa77a63d7
chore(release): v2.6.4 — model name fixes across providers
2026-03-17 01:59:25 -03: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
74d3374d5c
chore(release): v2.6.1 — fix better-sqlite3 startup crash on npm global installs ( #394 )
2026-03-15 21:51:35 -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
36856b18db
chore: release v2.5.3
...
bug fixes (PRs #373 , #371 , #372 , #369 by @kfiramar):
- fix(db): provider_connections.group column migration for existing DBs
- fix(i18n): replace missing deleteConnection key with delete in tooltip
- fix(auth): clear stale error metadata on genuine provider recovery
- fix(startup): unify env loading across npm/electron startup paths
code quality improvements (per kilo-code-bot review):
- docs: document result.success vs response.ok patterns in auth.ts
- refactor: normalize overridePath?.trim() in electron/main.js
- docs: explain preferredEnv merge order intent
2026-03-14 19:53:59 -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
diegosouzapw
b0f5f92f1a
feat(release): v2.4.2 — task-aware routing, HuggingFace/Vertex providers, streaming fixes, token tracking, playground uploads
...
- feat: Task-Aware Smart Routing (T05) — auto-select model by task type
- feat: HuggingFace and Vertex AI provider support
- feat: Playground audio/image file uploads for transcription and vision
- feat: ModelSelectModal shows ✓ for already-added models (#180 )
- fix: Claude Haiku routed to OpenAI without provider prefix (#73 )
- fix: Token counts always 0 for Antigravity/Claude streaming (#74 )
- fix: OpenAI SDK stream=False drops tool_calls (#302 )
- fix: Media page generation errors — inline rendering for images/transcription
- fix: Round-robin state management for excluded accounts (#349 )
- fix: Qwen user agent and CLI fingerprint compatibility (#352 )
- deps: undici→7.24.2, dompurify→3.3.3, docker actions v4
- docs: CHANGELOG 2.4.2 with full feature/fix list
- docs: README with Task-Aware Routing table entry
2026-03-14 11:04:09 -03:00
diegosouzapw
45424ca226
fix(ci): docs-sync, openapi version, changelog format, pre-commit hook
...
- docs/openapi.yaml: update info.version from 2.3.6 to 2.4.1 (fixes CI check)
- CHANGELOG.md: add '## [Unreleased]' section as first heading (required by check-docs-sync)
- scripts/check-docs-sync.mjs: fix regex to accept both hyphen (-) and em-dash (—)
as date separators in changelog headings (standard Keep a Changelog format)
- .husky/pre-commit: add 'node scripts/check-docs-sync.mjs' to catch version
mismatches locally before push
2026-03-13 11:45:32 -03:00
diegosouzapw
87ffe41d8c
fix: i18n sync 29 langs + provider test [object Object] fix
...
- Add cliTools.toolDescriptions.opencode, .kiro, guides.opencode, guides.kiro to en.json
- Sync 1111 missing keys across 29 language files (English fallbacks)
- Fix [object Object] in provider batch test modal:
normalize data.error object to string before setTestResults()
and in ProviderTestResultsView rendering
- Bump version to 2.3.6
2026-03-12 11:11:15 -03:00
diegosouzapw
943a9374b4
fix: permanent @swc/helpers MODULE_NOT_FOUND fix (#crash)
...
prepublish.mjs: explicitly copy @swc/helpers into standalone app/node_modules
before packaging. npm tarball will always include it.
postinstall.mjs: fallback copy of @swc/helpers from root node_modules into
app/node_modules/@swc/ when missing after npm install -g.
Fixes server crash after npm install -g omniroute.
2026-03-12 10:42:59 -03:00
diegosouzapw
8956ffef73
chore: release v2.3.4
2026-03-12 10:27:45 -03:00
diegosouzapw
2c1da9e146
fix(ci): resolve 3 GitHub Actions workflow failures
...
- docs/openapi.yaml: bump version 2.3.1 → 2.3.3 (fixes check:docs-sync CI step)
- tests/unit/model-parse.test.mjs: add missing 'import {test}' from node:test (fixes ReferenceError in unit tests)
- electron/package.json: convert author to object with email (fixes fpm .deb build: 'Please specify author email')
2026-03-12 10:10:45 -03:00
diegosouzapw
a3ad7c6c2e
chore(release): v2.3.1
...
fix(ui): translate hardcoded PT-BR text in OAuthModal to English (#314 , PR #325 )
fix(ts): wrap unknown dataObj fields with toRecord() in usage.ts (Kimi parser)
fix(instrumentation): await getSettings() — property access on Promise (#316 follow-up)
2026-03-11 20:49:37 -03:00
diegosouzapw
e27a2a0d55
chore(release): v2.3.0
...
fix(aliases): custom model aliases applied to routing + restored on startup (#315 #316 , PR #317 )
fix(cli): better-sqlite3 postinstall rebuild cross-platform macOS ARM (#312 , PR #313 @ardaaltinors)
2026-03-11 12:43:50 -03:00
diegosouzapw
c7ae9c30c2
chore(release): v2.2.9
...
feat(providers): persist custom model endpoint edits (#307 , PR #307 by @hijak)
fix(deps): add @swc/helpers as explicit dep to fix MODULE_NOT_FOUND (#306 , PR #308 )
fix(usage): correct Claude quota display — utilization = % used (#299 , PR #309 )
2026-03-11 08:46:16 -03:00
diegosouzapw
8df24c855b
chore(release): v2.2.8
...
fix(docker): healthcheck now uses /api/monitoring/health (#296 , PR #301 )
fix(rate-limit): maxWait=120s on Bottleneck prevents endless queue (#297 , PR #302 )
2026-03-11 00:20:57 -03:00