From c16c6eaf611c51a86551a59ce2f73f9881b11d19 Mon Sep 17 00:00:00 2001 From: Roman | RyzenAdvanced Date: Tue, 26 May 2026 16:14:05 +0400 Subject: [PATCH] v3.11.5: token-aware compaction, vision filter, universal adaptive compaction, smart-continue text detection --- CHANGELOG.md | 24 ++++ README.md | 4 + codex-launcher_3.11.0_all.deb | Bin 137678 -> 0 bytes codex-launcher_3.11.5_all.deb | Bin 0 -> 156116 bytes install.sh | 10 +- src/codex-launcher-gui | 37 +++++- src/codex_launcher_lib.py | 16 ++- src/translate-proxy.py | 235 +++++++++++++++++++++++++++++----- translate-proxy.py | 235 +++++++++++++++++++++++++++++----- 9 files changed, 488 insertions(+), 73 deletions(-) delete mode 100644 codex-launcher_3.11.0_all.deb create mode 100644 codex-launcher_3.11.5_all.deb diff --git a/CHANGELOG.md b/CHANGELOG.md index fe1eb0f..b5bf12d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,29 @@ # Changelog +## v3.11.5 (2026-05-26) + +**Vision Filter, Token-Aware Compaction, Universal Adaptive Compaction, Smart-Continue Text Detection** + +### Critical Fixes + +- **Token-aware compaction for small-context models (FIX)**: `_crof_compact_for_retry()` had an early return at `len(input_data) <= limit` (item count) — if you had 25 items × 1600 tokens = 40K tokens, it skipped compaction entirely because 25 < 30 (the default item limit). Now also checks estimated token count vs learned model max, and compacts when either item count OR token count exceeds limits. Fixes repeated `context_length_exceeded` errors on models like 0G-GLM-5.1 (~35K token context). +- **Proactive compaction now token-aware**: Previously only triggered when item count > 30. Now also triggers when estimated tokens exceed 80% of the model's learned token limit, even if item count is below the threshold. Prevents the first-request failure pattern on small-context models. +- **Compaction aggression threshold**: Changed `est > max_tok` to `est >= max_tok * 0.9` to avoid edge case where estimated tokens exactly equal the limit and compaction is skipped. +- **Removed all `crof.ai` gates from adaptive compaction**: Proactive compaction, `finish_reason=length` retry, `_crof_record`, and compaction logging were gated behind `"crof.ai" in TARGET_URL`. These gates prevented OpenAdapter and other providers from getting proactive/retry compaction, causing repeated `context_length_exceeded` failures. Now applies universally to ALL providers. + +### New Features + +- **Vision model detection + image stripping**: `_strip_images_from_input()` and `_model_supports_vision()` detect vision capability by model name pattern. Non-vision models (deepseek, glm, mixtral, llama, command, dbrx, qwen, phi-3) have `input_image`/`image_url` parts stripped and replaced with `[User attached image: filename — this model does not support vision]` text notice. Vision models (gpt-4o, gemini, claude, qwen-vl, glm-5v) keep images intact. Applied in 3 paths: main request, context_length_exceeded retry, smart-continue nudge. +- **Token estimation and per-model limit learning**: `_estimate_tokens()`, `_estimate_input_tokens()`, `_get_model_max_tokens()`, `_set_model_max_tokens()`. Extracts `~N tokens` from `context_length_exceeded` error messages and stores per-model token limits. Used by proactive compaction and retry compaction to adjust `keep` count dynamically. +- **Compaction aggression levels**: `_crof_compact_for_retry()` accepts `aggression` parameter (0=normal, 1=extreme). Extreme mode kicks in when estimated tokens > 1.5× the learned limit or on 2nd+ retry attempt. Reduces `keep` count to minimum, ensuring the compacted request fits within model limits. +- **Smart-continue text-tool detection**: Removed hard requirement for `has_function_call_output(input_data)`. Added `_TOOL_CALL_TEXT_PATTERNS` and `_text_looks_like_tool_calls()` to trigger nudging when model outputs text matching tool-call patterns (e.g., `• (exec_command cmd ...)`, `write_to_file`, `exec_command`) even without prior `function_call_output` in context. Essential for models like 0G-GLM-5.1 that never emit real `function_call_output` items. +- **Parenthesized tool call regex**: `_PAREN_TC_RE` pattern to match `• (name args...)` format from non-vision models that output tool calls as parenthesized text. + +### GUI Fixes + +- **Active endpoint sync**: Added `set_active_endpoint()` and `validate_active_endpoint()` to Linux GTK GUI. Syncs `.active-endpoint.json` with `config.toml` on every launch; auto-removes stale references to deleted providers. Fixed `"Error loading configuration: No such file or directory (os error 2)"` crash when active endpoint referenced a deleted provider. +- **Config state**: `~/.codex/.active-endpoint.json` and `config.toml` model catalog path validated and auto-corrected on GUI startup. + ## v3.11.0 (2026-05-26) **Cobra PR Merge + Smart Continuation + API Key Hot-Reload** diff --git a/README.md b/README.md index 6975940..7ee8861 100644 --- a/README.md +++ b/README.md @@ -130,6 +130,10 @@ A three-component system: - **Response store TTL** — evicts stored responses older than 10 minutes, prevents memory leaks - **Bounded stream buffers** — 8MB cap prevents OOM on pathological responses - **Dual logging** — all proxy messages written to both stderr and `~/.cache/codex-proxy/proxy.log` +- **Vision model detection** (v3.11.5) — automatically strips images for non-vision models (DeepSeek, GLM, Qwen, etc.) and replaces with text notice; vision-capable models (GPT-4o, Gemini, Claude, Qwen-VL) keep images intact +- **Token-aware compaction** (v3.11.5) — learns per-model token limits from `context_length_exceeded` errors; proactively compacts when estimated tokens exceed 80% of limit; prevents repeated context overflow on small-context models (~35K tokens) +- **Universal adaptive compaction** (v3.11.5) — compaction now works for ALL providers (was Crof.ai-only); proactive + retry compaction with aggression levels (normal/extreme) +- **Smart-continue text detection** (v3.11.5) — triggers continuation nudging when model outputs text matching tool-call patterns, essential for text-only models that never emit real `function_call_output` items - Zero dependencies — pure Python stdlib ### Command Code Adapter diff --git a/codex-launcher_3.11.0_all.deb b/codex-launcher_3.11.0_all.deb deleted file mode 100644 index 5d375ab178c77976482800add687753972f589c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 137678 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 diff --git a/codex-launcher_3.11.5_all.deb b/codex-launcher_3.11.5_all.deb new file mode 100644 index 0000000000000000000000000000000000000000..4fff7570f7891c2abb4c136f80a90f6db080a398 GIT binary patch literal 156116 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∾TW{SV@a-(h{md4g) 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�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

?G;?dRanHb^*)3Q&` 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 W>|*9wD1uG!2w$~17Zn6%AQJ}VSotad literal 0 HcmV?d00001 diff --git a/install.sh b/install.sh index 88f869b..4dd2382 100755 --- a/install.sh +++ b/install.sh @@ -3,13 +3,13 @@ set -e SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" -if [ -f "$SCRIPT_DIR/codex-launcher_3.11.0_all.deb" ]; then - echo "Installing codex-launcher_3.11.0_all.deb ..." - sudo dpkg -i "$SCRIPT_DIR/codex-launcher_3.11.0_all.deb" +if [ -f "$SCRIPT_DIR/codex-launcher_3.11.5_all.deb" ]; then + echo "Installing codex-launcher_3.11.5_all.deb ..." + sudo dpkg -i "$SCRIPT_DIR/codex-launcher_3.11.5_all.deb" else - echo "WARNING: codex-launcher_3.11.0_all.deb not found; copying files manually." + echo "WARNING: codex-launcher_3.11.5_all.deb not found; copying files manually." fi -echo "Installed v3.11.0 via .deb package." +echo "Installed v3.11.5 via .deb package." echo " translate-proxy.py -> /usr/bin/translate-proxy.py" echo " codex-launcher-gui -> /usr/bin/codex-launcher-gui" echo " cleanup-codex-stale -> /usr/bin/cleanup-codex-stale.sh" diff --git a/src/codex-launcher-gui b/src/codex-launcher-gui index b0853fd..e39fbf0 100755 --- a/src/codex-launcher-gui +++ b/src/codex-launcher-gui @@ -20,12 +20,22 @@ BGP_POOLS_FILE = HOME / ".codex/bgp-pools.json" LOG_DIR = HOME / ".cache/codex-desktop" LAUNCH_LOG = LOG_DIR / "launcher.log" PROXY_CONFIG_DIR = HOME / ".cache/codex-proxy" +ACTIVE_ENDPOINT_FILE = HOME / ".codex/.active-endpoint.json" DEFAULT_CONFIG = """model = "" model_provider = "" model_catalog_json = "" """ CHANGELOG = [ + ("3.11.5", "2026-05-26", [ + "Token-aware compaction: fixes context_length_exceeded on small-context models", + "Proactive compaction triggers on token count, not just item count", + "Universal adaptive compaction for all providers (removed crof.ai gates)", + "Vision model detection + image stripping for non-vision models", + "Per-model token limit learning from error messages", + "Smart-continue text-tool detection for text-only models", + "Active endpoint sync: auto-removes stale references on startup", + ]), ("3.11.0", "2026-05-26", [ "Merge cobra PR: concurrency semaphore (max 3), auto-continue for truncated text", "SO_REUSEADDR on sticky port, proxy-stderr.log, stream diagnostics logging", @@ -33,7 +43,7 @@ CHANGELOG = [ "Restart Proxy button: only restarts proxy without killing Codex Desktop", "Tool call argument normalizer: fixes Arguments→arguments, strips markdown wrapping", "Smart-continue loop (2× retries): escalating nudges when model stops text-only mid-task", - "XML tool call extraction: parses patterns from text, injects as real calls", + "XML tool call extraction: parses patterns from text, injects as real calls", "Auto-continue + smart-continue ordered with skip guard to avoid double-firing", "API key hot-reload with mtime tracking + /admin/reload + /admin/verify-key endpoints", "GUI hot-reload: auto-refreshes proxy key on endpoint edit, verifies with upstream", @@ -923,6 +933,27 @@ def restore_config(): shutil.copy2(str(CONFIG_BAK), str(tmp)) os.replace(str(tmp), str(CONFIG)) +def set_active_endpoint(name): + ACTIVE_ENDPOINT_FILE.parent.mkdir(parents=True, exist_ok=True) + write_secure_text(ACTIVE_ENDPOINT_FILE, json.dumps({"active": name}, indent=2)) + +def validate_active_endpoint(logfn=None): + if not ACTIVE_ENDPOINT_FILE.exists(): + return + try: + d = json.loads(ACTIVE_ENDPOINT_FILE.read_text()) + active = d.get("active", "") + if not active: + return + eps = load_endpoints() + names = {ep.get("name", "") for ep in eps} + if active not in names: + ACTIVE_ENDPOINT_FILE.unlink() + if logfn: + logfn(f"Removed stale active-endpoint '{active}' (provider no longer exists)") + except Exception: + pass + def write_secure_text(path, text): path.parent.mkdir(parents=True, exist_ok=True) tmp = path.with_suffix(path.suffix + ".tmp") @@ -1862,6 +1893,7 @@ class LauncherWin(Gtk.Window): self._proc = None self._endpoints_data = load_endpoints() recover_config_if_needed() + validate_active_endpoint() vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=8) self.add(vbox) @@ -2607,6 +2639,8 @@ class LauncherWin(Gtk.Window): begin_config_transaction(f"launch:{ep['name']}") write_config_for_native(ep, model) + set_active_endpoint(ep["name"]) + if target == "desktop": if needs_proxy: _kill_existing_desktop(self.log) @@ -2664,6 +2698,7 @@ class LauncherWin(Gtk.Window): begin_config_transaction(f"launch:bgp:{pool['name']}") write_config_for_translated(bgp_ep, model, port) + set_active_endpoint(pool["name"]) if target == "desktop": _kill_existing_desktop(self.log) diff --git a/src/codex_launcher_lib.py b/src/codex_launcher_lib.py index 28e6e92..94249d0 100644 --- a/src/codex_launcher_lib.py +++ b/src/codex_launcher_lib.py @@ -83,14 +83,24 @@ model_catalog_json = "" """ CHANGELOG = [ + ("3.11.5", "2026-05-26", [ + "Token-aware compaction: fixes context_length_exceeded on small-context models (25 items × 1600 tokens)", + "Proactive compaction triggers on token count (>80% model limit), not just item count", + "Universal adaptive compaction: removed crof.ai-only gates, all providers get compaction", + "Vision model detection: strips images for non-vision models, keeps for vision-capable ones", + "Per-model token limit learning from context_length_exceeded error messages", + "Compaction aggression levels: normal vs extreme when tokens > 1.5× model limit", + "Smart-continue text-tool detection: triggers on tool-call text patterns, not just function_call_output", + "Active endpoint sync: GUI auto-removes stale endpoint references on startup", + ]), ("3.11.0", "2026-05-26", [ "Merge cobra PR: concurrency semaphore (max 3), auto-continue for truncated text", "SO_REUSEADDR on sticky port, proxy-stderr.log, stream diagnostics logging", "Timeout/OSError handler sends response.failed SSE instead of silent drop", "Restart Proxy button: only restarts proxy without killing Codex Desktop", - "Tool call argument normalizer: fixes Arguments→arguments, strips markdown wrapping", - "Smart-continue loop (2× retries): escalating nudges when model stops text-only mid-task", - "XML tool call extraction: parses patterns from text, injects as real calls", + "Tool call argument normalizer: fixes Arguments->arguments, strips markdown wrapping", + "Smart-continue loop (2x retries): escalating nudges when model stops text-only mid-task", + "XML tool call extraction: parses patterns from text, injects as real calls", "Auto-continue + smart-continue ordered with skip guard to avoid double-firing", "API key hot-reload with mtime tracking + /admin/reload + /admin/verify-key endpoints", "GUI hot-reload: auto-refreshes proxy key on endpoint edit, verifies with upstream", diff --git a/src/translate-proxy.py b/src/translate-proxy.py index 6d7b966..2cb81ce 100755 --- a/src/translate-proxy.py +++ b/src/translate-proxy.py @@ -1469,6 +1469,53 @@ _CROF_ADAPTIVE = { "min_keep_recent": 6, } +_model_max_tokens = {} +_model_max_tokens_lock = threading.Lock() + +def _estimate_tokens(item): + if not isinstance(item, dict): + return 4 + t = item.get("type", "") + if t == "message": + content = item.get("content", "") + if isinstance(content, str): + return max(4, len(content) // 4) + elif isinstance(content, list): + total = 4 + for part in content: + pt = part.get("type", "") + if pt in ("input_text", "output_text"): + total += max(4, len(part.get("text", "")) // 4) + elif pt == "input_image": + total += 800 + elif pt in ("function_call",): + total += max(20, len(part.get("arguments", "{}")) // 2) + elif pt == "function_call_output": + total += max(8, len(part.get("output", "")) // 4) + return total + elif t in ("function_call_output",): + return max(8, len(item.get("output", "")) // 4) + elif t == "function_call": + return max(20, len(item.get("arguments", "{}")) // 2) + return 4 + +def _estimate_input_tokens(input_data): + if not isinstance(input_data, list): + return 0 + return sum(_estimate_tokens(i) for i in input_data) + +def _get_model_max_tokens(model): + with _model_max_tokens_lock: + return _model_max_tokens.get(model) + +def _set_model_max_tokens(model, tokens): + if model and tokens: + with _model_max_tokens_lock: + existing = _model_max_tokens.get(model) + if existing is None or tokens < existing: + _model_max_tokens[model] = tokens + print(f"[ctx-limit] learned {model} max ~{tokens} tokens", file=sys.stderr) + _BGP_STATS_PATH = os.path.join(_LOG_DIR, "bgp-route-stats.json") _bgp_stats_lock = threading.Lock() @@ -1534,8 +1581,6 @@ def _sorted_bgp_routes(): return sorted(BGP_ROUTES, key=lambda r: _score_route(r, stats)) def _crof_record(model, n_items, success): - if TARGET_URL and "crof.ai" not in TARGET_URL: - return if not isinstance(n_items, int) or n_items < 1: return entry = {"model": model, "items": n_items, "ok": success} @@ -1561,20 +1606,36 @@ def _crof_record(model, n_items, success): global_limit = v["limit"] _CROF_ADAPTIVE["global_item_limit"] = global_limit - if TARGET_URL and "crof.ai" in TARGET_URL: - print(f"[crof-adaptive] model={model} items={n_items} {'OK' if success else 'FAIL'} -> limit={ml.get('limit',30)} global={global_limit}", file=sys.stderr) + print(f"[crof-adaptive] model={model} items={n_items} {'OK' if success else 'FAIL'} -> limit={ml.get('limit',30)} global={global_limit}", file=sys.stderr) def _crof_item_limit(model): ml = _CROF_ADAPTIVE["model_limits"].get(model, {}) per_model = ml.get("limit", 30) return min(per_model, _CROF_ADAPTIVE["global_item_limit"]) -def _crof_compact_for_retry(input_data, model): +def _crof_compact_for_retry(input_data, model, aggression=0): limit = _crof_item_limit(model) - if not isinstance(input_data, list) or len(input_data) <= limit: + if not isinstance(input_data, list) or len(input_data) < 2: + return input_data + + max_tok = _get_model_max_tokens(model) + est = _estimate_input_tokens(input_data) + over_item_limit = len(input_data) > limit + over_token_limit = max_tok and est >= max_tok * 0.9 + + if not over_item_limit and not over_token_limit: return input_data keep = max(_CROF_ADAPTIVE["min_keep_recent"], limit // 3) + if over_token_limit: + ratio = est / max_tok + if aggression >= 1 or ratio > 1.5: + keep = max(2, _CROF_ADAPTIVE["min_keep_recent"] // 2) + elif ratio > 1.2: + keep = max(3, keep // 2) + print(f"[ctx-limit] model={model} est={est}tok max={max_tok}tok ratio={ratio:.2f} -> keep={keep}", file=sys.stderr) + elif over_item_limit: + keep = max(keep, 6) head_end = 0 for i, item in enumerate(input_data): t = item.get("type") @@ -1607,8 +1668,7 @@ def _crof_compact_for_retry(input_data, model): summary_lines.append(_item_summary(item, max_len=120)) summary_msg = {"type": "message", "role": "user", "content": [{"type": "input_text", "text": "\n".join(summary_lines)}]} - if TARGET_URL and "crof.ai" in TARGET_URL: - print(f"[crof-adaptive] RETRY compact: {len(input_data)} -> {len(head)+1+len(tail)} (limit={limit}, keep={len(tail)})", file=sys.stderr) + print(f"[crof-adaptive] RETRY compact: {len(input_data)} -> {len(head)+1+len(tail)} (limit={limit}, keep={len(tail)}, agg={aggression})", file=sys.stderr) return head + [summary_msg] + tail def _item_summary(item, max_len=200): @@ -2051,6 +2111,18 @@ def synthesize_tool_results_for_chat(input_items): def has_function_call_output(input_items): return isinstance(input_items, list) and any(i.get("type") == "function_call_output" for i in input_items) +_TOOL_CALL_TEXT_PATTERNS = re.compile( + r'(?:^|\n)[\s•\-\*]*\(?' + r'(?:exec_command|write_to_file|exec_bash|bash|run_command|shell|edit_file|read_file|search_files|list_files)' + r'[\s:]', + re.I | re.MULTILINE +) + +def _text_looks_like_tool_calls(text): + if not text or len(text) < 6: + return False + return bool(_TOOL_CALL_TEXT_PATTERNS.search(text)) + # ═══════════════════════════════════════════════════════════════════ # Log redaction # ═══════════════════════════════════════════════════════════════════ @@ -2233,9 +2305,14 @@ def _normalize_tool_args(raw_args): except json.JSONDecodeError: return raw_args -_XML_TC_RE = re.compile(r'(\w+)(.*?)', re.DOTALL) +_XML_TC_RE = re.compile(r'exec_command(.*?)', re.DOTALL) _XML_ARG_VALUE_RE = re.compile(r'\s*') +_PAREN_TC_RE = re.compile( + r'(?:^|[\n•\-\*]\s*)\(\s*(exec_command|write_to_file|exec_bash|bash|run_command|shell|edit_file|read_file|search_files|list_files)\b\s*(.*?)\)', + re.DOTALL | re.I +) + def _extract_xml_tool_calls(text): if not text: return [] @@ -2262,6 +2339,68 @@ def _extract_xml_tool_calls(text): results.append({"name": name, "args": args_str, "call_id": f"xml_{len(results)}"}) return results +_NON_VISION_MODEL_PATTERNS = re.compile( + r'\b(deepseek|glm|mixtral|llama\b(?!.*vision)|command|dbrx|qwen\b(?!.*vl)|phi-?3(?!.*vision))', + re.I +) + +_vision_fail_cache = set() +_vision_fail_lock = threading.Lock() + +def _model_supports_vision(model): + if not model: + return True + with _vision_fail_lock: + if model in _vision_fail_cache: + return False + if _NON_VISION_MODEL_PATTERNS.search(model): + return False + return True + +def _mark_vision_fail(model): + if model: + with _vision_fail_lock: + _vision_fail_cache.add(model) + +def _strip_images_from_input(input_data, model): + if not isinstance(input_data, list) or _model_supports_vision(model): + return input_data + modified = False + result = [] + for item in input_data: + if item.get("type") != "message": + result.append(item) + continue + content = item.get("content", []) + if isinstance(content, str): + result.append(item) + continue + new_content = [] + has_img = False + for part in content: + if isinstance(part, str): + new_content.append(part) + continue + pt = part.get("type", "") + if pt in ("input_image", "image_url"): + if not has_img: + fname = part.get("image_url", {}).get("url", part.get("url", "image.png")) + if fname.startswith("data:"): + fname = "screenshot.png" + new_content.append({"type": "output_text", "text": f"[User attached image: {fname} — this model does not support vision]"}) + has_img = True + modified = True + else: + new_content.append(part) + if modified: + result.append({**item, "content": new_content}) + else: + result.append(item) + if modified: + print(f"[vision-filter] stripped {sum(1 for i in input_data if i.get('type')=='message' and any(c.get('type') in ('input_image','image_url') for c in (i.get('content') or []) if isinstance(c,dict)))} images for model={model}", file=sys.stderr) + return result + return input_data + def oa_input_to_messages(input_data): msgs = [] tool_name_by_id = {} @@ -4889,12 +5028,25 @@ class Handler(http.server.BaseHTTPRequestHandler): body["input"] = input_data crof_limit = _crof_item_limit(model) - _crof_eligible = TARGET_URL and "crof.ai" in TARGET_URL - if _crof_eligible and not compacted and isinstance(input_data, list) and len(input_data) > crof_limit: - print(f"[crof-adaptive] proactive compact: {len(input_data)} items > limit {crof_limit}", file=sys.stderr) - input_data = _crof_compact_for_retry(input_data, model) - body = dict(body) - body["input"] = input_data + _crof_eligible = True + if _crof_eligible and not compacted and isinstance(input_data, list): + _needs_compact = len(input_data) > crof_limit + max_tok = _get_model_max_tokens(model) + est_tok = _estimate_input_tokens(input_data) if max_tok else 0 + if not _needs_compact and max_tok and est_tok > max_tok * 0.8: + _needs_compact = True + if _needs_compact: + _agg = 0 + if max_tok and est_tok > max_tok: + _agg = 1 + print(f"[crof-adaptive] proactive compact: {len(input_data)} items, est={est_tok}tok max={max_tok}tok agg={_agg}", file=sys.stderr) + input_data = _crof_compact_for_retry(input_data, model, aggression=_agg) + body = dict(body) + body["input"] = input_data + + # Strip images for non-vision models + input_data = _strip_images_from_input(input_data, model) + body["input"] = input_data messages = oa_input_to_messages(input_data) messages = _inject_stored_reasoning(messages) @@ -4927,14 +5079,19 @@ class Handler(http.server.BaseHTTPRequestHandler): except urllib.error.HTTPError as e: err_body = e.read().decode() if "context_length_exceeded" in err_body and attempt < max_retries: - print(f"[{self._session_id}] context_length_exceeded (attempt {attempt+1}/{max_retries}), retrying with extreme compaction!", file=sys.stderr) + import re as _re + _tok_m = _re.search(r'~?(\d+)\s*tokens', err_body) + if _tok_m: + _set_model_max_tokens(model, int(_tok_m.group(1))) + print(f"[{self._session_id}] context_length_exceeded (attempt {attempt+1}/{max_retries}), retrying with compaction (agg={attempt})!", file=sys.stderr) policy = provider_policy() if isinstance(input_data, list): - print(f"[{self._session_id}] applying extreme compaction to {len(input_data)} items", file=sys.stderr) - input_data = _crof_compact_for_retry(input_data, model) + est = _estimate_input_tokens(input_data) + print(f"[{self._session_id}] applying compaction to {len(input_data)} items ~{est}tok", file=sys.stderr) + input_data = _crof_compact_for_retry(input_data, model, aggression=attempt) body = dict(body) body["input"] = input_data - messages = oa_input_to_messages(input_data) + messages = oa_input_to_messages(_strip_images_from_input(input_data, model)) messages = _inject_stored_reasoning(messages) instructions = body.get("instructions", "").strip() if instructions: @@ -5725,9 +5882,11 @@ class Handler(http.server.BaseHTTPRequestHandler): last_status = None finish_reason = None has_content = False + has_message = False + has_tool_call = False def _observe_event(event): - nonlocal last_resp_id, last_output, last_status, finish_reason, has_content + nonlocal last_resp_id, last_output, last_status, finish_reason, has_content, has_message, has_tool_call for line in event.strip().split("\n"): if line.startswith("data: "): try: @@ -5737,7 +5896,9 @@ class Handler(http.server.BaseHTTPRequestHandler): last_output = d.get("response", {}).get("output", []) last_status = d.get("response", {}).get("status") finish_reason = "length" if last_status == "incomplete" else "stop" - has_content = any(o.get("type") == "message" for o in (last_output or [])) + has_tool_call = any(o.get("type") == "function_call" for o in (last_output or [])) + has_message = any(o.get("type") == "message" for o in (last_output or [])) + has_content = has_message or has_tool_call except Exception: pass @@ -5749,7 +5910,7 @@ class Handler(http.server.BaseHTTPRequestHandler): break collected_events.append(event) _observe_event(event) - print(f"[{self._session_id}] stream ended: events={len(collected_events)} finish={finish_reason} has_content={has_content} elapsed={time.time()-t0:.1f}s", file=sys.stderr) + print(f"[{self._session_id}] stream ended: events={len(collected_events)} finish={finish_reason} has_content={has_content} has_message={has_message} has_tool_call={has_tool_call} elapsed={time.time()-t0:.1f}s", file=sys.stderr) except (ConnectionResetError, BrokenPipeError, ConnectionAbortedError): print("[translate-proxy] client disconnected during stream", file=sys.stderr) _crof_record(model, n_items, False) @@ -5805,6 +5966,8 @@ class Handler(http.server.BaseHTTPRequestHandler): last_resp_id = last_output = last_status = None finish_reason = None has_content = False + has_message = False + has_tool_call = False for event in oa_stream_to_sse(retry_upstream, model, body.get("request_id") or body.get("id")): collected_events.append(event) _observe_event(event) @@ -5813,7 +5976,7 @@ class Handler(http.server.BaseHTTPRequestHandler): print(f"[provider-sensor] synthetic retry failed: {e}", file=sys.stderr) # Auto-retry on finish_reason=length with no content due to too much context. - if finish_reason == "length" and not has_content and isinstance(input_data, list) and len(input_data) > 5 and TARGET_URL and "crof.ai" in TARGET_URL: + if finish_reason == "length" and not has_content and isinstance(input_data, list) and len(input_data) > 5: print(f"[crof-adaptive] RETRY: finish_reason=length with no content, compacting {n_items} items", file=sys.stderr) new_input = _crof_compact_for_retry(input_data, model) if len(new_input) < len(input_data): @@ -5836,6 +5999,8 @@ class Handler(http.server.BaseHTTPRequestHandler): last_resp_id = last_output = last_status = None finish_reason = None has_content = False + has_message = False + has_tool_call = False for event in oa_stream_to_sse(retry_upstream, model, body.get("request_id") or body.get("id")): collected_events.append(event) _observe_event(event) @@ -5943,9 +6108,17 @@ class Handler(http.server.BaseHTTPRequestHandler): _smart_attempt = 0 while _smart_attempt < _smart_max: _has_tool_calls_in_output = any(o.get("type") == "function_call" for o in (last_output or [])) + last_text = "" + for o in (last_output or []): + if o.get("type") == "message": + for c in (o.get("content") or []): + if isinstance(c, dict) and c.get("type") == "output_text": + last_text += c.get("text", "") + _looks_like_tools = _text_looks_like_tool_calls(last_text) + _has_prior_tool_ctx = has_function_call_output(input_data) if not (finish_reason == "stop" and has_content and not _has_tool_calls_in_output and isinstance(input_data, list) and len(input_data) >= 3 - and has_function_call_output(input_data)): + and (_has_prior_tool_ctx or _looks_like_tools)): break _smart_attempt += 1 _nudges = [ @@ -5954,12 +6127,6 @@ class Handler(http.server.BaseHTTPRequestHandler): ] nudge_text = _nudges[min(_smart_attempt - 1, len(_nudges) - 1)] # Try extracting XML tool calls from text as fallback before nudging - last_text = "" - for o in (last_output or []): - if o.get("type") == "message": - for c in (o.get("content") or []): - if isinstance(c, dict) and c.get("type") == "output_text": - last_text += c.get("text", "") xml_fc = _extract_xml_tool_calls(last_text) if xml_fc: print(f"[{self._session_id}] [smart-continue] extracted {len(xml_fc)} XML tool calls from text, injecting and retrying", file=sys.stderr) @@ -5979,6 +6146,8 @@ class Handler(http.server.BaseHTTPRequestHandler): last_resp_id = last_output = last_status = None finish_reason = None has_content = False + has_message = False + has_tool_call = False for event in oa_stream_to_sse(retry_upstream, model, body.get("request_id") or body.get("id")): collected_events.append(event) _observe_event(event) @@ -5988,19 +6157,21 @@ class Handler(http.server.BaseHTTPRequestHandler): print(f"[{self._session_id}] [smart-continue] XML injection retry failed: {e}", file=sys.stderr) break _nudge_msg = {"role": "user", "content": nudge_text} - nudge_messages = oa_input_to_messages(input_data) + [_nudge_msg] + nudge_messages = oa_input_to_messages(_strip_images_from_input(input_data, model)) + [_nudge_msg] instructions = body.get("instructions", "").strip() if instructions: nudge_messages.insert(0, {"role": "system", "content": instructions}) nudge_chat_body = self._build_chat_body(model, nudge_messages, body, stream) nudge_req = urllib.request.Request(target, data=json.dumps(nudge_chat_body).encode(), headers=fwd) - print(f"[{self._session_id}] [smart-continue] attempt {_smart_attempt}/{_smart_max}: model stopped mid-task, nudging", file=sys.stderr) + print(f"[{self._session_id}] [smart-continue] attempt {_smart_attempt}/{_smart_max}: model stopped mid-task (prior_ctx={_has_prior_tool_ctx} text_tools={_looks_like_tools}), nudging", file=sys.stderr) try: retry_upstream = urllib.request.urlopen(nudge_req, timeout=_upstream_timeout(body, True)) collected_events = [] last_resp_id = last_output = last_status = None finish_reason = None has_content = False + has_message = False + has_tool_call = False for event in oa_stream_to_sse(retry_upstream, model, body.get("request_id") or body.get("id")): collected_events.append(event) _observe_event(event) diff --git a/translate-proxy.py b/translate-proxy.py index 6d7b966..2cb81ce 100755 --- a/translate-proxy.py +++ b/translate-proxy.py @@ -1469,6 +1469,53 @@ _CROF_ADAPTIVE = { "min_keep_recent": 6, } +_model_max_tokens = {} +_model_max_tokens_lock = threading.Lock() + +def _estimate_tokens(item): + if not isinstance(item, dict): + return 4 + t = item.get("type", "") + if t == "message": + content = item.get("content", "") + if isinstance(content, str): + return max(4, len(content) // 4) + elif isinstance(content, list): + total = 4 + for part in content: + pt = part.get("type", "") + if pt in ("input_text", "output_text"): + total += max(4, len(part.get("text", "")) // 4) + elif pt == "input_image": + total += 800 + elif pt in ("function_call",): + total += max(20, len(part.get("arguments", "{}")) // 2) + elif pt == "function_call_output": + total += max(8, len(part.get("output", "")) // 4) + return total + elif t in ("function_call_output",): + return max(8, len(item.get("output", "")) // 4) + elif t == "function_call": + return max(20, len(item.get("arguments", "{}")) // 2) + return 4 + +def _estimate_input_tokens(input_data): + if not isinstance(input_data, list): + return 0 + return sum(_estimate_tokens(i) for i in input_data) + +def _get_model_max_tokens(model): + with _model_max_tokens_lock: + return _model_max_tokens.get(model) + +def _set_model_max_tokens(model, tokens): + if model and tokens: + with _model_max_tokens_lock: + existing = _model_max_tokens.get(model) + if existing is None or tokens < existing: + _model_max_tokens[model] = tokens + print(f"[ctx-limit] learned {model} max ~{tokens} tokens", file=sys.stderr) + _BGP_STATS_PATH = os.path.join(_LOG_DIR, "bgp-route-stats.json") _bgp_stats_lock = threading.Lock() @@ -1534,8 +1581,6 @@ def _sorted_bgp_routes(): return sorted(BGP_ROUTES, key=lambda r: _score_route(r, stats)) def _crof_record(model, n_items, success): - if TARGET_URL and "crof.ai" not in TARGET_URL: - return if not isinstance(n_items, int) or n_items < 1: return entry = {"model": model, "items": n_items, "ok": success} @@ -1561,20 +1606,36 @@ def _crof_record(model, n_items, success): global_limit = v["limit"] _CROF_ADAPTIVE["global_item_limit"] = global_limit - if TARGET_URL and "crof.ai" in TARGET_URL: - print(f"[crof-adaptive] model={model} items={n_items} {'OK' if success else 'FAIL'} -> limit={ml.get('limit',30)} global={global_limit}", file=sys.stderr) + print(f"[crof-adaptive] model={model} items={n_items} {'OK' if success else 'FAIL'} -> limit={ml.get('limit',30)} global={global_limit}", file=sys.stderr) def _crof_item_limit(model): ml = _CROF_ADAPTIVE["model_limits"].get(model, {}) per_model = ml.get("limit", 30) return min(per_model, _CROF_ADAPTIVE["global_item_limit"]) -def _crof_compact_for_retry(input_data, model): +def _crof_compact_for_retry(input_data, model, aggression=0): limit = _crof_item_limit(model) - if not isinstance(input_data, list) or len(input_data) <= limit: + if not isinstance(input_data, list) or len(input_data) < 2: + return input_data + + max_tok = _get_model_max_tokens(model) + est = _estimate_input_tokens(input_data) + over_item_limit = len(input_data) > limit + over_token_limit = max_tok and est >= max_tok * 0.9 + + if not over_item_limit and not over_token_limit: return input_data keep = max(_CROF_ADAPTIVE["min_keep_recent"], limit // 3) + if over_token_limit: + ratio = est / max_tok + if aggression >= 1 or ratio > 1.5: + keep = max(2, _CROF_ADAPTIVE["min_keep_recent"] // 2) + elif ratio > 1.2: + keep = max(3, keep // 2) + print(f"[ctx-limit] model={model} est={est}tok max={max_tok}tok ratio={ratio:.2f} -> keep={keep}", file=sys.stderr) + elif over_item_limit: + keep = max(keep, 6) head_end = 0 for i, item in enumerate(input_data): t = item.get("type") @@ -1607,8 +1668,7 @@ def _crof_compact_for_retry(input_data, model): summary_lines.append(_item_summary(item, max_len=120)) summary_msg = {"type": "message", "role": "user", "content": [{"type": "input_text", "text": "\n".join(summary_lines)}]} - if TARGET_URL and "crof.ai" in TARGET_URL: - print(f"[crof-adaptive] RETRY compact: {len(input_data)} -> {len(head)+1+len(tail)} (limit={limit}, keep={len(tail)})", file=sys.stderr) + print(f"[crof-adaptive] RETRY compact: {len(input_data)} -> {len(head)+1+len(tail)} (limit={limit}, keep={len(tail)}, agg={aggression})", file=sys.stderr) return head + [summary_msg] + tail def _item_summary(item, max_len=200): @@ -2051,6 +2111,18 @@ def synthesize_tool_results_for_chat(input_items): def has_function_call_output(input_items): return isinstance(input_items, list) and any(i.get("type") == "function_call_output" for i in input_items) +_TOOL_CALL_TEXT_PATTERNS = re.compile( + r'(?:^|\n)[\s•\-\*]*\(?' + r'(?:exec_command|write_to_file|exec_bash|bash|run_command|shell|edit_file|read_file|search_files|list_files)' + r'[\s:]', + re.I | re.MULTILINE +) + +def _text_looks_like_tool_calls(text): + if not text or len(text) < 6: + return False + return bool(_TOOL_CALL_TEXT_PATTERNS.search(text)) + # ═══════════════════════════════════════════════════════════════════ # Log redaction # ═══════════════════════════════════════════════════════════════════ @@ -2233,9 +2305,14 @@ def _normalize_tool_args(raw_args): except json.JSONDecodeError: return raw_args -_XML_TC_RE = re.compile(r'(\w+)(.*?)', re.DOTALL) +_XML_TC_RE = re.compile(r'exec_command(.*?)', re.DOTALL) _XML_ARG_VALUE_RE = re.compile(r'\s*') +_PAREN_TC_RE = re.compile( + r'(?:^|[\n•\-\*]\s*)\(\s*(exec_command|write_to_file|exec_bash|bash|run_command|shell|edit_file|read_file|search_files|list_files)\b\s*(.*?)\)', + re.DOTALL | re.I +) + def _extract_xml_tool_calls(text): if not text: return [] @@ -2262,6 +2339,68 @@ def _extract_xml_tool_calls(text): results.append({"name": name, "args": args_str, "call_id": f"xml_{len(results)}"}) return results +_NON_VISION_MODEL_PATTERNS = re.compile( + r'\b(deepseek|glm|mixtral|llama\b(?!.*vision)|command|dbrx|qwen\b(?!.*vl)|phi-?3(?!.*vision))', + re.I +) + +_vision_fail_cache = set() +_vision_fail_lock = threading.Lock() + +def _model_supports_vision(model): + if not model: + return True + with _vision_fail_lock: + if model in _vision_fail_cache: + return False + if _NON_VISION_MODEL_PATTERNS.search(model): + return False + return True + +def _mark_vision_fail(model): + if model: + with _vision_fail_lock: + _vision_fail_cache.add(model) + +def _strip_images_from_input(input_data, model): + if not isinstance(input_data, list) or _model_supports_vision(model): + return input_data + modified = False + result = [] + for item in input_data: + if item.get("type") != "message": + result.append(item) + continue + content = item.get("content", []) + if isinstance(content, str): + result.append(item) + continue + new_content = [] + has_img = False + for part in content: + if isinstance(part, str): + new_content.append(part) + continue + pt = part.get("type", "") + if pt in ("input_image", "image_url"): + if not has_img: + fname = part.get("image_url", {}).get("url", part.get("url", "image.png")) + if fname.startswith("data:"): + fname = "screenshot.png" + new_content.append({"type": "output_text", "text": f"[User attached image: {fname} — this model does not support vision]"}) + has_img = True + modified = True + else: + new_content.append(part) + if modified: + result.append({**item, "content": new_content}) + else: + result.append(item) + if modified: + print(f"[vision-filter] stripped {sum(1 for i in input_data if i.get('type')=='message' and any(c.get('type') in ('input_image','image_url') for c in (i.get('content') or []) if isinstance(c,dict)))} images for model={model}", file=sys.stderr) + return result + return input_data + def oa_input_to_messages(input_data): msgs = [] tool_name_by_id = {} @@ -4889,12 +5028,25 @@ class Handler(http.server.BaseHTTPRequestHandler): body["input"] = input_data crof_limit = _crof_item_limit(model) - _crof_eligible = TARGET_URL and "crof.ai" in TARGET_URL - if _crof_eligible and not compacted and isinstance(input_data, list) and len(input_data) > crof_limit: - print(f"[crof-adaptive] proactive compact: {len(input_data)} items > limit {crof_limit}", file=sys.stderr) - input_data = _crof_compact_for_retry(input_data, model) - body = dict(body) - body["input"] = input_data + _crof_eligible = True + if _crof_eligible and not compacted and isinstance(input_data, list): + _needs_compact = len(input_data) > crof_limit + max_tok = _get_model_max_tokens(model) + est_tok = _estimate_input_tokens(input_data) if max_tok else 0 + if not _needs_compact and max_tok and est_tok > max_tok * 0.8: + _needs_compact = True + if _needs_compact: + _agg = 0 + if max_tok and est_tok > max_tok: + _agg = 1 + print(f"[crof-adaptive] proactive compact: {len(input_data)} items, est={est_tok}tok max={max_tok}tok agg={_agg}", file=sys.stderr) + input_data = _crof_compact_for_retry(input_data, model, aggression=_agg) + body = dict(body) + body["input"] = input_data + + # Strip images for non-vision models + input_data = _strip_images_from_input(input_data, model) + body["input"] = input_data messages = oa_input_to_messages(input_data) messages = _inject_stored_reasoning(messages) @@ -4927,14 +5079,19 @@ class Handler(http.server.BaseHTTPRequestHandler): except urllib.error.HTTPError as e: err_body = e.read().decode() if "context_length_exceeded" in err_body and attempt < max_retries: - print(f"[{self._session_id}] context_length_exceeded (attempt {attempt+1}/{max_retries}), retrying with extreme compaction!", file=sys.stderr) + import re as _re + _tok_m = _re.search(r'~?(\d+)\s*tokens', err_body) + if _tok_m: + _set_model_max_tokens(model, int(_tok_m.group(1))) + print(f"[{self._session_id}] context_length_exceeded (attempt {attempt+1}/{max_retries}), retrying with compaction (agg={attempt})!", file=sys.stderr) policy = provider_policy() if isinstance(input_data, list): - print(f"[{self._session_id}] applying extreme compaction to {len(input_data)} items", file=sys.stderr) - input_data = _crof_compact_for_retry(input_data, model) + est = _estimate_input_tokens(input_data) + print(f"[{self._session_id}] applying compaction to {len(input_data)} items ~{est}tok", file=sys.stderr) + input_data = _crof_compact_for_retry(input_data, model, aggression=attempt) body = dict(body) body["input"] = input_data - messages = oa_input_to_messages(input_data) + messages = oa_input_to_messages(_strip_images_from_input(input_data, model)) messages = _inject_stored_reasoning(messages) instructions = body.get("instructions", "").strip() if instructions: @@ -5725,9 +5882,11 @@ class Handler(http.server.BaseHTTPRequestHandler): last_status = None finish_reason = None has_content = False + has_message = False + has_tool_call = False def _observe_event(event): - nonlocal last_resp_id, last_output, last_status, finish_reason, has_content + nonlocal last_resp_id, last_output, last_status, finish_reason, has_content, has_message, has_tool_call for line in event.strip().split("\n"): if line.startswith("data: "): try: @@ -5737,7 +5896,9 @@ class Handler(http.server.BaseHTTPRequestHandler): last_output = d.get("response", {}).get("output", []) last_status = d.get("response", {}).get("status") finish_reason = "length" if last_status == "incomplete" else "stop" - has_content = any(o.get("type") == "message" for o in (last_output or [])) + has_tool_call = any(o.get("type") == "function_call" for o in (last_output or [])) + has_message = any(o.get("type") == "message" for o in (last_output or [])) + has_content = has_message or has_tool_call except Exception: pass @@ -5749,7 +5910,7 @@ class Handler(http.server.BaseHTTPRequestHandler): break collected_events.append(event) _observe_event(event) - print(f"[{self._session_id}] stream ended: events={len(collected_events)} finish={finish_reason} has_content={has_content} elapsed={time.time()-t0:.1f}s", file=sys.stderr) + print(f"[{self._session_id}] stream ended: events={len(collected_events)} finish={finish_reason} has_content={has_content} has_message={has_message} has_tool_call={has_tool_call} elapsed={time.time()-t0:.1f}s", file=sys.stderr) except (ConnectionResetError, BrokenPipeError, ConnectionAbortedError): print("[translate-proxy] client disconnected during stream", file=sys.stderr) _crof_record(model, n_items, False) @@ -5805,6 +5966,8 @@ class Handler(http.server.BaseHTTPRequestHandler): last_resp_id = last_output = last_status = None finish_reason = None has_content = False + has_message = False + has_tool_call = False for event in oa_stream_to_sse(retry_upstream, model, body.get("request_id") or body.get("id")): collected_events.append(event) _observe_event(event) @@ -5813,7 +5976,7 @@ class Handler(http.server.BaseHTTPRequestHandler): print(f"[provider-sensor] synthetic retry failed: {e}", file=sys.stderr) # Auto-retry on finish_reason=length with no content due to too much context. - if finish_reason == "length" and not has_content and isinstance(input_data, list) and len(input_data) > 5 and TARGET_URL and "crof.ai" in TARGET_URL: + if finish_reason == "length" and not has_content and isinstance(input_data, list) and len(input_data) > 5: print(f"[crof-adaptive] RETRY: finish_reason=length with no content, compacting {n_items} items", file=sys.stderr) new_input = _crof_compact_for_retry(input_data, model) if len(new_input) < len(input_data): @@ -5836,6 +5999,8 @@ class Handler(http.server.BaseHTTPRequestHandler): last_resp_id = last_output = last_status = None finish_reason = None has_content = False + has_message = False + has_tool_call = False for event in oa_stream_to_sse(retry_upstream, model, body.get("request_id") or body.get("id")): collected_events.append(event) _observe_event(event) @@ -5943,9 +6108,17 @@ class Handler(http.server.BaseHTTPRequestHandler): _smart_attempt = 0 while _smart_attempt < _smart_max: _has_tool_calls_in_output = any(o.get("type") == "function_call" for o in (last_output or [])) + last_text = "" + for o in (last_output or []): + if o.get("type") == "message": + for c in (o.get("content") or []): + if isinstance(c, dict) and c.get("type") == "output_text": + last_text += c.get("text", "") + _looks_like_tools = _text_looks_like_tool_calls(last_text) + _has_prior_tool_ctx = has_function_call_output(input_data) if not (finish_reason == "stop" and has_content and not _has_tool_calls_in_output and isinstance(input_data, list) and len(input_data) >= 3 - and has_function_call_output(input_data)): + and (_has_prior_tool_ctx or _looks_like_tools)): break _smart_attempt += 1 _nudges = [ @@ -5954,12 +6127,6 @@ class Handler(http.server.BaseHTTPRequestHandler): ] nudge_text = _nudges[min(_smart_attempt - 1, len(_nudges) - 1)] # Try extracting XML tool calls from text as fallback before nudging - last_text = "" - for o in (last_output or []): - if o.get("type") == "message": - for c in (o.get("content") or []): - if isinstance(c, dict) and c.get("type") == "output_text": - last_text += c.get("text", "") xml_fc = _extract_xml_tool_calls(last_text) if xml_fc: print(f"[{self._session_id}] [smart-continue] extracted {len(xml_fc)} XML tool calls from text, injecting and retrying", file=sys.stderr) @@ -5979,6 +6146,8 @@ class Handler(http.server.BaseHTTPRequestHandler): last_resp_id = last_output = last_status = None finish_reason = None has_content = False + has_message = False + has_tool_call = False for event in oa_stream_to_sse(retry_upstream, model, body.get("request_id") or body.get("id")): collected_events.append(event) _observe_event(event) @@ -5988,19 +6157,21 @@ class Handler(http.server.BaseHTTPRequestHandler): print(f"[{self._session_id}] [smart-continue] XML injection retry failed: {e}", file=sys.stderr) break _nudge_msg = {"role": "user", "content": nudge_text} - nudge_messages = oa_input_to_messages(input_data) + [_nudge_msg] + nudge_messages = oa_input_to_messages(_strip_images_from_input(input_data, model)) + [_nudge_msg] instructions = body.get("instructions", "").strip() if instructions: nudge_messages.insert(0, {"role": "system", "content": instructions}) nudge_chat_body = self._build_chat_body(model, nudge_messages, body, stream) nudge_req = urllib.request.Request(target, data=json.dumps(nudge_chat_body).encode(), headers=fwd) - print(f"[{self._session_id}] [smart-continue] attempt {_smart_attempt}/{_smart_max}: model stopped mid-task, nudging", file=sys.stderr) + print(f"[{self._session_id}] [smart-continue] attempt {_smart_attempt}/{_smart_max}: model stopped mid-task (prior_ctx={_has_prior_tool_ctx} text_tools={_looks_like_tools}), nudging", file=sys.stderr) try: retry_upstream = urllib.request.urlopen(nudge_req, timeout=_upstream_timeout(body, True)) collected_events = [] last_resp_id = last_output = last_status = None finish_reason = None has_content = False + has_message = False + has_tool_call = False for event in oa_stream_to_sse(retry_upstream, model, body.get("request_id") or body.get("id")): collected_events.append(event) _observe_event(event)