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
v2.6.3
2026-03-16 11:00:43 -03:00
Diego Rodrigues de Sa e Souza
ca1f918e9e
Merge pull request #404 from Regis-RCR/feat/synthetic-provider
...
feat(api): add Synthetic as a new API key provider
2026-03-16 10:59:13 -03:00
diegosouzapw
bb3fe1cd48
fix(build): strip Turbopack hashed require() from compiled server chunks in prepublish
...
Even with EXPERIMENTAL_TURBOPACK=0 and NEXT_PRIVATE_BUILD_WORKER=0, Next.js 16
instrumentation chunks still emit require('better-sqlite3-<16hexchars>') and
require('zod-<16hexchars>') into the compiled .js files inside .next/server/.
The webpack externals function in next.config.mjs patches the runtime bundler
but does NOT rewrite already-compiled chunks. Added step 5.6 to prepublish.mjs:
walks all .js files in app/.next/server/ and strips the 16-char hex suffix from
any require() string that matches the Turbopack hash pattern.
Also updated deploy-vps workflow: npm registry rejects 299MB packages, so
deployment now uses npm pack + scp + npm install -g /tmp/omniroute-*.tgz.
PM2 entry point is app/server.js inside the npm global package.
2026-03-16 10:46:27 -03:00
diegosouzapw
5d7772ecb0
chore(release): v2.6.2 — fix all module hashing, Anthropic tools filter, custom endpoint paths, Alibaba Cloud provider
v2.6.2
2026-03-16 09:53:32 -03:00
Diego Rodrigues de Sa e Souza
56ce618eca
Merge pull request #400 from Regis-RCR/feat/custom-endpoint-paths
...
feat(api): custom endpoint paths for compatible provider nodes
2026-03-16 09:46:22 -03:00
Diego Rodrigues de Sa e Souza
b0381c7542
Merge pull request #397 from xandr0s/fix/tools-filter-claude-format
...
fix(chat): handle Anthropic-format tools in empty-name filter (#346 )
2026-03-16 09:40:39 -03:00
Diego Rodrigues de Sa e Souza
b328ed5fa9
Merge pull request #403 from diegosouzapw/fix/issue-396-398-hashed-externals-all-packages
...
fix(build): extend externals hash-strip to cover ALL Turbopack-hashed packages (#396 , #398 )
2026-03-16 09:37:05 -03:00
diegosouzapw
7d72f1711f
fix(build): extend externals hash-strip to cover ALL packages, not just better-sqlite3 ( #396 , #398 )
...
Turbopack in Next.js 16 hashes ALL serverExternalPackages (not just better-sqlite3),
emitting require() calls like 'zod-dcb22c6336e0bc69', 'pino-28069d5257187539' etc.
that don't exist in node_modules.
Changes:
- next.config.mjs: Replace single-package check with a HASH_PATTERN regex
that strips '<name>-<16hexchars>' suffix for any externalized package.
Also adds KNOWN_EXTERNALS set for exact-name matching.
- scripts/prepublish.mjs: Add NEXT_PRIVATE_BUILD_WORKER=0 env to reinforce
webpack mode. Add post-build scan that reports hashed refs so CI is visible.
Closes #396 , addresses #398
2026-03-16 09:34:34 -03:00
Regis
d139b4557f
feat(api): add Synthetic as a new API key provider
...
Add Synthetic (synthetic.new) as a privacy-focused LLM provider
with OpenAI-compatible API, dynamic model catalog via /models
endpoint, and passthrough model support.
- Register provider in providerRegistry.ts with 6 initial models
- Add APIKEY_PROVIDERS entry with verified_user icon (#6366F1)
- Add models listing config for /api/providers/[id]/models endpoint
- passthroughModels enabled for dynamic model catalog
2026-03-16 12:39:23 +01:00
Regis
cd05e03d63
fix(review): simplify cascade logic and add ARIA attributes
...
Address review feedback:
- Simplify providerSpecificData cascade for chatPath/modelsPath
using `|| undefined` instead of conditional spreads (Gemini)
- Add aria-expanded, aria-controls, aria-hidden to Advanced
Settings toggle buttons for accessibility (Copilot)
2026-03-16 11:29:06 +01:00
Regis
e25029939d
feat(api): add custom endpoint paths for compatible provider nodes
...
Allow provider_nodes to configure custom chat and models endpoint
paths via chatPath/modelsPath fields. This enables providers with
non-standard versioned APIs (e.g. /v4/chat/completions) to work
without embedding the version prefix in base_url.
- Add migration 003: chat_path and models_path columns
- Update Zod schemas (create, update, validate)
- Update CRUD in providers.ts (INSERT/UPDATE)
- Wire chatPath/modelsPath through API routes and providerSpecificData cascade
- Read chatPath in DefaultExecutor and BaseExecutor buildUrl()
- Use modelsPath in validate endpoint
- Add Advanced Settings UI section (collapsible) in create/edit modals
- Update base URL hint to reference Advanced Settings
- Add i18n keys across all 30 locales
- Add unit tests for buildUrl with custom paths
Backward compatible: NULL chatPath/modelsPath = default behavior.
2026-03-16 10:23:44 +01:00
Oleg Saprykin
53de27417d
fix(chat): handle Anthropic-format tools in empty-name filter ( #346 )
...
The filter introduced in #346 only checked OpenAI-format tool names
(tool.function.name), silently dropping all tools when the request
arrives in Anthropic Messages API format (tool.name without .function).
This happens when LiteLLM proxies requests with anthropic/ model prefix —
it translates to Anthropic format before forwarding, so OmniRoute receives
Claude-format tools. The filter drops them all, causing Anthropic API to
return 400: 'tool_choice.any may only be specified while providing tools'.
Fix: check both formats with fn?.name ?? tool.name.
2026-03-16 11:37:40 +03:00
diegosouzapw
74d3374d5c
chore(release): v2.6.1 — fix better-sqlite3 startup crash on npm global installs ( #394 )
v2.6.1
2026-03-15 21:51:35 -03:00
Diego Rodrigues de Sa e Souza
3ae00bebe4
Merge pull request #395 from diegosouzapw/fix/issue-394-better-sqlite3-module-resolution
...
fix(build): force better-sqlite3 webpack external to prevent hash-based module name in instrumentation hook (#394 )
2026-03-15 21:47:46 -03:00
diegosouzapw
f9df72c4d7
fix(build): force better-sqlite3 webpack external to prevent hash-based module name in instrumentation hook ( #394 )
2026-03-15 21:45:19 -03:00
diegosouzapw
d0fb4576a8
ci: add workflow_dispatch to npm-publish, fix version sync for manual triggers
2026-03-15 20:20:44 -03:00
Diego Rodrigues de Sa e Souza
0e4b0b3540
Merge pull request #393 from diegosouzapw/fix/issue-392-docker-workflow
...
fix: add workflow_dispatch to docker-publish, update action versions (#392 )
2026-03-15 20:11:54 -03:00
diegosouzapw
df1105d0c6
fix: add workflow_dispatch to docker-publish, update action versions ( #392 )
2026-03-15 20:06:49 -03:00
diegosouzapw
44478c36a3
chore(release): v2.6.0 — issue resolution sprint ( #390 #340 #344 #377 #378 #337 )
v2.6.0
2026-03-15 19:15:38 -03:00
Diego Rodrigues de Sa e Souza
fa267274b0
Merge pull request #386 from kfiramar/chore-test-script-loader-consistency
...
chore(tests): align targeted test runners
2026-03-15 19:08:47 -03:00
Diego Rodrigues de Sa e Souza
0db272946a
Merge pull request #391 from diegosouzapw/fix/multi-issues-390-340-378
...
fix(media,auth,oauth): hide unconfigured local providers, round-robin improvement, OAuth popup fix
2026-03-15 19:08:45 -03:00
diegosouzapw
91015b6499
fix(media,auth,oauth): hide unconfigured local providers, improve round-robin, fix OAuth popup ( #390 #340 #344 )
2026-03-15 18:48:40 -03:00
diegosouzapw
2979a36a7c
chore(release): v2.5.9 — codex passthrough + route validation + JWT persist
v2.5.9
2026-03-15 15:46:06 -03:00
Diego Rodrigues de Sa e Souza
72f6d6b7b9
Merge pull request #388 from kfiramar/fix-route-validation-t06
...
fix(build,api): restore production build and validate route bodies
2026-03-15 15:43:32 -03:00
Diego Rodrigues de Sa e Souza
d81a7bcedf
Merge pull request #387 from kfiramar/feat-codex-native-responses-parity
...
All tests pass except pre-existing clearAccountError module resolution (dataPaths) which is unrelated to this PR. Merging codex native passthrough fix.
2026-03-15 15:43:11 -03:00
Kfir Amar
8fbbe8b82b
Revert "fix(api): validate pricing sync and task routing routes"
...
This reverts commit 7c992ffd21 .
2026-03-15 20:37:18 +02:00
Kfir Amar
271f5f9c64
Revert "fix(api): validate pricing sync and task routing routes"
...
This reverts commit fc2af8ba87 .
2026-03-15 20:37:18 +02:00
Kfir Amar
7c992ffd21
fix(api): validate pricing sync and task routing routes
2026-03-15 20:30:00 +02:00
Kfir Amar
fc2af8ba87
fix(api): validate pricing sync and task routing routes
2026-03-15 20:30:00 +02:00
Kfir Amar
c8a539a6cb
fix(review): surface secret fallback and tighten error typing
2026-03-15 20:25:12 +02:00
Kfir Amar
b7cdaa662a
fix(api): validate pricing sync and task routing routes
2026-03-15 20:25:12 +02:00
Kfir Amar
0a25930020
fix(mitm): use standalone-safe server entrypoint
2026-03-15 20:25:12 +02:00
Kfir Amar
8643f4015f
fix(build): restore webpack production build
2026-03-15 20:25:11 +02:00
diegosouzapw
1854711aff
fix(build): fix Next.js 16 Turbopack standalone build for npm publish
...
- instrumentation.ts: eval(require) → createRequire (banned in Turbopack edge runtime)
- mitm/manager.ts: static imports → lazy require getters to prevent Turbopack trace
- mitm/manager.stub.ts: build-time stub for turbopack.resolveAlias
- antigravity-mitm/route.ts: dynamic imports + nodejs runtime + remove use server
- next.config.mjs: turbopack.resolveAlias for mitm stub + expanded serverExternalPackages
- prepublish.mjs: remove --webpack flag (removed in Next.js 15+)
2026-03-15 15:18:00 -03:00
diegosouzapw
c905119d82
fix(build): remove --webpack from prepublish.mjs — fixes VPS app/server.js missing in npm package
v2.5.8
2026-03-15 14:56:20 -03:00
diegosouzapw
c581ca8339
fix(build): remove deprecated --webpack flag from next build script
2026-03-15 14:05:46 -03:00
diegosouzapw
ccf9d9214a
chore(release): v2.5.7 — media playground error handling fixes
v2.5.7
2026-03-15 13:55:28 -03:00
diegosouzapw
d37c8b732f
fix(media): proper JSON error responses + fix false-positive empty transcript credential error
2026-03-15 13:54:33 -03:00
diegosouzapw
f707fc1cad
fix(media): proper JSON error responses + fix false-positive empty transcript credential error
2026-03-15 13:52:34 -03:00
Kfir Amar
b1c713de60
fix(codex): avoid mutating request body
2026-03-15 18:35:43 +02:00
Kfir Amar
0f13965391
chore(tests): align targeted test runners
2026-03-15 18:25:22 +02:00
Kfir Amar
8642e2b721
fix(codex): preserve native responses payloads
2026-03-15 18:25:22 +02:00
diegosouzapw
441534853b
chore(release): v2.5.6 — Antigravity OAuth fix, JWT session persistence
v2.5.6
2026-03-15 13:05:52 -03:00
Diego Rodrigues de Sa e Souza
82f42c8664
Merge pull request #385 from diegosouzapw/fix/issue-382-jwt-persistence
...
fix: persist JWT_SECRET to SQLite so restarts don't invalidate sessions (#382 )
2026-03-15 13:04:57 -03:00
Diego Rodrigues de Sa e Souza
5cd318fa9a
Merge pull request #384 from diegosouzapw/fix/issue-383-antigravity-oauth-secret
...
fix: add Antigravity OAuth clientSecret fallback (#383 )
2026-03-15 13:04:55 -03:00
diegosouzapw
5506071e9a
fix: add Antigravity OAuth clientSecret fallback — empty string caused 'client_secret is missing' ( #383 )
2026-03-15 12:58:51 -03:00
diegosouzapw
ced98f2da7
fix: persist JWT_SECRET to SQLite so restarts don't invalidate sessions ( #382 )
2026-03-15 12:56:52 -03:00
diegosouzapw
282ec65e8b
docs(i18n): sync FEATURES.md v2.5.5 update to 30 languages
2026-03-15 12:45:20 -03:00
diegosouzapw
8e06dc5ace
chore(release): v2.5.5 — model list dedup, Electron build hardening, Kiro credit tracking
v2.5.5
2026-03-15 12:34:58 -03:00