code-context-control 2.92.1__tar.gz → 2.92.2__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.
- {code_context_control-2.92.1/code_context_control.egg-info → code_context_control-2.92.2}/PKG-INFO +1 -1
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/c3.py +1 -1
- {code_context_control-2.92.1 → code_context_control-2.92.2/code_context_control.egg-info}/PKG-INFO +1 -1
- {code_context_control-2.92.1 → code_context_control-2.92.2}/pyproject.toml +1 -1
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/bench/external/swe_bench.py +3 -1
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/doc_index.py +1 -1
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/indexer.py +3 -2
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/protocol.py +1 -1
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/scanner.py +2 -1
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_windows_reliability.py +65 -1
- {code_context_control-2.92.1 → code_context_control-2.92.2}/LICENSE +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/README.md +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/_hook_utils.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/_shell_writes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/commands/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/commands/common.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/commands/parser.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/docs.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/edits.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/guide/access.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/guide/bitbucket.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/guide/credentials.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/guide/getting-started.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/guide/index.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/guide/masking.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/guide/oracle.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/guide/shared.css +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/guide/tools.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/guide/workflow.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_access_guard.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_artifact.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_auto_snapshot.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_c3_signal.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_c3read.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_dispatch.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_edit_ledger.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_edit_unlock.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_filter.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_ghost_files.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_pretool_enforce.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_prompt_recall.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_read.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_session_stats.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hook_terse_advisor.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_server.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/app.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/add_project.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/config_editor.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_artifacts.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_health.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_panel.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_subprojects.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_tasks.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_views.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/global_search.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/hub_ci.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/hub_credentials.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/hub_enforcement.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/hub_locks.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/mcp_manager.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/modals.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/project_card.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/project_tree.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/session_drawer.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/settings_modal.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/sidebar.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/summary_bar.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/task_board.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/toasts.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/topbar.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/state.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/mcp_proxy.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/mcp_server.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/progress.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/server.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/_grants.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/_helpers.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/agent.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/artifacts.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/bitbucket.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/ci.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/compress.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/credentials.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/delegate.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/edit.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/edit_verify.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/edits.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/federate.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/filter.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/impact.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/jira.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/locks.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/memory.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/override.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/project.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/read.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/search.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/session.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/shell.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/status.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/tasks.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/tools/validate.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/api.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/app.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/access.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/bitbucket.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/chat.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/credentials.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/dashboard.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/edits.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/enforcement.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/instructions.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/jira.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/memory.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/sessions.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/settings.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/sidebar.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/tasks.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/icons.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/pm_shared.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/shared.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/theme.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui_legacy.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui_nano.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/code_context_control.egg-info/SOURCES.txt +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/code_context_control.egg-info/dependency_links.txt +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/code_context_control.egg-info/entry_points.txt +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/code_context_control.egg-info/requires.txt +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/code_context_control.egg-info/top_level.txt +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/core/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/core/config.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/core/ide.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/core/mcp_toml.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/core/web_security.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/config.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/mcp_oracle.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/oracle_server.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/oracle_ui.html +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/activity_reporter.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/api_auth.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/c3_bridge.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/chat_engine.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/chat_poll.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/chat_store.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/cross_memory.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/discovery_audit.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/federated_graph.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/health_checker.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/insight_engine.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/local_session.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/memory_reader.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/memory_writer.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/mobile_api.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/project_scanner.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/review_agent.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/tool_executor.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/tool_registry.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/activity.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/agents.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/app.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/busy.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/chat/conversations.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/chat/input.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/chat/markdown.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/chat/send.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/chat/stream_renderer.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/chat/toolbar.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/core.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/crossgraph.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/header.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/insights.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/projects.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/qrcode.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/settings.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/suggestions.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/ui/theme_tabs.js +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/access_guard.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/access_telemetry.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/activity_log.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/agent_base.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/agent_locks.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/agents.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/artifact_defs.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/artifact_store.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/auto_memory.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/background_service.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/bench/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/bench/external/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/bench/external/aider_polyglot.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/benchmark_dashboard.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/bitbucket_client.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/bitbucket_credentials.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ci_act.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ci_cache.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ci_expr.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ci_failures.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ci_github.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ci_impact.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ci_intel.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ci_runner.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ci_workflow.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/circuit_breaker.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/claude_md.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/compressor.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/context_snapshot.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/conversation_store.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/cred_telemetry.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/credential_store.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/e2e_benchmark.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/e2e_evaluator.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/e2e_tasks.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/edit_ledger.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/embedding_index.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/enforcement_policy.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/error_reporting.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/file_memory.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/git_context.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/hub_service.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/jira_client.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/jira_cloud.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/jira_credentials.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/jira_data_center.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/jira_links.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/mask_activation.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/mask_mirror.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/mask_presets.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/memory.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/memory_consolidator.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/memory_distiller.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/memory_graph.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/memory_grounder.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/memory_queue.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/memory_scorer.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/metrics.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/notifications.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ollama_bridge.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ollama_client.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/ollama_credentials.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/oracle_service.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/output_filter.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/override_grants.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/override_policy.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/override_requests.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/override_wake.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/parser.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/project_manager.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/project_runtime.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/proxy_state.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/repo_map.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/repo_shape.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/retention.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/retrieval_broker.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/router.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/runtime.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/session_benchmark.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/session_manager.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/session_preloader.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/subprojects.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/task_store.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/telemetry.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/text_index.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/time_tracker.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/tool_classifier.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/transcript_index.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/validation_cache.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/vector_store.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/watcher.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/services/win_subprocess.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/setup.cfg +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_access_builtin_optout.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_access_guard.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_access_guard_meta.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_access_guard_shell_project.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_access_guard_surfaces.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_access_guard_wiring.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_activity_reporter.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_agent_locks.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_aider_polyglot.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_antigravity_transition.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_artifact_store.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_artifact_tool.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_background_service.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_bitbucket_cli_smoke.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_bitbucket_client.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_bitbucket_config_fallback.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_bitbucket_credentials.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_bitbucket_tool.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_c3_bridge_project_artifacts.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_c3_shell.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_chat_poll.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ci_act.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ci_cache.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ci_expr.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ci_impact.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ci_intel.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ci_runner.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ci_workflow.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_circuit_breaker.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_claude_md_merge.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_cli_smoke.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_compressor_large_file.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_cred_telemetry.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_credential_login_kind.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_credential_store.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_credential_ui_parity.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_credentials_routes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_credentials_tool.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_creds_cli_smoke.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_delegate_cascade.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_delegate_version_probe.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_e2e_benchmark.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_edit_ledger_deadline.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_edit_ledger_hook.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_edit_locking.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_edit_normalization.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_edit_verify.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_embedding_index_deadlock.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_enforcement_flip.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_enforcement_policy.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_enforcement_routes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_failed_calls_do_not_unlock.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_federated_graph.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_filter_backoff.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ghost_files.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ghost_generation.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_git_branch_awareness.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hook_access_guard.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hook_codex_compat.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hook_dispatch.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hook_pretool_enforce.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hook_prompt_recall.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hook_smoke.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hook_state.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hook_utf8_stdio.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hub_credentials_route.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hub_credentials_routes_write.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hub_enforcement_routes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hub_inspect_api.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hub_locks_routes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hub_oracle_service_routes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hub_server_smoke.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_hub_subproject_links.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ide_workflow_adaptation.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_init_clear_preserves_user_content.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_init_scan.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_install_mcp_entrypoint.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_jira_cli_smoke.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_jira_client.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_jira_config_fallback.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_jira_credentials.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_jira_links.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_jira_routes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_jira_tool.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_lazy_store_init.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mask_guard.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mask_routes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mask_surfaces.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mcp_host_guard.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mcp_memory_timeout.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mcp_server_smoke.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mcp_toml.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_memory_distiller.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_memory_graph_api.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_memory_queue.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_memory_system.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mobile_api.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mobile_extras.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mobile_override_routes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_mobile_security_api.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_no_stale_model_pins.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_notification_dedup.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_notification_discipline.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_ollama_credentials.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_api_auth.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_apikey_api.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_c3_bridge.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_chat_engine.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_chat_store.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_discovery_api.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_discovery_audit.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_health_probe.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_local_auth.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_ollama_bridge.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_scanner_cache.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_security_fixes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_session_bootstrap.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_subproject_awareness.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_oracle_ui_bundle.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_output_filter.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_override_grants.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_override_grants_mcp.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_override_requests.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_override_wake.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_permissions.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_pm_api.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_project_manager.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_project_manager_merge.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_project_tool.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_read_coercion.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_read_edit_parity.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_related_facts.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_repo_map.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_repo_shape.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_response_boilerplate.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_retention.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_review_digest.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_service_durability.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_session_benchmark.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_session_budget.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_shell_creds.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_shell_robustness.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_shell_write_ledger.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_shell_writes.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_subproject_exclusion.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_subproject_federation.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_subprojects.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_swe_bench.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_task_store.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_task_tool.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_time_tracker.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_token_telemetry.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_tool_registry.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_upgrade_and_version.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_validate.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_vault_write_guard.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_version_sync.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_web_security.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/backend.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/main.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/__init__.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/benchmark_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/claudemd_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/compress_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/index_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/init_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/mcp_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/optimize_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/pipe_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/projects_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/search_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/session_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/stats.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/screens/ui_view.py +0 -0
- {code_context_control-2.92.1 → code_context_control-2.92.2}/tui/theme.tcss +0 -0
{code_context_control-2.92.1/code_context_control.egg-info → code_context_control-2.92.2}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: code-context-control
|
|
3
|
-
Version: 2.92.
|
|
3
|
+
Version: 2.92.2
|
|
4
4
|
Summary: Local MCP code-intelligence for AI coding tools: surgical search/read/edit, agent-config version history, path-level access + masking guards, and a multi-project hub.
|
|
5
5
|
Author-email: Dimitri Tselenchuk <dtselenc@gmail.com>
|
|
6
6
|
License-Expression: Apache-2.0
|
{code_context_control-2.92.1 → code_context_control-2.92.2/code_context_control.egg-info}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: code-context-control
|
|
3
|
-
Version: 2.92.
|
|
3
|
+
Version: 2.92.2
|
|
4
4
|
Summary: Local MCP code-intelligence for AI coding tools: surgical search/read/edit, agent-config version history, path-level access + masking guards, and a multi-project hub.
|
|
5
5
|
Author-email: Dimitri Tselenchuk <dtselenc@gmail.com>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "code-context-control"
|
|
7
|
-
version = "2.92.
|
|
7
|
+
version = "2.92.2"
|
|
8
8
|
description = "Local MCP code-intelligence for AI coding tools: surgical search/read/edit, agent-config version history, path-level access + masking guards, and a multi-project hub."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/services/bench/external/swe_bench.py
RENAMED
|
@@ -446,7 +446,9 @@ def evaluate_with_docker(
|
|
|
446
446
|
"--timeout", str(timeout),
|
|
447
447
|
]
|
|
448
448
|
try:
|
|
449
|
-
|
|
449
|
+
n_predictions = len(
|
|
450
|
+
predictions_path.read_text(encoding="utf-8").splitlines())
|
|
451
|
+
subprocess.run(cmd, check=True, timeout=timeout * n_predictions)
|
|
450
452
|
except Exception as e:
|
|
451
453
|
return {"error": str(e)}
|
|
452
454
|
|
|
@@ -30,7 +30,7 @@ def _masked_content(fpath, project_path):
|
|
|
30
30
|
if v.denial:
|
|
31
31
|
return None
|
|
32
32
|
if not v.masked:
|
|
33
|
-
return fpath.read_text(errors="replace")
|
|
33
|
+
return fpath.read_text(encoding="utf-8", errors="replace")
|
|
34
34
|
try:
|
|
35
35
|
return mask_mirror.render_for_path(fpath, project_path).text
|
|
36
36
|
except Exception:
|
|
@@ -187,7 +187,8 @@ class CodeIndex:
|
|
|
187
187
|
# (docs/mask-guard.md §6, row 2). Skip it instead.
|
|
188
188
|
continue
|
|
189
189
|
else:
|
|
190
|
-
content = fpath.read_text(
|
|
190
|
+
content = fpath.read_text(encoding='utf-8',
|
|
191
|
+
errors='replace')
|
|
191
192
|
except Exception:
|
|
192
193
|
continue
|
|
193
194
|
|
|
@@ -43,7 +43,8 @@ def gitignore_dir_patterns(root) -> tuple:
|
|
|
43
43
|
names: set = set()
|
|
44
44
|
patterns: list = []
|
|
45
45
|
try:
|
|
46
|
-
text = (Path(root) / '.gitignore').read_text(
|
|
46
|
+
text = (Path(root) / '.gitignore').read_text(encoding='utf-8',
|
|
47
|
+
errors='replace')
|
|
47
48
|
except OSError:
|
|
48
49
|
return names, patterns
|
|
49
50
|
for line in text.splitlines():
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/tests/test_windows_reliability.py
RENAMED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Locks in invariants that have bitten this project on Windows:
|
|
4
4
|
- Text-mode open() calls must pass encoding='utf-8' so cp1252 doesn't corrupt JSON
|
|
5
|
+
- Path.read_text()/write_text() must pass encoding='utf-8' for the same reason
|
|
5
6
|
- No mojibake byte sequences in .py sources (re-encoding bugs decay silently)
|
|
6
7
|
"""
|
|
7
8
|
from __future__ import annotations
|
|
@@ -12,7 +13,9 @@ from pathlib import Path
|
|
|
12
13
|
|
|
13
14
|
REPO_ROOT = Path(__file__).resolve().parents[1]
|
|
14
15
|
|
|
15
|
-
_SKIP_DIRS = {".venv", "__pycache__", ".pytest_cache", ".c3"
|
|
16
|
+
_SKIP_DIRS = {".venv", "__pycache__", ".pytest_cache", ".c3",
|
|
17
|
+
# Build artifacts: gitignored copies of sources we already scan.
|
|
18
|
+
"build", "dist", ".eggs"}
|
|
16
19
|
_SKIP_FRAGMENTS = (".tmp.",)
|
|
17
20
|
|
|
18
21
|
# Sequence produced when UTF-8 text is written then re-read as cp1252 and
|
|
@@ -63,6 +66,36 @@ def _find_open_calls_missing_encoding(text: str):
|
|
|
63
66
|
yield line_no, call.replace("\n", " ")[:160]
|
|
64
67
|
|
|
65
68
|
|
|
69
|
+
# Path.read_text/write_text default to locale encoding exactly like open().
|
|
70
|
+
# `importlib.metadata` Distribution.read_text takes a FILENAME, not an encoding.
|
|
71
|
+
_PATH_TEXT_CALL = re.compile(r"\.(read_text|write_text)\s*\(", re.MULTILINE)
|
|
72
|
+
_PATH_TEXT_EXEMPT = re.compile(r"\b(dist|distribution)\.\s*$")
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
def _find_path_text_calls_missing_encoding(text: str):
|
|
76
|
+
"""Yield (line_no, call_text) for read_text/write_text without an encoding.
|
|
77
|
+
|
|
78
|
+
``read_text('utf-8')`` (positional) counts: encoding is the first parameter.
|
|
79
|
+
"""
|
|
80
|
+
for m in _PATH_TEXT_CALL.finditer(text):
|
|
81
|
+
if _PATH_TEXT_EXEMPT.search(text[max(0, m.start() - 24):m.start() + 1]):
|
|
82
|
+
continue
|
|
83
|
+
depth = 1
|
|
84
|
+
i = m.end()
|
|
85
|
+
while i < len(text) and depth > 0:
|
|
86
|
+
c = text[i]
|
|
87
|
+
if c == "(":
|
|
88
|
+
depth += 1
|
|
89
|
+
elif c == ")":
|
|
90
|
+
depth -= 1
|
|
91
|
+
i += 1
|
|
92
|
+
call = text[m.start():i]
|
|
93
|
+
if "encoding" in call or "utf-8" in call or "utf8" in call:
|
|
94
|
+
continue
|
|
95
|
+
line_no = text[: m.start()].count("\n") + 1
|
|
96
|
+
yield line_no, call.replace("\n", " ")[:160]
|
|
97
|
+
|
|
98
|
+
|
|
66
99
|
class TestWindowsReliability(unittest.TestCase):
|
|
67
100
|
def test_no_text_open_without_encoding(self):
|
|
68
101
|
"""Every text-mode open() in shipped code must pass encoding='utf-8'.
|
|
@@ -89,6 +122,37 @@ class TestWindowsReliability(unittest.TestCase):
|
|
|
89
122
|
+ "\n ".join(offenders)
|
|
90
123
|
)
|
|
91
124
|
|
|
125
|
+
def test_no_path_text_io_without_encoding(self):
|
|
126
|
+
"""Path.read_text()/write_text() must declare encoding='utf-8'.
|
|
127
|
+
|
|
128
|
+
The indexer, doc index, protocol dictionary and .gitignore scanner all
|
|
129
|
+
called ``read_text(errors='replace')`` with no encoding. On Windows
|
|
130
|
+
that decodes UTF-8 source as cp1252, and ``errors='replace'`` means it
|
|
131
|
+
never raises — every em dash landed in .c3/index, the doc index and the
|
|
132
|
+
chroma collection as the three-char mojibake this module's
|
|
133
|
+
``_MOJIBAKE_EM_DASH`` matches. Source files were never touched; the
|
|
134
|
+
corruption lived only in the indexed copies served back to the agent.
|
|
135
|
+
"""
|
|
136
|
+
offenders = []
|
|
137
|
+
for py in _iter_py_files():
|
|
138
|
+
# Shipped code only. Test fixtures write their own temp files and
|
|
139
|
+
# control both ends of the encoding.
|
|
140
|
+
if "tests" in py.relative_to(REPO_ROOT).parts:
|
|
141
|
+
continue
|
|
142
|
+
try:
|
|
143
|
+
text = py.read_text(encoding="utf-8")
|
|
144
|
+
except UnicodeDecodeError as e:
|
|
145
|
+
self.fail(f"{py} is not valid UTF-8: {e}")
|
|
146
|
+
for line_no, call in _find_path_text_calls_missing_encoding(text):
|
|
147
|
+
offenders.append(
|
|
148
|
+
f"{py.relative_to(REPO_ROOT).as_posix()}:{line_no}: {call}")
|
|
149
|
+
if offenders:
|
|
150
|
+
self.fail(
|
|
151
|
+
"read_text()/write_text() calls missing encoding='utf-8' "
|
|
152
|
+
"(silently mojibake non-ASCII on Windows cp1252):\n "
|
|
153
|
+
+ "\n ".join(offenders)
|
|
154
|
+
)
|
|
155
|
+
|
|
92
156
|
def test_no_mojibake_bytes_in_sources(self):
|
|
93
157
|
"""No .py file should contain the UTF-8-re-encoded-as-cp1252 em-dash signature.
|
|
94
158
|
|
|
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
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/add_project.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/config_editor.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_artifacts.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_health.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_panel.js
RENAMED
|
File without changes
|
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_tasks.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/drill_views.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/global_search.js
RENAMED
|
File without changes
|
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/hub_credentials.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/hub_enforcement.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/hub_locks.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/mcp_manager.js
RENAMED
|
File without changes
|
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/project_card.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/project_tree.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/session_drawer.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/settings_modal.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/sidebar.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/summary_bar.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/hub_ui/components/task_board.js
RENAMED
|
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
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/credentials.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/enforcement.js
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/cli/ui/components/instructions.js
RENAMED
|
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
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/activity_reporter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/discovery_audit.py
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/federated_graph.py
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/health_checker.py
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/insight_engine.py
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/local_session.py
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/memory_reader.py
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/memory_writer.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/project_scanner.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/tool_executor.py
RENAMED
|
File without changes
|
{code_context_control-2.92.1 → code_context_control-2.92.2}/oracle/services/tool_registry.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|