Commit Graph

1062 Commits

Author SHA1 Message Date
diegosouzapw
88972bf92a feat(logs): show compression tokens in request log UI (#1923) 2026-05-04 01:34:41 -03:00
Andrew Munsell
b73f3610fc fix(api-manager): show validation errors inline in modals, not behind backdrop (#1920)
Integrated into release/v3.7.9
2026-05-04 00:14:16 -03:00
diegosouzapw
b8746b1464 fix: allow local ollama provider connections (#1893) 2026-05-03 19:03:11 -03:00
diegosouzapw
fb2fb7c6f4 chore(release): v3.7.9 — all changes in ONE commit 2026-05-03 18:42:05 -03:00
diegosouzapw
9e1d4885b5 fix: resolve 3 bugs — Codex tool normalization (#1914), image gen proxy (#1904), zero-arg MCP tools (#1898)
- fix(codex): flatten Chat Completions tool format to Responses format in
  normalizeCodexTools. Prevents 'Missing required parameter: tools[0].name'
  upstream errors when clients send {type:'function', function:{name,...}}
  instead of {type:'function', name,...}.

- fix(proxy): add proxy-aware execution context to image generation route.
  Image requests now correctly use proxy settings from the connection's
  ProxyRegistry assignment, matching the pattern used by chat pipeline.

- fix(translator): inject properties:{} into zero-argument MCP tool schemas
  during Anthropic→OpenAI translation. OpenAI strict mode requires explicit
  properties even for empty object schemas.

Closes #1914, Closes #1904, Closes #1898
2026-05-03 17:51:22 -03:00
smartenok-ops
0e8148d602 fix(oauth): per-connection mutex for rotating refresh tokens (#1885)
Integrated into release/v3.7.9
2026-05-03 16:19:43 -03:00
Gi99lin
1d38900f17 fix(analytics): robust model pricing resolution, dark mode charts and SQL aggregation fixes (#1896)
Integrated into release/v3.7.9 (migration renumbered to 044)
2026-05-03 16:19:08 -03:00
smartenok-ops
9dc377e1d8 fix(migrations): treat duplicate-column ALTER as no-op (#1886)
Integrated into release/v3.7.9
2026-05-03 16:18:11 -03:00
Tubagus
dc8b85611f feat(providers): implement bulk paste for extra API keys (#1916)
Integrated into release/v3.7.9
2026-05-03 16:17:38 -03:00
Paijo
d7a14cecde feat: add K/M/B/T cost shortener to prevent UI overflow (#1902)
Integrated into release/v3.7.9
2026-05-03 16:16:50 -03:00
Paijo
53fd36e4f2 feat(proxy): move proxy configuration to dedicated System → Proxy page (#1907)
Integrated into release/v3.7.9
2026-05-03 16:16:18 -03:00
Raxxoor
879eda9379 fix(combos): align strategy contracts (#1892)
Integrated into release/v3.7.9
2026-05-03 16:12:52 -03:00
diegosouzapw
d8baf4434d fix(compression): align seeded standard savings combo with stacked default
Update the seeded default compression combo to use the RTK then
Caveman pipeline in both fresh installs and upgraded databases.

Add a targeted migration and runtime guard that only rewrites the
legacy seeded record when its original metadata and single-step
pipeline still match, preserving user-customized default combos.
Refresh docs and tests to reflect the stacked default and expanded
RTK filter catalog.
2026-05-03 15:34:15 -03:00
diegosouzapw
6e38bd5393 fix(compression): preserve stacked defaults and secure metadata routes
Only apply saved default compression combos when they contain a stacked
pipeline so seeded Caveman-only defaults do not replace the builtin
stacked behavior.

Also require management auth for compression language pack and rules
metadata endpoints, and defer usage receipt attachment until compression
analytics writes have completed to keep analytics records consistent.
2026-05-03 14:06:37 -03:00
diegosouzapw
dde74281de fix(auth): require dashboard management auth for compression preview
Block preview requests unless they come from a valid management session
token so protected settings cannot be probed through the preview API.

Add unit coverage for unauthenticated requests, invalid bearer tokens,
and successful authenticated preview execution.
2026-05-03 12:53:45 -03:00
diegosouzapw
a7233d1bf1 feat(compression): unify config validation and persist MCP savings
Centralize compression config schemas across settings, preview, RTK,
and combo APIs to enforce consistent validation for stacked pipelines
and engine-specific options.

Expand caveman and stacked compression behavior by applying default
combos at runtime, surfacing validation and fallback metadata, and
exposing aggressive and ultra adapter schemas for configuration UI and
tests.

Persist MCP description compression snapshots into analytics without
counting them as provider usage, and extend the dashboard with the new
RTK controls and localized labels.
2026-05-03 12:38:21 -03:00
Diego Rodrigues de Sa e Souza
743be29852 feat(compression): RTK compression roadmap (#1889)
* chore(rtk): initialize compression roadmap branch

* feat(compression): add RTK engine and compression combos

Introduce RTK command-aware tool-output compression alongside
stacked RTK -> Caveman pipelines for mixed prompt contexts.

Add engine registration, declarative RTK filter packs, language-aware
Caveman rule loading, compression combo persistence and assignments,
analytics grouped by engine/combo, and new MCP/API endpoints for
configuration, previews, filters, and combo management.

Expose the new capabilities in the dashboard with dedicated Context &
Cache pages for Caveman, RTK, and compression combos, and update docs,
i18n strings, migrations, and tests to cover the expanded compression
surface.

* feat(compression): expand RTK DSL, filter catalog, and recovery APIs

Add RTK parity features across the compression pipeline, dashboard,
and management APIs. This expands the built-in filter catalog, adds
trust-gated custom filter loading, inline filter verification, code
stripping, smarter detection, and optional redacted raw-output
retention for authenticated recovery.

Also extend Caveman with file-based multilingual rule packs, localized
output-mode instructions, stricter preview/config schemas, engine
registry metadata, analytics fields, and broad unit test coverage for
RTK, rule loading, and stacked compression behavior.

* fix(auth): protect oauth routes and health reset operations

Require authenticated dashboard access for OAuth endpoints that can
create or import provider connections when login enforcement is
enabled.

Move `/api/monitoring/health` to the readonly public route list so
safe methods remain public while DELETE now returns 401 for anonymous
requests.

Also update Next.js native `.node` handling to avoid webpack parse
failures from external packages such as ngrok and keytar, and add
coverage for the new auth behavior.

* build(compression): ship RTK rule and filter assets with app bundles

Include compression JSON assets in Next output tracing, prepublish copies,
and pack artifact policy checks so standalone and packaged builds can
load RTK filters and caveman rule packs at runtime.

Also harden compression runtime behavior by resolving alternate asset
directories, scoping rule cache entries by source path, carrying RTK raw
output pointers through stacked runs, degrading oversized preview diffs,
and applying combo language/output mode defaults during chat routing.

Add coverage for packaging rules, provider-scoped model parsing, smart
truncate edge cases, raw output retention, and combo-driven compression
behavior.

* docs(workflows): update local repo paths to OmniRoute

Replace outdated `/home/diegosouzapw/dev/proxys/9router` references
with the current `OmniRoute` directory across deploy, release, and
version bump workflow guides so local command examples match the
renamed repository layout

* feat(compression): complete RTK parity coverage

* test(build): align next config assertions

---------

Co-authored-by: diegosouzapw <diego.souza.pw@gmail.com>
2026-05-03 00:37:08 -03:00
diegosouzapw
aa40bc34f5 feat(compression): expose rule intensities and track usd savings
Add estimated USD savings to compression analytics so saved tokens can
be reported in cost terms alongside existing token metrics.

Expose caveman rule intensity metadata for settings consumers and add a
settings API route alias for rule lookup. Also preserve system prompts
when aggressive compression falls back to lite mode.
2026-05-02 12:57:37 -03:00
diegosouzapw
0f35c148ea feat(compression): expand caveman compression and analytics pipeline
Add caveman intensity levels, output mode instructions, validation, and
preview diffs across the compression pipeline.

Extend MCP and dashboard settings to support auto-trigger mode, system
prompt preservation, MCP description compression, and caveman rule
metadata. Record richer compression analytics with receipt fields,
validation fallbacks, output mode data, and add the related database
migration.

Improve preservation handling for code, URLs, markdown, math, and other
protected content while adding broad unit, integration, and golden-set
coverage for caveman parity and compression behavior.
2026-05-02 12:39:04 -03:00
backryun
c49929327a chore(provider): Update Jina AI model catalog (#1874)
Integrated into release/v3.7.9
2026-05-02 09:52:24 -03:00
Raxxoor
0cf33fdaa3 fix(gemini-cli): align Cloud Code transport (#1869)
Integrated into release/v3.7.9
2026-05-02 06:01:07 -03:00
diegosouzapw
4b9c129e1c fix: harden security scan findings 2026-05-02 04:51:38 -03:00
diegosouzapw
b75b52eefb fix(migrations): resolve NaN issue in gap reconciliation logic
fix(bundle): exclude os module from browser bundle
2026-05-02 02:19:36 -03:00
diegosouzapw
59f4d42795 chore(test): sync open-mode runners and assertions
Update ecosystem and Playwright test environments to boot in open mode
with CLI tools enabled and empty auth defaults when local credentials
are not required.

Refresh A2A, provider, token-count, and circuit-breaker expectations to
match current response semantics and profile-driven thresholds. Remove
obsolete migration regression coverage tied to retired upgrade paths and
add a scratch migration probe for manual verification.
2026-05-02 01:48:58 -03:00
diegosouzapw
e4beb49c6d fix(db): implement robust idempotent schema validation for migration gaps 2026-05-02 01:13:57 -03:00
Raxxoor
c12b7546a8 fix(cli): add Gemini CLI fingerprint (#1866)
Integrated into release/v3.7.8
2026-05-02 00:48:54 -03:00
diegosouzapw
01092fa349 fix: resolve runtime metadata and migration directory lookup
Export shared runtime platform and architecture helpers so provider
registry header generation uses the same process-based detection logic
as header profiles instead of direct os module calls.

Improve migration directory resolution by searching upward through
common project layouts and checking multiple candidate paths before
falling back to OMNIROUTE_MIGRATIONS_DIR errors.
2026-05-01 22:00:04 -03:00
diegosouzapw
41ff569260 fix: resolve maxConcurrent display and binding bug (#1859) 2026-05-01 21:48:20 -03:00
Aculeasis
00182afb2f feat(usage): add NanoGPT subscription quota tracking to Limits & Quotas dashboard (#1865)
Integrated into release/v3.7.8
2026-05-01 21:29:13 -03:00
Raxxoor
a10a4bf491 fix(settings): restore CLI fingerprint toggles (#1863)
Integrated into release/v3.7.8
2026-05-01 20:24:16 -03:00
backryun
d2ce20dc5c fix(maritalk):Update Model list & Implementation of the latest API (#1856)
Integrated into release/v3.7.8
2026-05-01 16:11:13 -03:00
backryun
fa950a8a49 fix(Upstage):Update Model list (#1855)
Integrated into release/v3.7.8
2026-05-01 13:48:13 -03:00
Antigravity Assistant
eadcf43ca0 fix(types): resolve TypeScript strictness errors in validation 2026-05-01 10:02:03 -03:00
Antigravity Assistant
4e79d4708c fix(providers): update securityBlocked check to use 503 instead of 400 2026-05-01 09:59:00 -03:00
Antigravity Assistant
7b575f38aa chore(release): finalize v3.7.8 stabilization, fix a2a status codes and open issues 2026-05-01 09:53:51 -03:00
backryun
32e0a7cb16 Add Grok 4.3 + Add Xiaomi Mimo TTS provider (#1837)
Integrated into release/v3.7.8
2026-05-01 08:36:24 -03:00
Randi
3d70ad414e Hide combo compression controls when disabled (#1840)
Integrated into release/v3.7.8
2026-05-01 08:36:15 -03:00
Paijo
f3226b7f8d feat: integrate 1proxy free proxy marketplace (closes #1788) (#1847)
Integrated into release/v3.7.8
2026-05-01 08:36:07 -03:00
bambuvnn
ea9d9e09ba fix: tolerate missing request detail logs table (#1848)
Integrated into release/v3.7.8
2026-05-01 08:35:52 -03:00
Antigravity Assistant
ec863041f9 fix: disableStreamOptions toggle for OpenAI compatible providers (#1836) 2026-04-30 23:02:03 -03:00
Antigravity Assistant
934c133103 fix(analytics): avoid persisting inferred API key ownership
Stop usage analytics reads from backfilling missing API key attribution
into historical rows so legacy records remain unchanged and surface as
unknown instead of guessed ownership.

Also require management authentication on admin concurrency and
compression analytics endpoints, and preserve image payloads during lite
compression unless a model is explicitly marked as non-vision.
2026-04-30 20:31:00 -03:00
Antigravity Assistant
8ca5902a98 Merge release/v3.7.7 into compression phase 6 2026-04-30 18:07:26 -03:00
Antigravity Assistant
fa0f3cc8be Merge release/v3.7.7 into compression phase 5 2026-04-30 17:52:23 -03:00
Antigravity Assistant
7b21e04604 Merge release/v3.7.7 into compression phase 4 2026-04-30 17:37:57 -03:00
Antigravity Assistant
5e0d6263ed Merge release/v3.7.7 into compression phase 3 2026-04-30 17:22:03 -03:00
Antigravity Assistant
4597cfd54e Fix OpenCode baseUrl locale placeholders 2026-04-30 17:12:22 -03:00
Antigravity Assistant
595b5dc642 Merge release/v3.7.7 into compression phase 2 2026-04-30 17:07:39 -03:00
Antigravity Assistant
16f14b76a9 Merge release/v3.7.7 into prompt compression phase 1 2026-04-30 16:51:44 -03:00
Gi99lin
e929559e9a feat(analytics): Custom date range, API key filter & NULL key enrichment (#1830)
Integrated into release/v3.7.7
2026-04-30 15:58:00 -03:00
payne
6c172df547 fix(rate-limit): watchdog, env override, and stage tracing to prevent silent wedges (#1828)
Integrated into release/v3.7.7
2026-04-30 15:48:50 -03:00