gemcode 0.3.102__tar.gz → 0.3.103__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gemcode-0.3.102/src/gemcode.egg-info → gemcode-0.3.103}/PKG-INFO +1 -1
- {gemcode-0.3.102 → gemcode-0.3.103}/pyproject.toml +1 -1
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/cli.py +17 -1
- {gemcode-0.3.102 → gemcode-0.3.103/src/gemcode.egg-info}/PKG-INFO +1 -1
- {gemcode-0.3.102 → gemcode-0.3.103}/LICENSE +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/MANIFEST.in +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/README.md +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/setup.cfg +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/__init__.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/__main__.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/agent.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/audit.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/autocompact.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/autotune.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/callbacks.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/capability_routing.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/checkpoints.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/compaction.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/computer_use/__init__.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/computer_use/browser_computer.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/config.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/context_budget.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/context_warning.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/credentials.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/curated_memory.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/dynamic_policy.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/evals/harness.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/hitl_session.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/hooks.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/ide_protocol.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/ide_stdio.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/intent_classifier.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/interactions.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/invoke.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/kaira_daemon.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/learning.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/limits.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/live_audio_engine.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/logging_config.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/mcp_loader.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/memory/__init__.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/memory/embedding_memory_service.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/memory/file_memory_service.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/modality_tools.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/model_errors.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/model_routing.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/multimodal_input.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/openapi_loader.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/output_styles.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/paths.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/permissions.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/plugins/__init__.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/plugins/terminal_hooks_plugin.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/plugins/tool_recovery_plugin.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/policy_profile.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/pricing.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/prompt_suggestions.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/query/__init__.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/query/config.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/query/deps.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/query/engine.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/query/stop_hooks.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/query/token_budget.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/query/transitions.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/query_sanitizer.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/refine.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/repl_commands.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/repl_slash.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/review_agent.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/rules.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/session_runtime.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/session_store.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/session_summariser.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/skills.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/slash_commands.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/thinking.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tool_prompt_manifest.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tool_registry.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tool_result_store.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/__init__.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/bash.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/browser.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/compress_memory.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/curated_memory.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/edit.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/filesystem.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/notebook.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/notes.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/repo_map.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/search.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/shell.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/shell_gate.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/skills.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/subtask.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/tasks.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/think.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/todo.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/veomem_tools.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/web.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools/web_search.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tools_inspector.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/trust.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tui/input_handler.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tui/scrollback.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tui/spinner.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tui/welcome_banner.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/tui/welcome_rich.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/veomem_bridge.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/version.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/vertex.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/wal.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/web/__init__.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/web/sse_adapter.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/web/terminal_repl.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/web/web_sse_compat.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode/workspace_hints.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode.egg-info/SOURCES.txt +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode.egg-info/dependency_links.txt +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode.egg-info/entry_points.txt +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode.egg-info/requires.txt +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/src/gemcode.egg-info/top_level.txt +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_add_dir.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_agent_instruction.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_autocompact.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_capability_routing.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_checkpoint_diff_command.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_cli_init.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_compress_memory_tool.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_computer_use_permissions.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_context_budget.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_context_warning.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_credentials.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_eval_harness_layout.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_ide_stdio_attachments.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_interactive_permission_ask.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_kaira_scheduler.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_modality_tools.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_model_error_retry.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_model_errors.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_model_routing.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_multimodal_input.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_output_styles_and_rules.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_paths.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_permissions.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_prompt_suggestions.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_repl_commands.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_repl_slash.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_skills.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_slash_commands.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_slash_completion_registry.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_thinking_config.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_token_budget.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_tool_context_circulation.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_tools.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_tools_inspector.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_web_sse_adapter.py +0 -0
- {gemcode-0.3.102 → gemcode-0.3.103}/tests/test_workspace_hints.py +0 -0
|
@@ -822,7 +822,13 @@ def main() -> None:
|
|
|
822
822
|
)
|
|
823
823
|
)
|
|
824
824
|
captured = buf.getvalue()
|
|
825
|
-
|
|
825
|
+
noisy = (
|
|
826
|
+
"An unexpected error occurred in live flow: 1000" in captured
|
|
827
|
+
or "APIError: 1000" in captured
|
|
828
|
+
or "APIError: 1011" in captured
|
|
829
|
+
or "An unexpected error occurred in live flow: 1011" in captured
|
|
830
|
+
)
|
|
831
|
+
if captured and not noisy:
|
|
826
832
|
# Re-emit unexpected stderr.
|
|
827
833
|
print(captured, file=sys.stderr, end="")
|
|
828
834
|
else:
|
|
@@ -843,6 +849,16 @@ def main() -> None:
|
|
|
843
849
|
if isinstance(e, APIError) and (getattr(e, "status_code", None) == 1000 or "1000" in str(e)):
|
|
844
850
|
print("\n[gemcode live-audio] Session ended.", file=sys.stderr)
|
|
845
851
|
raise SystemExit(0)
|
|
852
|
+
if isinstance(e, APIError) and getattr(e, "status_code", None) == 1011:
|
|
853
|
+
print(
|
|
854
|
+
"\n[gemcode live-audio] Gemini Live internal error (1011).\n"
|
|
855
|
+
"This is usually transient. Try again, or try:\n"
|
|
856
|
+
" - set a different live model: gemcode live-audio --model <id>\n"
|
|
857
|
+
" - disable playback: gemcode live-audio --no-playback\n"
|
|
858
|
+
" - shorten the session: gemcode live-audio --seconds 10\n",
|
|
859
|
+
file=sys.stderr,
|
|
860
|
+
)
|
|
861
|
+
raise SystemExit(2)
|
|
846
862
|
except Exception:
|
|
847
863
|
pass
|
|
848
864
|
# websockets can also surface a close directly.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|