1486 Commits

Author SHA1 Message Date
Diego Rodrigues de Sa e Souza
f279368531 Merge pull request #911 from diegosouzapw/release/v3.4.4
chore(release): v3.4.4 — Responses API token fix, SQLite WAL checkpoint, issue triage
v3.4.4
2026-04-02 07:44:29 -03:00
diegosouzapw
4cc44b37bb chore(release): v3.4.4 — Responses API token fix, SQLite WAL checkpoint, issue triage 2026-04-02 01:05:09 -03:00
Diego Rodrigues de Sa e Souza
e121fec599 Merge pull request #905 from rdself/coder/sqlite-wal-checkpoint-shutdown
Flush SQLite WAL on graceful shutdown
2026-04-02 01:00:50 -03:00
Diego Rodrigues de Sa e Souza
6c669abb23 Merge pull request #909 from christopher-s/fix/responses-api-flush-total-tokens
fix(translator): emit response.completed with total_tokens for Responses API clients
2026-04-02 01:00:34 -03:00
Diego Rodrigues de Sa e Souza
0b677677d1 Merge pull request #910 from diegosouzapw/release/v3.4.3
chore(release): v3.4.3 — Antigravity memory/skills, Claude Code bridge, Qwen OAuth, model sync stability
v3.4.3
2026-04-02 00:15:39 -03:00
diegosouzapw
49f9fee446 chore(release): v3.4.3 — Antigravity memory/skills, Claude Code bridge, Qwen OAuth fix, model sync stability 2026-04-02 00:12:16 -03:00
Chris Staley
9588c1ea3e refactor(translator): extract usage token constants for readability
Extract input_tokens/output_tokens into local constants to avoid
repeating nullish coalescing chains in the total_tokens calculation.
2026-04-01 20:03:31 -06:00
diegosouzapw
c665b01e89 test: add usage service and response translator test scripts 2026-04-01 22:48:34 -03:00
diegosouzapw
5c2db0134f chore(release): update changelog for v3.4.4 2026-04-01 22:48:34 -03:00
R.D.
de162eb719 fix: drop assistant prefill for cc bridge 2026-04-01 22:48:34 -03:00
R.D.
33297e0226 fix: repair cc compatible v1 route handling 2026-04-01 22:48:34 -03:00
R.D.
a07e643020 fix(model-sync): store real provider in log summary 2026-04-01 22:48:34 -03:00
Chris Staley
304664b318 test: update usage field assertions to Responses API format
The normalization to input_tokens/output_tokens/total_tokens changed
the usage field names. Update test to assert on the correct fields.
2026-04-01 19:46:18 -06:00
Chris Staley
8372a3c7ca fix(translator): emit response.completed with total_tokens for Responses API clients
Hub-and-spoke flush path was broken for non-OpenAI providers when the
client speaks OpenAI Responses API (e.g. Codex CLI). When
claudeToOpenAIResponse(null) returned null, openaiToOpenAIResponsesResponse
was never called, so response.completed (carrying total_tokens) was never
emitted — causing "missing field total_tokens" errors in Codex.

Two fixes:
- Pass null through to Step 2 translator even when Step 1 produced no
  output during flush, so terminal events get emitted
- Capture usage from any chunk carrying it (not just usage-only chunks)
  and normalize Chat Completions format to Responses API format
2026-04-01 19:26:34 -06:00
R.D.
69bbc0a2a1 flush sqlite wal on graceful shutdown 2026-04-01 20:14:31 -04:00
diegosouzapw
5bfe881fc8 chore(release): bump version to 3.4.4 and apply PR 900 (Qwen OAuth resource URL) 2026-04-01 21:07:37 -03:00
diegosouzapw
44f691bea4 chore(changelog): include PRs #873, #869, #899 in v3.4.2 2026-04-01 20:47:30 -03:00
tombii
e59db45f5b refactor(model-sync): move empty-list guard to early return
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 20:47:30 -03:00
tombii
f4087694b1 fix(model-sync): skip replace when auto-sync returns empty model list
Prevent auto-sync from wiping manually-imported models when the upstream
/models endpoint fails, times out, or returns an empty list. Added
`allowEmpty` option (default false) to replaceCustomModels — callers that
intentionally clear all models (DELETE ?all=true) pass `allowEmpty: true`.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 20:47:30 -03:00
zenobit
2c63e0fdd6 chore(ci): improve and show CI summary 2026-04-01 20:47:30 -03:00
zenobit
29bb71373e fix(ci): add missing dependencies for build
- prop-types: required by 12 component files using PropTypes
- js-yaml: required by openapi spec route

These dependencies were missing from package.json causing build failures.
2026-04-01 20:47:30 -03:00
zenobit
ed48858635 Apply suggestions from code review
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-04-01 20:47:30 -03:00
zenobit
6f5c8389eb feat(i18n): add windsurf guide steps to all 33 languages
Added missing cliTools.guides.windsurf.steps[1-5] with title and desc:
- step 1: Open AI Settings
- step 2: Add Custom Provider
- step 3: Base URL (http://127.0.0.1:20128/v1)
- step 4: API Key
- step 5: Select Model

Total: 165 keys across all language files (5 steps × 2 keys × 33 languages)
2026-04-01 20:46:44 -03:00
diegosouzapw
52bd72f449 chore: align version strings to v3.4.3 2026-04-01 20:43:33 -03:00
diegosouzapw
b82f26366c fix(docker): regenerate package-lock.json from clean install for npm ci v3.4.2 2026-04-01 20:07:37 -03:00
diegosouzapw
758057131b fix: regenerate package-lock.json for npm ci compatibility 2026-04-01 20:03:17 -03:00
Diego Rodrigues de Sa e Souza
e37adcd67e Merge pull request #901 from diegosouzapw/release/v3.4.2
chore(release): v3.4.2 — memory/skills, claude code bridge, i18n CI, model-sync
2026-04-01 19:47:43 -03:00
diegosouzapw
4e08656422 chore(release): v3.4.2 — memory/skills injection, claude code bridge, i18n CI, model-sync fix 2026-04-01 19:31:42 -03:00
diegosouzapw
d10e70a77b Merge PR #899: fix(model-sync) into release/v3.4.2 2026-04-01 19:28:59 -03:00
diegosouzapw
0aa80f1459 Merge PR #873: i18n + CI fixes into release/v3.4.2 2026-04-01 19:28:52 -03:00
diegosouzapw
26732265f0 chore: update memory schema metadata, improve session handling, and add version-bump workflow 2026-04-01 18:54:51 -03:00
tombii
c214c6c120 refactor(model-sync): move empty-list guard to early return
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 23:18:30 +02:00
diegosouzapw
485eb60dde Merge Pull Request #888 2026-04-01 18:05:45 -03:00
diegosouzapw
7e5e029559 Merge Pull Request #891
# Conflicts:
#	open-sse/handlers/chatCore.ts
2026-04-01 18:05:44 -03:00
diegosouzapw
116fd7b829 Merge Pull Request #898 2026-04-01 18:04:59 -03:00
diegosouzapw
1a2b46f00c Merge Pull Request #882
# Conflicts:
#	tests/unit/copilot-usage.test.mjs
2026-04-01 18:04:52 -03:00
tombii
557509ef84 fix(model-sync): skip replace when auto-sync returns empty model list
Prevent auto-sync from wiping manually-imported models when the upstream
/models endpoint fails, times out, or returns an empty list. Added
`allowEmpty` option (default false) to replaceCustomModels — callers that
intentionally clear all models (DELETE ?all=true) pass `allowEmpty: true`.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 23:01:30 +02:00
AndrewDragonIV
56f1c53084 fix: use snake_case mime_type to match Gemini API convention 2026-04-01 23:54:10 +03:00
AndrewDragonIV
afefee2357 fix(antigravity): add image passthrough for Claude models
The wrapInCloudCodeEnvelopeForClaude function converts Claude message
blocks to Antigravity/Gemini parts format but only handles text,
tool_use, and tool_result types. Image blocks (type: 'image' with
base64 source) are silently dropped, causing Claude models routed
through Antigravity to never receive image content.

This adds handling for image blocks, converting them to inlineData
format (the same format the Gemini path already uses successfully).

Tested: Claude via Antigravity now correctly receives and describes
image content that was previously invisible.
2026-04-01 23:40:07 +03:00
diegosouzapw
bfeb1693d6 chore: documents 2026-04-01 12:34:37 -03:00
William Finger
7928bede1e test: fix 4 failing unit tests (copilot-usage, request-log-migration)
- copilot-usage: use future reset date (2026-12-31) to avoid stale
  quota window causing remainingPercentage to reset to 100%
- request-log-migration: close SQLite DB before cleanup to release
  Windows file locks; remove stale archive dir before second test
2026-04-01 13:48:48 +01:00
diegosouzapw
3e62300f9c docs: update root files to v3.4.2 state, cleanup obsolete files
- SECURITY.md: supported versions 3.4.x/3.0.x, MCP scopes (10),
  audit trail, Zod v4 validation, TLS/CLI fingerprint
- CONTRIBUTING.md: Node >=18<24, port 20128, project structure
  (21 DB modules, 25 MCP tools, memory/skills/electron), 122 test files
- README.md: 60+ providers, 25 MCP tools, 10 scopes, 9 strategies
- .dockerignore: expanded exclusions (tests, docs, electron, *.tgz)
- .npmignore: added llm.txt, bun.lock, tsconfig variants, subprojects
- .gitignore: _*/ dirs, docs/new-features, COVERAGE_PLAN allowlist

Deleted files:
- 20 README.*.md redirect stubs (consolidated in docs/i18n/)
- 4 scratch test files (test_exception/target_format/translator/out)
- restart.sh, validate-translation.sh (obsolete scripts)
- Moved COVERAGE_PLAN.md -> docs/COVERAGE_PLAN.md
2026-04-01 09:44:11 -03:00
diegosouzapw
49c9eaa6e1 Merge remote-tracking branch 'origin/release/v3.4.1' 2026-04-01 09:00:02 -03:00
diegosouzapw
58db8a838a Merge branch 'release/v3.4.0' into main 2026-04-01 08:59:49 -03:00
diegosouzapw
5509c65a6f Merge remote-tracking branch 'origin/only-4-copilot-869' into temp_merge_branch 2026-04-01 08:47:15 -03:00
diegosouzapw
fb3ba8bf92 chore: resolve merge conflicts with feature-antigravity 2026-04-01 08:47:05 -03:00
diegosouzapw
667bda6afb feat: complete memory and skills implementation for antigravity 2026-04-01 08:42:03 -03:00
R.D.
a381e9aa3b feat: pass tools through CC compatible bridge 2026-04-01 04:55:25 -04:00
R.D.
32dc3b36ab chore: rename CC compatible feature flag 2026-04-01 04:39:29 -04:00
R.D.
190f02a939 feat: add hidden Claude Code compatible provider 2026-04-01 04:35:16 -04:00