v3.10.2 — Fix Antigravity models: use display names not slugs

This commit is contained in:
Roman
2026-05-25 12:53:00 +04:00
Unverified
parent 539186ff40
commit 38e585c9d5
5 changed files with 66 additions and 27 deletions

View File

@@ -26,6 +26,14 @@ model_catalog_json = ""
"""
CHANGELOG = [
("3.10.2", "2026-05-25", [
"Fix Antigravity models: use display names (Gemini 3.5 Flash (High)) not slugs (gemini-3.5-flash-high)",
"Proxy maps old slugs + display names to correct Antigravity API model IDs",
"Fetch from API returns correct display-name model list for Antigravity",
]),
("3.10.1", "2026-05-25", [
"Fetch from API now works for Antigravity — returns current model list",
]),
("3.10.0", "2026-05-25", [
"Provider editor: Remove Selected, Clear All, Sync from Preset buttons for model list",
"Sync from Preset replaces model list with current preset models",
@@ -352,11 +360,11 @@ PROVIDER_PRESETS = {
"base_url": "https://daily-cloudcode-pa.sandbox.googleapis.com",
"oauth_provider": "google-antigravity",
"models": [
"gemini-3.5-flash-high", "gemini-3.5-flash-medium",
"gemini-3.1-pro-high", "gemini-3.1-pro-low",
"claude-sonnet-4.6-thinking",
"claude-opus-4.6-thinking",
"gpt-oss-120b-medium",
"Gemini 3.5 Flash (High)", "Gemini 3.5 Flash (Medium)",
"Gemini 3.1 Pro (High)", "Gemini 3.1 Pro (Low)",
"Claude Sonnet 4.6 Thinking",
"Claude Opus 4.6 Thinking",
"GPT-OSS 120B Medium",
],
},
"OpenAdapter": {
@@ -749,7 +757,18 @@ def endpoint_model_headers(endpoint):
headers["Authorization"] = f"Bearer {key}"
return headers
_ANTIGRAVITY_MODELS = [
"Gemini 3.5 Flash (High)", "Gemini 3.5 Flash (Medium)",
"Gemini 3.1 Pro (High)", "Gemini 3.1 Pro (Low)",
"Claude Sonnet 4.6 Thinking",
"Claude Opus 4.6 Thinking",
"GPT-OSS 120B Medium",
]
def fetch_models_for_endpoint(endpoint, timeout=10):
bt = endpoint.get("backend_type", "")
if bt == "gemini-oauth-antigravity":
return list(_ANTIGRAVITY_MODELS), None
url = endpoint_models_url(endpoint)
if not url:
return None, "Base URL is empty"
@@ -1757,7 +1776,7 @@ class LauncherWin(Gtk.Window):
# header row
hdr = Gtk.Box(spacing=8)
vbox.pack_start(hdr, False, False, 0)
lbl = Gtk.Label(label="<b>Codex Launcher v3.10.0</b>")
lbl = Gtk.Label(label="<b>Codex Launcher v3.10.2</b>")
lbl.set_use_markup(True)
hdr.pack_start(lbl, False, False, 0)
changelog_btn = Gtk.Button(label="Changelog")
@@ -3561,7 +3580,7 @@ class EditEndpointDialog(Gtk.Dialog):
auth_url = "https://codebuff.com/api/auth/cli/code"
body = json.dumps({"fingerprintId": fingerprint_id}).encode()
req = urllib.request.Request(auth_url, data=body,
headers={"Content-Type": "application/json", "User-Agent": "codex-launcher/3.10.0"})
headers={"Content-Type": "application/json", "User-Agent": "codex-launcher/3.10.2"})
resp = urllib.request.urlopen(req, timeout=30)
data = json.loads(resp.read())
login_url = data.get("loginUrl", "") or data.get("login_url", "")
@@ -3586,7 +3605,7 @@ class EditEndpointDialog(Gtk.Dialog):
time.sleep(2)
try:
poll_req = urllib.request.Request(poll_url,
headers={"User-Agent": "codex-launcher/3.10.0"})
headers={"User-Agent": "codex-launcher/3.10.2"})
poll_resp = urllib.request.urlopen(poll_req, timeout=10)
poll_data = json.loads(poll_resp.read())
user = poll_data.get("user")