Diego Rodrigues de Sa e Souza
f124806372
fix(api): resolve compatible provider node by base type, not only exact id ( #4421 ) ( #4576 )
...
* fix(api): resolve compatible provider node by base type, not only exact id (#4421 )
* chore(quality): rebaseline db/providers.ts file-size 1050->1063 (#4421 )
* chore(quality): mark providerNodeSelect db-internal in db-rules allowlist (#4421 )
---------
Co-authored-by: Diego Rodrigues de Sa e Souza <diego.souza@cdwasolutions.com.br >
2026-06-21 21:17:39 -03:00
Diego Rodrigues de Sa e Souza
7ef34c2246
fix(combo): extract dynamic connection ID from headers on success path for precise lockout decay and success telemetry ( #4550 ) ( #4581 )
...
Integrated into release/v3.8.33 (cherry-pick of #4550 with stale reverts dropped; @Chewji9875 credited in CHANGELOG)
2026-06-21 20:01:55 -03:00
Abhishek Divekar
09d8a4aa8c
feat(combo): add nestedComboMode execute — black-box combo-ref execution for selection strategies ( #4537 )
...
Integrated into release/v3.8.33
2026-06-21 19:51:22 -03:00
Diego Rodrigues de Sa e Souza
548f1fe56f
chore(quality): reconcile complexity baseline 1911->1913 (review-prs r4 owner batch) ( #4579 )
...
Reconcile complexity baseline
2026-06-21 19:17:31 -03:00
Diego Rodrigues de Sa e Souza
4b34a75fe3
refactor(chatCore): extrai extractSystemRoleMessages + buildUpstreamHeadersForExecute para leaves puros ( #3501 ) ( #4548 )
...
Integrated into release/v3.8.33
2026-06-21 19:13:56 -03:00
Diego Rodrigues de Sa e Souza
69c35bd342
refactor(chatCore): extrai builder do usage-record de falha ( #3501 ) ( #4544 )
...
Integrated into release/v3.8.33
2026-06-21 19:11:41 -03:00
Diego Rodrigues de Sa e Souza
05c0c4e400
refactor(chatCore): recupera os 4 leaves perdidos no churn de merge (key-health, request-format, claude-effort, target-format) ( #3501 ) ( #4538 )
...
Integrated into release/v3.8.33 (resolved overlap with #4547 : requestFormat/claudeEffort leaves already restored, this adds keyHealth/targetFormat + wires all 4)
2026-06-21 19:10:19 -03:00
Diego Rodrigues de Sa e Souza
3ffd6ffff1
fix(executors): decode Composer Cursor </think>-marked visible output ( #4554 )
...
Integrated into release/v3.8.33
2026-06-21 19:07:34 -03:00
Diego Rodrigues de Sa e Souza
9746b206db
fix(providers/test): probe real Codex /responses endpoint ( #4551 )
...
Integrated into release/v3.8.33
2026-06-21 19:06:44 -03:00
Diego Rodrigues de Sa e Souza
20099f7ff2
fix(oauth): improve Cursor auto-import reliability on macOS ( #4552 )
...
Integrated into release/v3.8.33
2026-06-21 19:05:43 -03:00
Diego Rodrigues de Sa e Souza
3ff08e2e14
fix(sse): RTK must preserve cache_control-marked tool_result blocks ( #4560 )
...
Integrated into release/v3.8.33
2026-06-21 19:04:50 -03:00
Diego Rodrigues de Sa e Souza
66218036fd
chore(quality): reconcile complexity baseline 1906->1911 (review-prs r4) ( #4570 )
...
Reconcile complexity baseline
2026-06-21 18:51:09 -03:00
Abhishek Divekar
39b2bbfea2
feat(combo): add sticky weighted selection limit with exhaustion-aware renormalization ( #4489 )
...
Integrated into release/v3.8.33
2026-06-21 18:43:23 -03:00
Hernan Javier Ardila Sanchez
6b5590e8f4
fix(auto-combo): respect model visibility (isHidden) in auto-combo candidate pool ( #4558 )
...
Integrated into release/v3.8.33
2026-06-21 18:34:01 -03:00
Diego Rodrigues de Sa e Souza
cf6546e6d3
perf(quota): skip redundant quota_snapshots from idle connections ( #4438 ) ( #4565 )
...
Closes #4438 . Dedupes quota_snapshots writes for idle connections via pure quotaSnapshotChanged() gate. TDD 5/5. Admin-merged over a pre-existing, unrelated base red (model-lockout-max-cooldown.test.ts 'markAccountUnavailable local 404 ... maxCooldownMs', from #4530 incomplete wiring) proven to fail on release/v3.8.33 HEAD without this change.
2026-06-21 18:27:57 -03:00
Rahul sharma
448741fe5f
feat(combos): provider-wildcard expansion in combo steps ( #2562 ) ( #4545 )
...
Integrated into release/v3.8.33
2026-06-21 18:26:30 -03:00
janeza2
9447de08b7
fix(dashboard): make API Manager key table usable on mobile ( #4556 )
...
Integrated into release/v3.8.33
2026-06-21 18:25:05 -03:00
KooshaPari
8fc331513d
fix(dashboard): avoid overlapping provider health polls ( #4557 )
...
Integrated into release/v3.8.33
2026-06-21 18:23:34 -03:00
Diego Rodrigues de Sa e Souza
0b402e9bf3
refactor(chatCore): restore #4507 + #4511 leaves orphaned from release by churn ( #3501 ) ( #4547 )
...
Re-applies the endpoint/format (requestFormat.ts, #4507 ) and Claude effort-variant (claudeEffortVariant.ts, #4511 ) extractions that were orphaned from release/v3.8.33 by a parallel force-push. 19/19 chatCore tests pass.
Integrated into release/v3.8.33.
2026-06-21 16:32:15 -03:00
Diego Rodrigues de Sa e Souza
8273dfd370
chore(quality): rebaseline cognitiveComplexity 792->793 (r3) ( #4543 )
...
Rule #9 .
2026-06-21 15:54:04 -03:00
Diego Rodrigues de Sa e Souza
059b7efeb3
chore(quality): reconcile file-size baseline (r3 #4522/#4530/#4524) ( #4542 )
...
Rule #9 .
2026-06-21 15:49:09 -03:00
Ronald Estacion
eb47b92f22
fix(compression): allow enginesExplicit through PUT validation schema ( #4532 )
...
Adds enginesExplicit to the strict compression PUT schema so the panel can save without a 400. Kept only this commit; the Hub-render commit was superseded by Phase 2 (#4521 ) which rewrote CompressionHub.tsx. Does not reopen the Phase 1 gate (enginesExplicit is recomputed from stored engines, the persisted row is ignored). Tested.
Integrated into release/v3.8.33.
2026-06-21 15:44:22 -03:00
Diego Rodrigues de Sa e Souza
4d3a9fd3df
fix(mcp): webFetchInput emits 'URL is required' for a missing url ( #4510 ) ( #4541 )
...
The omniroute_web_fetch input schema (#4510 ) used z.string().min(1, "URL is
required") for the url field, but .min() only fires for an empty string. A
MISSING url (webFetchInput.parse({})) fails the z.string() type check first and
emitted the default Zod v4 message ("expected string, received undefined"), so
the existing test 'webFetchInput rejects missing URL' (expecting /URL is
required/) failed on the full unit suite — a latent base red on release/v3.8.33.
Add the custom message to the type check: z.string({ error: "URL is required" }).
Now both the missing-field and empty-string cases emit 'URL is required'; a valid
url still passes. No other web_fetch behavior changes.
Co-authored-by: Diego Rodrigues de Sa e Souza <diego.souza@cdwasolutions.com.br >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-21 15:43:55 -03:00
Marcos
2b21bb60d9
feat(webhooks): enrich telegram request notifications ( #4524 )
...
Adds account/combo/latency/fallbackCount to telegram request.completed notifications; account UUID rendered via truncated display name (no sensitive data leak). Tested. Rebuilt onto release/v3.8.33.
Integrated into release/v3.8.33.
2026-06-21 15:43:21 -03:00
Abhishek Divekar
f91cf72c16
feat(bazaarlink): add authHint to existing APIKEY_PROVIDERS entry ( #4522 )
...
Adds authHint + enriched freeNote/apiHint on the existing bazaarlink entry (distinct from the closed-redundant #4497 ). Integrity test included.
Integrated into release/v3.8.33.
2026-06-21 15:42:45 -03:00
Rahul sharma
9ade3e5f52
fix(no-think): normalize provider prefix to canonical in no-think variants ( #4531 )
...
Adds pure normalizeProviderPrefix helper + opt-in aliasToCanonical map so no-think variant ids use canonical provider prefixes in canonical catalog mode. Tested. Rebuilt onto release/v3.8.33.
Integrated into release/v3.8.33.
2026-06-21 15:41:59 -03:00
Chewji
9cf96d0e9f
fix(combo): pass maxCooldownMs from settings to recordModelLockoutFailure call sites ( #4530 )
...
The combo.ts lockout call sites never forwarded mlSettings.maxCooldownMs to recordModelLockoutFailure, so the admin-configured cap fell back to BACKOFF_CONFIG.max. Passes it at all 3 sites. TDD included.
Integrated into release/v3.8.33.
2026-06-21 15:37:23 -03:00
Diego Rodrigues de Sa e Souza
948213899f
chore(quality): reconcile file-size baseline (owner final) ( #4535 )
...
Rule #9 .
2026-06-21 14:26:25 -03:00
Diego Rodrigues de Sa e Souza
2601a557b8
refactor(chatCore): extract Background Task Redirect decision (T41) ( #4526 , #3501 )
...
Rebuilt onto release/v3.8.33 (base was the now-merged #4511 branch). Integrated into release/v3.8.33.
2026-06-21 14:23:36 -03:00
Diego Rodrigues de Sa e Souza
b28f6e9346
refactor(chatCore): extract pure persistCodexQuotaState core ( #4492 , #3501 )
...
Rebuilt onto release/v3.8.33. Extracts persistCodexQuotaState into a pure leaf (chatCore/codexQuota.ts). Integrated into release/v3.8.33.
2026-06-21 14:19:34 -03:00
Diego Rodrigues de Sa e Souza
aa019bbb95
fix(mitm): gate sudo prompts on server platform, not browser UA ( #4514 )
...
Rebuilt onto release/v3.8.33; reconciled with #4503 (kept fetchModelAliases) — sudo gating now uses server-reported isWin/needsSudoPassword instead of browser UA. Integrated into release/v3.8.33.
2026-06-21 14:16:40 -03:00
Diego Rodrigues de Sa e Souza
96d7f2ac62
fix(mitm): graceful sudo degradation in slim Docker / non-root containers ( #4513 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:15:06 -03:00
Diego Rodrigues de Sa e Souza
34d9335c5f
fix(pricing): default cost rows for Antigravity Gemini 3.5 Flash tiers + gemini-pro-agent ( #4508 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:14:53 -03:00
Diego Rodrigues de Sa e Souza
840413faa2
feat(dashboard): inline show/hide toggle for API keys on API Manager page ( #4505 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:14:41 -03:00
Diego Rodrigues de Sa e Souza
bb16f88524
fix(dashboard): enable Codex Apply/Reset buttons when the CLI is installed ( #4504 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:14:28 -03:00
Diego Rodrigues de Sa e Souza
d83e0a4fab
fix(dashboard): show API-Key-compatible providers in Antigravity CLI Tools model picker ( #4503 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:14:16 -03:00
Diego Rodrigues de Sa e Souza
4cf73428f8
fix(dashboard): migrate ManualConfigModal copy to shared useCopyToClipboard hook ( #4502 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:14:02 -03:00
Diego Rodrigues de Sa e Souza
89606a2bfe
feat(dashboard): toggle-style model deselection in combo builder modal ( #4498 )
...
Rebuilt onto release/v3.8.33; reconciled with the already-merged keepOpenOnSelect (#4496 ) — deselection now rides the existing keepOpenOnSelect + onDeselect wiring instead of a redundant closeOnSelect prop. Integrated into release/v3.8.33.
2026-06-21 14:13:38 -03:00
Diego Rodrigues de Sa e Souza
247e578778
feat(dashboard): Done button in model picker for combo creation ( #4496 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:09:55 -03:00
Diego Rodrigues de Sa e Souza
dac9f7de16
feat(dashboard): per-provider dropdown filter on the quota dashboard ( #4495 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:09:43 -03:00
Diego Rodrigues de Sa e Souza
bb8104f454
chore(quality): reconcile file-size baseline (owner batch1 #4488/#4500) ( #4534 )
...
Rule #9 .
2026-06-21 14:09:16 -03:00
Diego Rodrigues de Sa e Souza
3a0c40bb5e
fix(usage): clear auth-expired message for Kiro social-auth accounts ( #4512 )
...
Rebuilt onto release/v3.8.33; usage.ts baseline reconciled for the #4493/#4494/#4512 quota trio. Integrated into release/v3.8.33.
2026-06-21 14:08:01 -03:00
Diego Rodrigues de Sa e Souza
a37ee2fac5
feat(usage): surface Codex code-review weekly window + additional_rate_limits fallback ( #4494 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:06:18 -03:00
Diego Rodrigues de Sa e Souza
cd45943015
fix(usage): parse numeric-string quota reset timestamps as Unix sec/ms ( #4493 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:06:05 -03:00
Diego Rodrigues de Sa e Souza
4279751abd
fix(sse): skip disabled providers in combo fallback ( #4500 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:05:53 -03:00
Diego Rodrigues de Sa e Souza
e1546c0118
fix(api): dedupe exact-duplicate ids in /v1/models ( #4506 , #4424 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:05:41 -03:00
Diego Rodrigues de Sa e Souza
482433e44f
feat(translator): accept OpenAI audio input parts in Gemini translation ( #4434 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:05:29 -03:00
Diego Rodrigues de Sa e Souza
81016bdaeb
feat(pricing): add default pricing for Qwen coder-model on qw provider ( #4488 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:05:16 -03:00
Diego Rodrigues de Sa e Souza
aee1f7445d
feat(providers): expose gpt-4o on built-in GitHub Copilot (gh) provider ( #4487 )
...
Rebuilt onto release/v3.8.33 (squash-base-stale). Integrated into release/v3.8.33.
2026-06-21 14:04:40 -03:00
Diego Rodrigues de Sa e Souza
58d1cc8f03
feat(compression): Phase 2 — named profiles + active selector ( #4521 )
...
Compression config Phase 2: named profiles + single active-combo selector wired into the runtime.
Integrated into release/v3.8.33.
2026-06-21 14:02:56 -03:00