Commit Graph

1821 Commits

Author SHA1 Message Date
diegosouzapw
fa2cfe36d4 chore(release): v3.6.5 — Claude Code native parity, Antigravity credit fallback, 5 community PRs
## New Features
- Claude Code Native Parity: CCH xxHash64 signing, TitleCase tool remapping,
  API constraint enforcement (PR #1188 — @RaviTharuma)
- Antigravity AI Credits Fallback: auto-retry with GOOGLE_ONE_AI credit
  injection on quota exhaustion (PR #1190 — @sFaxsy)
- Per-Connection Codex Defaults (PR #1176 — @rdself)
- xxhash-wasm dependency for CCH signing

## Bug Fixes
- Search cache coalescing with TTL=0 (PR #1178 — @sjhddh)
- Antigravity credit cache key alignment (PR #1190)
- Codex combo smoke test false positives (PR #1176)
- Electron NODE_PATH resolution on Windows (PR #1172 — @backryun)
- CC-compatible test assertion fix (billing header cache_control)

## Breaking Changes
- DELETE /api/settings/codex-service-tier removed (PR #1176)
- CCH signing on CC-compatible providers

Tests: 2770/2770 passing
2026-04-12 23:02:34 -03:00
diegosouzapw
b8c9880a2e docs: update CHANGELOG with v3.6.5 release notes (PR #1188, PR #1190) 2026-04-12 22:42:31 -03:00
diegosouzapw
3b4e7b0e5f feat(claude-code): PR #1188 — Native parity with CCH signing, tool remapping, and API constraints
Squash merge of feat/claude-code-native-parity into release/v3.6.5.

## Wiring

1. base.ts: CCH xxHash64 body signing for anthropic-compatible-cc-* providers,
   applied after CLI fingerprint ordering so the hash covers the final bytes
   sent upstream.

2. chatCore.ts: After buildClaudeCodeCompatibleRequest(), applies synchronous
   parity pipeline steps:
   - remapToolNamesInRequest() — TitleCase tool name mapping (14 tools)
   - enforceThinkingTemperature() — temperature=1 when thinking active
   - disableThinkingIfToolChoiceForced() — remove thinking on forced tool_choice
   Cache-control limit enforcement intentionally omitted from chatCore because
   the billing-header system block counts toward the 4-block cap and would strip
   legitimate client cache markers.

3. xxhash-wasm: installed (was declared in package.json by PR but not installed).

## Test updates

- tests/unit/claude-code-parity.test.mjs: 25 new tests covering CCH signing,
  fingerprint computation, tool remapping, and API constraints.
- tests/unit/cc-compatible-provider.test.mjs: fixed pre-existing assertion that
  expected no cache_control on system blocks (billing header now carries ephemeral
  per PR #1188 design).

Closes #1188
2026-04-12 22:41:12 -03:00
SiFax
ed27ef4cee feat(antigravity): implement AI Credits overages fallback and dashboa… (#1190)
Integrated into release/v3.6.5. Fixed accountId key consistency between executor and fetcher. Added 13 unit tests for credit cache helpers, SSE parsing, and accountId derivation contract.
2026-04-12 21:48:22 -03:00
Randi
1e2b7e728d Fix Codex combo fallback and move Codex defaults to connections (#1176)
Integrated into release/v3.6.5. Added CHANGELOG breaking change entry for the removed /api/settings/codex-service-tier endpoint and deduplicated getCodexRequestDefaults in page.tsx (now imports from requestDefaults.ts).
2026-04-12 21:40:32 -03:00
7. Sun
1e9fbd216f fix(searchCache): ttlMs=0 now bypasses inflight coalescing too (#1178)
Integrated into release/v3.6.5 — correctness fix for ttlMs=0 cache bypass + cacheTTLMs ?? operator. Added 6 unit tests covering concurrent bypass, hits counter, no-store behavior, and the nullish coalescing semantic.
2026-04-12 21:33:05 -03:00
backryun
139cd337a3 [codex] Fix Electron server node path resolution (#1172)
Integrated into release/v3.6.5 — fixes Windows Electron packaged startup failure caused by split NODE_PATH between app.asar.unpacked and app/node_modules. Review improvement: added debug log for skipped candidate paths.
2026-04-12 21:26:35 -03:00
Diego Rodrigues de Sa e Souza
531d49fa00 Merge pull request #1186 from diegosouzapw/release/v3.6.4
chore(release): v3.6.4 — Auto-Combo Unification, LKGP Standalone, Combo Builder v2, Composite Tiers
v3.6.4
2026-04-12 20:05:27 -03:00
diegosouzapw
b17c9a067a test: fix stream assertions and resolve CI env flakes
Fixes test expectations for non-streaming requests expecting 'Accept: application/json' instead of undefined. Resolves API_KEY_SECRET missing in unit tests post security hardening. Adds robust Playwright waits to combo E2E testing.
2026-04-12 19:46:39 -03:00
diegosouzapw
4d67a4a811 chore(release): bump to v3.6.4 — security fixes, changelog, docs, version sync 2026-04-12 19:20:02 -03:00
diegosouzapw
c286fdc96a fix(auth): require admin auth for backup and translator routes
Protect database backup, export, restore, and translator save endpoints
with authentication checks to block unauthenticated data access and
state changes.

Also remove the insecure API key secret fallback, ignore nested app env
files from package publishes, and align tests with explicit
application/json Accept headers for non-stream requests
2026-04-12 19:08:06 -03:00
diegosouzapw
b65caf82b4 fix(combos): preserve legacy string combo refs during normalization
Load existing combos before normalizing POST and PUT payloads so
legacy string references can still resolve to combo-ref models.

This keeps stored combo references consistent while preserving DAG
validation for newly created and updated combos.
2026-04-12 18:57:51 -03:00
diegosouzapw
25bd04e400 feat(settings): unify routing rules and model aliases controls
Move model routing management into Settings and add a unified
model alias editor for exact and wildcard remaps.

Sync combo defaults with global routing strategy settings, add
localized combo onboarding copy, and expand routing i18n across
supported locales.

Also fix supporting routing behavior by accepting all strategy
values in settings schemas, preserving connection ids in combo
tests, honoring non-stream JSON requests for CC-compatible
providers, and handling hashed external package subpaths.
2026-04-12 18:43:19 -03:00
diegosouzapw
9944d136e4 chore(release): sync workspace versions to v3.6.4 — open-sse, electron, llm.txt 2026-04-12 14:02:59 -03:00
diegosouzapw
816db26a75 feat(combos): unify auto-combo into main combos page — LKGP standalone, intelligent routing panel, builder step, i18n consolidation 2026-04-12 13:51:03 -03:00
diegosouzapw
25815ae53d fix(combo): honor composite tier order in runtime routing
Apply composite tier ordering to top-level combo steps and direct
targets so priority and round-robin strategies follow the configured
defaultTier to fallbackTier chain before using remaining steps.

Add defensive config parsing helpers, regression tests for composite
tier ordering, and documentation updates for the structured combo
builder, quota-aware P2C, and combo target health.
2026-04-12 11:02:13 -03:00
diegosouzapw
ea61d00cf7 feat: v3.6.4 — Combo Builder v2, Composite Tiers, P2C Credentials, Observability Layer
## New Features
- Combo Builder v2 wizard UI (multi-stage: Basics → Steps → Strategy → Review)
- Combo Step Architecture Schema v2 (ComboModelStep, ComboRefStep, pinned accounts)
- Composite Tiers system for tiered model routing with fallback chains
- Model Capabilities Registry (unified resolver merging specs + registry + synced data)
- Observability module (buildHealthPayload, buildTelemetryPayload, buildSessionsSummary)
- Session & Quota Monitor panels on Health dashboard
- Combo Health per-target analytics via resolveNestedComboTargets()
- Combo Builder Options API (GET /api/combos/builder/options)

## Performance
- Middleware lazy loading (apiAuth, db/settings, modelSyncScheduler)
- E2E auth bypass mode (NEXT_PUBLIC_OMNIROUTE_E2E_MODE)

## Bug Fixes
- P2C credential selection with quota headroom awareness
- Fixed-account combo steps bypass model cooldowns/circuit breakers
- Combo metrics per-target tracking (byTarget with executionKey)
- Call logs schema expansion (7 new columns + composite index)
- Quota monitor lifecycle enrichment (status, snapshots, summary)
- Codex quota fetcher hardening

## Maintenance
- DB migration 021 (combo_call_log_targets)
- Combo CRUD normalization on read
- Playwright config + build script improvements
- OpenAPI spec version sync to 3.6.4

## Tests
- 16 new test suites + 12 existing test updates
- 86 files changed, +8318 -1378 lines
2026-04-12 10:34:10 -03:00
diegosouzapw
f15576fd98 build(deps): bump electron-builder to 26.8.1 to resolve tar CVEs 2026-04-11 19:38:18 -03:00
Diego Rodrigues de Sa e Souza
6b64702054 Merge pull request #1164 from diegosouzapw/release/v3.6.3
chore(release): v3.6.3 — Fix cloudflare config, prompt cache payloads, and openai-compatible validation
v3.6.3
2026-04-11 18:51:03 -03:00
diegosouzapw
0887d544ce fix: ABI-mismatched sqlite native binding crash on Windows (#1163) 2026-04-11 18:25:19 -03:00
diegosouzapw
af57d67320 docs: include ENVIRONMENT.md, UNINSTALL.md and sync ignore rules 2026-04-11 18:07:42 -03:00
diegosouzapw
4d460109dd chore(release): v3.6.3 — Fix cloudflare config, prompt cache payloads, and openai-compatible validation 2026-04-11 18:00:20 -03:00
diegosouzapw
10288f87c1 docs: add dependabot bumps to changelog for v3.6.3 2026-04-11 17:18:43 -03:00
diegosouzapw
05bfe0a7b2 chore: bump version to 3.6.3 for release branches 2026-04-11 17:15:32 -03:00
dependabot[bot]
6e521af3b3 deps: bump the development group with 7 updates (#1162)
Integrated into release/v3.6.3
2026-04-11 17:14:50 -03:00
dependabot[bot]
d833cc9c54 deps: bump the production group with 3 updates (#1161)
Integrated into release/v3.6.3
2026-04-11 17:14:47 -03:00
dependabot[bot]
4e0d926f61 deps: bump electron from 40.8.5 to 41.2.0 in /electron (#1158)
Integrated into release/v3.6.3
2026-04-11 17:14:43 -03:00
dependabot[bot]
9e4ce3ae72 chore(deps): bump actions/download-artifact from 4 to 8 (#1157)
Integrated into release/v3.6.3
2026-04-11 17:14:40 -03:00
dependabot[bot]
7a8e6f8e8c chore(deps): bump docker/build-push-action from 6 to 7 (#1156)
Integrated into release/v3.6.3
2026-04-11 17:14:37 -03:00
diegosouzapw
e137d63886 ci: skip snyk on dependabot to fix empty token failures 2026-04-11 16:51:33 -03:00
diegosouzapw
5e16ef73f9 fix(workflows): repair CHANGELOG extraction regex in generate-release 2026-04-11 16:47:41 -03:00
Diego Rodrigues de Sa e Souza
9e4495b85b Merge pull request #1144 from diegosouzapw/release/v3.6.2
chore(release): v3.6.2 — Provider Expansion and Stabilization
v3.6.2
2026-04-11 15:17:58 -03:00
diegosouzapw
b5e1c8e47b fix: remove outdated assertions in cache page integration test 2026-04-11 15:12:27 -03:00
diegosouzapw
36a05831ab chore(release): v3.6.2 — provider expansion and stabilization 2026-04-11 13:11:57 -03:00
diegosouzapw
12b895f94a fix(tests): accept both cloudflared error message variants in tunnel test regex 2026-04-11 12:28:35 -03:00
diegosouzapw
e89015649e fix(tests): align maskEmail test assertions with new less-aggressive masking behavior
Updated mask-email.test.mjs and model-sync-route.test.mjs to match
the revised maskEmail function that preserves full domain names for
account differentiation (die********@gmail.com vs old di*********@g****.com).
2026-04-11 12:09:20 -03:00
diegosouzapw
86fc7841b8 docs: update provider counts to 100+ across all documentation (33 new providers added)
- CHANGELOG: documented 33 new API Key providers (DeepInfra, SambaNova, Meta Llama API, AI21 Labs, Databricks, Snowflake, GigaChat, etc.)
- README: updated tagline, unified endpoint, and feature descriptions from 60+ to 100+
- AGENTS.md: updated project description and full API Key provider list (48+ → 91)
- ARCHITECTURE.md: updated executive summary
- i18n: synced all 33 language README and ARCHITECTURE files
2026-04-11 12:01:13 -03:00
diegosouzapw
76e920fc1a docs(changelog): update for bugs #993 and #988 2026-04-11 11:49:54 -03:00
diegosouzapw
99591a2b0f fix: resolve PDF attachment drops in Gemini translation via OpenAI-compatible endpoints (#993) 2026-04-11 11:48:20 -03:00
diegosouzapw
770b70a135 fix: correct SkillsMP marketplace API response mapping for Docker instances (#988) 2026-04-11 11:48:13 -03:00
diegosouzapw
6845ef6bde chore(security): add electron and docker ecosystems to dependabot 2026-04-11 11:36:58 -03:00
diegosouzapw
d4609762bb fix: resolve macOS Electron ABI mismatch and test regressions (#1081) 2026-04-11 11:36:58 -03:00
diegosouzapw
ebf63a75d5 fix: include Next build isolation script in published package files (#1126) 2026-04-11 11:36:58 -03:00
diegosouzapw
3effbe5f06 fix: decrease email mask aggression to maintain account distinction (#1137) 2026-04-11 11:36:58 -03:00
diegosouzapw
c742433d34 fix: enforce persistent local bind mounts for docker data volumes 2026-04-11 11:36:58 -03:00
gfhfyjbr
bd33b53805 fix(stream): harden responses SSE keepalives (#1146)
Integrated into release/v3.6.2
2026-04-11 11:36:40 -03:00
Randi
1d6739b683 fix semantic cache toggle and redesign cache management (#1135)
Integrated into release/v3.6.2
2026-04-11 09:44:48 -03:00
jonesfernandess
e75baed4b6 docs: add macOS better-sqlite3 rebuild fix to troubleshooting (#1119)
Integrated into release/v3.6.2
2026-04-11 09:44:45 -03:00
dependabot[bot]
55f73d34e1 deps: bump next-intl from 4.9.0 to 4.9.1 (#1128)
Integrated into release/v3.6.2
2026-04-11 09:44:34 -03:00
dependabot[bot]
557157c2d6 build(deps): bump docker/login-action from 3 to 4 (#1124)
Integrated into release/v3.6.2
2026-04-11 09:44:30 -03:00