drydock-cli 2.8.8__tar.gz → 2.8.10__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.
- drydock_cli-2.8.10/.auto_release.lock +1 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/PKG-INFO +1 -1
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/agent_loop.py +56 -6
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/bash.py +25 -4
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/pyproject.toml +1 -1
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/trip_log.md +221 -0
- drydock_cli-2.8.8/.auto_release.lock +0 -1
- drydock_cli-2.8.8/.claude/scheduled_tasks.lock +0 -1
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.github/CODEOWNERS +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.github/DISCUSSION_TEMPLATE/ideas.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.github/workflows/build-and-upload.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.github/workflows/ci.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.github/workflows/issue-labeler.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.github/workflows/release.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.gitignore +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.pre-commit-config.yaml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.python-version +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.typos.toml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.vscode/extensions.json +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.vscode/launch.json +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/.vscode/settings.json +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/AGENTS.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/Admiral.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/CHANGELOG.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/CLAUDE.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/CONTRIBUTING.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/DEEP_NOIR_PRD.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/DEPLOYMENT.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/HLE_PRD.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/JETSON_BENCH.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/LICENSE +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/MODEL_SHORTCOMINGS.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/NOTICE +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/SOVEREIGN_PRD.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/TRIAGE_v1.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/action.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results1.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results13.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results14.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results15.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results16.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results17.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results18.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results19.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results2.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results20.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results3.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results4.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results5.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results6.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results7.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results8.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results9.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/baseline_history/results_evolved_v1.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/distribution/zed/LICENSE +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/distribution/zed/extension.toml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/distribution/zed/icons/mistral_vibe.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/acp-setup.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/archive/BASELINE_412.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/archive/Drydock_rebrand.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/archive/OVERNIGHT_PROGRESS.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/archive/OVERNIGHT_REPORT_2026_04_13.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/archive/PERF_SWEEP_PLAN.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/archive/PRD.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/archive/drydock_terms.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/archive/resume.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/docs/proxy-setup.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/__main__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/acp_agent_loop.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/acp_logger.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/entrypoint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/tools/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/tools/base.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/tools/builtins/bash.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/tools/builtins/read_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/tools/builtins/search_replace.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/tools/builtins/todo.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/tools/builtins/write_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/tools/session_update.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/acp/utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/detectors.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/detectors_proposed.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/history.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/interventions.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/llm_analyzer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/metrics.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/opus_escalator.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/persistence.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/policy.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/proposer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/stager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/task_classifier.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/tuning.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/validator.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/admiral/worker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/autocompletion/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/autocompletion/base.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/autocompletion/path_completion.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/autocompletion/slash_command.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/cli.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/clipboard.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/commands.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/entrypoint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/fix_windows_path.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/history_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/plan_offer/adapters/http_whoami_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/plan_offer/decide_plan_offer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/plan_offer/ports/whoami_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/terminal_setup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/ansi_markdown.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/app.tcss +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/external_editor.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/handlers/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/handlers/event_handler.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/notifications/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/notifications/adapters/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/notifications/adapters/textual_notification_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/notifications/ports/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/notifications/ports/notification_port.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/approval_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/banner/banner.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/banner/petit_chat.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/braille_renderer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/chat_input/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/chat_input/body.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/chat_input/completion_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/chat_input/completion_popup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/chat_input/container.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/chat_input/text_area.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/checkpoint_picker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/compact.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/config_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/context_progress.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/load_more.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/loading.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/messages.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/no_markup_static.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/path_display.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/proxy_setup_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/question_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/session_picker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/spinner.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/status_message.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/teleport_message.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/tool_widgets.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/tools.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/widgets/vscode_compat.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/windowing/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/windowing/history.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/windowing/history_windowing.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/textual_ui/windowing/state.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/update_notifier/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/update_notifier/adapters/filesystem_update_cache_repository.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/update_notifier/adapters/github_update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/update_notifier/adapters/pypi_update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/update_notifier/ports/update_cache_repository.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/update_notifier/ports/update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/update_notifier/update.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/cli/update_notifier/whats_new.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/agents/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/agents/manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/agents/models.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/auth/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/auth/crypto.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/auth/github.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/autocompletion/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/autocompletion/completers.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/autocompletion/file_indexer/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/autocompletion/file_indexer/ignore_rules.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/autocompletion/file_indexer/indexer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/autocompletion/file_indexer/store.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/autocompletion/file_indexer/watcher.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/autocompletion/fuzzy.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/autocompletion/path_prompt.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/autocompletion/path_prompt_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/build_orchestrator.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/checkpoint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/classifier/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/classifier/__main__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/classifier/classifier.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/classifier/dispatcher.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/classifier/rules.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/classifier/signal.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/config/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/config/_dotenv.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/config/_settings.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/config/doctor.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/config/harness_files/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/config/harness_files/_harness_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/config/harness_files/_paths.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/config/local_detect.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/config/migrate.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/consultant.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/context_recovery.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/drydock_states.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/hooks.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/backend/anthropic.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/backend/base.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/backend/factory.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/backend/generic.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/backend/mistral.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/backend/reasoning_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/backend/vertex.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/exceptions.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/format.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/message_utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/llm/types.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/logger.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/middleware.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/output_formatters.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/paths/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/paths/_drydock_home.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/paths/_local_config_walk.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/paths/conventions.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/plan_session.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/plugins.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/programmatic.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/builder.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/cli.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/compact.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/dangerous_directory.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/diagnostic.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/explore.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/gemma4.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/planner.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/project_context.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/prompts/tests.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/proxy_setup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/session/agent_memory.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/session/checkpoints.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/session/session_loader.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/session/session_logger.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/session/session_migration.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/session/state_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/session_checker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/skills/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/skills/manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/skills/models.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/skills/parser.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/slug.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/steering_hook.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/system_prompt.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/telemetry/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/telemetry/send.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/teleport/errors.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/teleport/git.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/teleport/nuage.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/teleport/teleport.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/teleport/types.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/base.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/_task_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/ask_user_question.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/cron.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/exit_plan_mode.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/glob_tool.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/grep.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/invoke_skill.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/lsp.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/mcp_resources.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/notebook_edit.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/powershell.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/ask_user_question.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/bash.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/cron.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/glob.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/grep.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/invoke_skill.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/lsp.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/mcp_resources.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/notebook_edit.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/powershell.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/read_file.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/retrieve.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/search_replace.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/swe_bench.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/task.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/task_manager.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/todo.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/tool_search.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/webfetch.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/websearch.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/worktree.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/prompts/write_file.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/read_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/retrieve.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/search_replace.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/task.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/todo.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/tool_search.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/webfetch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/websearch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/worktree.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/builtins/write_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/injection_guard.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/mcp/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/mcp/registry.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/mcp/tools.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/mcp_sampling.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/ui.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/tools/utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/trusted_folders.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/types.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/core/utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/graphrag/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/graphrag/__main__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/graphrag/code_indexer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/graphrag/retriever.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/graphrag/storage.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/graphrag/text_indexer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/setup/onboarding/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/setup/onboarding/base.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/setup/onboarding/onboarding.tcss +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/setup/onboarding/screens/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/setup/onboarding/screens/api_key.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/setup/onboarding/screens/choice.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/setup/onboarding/screens/local_model.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/setup/onboarding/screens/welcome.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/setup/trusted_folders/trust_folder_dialog.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/setup/trusted_folders/trust_folder_dialog.tcss +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/api-design/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/audit-tests/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/batch/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/commit-code/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/context-summary/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/create-presentation/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/deep-research/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/deploy/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/diff-review/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/doc-gen/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/explain-code/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/explore-code/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/fix-issue/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/git-ops/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/init-project/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/investigate/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/loop/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/migrate/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/perf-analyze/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/plan-impl/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/pr-review/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/refactor/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/regex-help/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/review/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/security-review/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/ship/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/simplify/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/strong-tests/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/skills/test-verify/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/steering/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/steering/__main__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/steering/applier.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/steering/config.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/steering/registry.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/steering/sandbox.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/steering/sidecar/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/steering/sidecar/header_parser.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/steering/sidecar/server.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/steering/vectors.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock/whats_new.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/drydock-acp.spec +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/flake.lock +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/flake.nix +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/research/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/research/config_base.toml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/research/config_best.toml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/research/domain_spec.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/research/experimenter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/research/kernel.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/research/mini_prd.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/research/mini_prompts.txt +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/research/proposer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/research/results.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/admiral_probe.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/archive/auto_test_loop.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/archive/monitor_test_battery.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/archive/overnight_agents_test.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/archive/test_bank.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/archive/test_full.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/archive/test_smoke.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/archive/tui_test.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/audit_sampler.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/auto_generate_tests.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/auto_release.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/autonomous_review.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/autonomous_review_prompt.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/backup.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/bump_version.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/classify_pulse.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/consume_retrieval_queue.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/deploy_to_github.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/fetch_arxiv_abstracts.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/gen_2000_prompts.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/hle_eval.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/hle_eval_seed.jsonl +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/llm_balancer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/notify_release.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/perf_baseline_when_idle.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/perf_sweep.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/poll_issues.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/publish_to_pypi.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/queue_top.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/ralph_loop.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/research_babysitter.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/shakedown.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/shakedown_interactive.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/shakedown_suite.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/shakedown_variance.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/start_steering_sidecar.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/stress_babysitter.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/stress_prompts_50.txt +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/stress_prompts_realuser.txt +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/stress_prompts_tool_agent.txt +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/stress_prompts_tool_agent_2000.txt +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/stress_shakedown.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/stress_telegram_status.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/stress_watcher.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/telegram_bot.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/scripts/vllm_failover.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/conftest.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_acp.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_agent_thought.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_bash.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_compact_session_updates.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_content.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_initialize.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_list_sessions.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_load_session.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_multi_session.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_new_session.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_proxy_setup_acp.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_read_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_search_replace.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_set_config_option.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_set_mode.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_set_model.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_tool_call_session_update.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/acp/test_write_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/autocompletion/test_file_indexer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/autocompletion/test_fuzzy.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/autocompletion/test_path_completer_fuzzy.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/autocompletion/test_path_completer_recursive.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/autocompletion/test_path_completion_controller.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/autocompletion/test_path_prompt_transformer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/autocompletion/test_slash_command_controller.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/autocompletion/test_ui_chat_autocompletion.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/backend/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/backend/data/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/backend/data/fireworks.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/backend/data/mistral.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/backend/test_anthropic_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/backend/test_backend.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/backend/test_generic_adapter_sanitize.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/backend/test_reasoning_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/backend/test_vertex_anthropic_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/plan_offer/adapters/fake_whoami_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/plan_offer/test_decide_plan_offer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/plan_offer/test_http_whoami_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_bell_notifications.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_braille_renderer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_clipboard.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_commands.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_copy_shortcuts.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_external_editor.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_no_markup_static.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_question_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_spinner.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_switching_mode.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_ui_clipboard_notifications.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_ui_session_incremental_renderer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_ui_session_resume.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/test_ui_skill_dispatch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/textual_ui/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/cli/textual_ui/test_session_picker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/conftest.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_agents.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_auth_crypto.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_auth_github.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_circuit_breaker_count_escalation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_circuit_breaker_readonly_threshold.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_config_load_dotenv.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_config_paths.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_config_resolution.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_file_logging.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_plan_session.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_proxy_setup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_slug.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_telemetry_send.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_teleport_git.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_teleport_nuage.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_teleport_service.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_trusted_folders.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/core/test_utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/e2e/common.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/e2e/conftest.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/e2e/mock_server.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/e2e/test_cli_tui_onboarding.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/e2e/test_cli_tui_streaming.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/e2e/test_cli_tui_tool_approval.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/fixtures/doc_qa_system_prd.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/mock/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/mock/mock_backend_factory.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/mock/mock_entrypoint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/mock/utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/onboarding/test_run_onboarding.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/onboarding/test_ui_onboarding.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/session/test_session_loader.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/session/test_session_logger.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/session/test_session_migration.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/skills/conftest.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/skills/test_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/skills/test_models.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/skills/test_parser.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_collapsed.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_expanded.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_basic_conversation/test_snapshot_shows_basic_conversation.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_code_block_horizontal_scrolling/test_snapshot_allows_horizontal_scrolling_for_long_code_blocks.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_empty_assistant_before_reasoning/test_snapshot_empty_assistant_removed_when_reasoning_starts.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_accept_edits_mode.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_auto_approve_mode.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_plan_mode.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_wraps_to_default.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_default_mode.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_pending.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_resolved.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_cancel_discards_changes.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_edit_existing_values.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_empty.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_with_values.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_error.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_new_values.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_answer_first_advance.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_first_answered_checkmark.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_initial.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_left_wraps.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_right.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_tab_to_second.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_initial.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_mixed_selection.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_navigate_to_submit.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_other_with_text.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_first.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_multiple.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_untoggle.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_initial.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_down.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_other.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_third_option.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_up_wraps.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_other_typing.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_buffered_reasoning_yields_before_content.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_interleaved_reasoning.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content_expanded.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_release_update_notification/test_snapshot_shows_release_update_notification.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_session_resume/test_snapshot_shows_resumed_session_messages.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_partial.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_updated.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_cancel_selected.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_multiple_commits.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_single_commit.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_complete.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_required.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_checking_git.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_complete.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_error.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_pushing.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_sending_token.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_starting_workflow.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_no_plan_message.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_switch_message.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_upgrade_message.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_whats_new_message.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/base_snapshot_test_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/conftest.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/snap_compare.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_ask_user_question.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_basic_conversation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_code_block_horizontal_scrolling.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_empty_assistant_before_reasoning.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_modes.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_parallel_tool_calls.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_proxy_setup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_question_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_reasoning_content.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_release_update_notification.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_session_resume.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_streaming_tool_call.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_teleport.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/snapshots/test_ui_snapshot_whats_new.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/stubs/fake_backend.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/stubs/fake_client.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/stubs/fake_tool.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_admiral.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_admiral_phase3.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_admiral_proposed.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_admiral_struggle_dedup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_agent_auto_compact.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_agent_backend.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_agent_observer_streaming.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_agent_stats.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_agent_tasks.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_agent_tool_call.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_agents.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_bank_build.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_bank_debug.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_bank_multiagent.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_bank_prd.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_bank_prd_extended.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_bank_tools.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_bank_update.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_build_projects.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_checkpoint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_classifier.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_cli_programmatic_preload.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_config_migration.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_context_recovery.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_current_bugs.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_dispatcher.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_drydock_regression.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_drydock_tasks.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_fake_tool_call_paren_syntax.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_full_regression.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_graphrag.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_hallucinated_tool_suppression.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_history_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_integration.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_issue_fixes.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_local_detect.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_loop_detection.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_message_id.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_message_merging.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_middleware.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_multi_agent.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_read_file_not_found_listing.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_real_failures.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_real_issues.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_real_workflow.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_reasoning_content.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_retrieval_consumer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_retrieve_tool.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_search_replace_args_not_truncated.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_smoke.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_steering.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_steering_hook.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_system_prompt.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_tagged_text.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_task_complete_nudge.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_tool_args.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_truncate_args_valid_json.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_truncated_arg_path_hint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_truncated_search_replace_escalation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_truncated_write_escalation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_ui_external_editor.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_ui_input_history.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_user_issues.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_wall_of_text_rescue.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_workloads.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/test_write_file_missing_path.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/testbank_helpers.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_ask_user_question.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_bash.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_bash_binary_grep_hint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_bash_consec_empty_search.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_bash_echo_escape_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_bash_empty_search_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_bash_error_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_bash_exact_cmd_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_bash_heredoc_confirmation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_bash_kill_exit1_annotation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_bash_python_c_syntaxerr_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_exit_plan_mode.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_grep.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_hallucinated_retrieval_redirect.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_invoke_context.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_manager_gemma_derived_models.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_manager_get_tool_config.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_mcp.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_mcp_sampling.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_read_file_dedup_alternating_offset.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_read_file_dedup_reembed.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_read_file_directory.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_read_file_limit_truncation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_search_replace_append_fallback.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_search_replace_dir_path.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_search_replace_empty_content.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_search_replace_file_not_found.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_search_replace_first_failure_hint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_search_replace_hard_stop.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_search_replace_malformed_block.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_search_replace_no_op_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_search_replace_placeholder.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_search_replace_refused_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_task.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_ui_bash_execution.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_webfetch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_websearch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_write_file_dedup_missing_imports.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/tools/test_write_file_missing_path_hint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/update_notifier/adapters/fake_update_cache_repository.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/update_notifier/adapters/fake_update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/update_notifier/test_do_update.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/update_notifier/test_filesystem_update_cache_repository.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/update_notifier/test_github_update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/update_notifier/test_pypi_update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/update_notifier/test_ui_update_notification.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/update_notifier/test_update_use_case.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/tests/update_notifier/test_whats_new.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/uv.lock +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/worked_examples/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/worked_examples/cli_subcommand_dispatch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/worked_examples/lookup.json +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/worked_examples/sql_parser.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.10}/worked_examples/tree_walking_interpreter.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
131907
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: drydock-cli
|
|
3
|
-
Version: 2.8.
|
|
3
|
+
Version: 2.8.10
|
|
4
4
|
Summary: Local-first CLI coding agent — tested with Gemma 4 26B via vLLM
|
|
5
5
|
Project-URL: Homepage, https://github.com/fbobe321/drydock
|
|
6
6
|
Project-URL: Repository, https://github.com/fbobe321/drydock
|
|
@@ -1080,7 +1080,8 @@ class AgentLoop:
|
|
|
1080
1080
|
and assistant_msg.tool_calls):
|
|
1081
1081
|
prev_tool_name = assistant_msg.tool_calls[-1].function.name if assistant_msg.tool_calls[-1].function else None
|
|
1082
1082
|
_readonly_tools = {"read_file", "grep", "glob", "ls", "pwd",
|
|
1083
|
-
"ralph_repo_index", "
|
|
1083
|
+
"ralph_repo_index", "ralph_file_summary",
|
|
1084
|
+
"retrieve", "search_files"}
|
|
1084
1085
|
_write_tools = {"write_file", "search_replace"}
|
|
1085
1086
|
_prev_was_read = prev_tool_name in _readonly_tools
|
|
1086
1087
|
_prev_was_write = prev_tool_name in _write_tools
|
|
@@ -1127,6 +1128,27 @@ class AgentLoop:
|
|
|
1127
1128
|
and "file" in _prev_tool_result
|
|
1128
1129
|
and "changed" in _prev_tool_result
|
|
1129
1130
|
)
|
|
1131
|
+
# Detect bash that returned an error/traceback.
|
|
1132
|
+
# These stalls fire as empty_after_tool:bash :: source=canned — the
|
|
1133
|
+
# generic note doesn't tell the model what to DO with the error.
|
|
1134
|
+
_prev_bash_had_error = (
|
|
1135
|
+
prev_tool_name in ("bash", "run_command")
|
|
1136
|
+
and not _prev_bash_nothing_to_commit
|
|
1137
|
+
and not _prev_bash_commit_succeeded
|
|
1138
|
+
and bool(_re.search(
|
|
1139
|
+
r"(Error|error|Traceback|FAILED|exit code [1-9]|command not found)",
|
|
1140
|
+
_prev_tool_result
|
|
1141
|
+
))
|
|
1142
|
+
)
|
|
1143
|
+
# Detect bash that returned non-empty output without an error.
|
|
1144
|
+
# Model stalls instead of using the output to write or fix code.
|
|
1145
|
+
_prev_bash_had_output = (
|
|
1146
|
+
prev_tool_name in ("bash", "run_command")
|
|
1147
|
+
and not _prev_bash_nothing_to_commit
|
|
1148
|
+
and not _prev_bash_commit_succeeded
|
|
1149
|
+
and not _prev_bash_had_error
|
|
1150
|
+
and bool(_prev_tool_result.strip())
|
|
1151
|
+
)
|
|
1130
1152
|
if _stall_attempt == 0:
|
|
1131
1153
|
if _prev_write_path_error:
|
|
1132
1154
|
note = (
|
|
@@ -1142,11 +1164,19 @@ class AgentLoop:
|
|
|
1142
1164
|
"or grep(pattern='...') to search content. "
|
|
1143
1165
|
"Do NOT send an empty response."
|
|
1144
1166
|
)
|
|
1167
|
+
elif prev_tool_name == "ralph_repo_index":
|
|
1168
|
+
note = (
|
|
1169
|
+
"You indexed the repository but produced no output. "
|
|
1170
|
+
"Now write a text answer to the user's question, "
|
|
1171
|
+
"or call read_file to inspect a specific file. "
|
|
1172
|
+
"Do NOT call ralph_repo_index again."
|
|
1173
|
+
)
|
|
1145
1174
|
elif _prev_was_read:
|
|
1175
|
+
_tool_name_str = prev_tool_name or "read_file"
|
|
1146
1176
|
note = (
|
|
1147
|
-
f"You
|
|
1177
|
+
f"You called {_tool_name_str} but produced no output. "
|
|
1148
1178
|
f"Now use write_file, search_replace, or bash "
|
|
1149
|
-
f"to make changes — do NOT call
|
|
1179
|
+
f"to make changes — do NOT call {_tool_name_str} again."
|
|
1150
1180
|
)
|
|
1151
1181
|
elif _prev_write_success:
|
|
1152
1182
|
note = (
|
|
@@ -1166,6 +1196,18 @@ class AgentLoop:
|
|
|
1166
1196
|
"Respond with a short summary of what you changed and stop. "
|
|
1167
1197
|
"Do NOT run git add or git commit again."
|
|
1168
1198
|
)
|
|
1199
|
+
elif _prev_bash_had_error:
|
|
1200
|
+
note = (
|
|
1201
|
+
"The command returned an error. Read the error message above, "
|
|
1202
|
+
"then fix the code with search_replace or write_file, or try a "
|
|
1203
|
+
"different command. Do NOT re-run the same failing command."
|
|
1204
|
+
)
|
|
1205
|
+
elif _prev_bash_had_output:
|
|
1206
|
+
note = (
|
|
1207
|
+
"The command ran and returned output. Use that output now: "
|
|
1208
|
+
"write or update code files, fix any issues shown, or respond "
|
|
1209
|
+
"to the user. Do NOT re-run the same command."
|
|
1210
|
+
)
|
|
1169
1211
|
else:
|
|
1170
1212
|
note = (
|
|
1171
1213
|
"Continue working. Use a tool (write_file, "
|
|
@@ -1173,12 +1215,20 @@ class AgentLoop:
|
|
|
1173
1215
|
"your plan in text."
|
|
1174
1216
|
)
|
|
1175
1217
|
elif _stall_attempt == 1:
|
|
1176
|
-
if
|
|
1218
|
+
if prev_tool_name == "ralph_repo_index":
|
|
1219
|
+
note = (
|
|
1220
|
+
"You sent an empty response after indexing the repository. "
|
|
1221
|
+
"Respond in TEXT now — answer the user's question directly, "
|
|
1222
|
+
"or state in one sentence why you cannot proceed. "
|
|
1223
|
+
"Do NOT call ralph_repo_index again."
|
|
1224
|
+
)
|
|
1225
|
+
elif _prev_was_read:
|
|
1226
|
+
_tool_name_str = prev_tool_name or "read_file"
|
|
1177
1227
|
note = (
|
|
1178
|
-
f"You sent an empty response after
|
|
1228
|
+
f"You sent an empty response after calling {_tool_name_str}. "
|
|
1179
1229
|
f"Call write_file or search_replace NOW to apply "
|
|
1180
1230
|
f"what you read — OR state in one sentence why you "
|
|
1181
|
-
f"cannot proceed."
|
|
1231
|
+
f"cannot proceed. Do NOT call {_tool_name_str} again."
|
|
1182
1232
|
)
|
|
1183
1233
|
else:
|
|
1184
1234
|
note = (
|
|
@@ -585,11 +585,32 @@ class Bash(
|
|
|
585
585
|
_hd_lines = sum(1 for _ in _hdf)
|
|
586
586
|
except Exception:
|
|
587
587
|
pass
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
588
|
+
# Track per-file heredoc write count across the session.
|
|
589
|
+
# The identical-command hash check misses loops where the
|
|
590
|
+
# model slightly varies the heredoc body each iteration
|
|
591
|
+
# (different content → different command text → hash miss).
|
|
592
|
+
_hd_file_state = self.state.__dict__.setdefault(
|
|
593
|
+
"_heredoc_file_count", {}
|
|
592
594
|
)
|
|
595
|
+
_hd_file_state[_hd_path] = _hd_file_state.get(_hd_path, 0) + 1
|
|
596
|
+
_hd_count = _hd_file_state[_hd_path]
|
|
597
|
+
if _hd_count >= 3:
|
|
598
|
+
stdout = (
|
|
599
|
+
f"[LOOP-BREAKER: {_hd_path} has been written via "
|
|
600
|
+
f"cat-heredoc {_hd_count} times this session "
|
|
601
|
+
f"({_hd_lines} lines, {_hd_size} bytes on disk). "
|
|
602
|
+
f"Repeating the heredoc will NOT fix bugs in the content. "
|
|
603
|
+
f"Instead: read_file the file, find what is wrong, then "
|
|
604
|
+
f"fix it with search_replace (for targeted edits) or "
|
|
605
|
+
f"write_file (for a full rewrite). "
|
|
606
|
+
f"Do NOT cat-heredoc this file again.]"
|
|
607
|
+
)
|
|
608
|
+
else:
|
|
609
|
+
stdout = (
|
|
610
|
+
f"[File written: {_hd_path} ({_hd_lines} lines, "
|
|
611
|
+
f"{_hd_size} bytes). "
|
|
612
|
+
f"The file is on disk — do not re-run this command.]"
|
|
613
|
+
)
|
|
593
614
|
|
|
594
615
|
# Mechanical loop-breaker (ADVISORY ONLY — never raise
|
|
595
616
|
# ToolError; see feedback_no_tool_errors_for_loop_detection.md).
|
|
@@ -1,5 +1,152 @@
|
|
|
1
1
|
# Drydock Trip Log
|
|
2
2
|
|
|
3
|
+
## 2026-05-10 03:32 UTC tick
|
|
4
|
+
- Stress: PID 3875067 alive (resume-from-step 807/1658, 32h+ runtime); new TUI child PID 115006 just spawned at 22:29 CDT; harness actively recycling sessions (12146 total sessions)
|
|
5
|
+
- Write rate: strained — admiral reports 91% retry rate and 14+ SKIP clusters in last 35 prompts; TUI recycle mechanism firing correctly
|
|
6
|
+
- Admiral last 30 min: high skip/retry pattern; last fires at 03:29 UTC (bootstrap after recycle); dominant patterns: thinking_stall, loop:bash_generic
|
|
7
|
+
- vLLM 400s: balancer showing 4905 total 502 errors (context overflow), balancer healthy on :8001 forwarding to gemma4 OK
|
|
8
|
+
- GH issues: 0 open
|
|
9
|
+
- Dispatch queue: harness=85708 (thinking_stall dominant, bash_generic secondary), retrieval=74 (0 actionable, all within 7-day window)
|
|
10
|
+
- retrieval-drain: 0 projects ingested (all up to date)
|
|
11
|
+
- Action this tick: no fix committed — ee354e5+cd6b56c (bash stall nudges + ralph_file_summary to readonly-tools) already address all top dispatch queue patterns and are pending next auto_release at 00:00 CDT (06:00 UTC); no new unaddressed patterns found
|
|
12
|
+
|
|
13
|
+
## 2026-05-10 02:47 UTC tick
|
|
14
|
+
- Stress: PID 3875067 alive (resume-from-step 807, running since May 8, 45+ hr runtime); recent sessions cycling through "Doc:" single-letter prompts; harness advancing
|
|
15
|
+
- Write rate: N/A (stress sessions in Doc prompt segment)
|
|
16
|
+
- Admiral last 30 min: harness:thinking_stall dominant (6,962 in last 24h); harness:grep:unescaped_pattern 3,981 (fix b3922fa in v2.8.6 deployed, queue entries are historical); loop:bash_generic 660
|
|
17
|
+
- vLLM 400s: 0; llm_balancer PID 3944578 healthy on :8001 (gemma4 OK)
|
|
18
|
+
- GH issues: 0 open
|
|
19
|
+
- Dispatch queue: harness=85,384 (956 classifier batches), retrieval=74 (0 actionable, all within 7-day window)
|
|
20
|
+
- Retrieval-drain: 0 projects ingested (74 entries all already ingested recently)
|
|
21
|
+
- Action this tick: no fix committed — all top patterns (thinking_stall, grep:unescaped_pattern, heredoc_loop) addressed by commits ee354e5/cd6b56c/c8a5f7f/dd07921/b3922fa in last 24h; search_replace:not_found_loop at 114/24h, HARD-STOP logic already handles it; system healthy
|
|
22
|
+
|
|
23
|
+
## 2026-05-10 01:32 UTC tick
|
|
24
|
+
- Stress: PID 3875067 alive; current cycle at ~680/1658 (stress_2000 log tail); harness proceeding through API prompt segment; watcher active
|
|
25
|
+
- Write rate: N/A (log-based estimate not available this tick)
|
|
26
|
+
- Admiral last 30 min: harness:thinking_stall dominant; harness:loop:bash_generic secondary; all patterns have existing nudge coverage
|
|
27
|
+
- vLLM 400s: 0; llm_balancer PID 3944578 healthy on :8001; no port squatters
|
|
28
|
+
- GH issues: 0 open
|
|
29
|
+
- Dispatch queue: harness=85,052, retrieval=74 (0 actionable; all within 7-day re-ingest window); steering=0
|
|
30
|
+
- Retrieval-drain: 0 projects ingested (74 entries all already ingested recently)
|
|
31
|
+
- Action this tick: no action — system healthy; recent commits cd6b56c + c8a5f7f already address dominant harness:thinking_stall pattern; harness:loop:bash_generic covered by existing FORCE_STOP + admiral nudges; no new actionable drydock bugs found
|
|
32
|
+
|
|
33
|
+
## 2026-05-10 01:30 UTC tick
|
|
34
|
+
- Stress: 1197/1658 (done=166, skip=223, recycle=134); PID 3875067 alive (30h runtime); high skip rate in "Doc:" prompt segment (single-letter shortcuts confuse model, causes bash loops → TUI approval modal stall → harness skips); harness is recycling TUI correctly and advancing
|
|
35
|
+
- Write rate: all recent steps skipped (Doc segment, model inherently loops on ambiguous prompts)
|
|
36
|
+
- Admiral last 30 min: harness:thinking_stall (55,104 cumulative); harness:loop:bash_generic (12,574); harness:tool:hallucinated_name (6,425); harness:search_replace:not_found_loop (4,798)
|
|
37
|
+
- vLLM 400s: 0; llm_balancer PID 3944578 healthy on :8001; vLLM model count=1
|
|
38
|
+
- GH issues: 0 open
|
|
39
|
+
- Dispatch queue: harness=84,888, retrieval=74 (0 actionable); retrieval-drain: 0 projects ingested
|
|
40
|
+
- Action this tick: no action — system healthy; recent commits cd6b56c + c8a5f7f address dominant thinking_stall pattern; bash_generic covered by existing FORCE_STOP + admiral; no new actionable drydock bugs found
|
|
41
|
+
|
|
42
|
+
## 2026-05-10 01:05 UTC tick
|
|
43
|
+
- Stress: active; PID 3875067 alive (29h runtime, etimes=104563, resume-from-step 807); latest session session_20260510_002909_d671f1bd started 19:30 local; harness cycling normally
|
|
44
|
+
- Write rate: N/A (not exposed in live log)
|
|
45
|
+
- Admiral last 30 min: harness:thinking_stall dominant (54,976 cumulative); harness:loop:bash_generic (12,544); harness:tool:hallucinated_name (6,422); harness:search_replace:not_found_loop (4,798); harness:grep:unescaped_pattern (3,969)
|
|
46
|
+
- vLLM 400s: 0; llm_balancer PID 3944578 healthy on :8001 (confirmed legit); docker serving gemma4 normally
|
|
47
|
+
- GH issues: 0 open
|
|
48
|
+
- Dispatch queue: harness=84,724, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
49
|
+
- Action this tick: no action — system healthy; 1 unreleased commit cd6b56c (ralph_file_summary stall nudge) pending next auto_release; all major patterns (thinking_stall, grep:unescaped_pattern, search_replace:not_found_loop, hallucinated_name) addressed by commits in last 48h; bash_generic (12K) handled by existing FORCE_STOP + admiral, inherent model limitation
|
|
50
|
+
|
|
51
|
+
## 2026-05-10 00:04 UTC tick
|
|
52
|
+
- Stress: 1189/1658 (stress_2000_v10, log updated 1 min ago); PID 3875067 (stress_shakedown.py, 28.5h runtime from step 807) also alive
|
|
53
|
+
- Write rate: not recalculated (doc-heavy segment ongoing — architecture diagrams, release notes, changelog entries driving high SKIP rate)
|
|
54
|
+
- Admiral last 30 min: harness:thinking_stall dominant (54K cumulative), harness:loop:bash_generic (12K), harness:tool:hallucinated_name (6.4K), harness:search_replace:not_found_loop (4.8K); all covered by existing fixes
|
|
55
|
+
- vLLM 400s: 0; llm_balancer PID 3944578 confirmed healthy on :8001 (not an orphan); no :8001 squatting
|
|
56
|
+
- GH issues: 0 open
|
|
57
|
+
- Dispatch queue: harness=84547, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
58
|
+
- Action this tick: no action — all patterns addressed by commits from last 24h (cd6b56c, c8a5f7f, b3922fa, dd07921); ralph_repo_index is top stall trigger (29K queue) but already in _readonly_tools since prior fix; system healthy
|
|
59
|
+
|
|
60
|
+
## 2026-05-09 23:33 UTC tick
|
|
61
|
+
- Stress: 1183/1658; PID 3875067 alive; done=165, skip=205, recycle=125 (babysitter shows step 1183 active)
|
|
62
|
+
- Write rate: ~44.6% (165/370 non-timeout prompts written)
|
|
63
|
+
- Admiral last 30 min: 0 fires (classify_pulse log empty for this window)
|
|
64
|
+
- vLLM 400s: 0; llm_balancer PID 3944578 healthy on :8001 (confirmed legit)
|
|
65
|
+
- GH issues: 0 open
|
|
66
|
+
- Dispatch queue: harness=84359, retrieval=74 (0 actionable); retrieval-drain: 0 ingested (all within 7-day window)
|
|
67
|
+
- Action this tick: no action — all queued patterns (harness:thinking_stall, harness:loop:bash_generic) addressed by recent commits cd6b56c + c8a5f7f + 2cfa973; TUI showing "Queued: 4 pending" indicating multi-prompt queue buildup during doc-heavy segment, not a drydock source bug; system healthy
|
|
68
|
+
|
|
69
|
+
## 2026-05-09 23:03 UTC tick
|
|
70
|
+
- Stress: 1178+/1658; PID 3875067 alive (27.5h runtime); 165 done, 205 skip, 125 recycles since step 807 resume; doc-heavy segment (architecture diagrams, release notes) causing high SKIP rate from prompt-acceptance retries
|
|
71
|
+
- Write rate: ~31% overall (stable)
|
|
72
|
+
- Admiral last 30 min: harness:thinking_stall dominant (86/100 recent queue entries), harness:loop:bash_generic (12/100), hallucinated_name (1), grep:unescaped_pattern (1)
|
|
73
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (confirmed llm_balancer.py); docker status unknown (CLI unavailable)
|
|
74
|
+
- GH issues: 0 open
|
|
75
|
+
- Dispatch queue: harness=84167, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
76
|
+
- Action this tick: committed fix cd6b56c — added ralph_file_summary to _readonly_tools set in stall handler (addresses pattern harness:thinking_stall); stalls after ralph_file_summary were getting generic "Continue working" nudge instead of the specific "you called {tool} but produced no output" message
|
|
77
|
+
|
|
78
|
+
## 2026-05-09 23:30 UTC tick
|
|
79
|
+
- Stress: 1173/1658; PID 3875067 alive (27h runtime); progressing from 1130 in prior tick — ~43 steps/1.5h
|
|
80
|
+
- Write rate: ~31% (stable, unchanged across multiple ticks)
|
|
81
|
+
- Admiral last 30 min: harness:thinking_stall (54348 total/queue), harness:loop:bash_generic (12448), harness:tool:hallucinated_name (6410) — all active but all have existing handlers; no new actionable patterns
|
|
82
|
+
- vLLM 400s: 0; balancer PID 3944578 confirmed llm_balancer.py on :8001; forwarding to gemma4 verified
|
|
83
|
+
- GH issues: 0 open
|
|
84
|
+
- Dispatch queue: harness=83976, retrieval=74 (0 actionable, all within 7-day re-ingest window); retrieval-drain: 0 projects ingested
|
|
85
|
+
- Action this tick: no action — dd07921+c8a5f7f shipped in v2.8.8 (auto_release ran 12:02 UTC); bash_generic loop uses existing FORCE_STOP+mute path; search_replace:not_found_loop has existing file-head embedding; hallucinated_name handled by _IGNORE_TOOLS set; system healthy
|
|
86
|
+
|
|
87
|
+
## 2026-05-09 22:05 UTC tick
|
|
88
|
+
- Stress: 1166/1658; PID 3875067 alive (26h30m runtime); progressing through Doc segment (release notes, changelogs, migration guides — 45% write rate since step 807); TUI log confirms activity at 22:00 UTC; 162 done, 196 skip, 120 recycles since step 807
|
|
89
|
+
- Write rate: ~45% (done vs skip+done since resume at 807)
|
|
90
|
+
- Admiral last 30 min: 0 new fires in log; dispatch queue harness=83795 entries but all top patterns (thinking_stall, loop:bash_generic, grep:unescaped_pattern) already addressed by dd07921+c8a5f7f committed today
|
|
91
|
+
- vLLM 400s: 0; balancer PID 3944578 on :8001 healthy; docker "unhealthy" known false alarm
|
|
92
|
+
- GH issues: 0 open
|
|
93
|
+
- Dispatch queue: harness=83795, retrieval=74, steering=0; retrieval-drain: 0 projects ingested (all within 7-day window)
|
|
94
|
+
- Action this tick: no action — system healthy, all queued patterns addressed in recent commits; patterns dd07921+c8a5f7f will ship at next auto_release (00:00 CDT / 05:00 UTC)
|
|
95
|
+
|
|
96
|
+
## 2026-05-09 21:32 UTC tick
|
|
97
|
+
- Stress: 1160/1658; PID 3875067 alive (25h30m runtime); progressing through doc-heavy segment (architecture diagrams, CONTRIBUTING, README — 0-2 writes per step); TUI recycled at step 1158 due to API-errors banner (RECOVER: /clear sent, session rebound)
|
|
98
|
+
- Write rate: ~31% overall (stable)
|
|
99
|
+
- Admiral last 30 min: harness:thinking_stall (171 entries), harness:loop:bash_generic (24), harness:grep:unescaped_pattern (15), harness:tool:hallucinated_name (3) — thinking_stall and grep patterns still firing because dd07921+c8a5f7f not yet deployed; next auto_release at 00:00 CDT (05:00 UTC) will ship them
|
|
100
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (confirmed llm_balancer.py); docker "unhealthy" is known false alarm (serving normally)
|
|
101
|
+
- GH issues: 0 open
|
|
102
|
+
- Dispatch queue: harness=83613, retrieval=74 (0 actionable, all within 7-day re-ingest window); retrieval-drain: 0 projects ingested
|
|
103
|
+
- Action this tick: no action — all top patterns addressed by committed fixes (dd07921, c8a5f7f) pending next auto_release; loop:bash_generic (24) has existing FORCE_STOP at 3 consecutive; system healthy
|
|
104
|
+
|
|
105
|
+
## 2026-05-09 21:10 UTC tick
|
|
106
|
+
- Stress: 1142/1658 (PID 3875067 alive, 25h runtime); done=142 skip=192 recycle=115 timeout=0
|
|
107
|
+
- Write rate: ~42% (done/(done+skip))
|
|
108
|
+
- Admiral last 30 min: thinking_stall and loop:bash_generic dominant in queue; all addressed by dd07921 + c8a5f7f (both pending next auto_release at 23:00 UTC)
|
|
109
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001; gemma4 docker "unhealthy" but API nominal
|
|
110
|
+
- GH issues: 0 open
|
|
111
|
+
- Dispatch queue: harness=83400, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
112
|
+
- Action this tick: no action — system healthy; all top dispatch patterns addressed in commits already queued for auto_release; harness:loop:bash_generic advisory-only (admiral nudge already firing); harness:tool:hallucinated_name fixed in v2.8.5; no new actionable source bugs found
|
|
113
|
+
|
|
114
|
+
## 2026-05-09 19:33 UTC tick
|
|
115
|
+
- Stress: PID 3875067 alive (24h runtime); active session session_20260509_192717 (model working on Doc: FAQ prompt for tool_agent, reading PRD.md normally); 12103 total sessions accumulated
|
|
116
|
+
- Write rate: ~31% (consistent with prior ticks)
|
|
117
|
+
- Admiral last 30 min: classify_pulse last run dispatched 86 signals (48 thinking_stall, 32 grep:unescaped_pattern, 6 bash_generic); all three are addressed in v2.8.8 (installed 17:02 UTC); post-v2.8.8 sessions should not fire these
|
|
118
|
+
- vLLM 400s: 0; balancer PID healthy on :8001 serving gemma4; docker gemma4 serving normally
|
|
119
|
+
- GH issues: 0 open
|
|
120
|
+
- Dispatch queue: harness=82658, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
121
|
+
- Action this tick: no action — all top dispatch patterns addressed in v2.8.8 (shipped 17:02 UTC today); bash_generic has existing FORCE_STOP handler (3+ consecutive identical commands); hallucinated_name handled by _IGNORE_TOOLS + _RETRIEVAL_HALLUCINATIONS in format.py; stress progressing normally
|
|
122
|
+
|
|
123
|
+
## 2026-05-09 19:00 UTC tick
|
|
124
|
+
- Stress: ~807/1658 (PID 3875067 alive, --resume-from-step 807); active sessions writing (96 msgs in latest session)
|
|
125
|
+
- Write rate: n/a (no stress log file found)
|
|
126
|
+
- Admiral last 30 min: thinking_stall dominant (ralph_repo_index, 53K total in queue); bash_generic 12K; hallucinated_name 6K; search_replace:not_found_loop 5K
|
|
127
|
+
- vLLM 400s: 0; balancer PID 3944578 on :8001 healthy; gemma4 serving fine
|
|
128
|
+
- GH issues: 0 open
|
|
129
|
+
- Dispatch queue: harness=82077, retrieval=74 (0 actionable); steering=0
|
|
130
|
+
- Action this tick: committed fix c8a5f7f — stall nudge now uses actual tool name (prev_tool_name) instead of hardcoded "read_file". When model stalls after ralph_repo_index, nudge now says "do NOT call ralph_repo_index again" instead of "do NOT call read_file again" — model was ignoring the mismatched name. Addresses pattern harness:thinking_stall.
|
|
131
|
+
|
|
132
|
+
## 2026-05-09 18:30 UTC tick
|
|
133
|
+
- Stress: 680/1658 (PID 3875067 alive); session reset at 675, currently cycling through API prompts; consecutive SKIPs at 677-679 from modal-blocking (known); FORCE-RESET fired and recovered
|
|
134
|
+
- Write rate: 62 writes / 303 msgs (~20%); 620 accepted / 675 prompts (91.8% accept rate)
|
|
135
|
+
- Admiral last 30 min: 341 fires (grep:unescaped_pattern=177, thinking_stall=134, hallucinated_name=18); grep loop pattern elevated but is advisory-only model behavior, not a code bug
|
|
136
|
+
- vLLM 400s: 0; balancer PID 3944578 on :8001 healthy (confirmed curl); gemma4 container shows "unhealthy" docker status but forwarding fine
|
|
137
|
+
- GH issues: 0 open
|
|
138
|
+
- Dispatch queue: harness=81751, retrieval=74 (0 actionable, all within 7-day window); steering=0
|
|
139
|
+
- Action this tick: no action — all top dispatch patterns addressed by v2.8.0-v2.8.7; retrieval drain: 0 projects ingested; system healthy
|
|
140
|
+
|
|
141
|
+
## 2026-05-09 17:00 UTC tick
|
|
142
|
+
- Stress: ~1096/1658 (est); PID 3875067 alive (21h30m runtime); sessions still writing (last at 16:55 UTC); elevated SKIP rate from approval-modal blocking continues (known issue)
|
|
143
|
+
- Write rate: ~46% on accepted prompts (consistent with prior ticks)
|
|
144
|
+
- Admiral last 30 min: harness=81063 entries (dominated by thinking_stall pre-fix events); no new patterns beyond known queue; lsp one-off from prior tick remains single occurrence
|
|
145
|
+
- vLLM 400s: 0; balancer PID 3944578 on :8001 healthy; gemma4 container up, 0 JSONDecodeErrors
|
|
146
|
+
- GH issues: 0 open
|
|
147
|
+
- Dispatch queue: harness=81063, retrieval=74 (0 actionable); retrieval-drain: 0 projects ingested (all 74 within 7-day window)
|
|
148
|
+
- Action this tick: no action — system healthy; all top dispatch patterns (thinking_stall, bash_generic, grep:unescaped_pattern) have existing fixes in v2.8.x; v2.8.8 shipped at 12:00 CDT with deep-noir M1 skeleton
|
|
149
|
+
|
|
3
150
|
## 2026-05-09 16:35 UTC tick
|
|
4
151
|
- Stress: ~1091/1658; PID 3875067 alive (20h34m runtime); done=128, skip=150, recycle=92 at last babysitter tick; skip rate elevated (~59% in last 30 prompts per admiral) due to approval-modal blocking (known, see project_tui_skip_root_cause.md) — not a new bug
|
|
5
152
|
- Write rate: 128/(128+150) ≈ 46% completion on accepted prompts; doc-task batch (1089–1091) all SKIPped (approval modal from prior bash/write tools blocks input)
|
|
@@ -3833,3 +3980,77 @@ restarted, cron self-match bug fixed in this same session).
|
|
|
3833
3980
|
- Dispatch queue: harness=77713, retrieval=74 (0 actionable, all within 7-day window)
|
|
3834
3981
|
- retrieval-drain: 0 projects ingested (all 74 already ingested)
|
|
3835
3982
|
- Action this tick: no action — all top dispatch patterns (grep:unescaped_pattern → b3922fa, thinking_stall → 2cfa973/aeae8bb) addressed within last 24h; remaining patterns (hallucinated_name, bash_generic, search_replace:not_found_loop) have existing fixes in v2.8.x; system healthy
|
|
3983
|
+
|
|
3984
|
+
## 2026-05-09 17:45 UTC tick
|
|
3985
|
+
- Stress: 1102/1658 (last completed step in log); PID 3875067 alive (22h runtime); step 1102 session written to ~/.vibe/logs/session/session_20260509_172820_142bfdd3 (47 msgs, active at 17:31Z); SKIP cluster at 1098-1100 due to approval-modal blocking, recycled at 1100 and resumed
|
|
3986
|
+
- Write rate: ~31% overall; step 1101 (Doc: tutorial for Z) completed with 19 msgs, 0 writes — consistent with doc-heavy segment of prompts
|
|
3987
|
+
- Admiral last 30 min: harness:thinking_stall dominant (17:30Z entries: empty_after_tool:ralph_repo_index, empty_after_tool:bash, empty_after_tool:read_file; source=opus/canned); harness:loop:bash_generic (2 entries at 17:30Z)
|
|
3988
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (gemma4 only, romulus still paused); no JSONDecodeErrors in docker logs
|
|
3989
|
+
- GH issues: 0 open
|
|
3990
|
+
- Dispatch queue: harness=81410, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
3991
|
+
- Action this tick: no action — all top dispatch patterns (grep:unescaped_pattern → b3922fa, thinking_stall → 2cfa973/aeae8bb) addressed within last 24h; remaining patterns (hallucinated_name, bash_generic) have existing fixes in v2.8.x; stress progressing normally
|
|
3992
|
+
|
|
3993
|
+
## 2026-05-09 19:10 UTC tick
|
|
3994
|
+
- Stress: 807/1658 (PID 3875067, tool_agent suite)
|
|
3995
|
+
- Write rate: N/A (progress tracking not exposed in log)
|
|
3996
|
+
- Admiral last 30 min: harness:thinking_stall dominant (5895 today, mostly empty_after_tool:ralph_repo_index); harness:grep:unescaped_pattern (3661 today); harness:loop:bash_generic (342 today); harness:bash:heredoc_loop (61 today)
|
|
3997
|
+
- vLLM 400s: 0; balancer healthy on :8001 (PID 3944578); vLLM docker "unhealthy" status but serving normally
|
|
3998
|
+
- GH issues: 0 open
|
|
3999
|
+
- Dispatch queue: harness=82375, retrieval=74 (0 actionable); retrieval-drain: 0 projects ingested
|
|
4000
|
+
- Action this tick: committed fix for harness:bash:heredoc_loop (dd07921) — added _heredoc_file_count per-file counter in bash tool so the loop-breaker fires even when model writes varied heredoc content to same file each iteration (hash check missed this case); harness:thinking_stall already addressed in c8a5f7f (same session); harness:grep:unescaped_pattern already addressed in b3922fa
|
|
4001
|
+
|
|
4002
|
+
## 2026-05-09 21:00 UTC tick
|
|
4003
|
+
- Stress: 1130/1658; PID 3875067 alive (24h30m runtime); recycled TUI at step 1130 (doc-heavy segment: release notes, architecture diagrams, CONTRIBUTING docs — 0 writes per step, consistent); no timeouts
|
|
4004
|
+
- Write rate: ~31% overall (unchanged)
|
|
4005
|
+
- Admiral last 30 min: harness:thinking_stall (157 entries), harness:grep:unescaped_pattern (77), harness:loop:bash_generic (22), harness:tool:hallucinated_name (9) — top two still firing because dd07921/c8a5f7f fixes not yet deployed; next auto_release at 23:00 UTC will ship them
|
|
4006
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001; docker "unhealthy" is known false alarm (serving normally); no JSONDecodeErrors
|
|
4007
|
+
- GH issues: 0 open
|
|
4008
|
+
- Dispatch queue: harness=82923, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
4009
|
+
- Action this tick: no action — top patterns addressed by dd07921+c8a5f7f (pending next auto_release at 23:00 UTC); bash_generic (22 recent) and hallucinated_name (9 recent) both have existing FORCE_STOP handling; system healthy
|
|
4010
|
+
|
|
4011
|
+
## 2026-05-09 22:30 UTC tick
|
|
4012
|
+
- Stress: 1130+/1658; PID 3875067 alive (25h runtime, etimes=90022); session_20260509_202942 active (model doing bash grep loops on tool_agent, admiral firing normally)
|
|
4013
|
+
- Write rate: ~31% (stable)
|
|
4014
|
+
- Admiral last 30 min: harness:thinking_stall (159), harness:grep:unescaped_pattern (56), harness:loop:bash_generic (24), harness:tool:hallucinated_name (6)
|
|
4015
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (confirmed legit llm_balancer.py); docker CLI unavailable (known)
|
|
4016
|
+
- GH issues: 0 open
|
|
4017
|
+
- Dispatch queue: harness=83168, retrieval=74 (0 actionable); retrieval-drain: 0 projects ingested (74 entries all within 7-day re-ingest window)
|
|
4018
|
+
- Action this tick: no action — all top patterns have existing fixes; dd07921+c8a5f7f pending auto_release at 00:00 CDT (05:00 UTC); search_replace:not_found_loop (4798 total) already has file-head embedding fix in source; bash:escape_loop (170 total) already has sed/echo escape detection in bash.py; system healthy
|
|
4019
|
+
|
|
4020
|
+
## 2026-05-10 02:30 UTC tick
|
|
4021
|
+
- Stress: 1218/1658 (actively running, PID 3875067)
|
|
4022
|
+
- Write rate: N/A (no report-every line visible in current log slice)
|
|
4023
|
+
- Admiral last 30 min: harness:thinking_stall dominant (55364 total queue), harness:loop:bash_generic (12634), harness:tool:hallucinated_name (6431), harness:search_replace:not_found_loop (4798)
|
|
4024
|
+
- vLLM 400s: 0; balancer OK on :8001; docker gemma4 healthy
|
|
4025
|
+
- GH issues: 0 open
|
|
4026
|
+
- Dispatch queue: harness=55364+, retrieval=74 (0 actionable, all within re-ingest window), steering=0
|
|
4027
|
+
- Action this tick: committed ee354e5 fix(stall): add specific bash stall nudges for error and output cases (addresses pattern harness:thinking_stall) — empty_after_tool:bash::source=canned was falling through to generic 'Continue working'; new _prev_bash_had_error and _prev_bash_had_output branches give the model concrete direction. Auto_release will ship at next 0/6/12/18 CDT tick.
|
|
4028
|
+
|
|
4029
|
+
## 2026-05-10 04:03 UTC tick
|
|
4030
|
+
- Stress: 1230/1658 (wedged — harness alive PID 3875067, TUI child 110424 alive since 22:03 CDT, log stale 5+ hours since 22:01 CDT)
|
|
4031
|
+
- Write rate: 0 new writes observed (183 accepted / 235 skipped total at last progress report, prompt 1225)
|
|
4032
|
+
- Admiral last 30 min: not measurable (admiral_history.log not updated)
|
|
4033
|
+
- vLLM 400s: 0
|
|
4034
|
+
- GH issues: gh unavailable this tick
|
|
4035
|
+
- Dispatch queue: harness=85546 entries (2 patterns: thinking_stall 42 fires addressed in 24h commits, bash_generic 8 fires advisory), retrieval=74 entries (all already ingested), steering=0
|
|
4036
|
+
- retrieval-drain: 0 projects ingested (all up to date)
|
|
4037
|
+
- Action this tick: no fix committed — harness is alive but wedged (TUI child spawned at 22:03 created session_20260510_030327 with only 3 messages then stalled; babysitter cannot restart a live harness; watcher PIDs 3875068+110078 are running but recycle signals haven't unblocked it). harness:thinking_stall pattern was already addressed in today's commits (ee354e5, cd6b56c); harness:loop:bash_generic is low-confidence (0.6) with admiral nudge already firing — no source fix warranted.
|
|
4038
|
+
|
|
4039
|
+
## 2026-05-10 04:30 UTC tick
|
|
4040
|
+
- Stress: 1253/1658 prompts (idx), done=200, skip=245, timeout=0, recycle=148; PID 3875067 alive (1d 8h runtime)
|
|
4041
|
+
- Write rate: not directly measured this tick
|
|
4042
|
+
- Admiral last 30 min: harness:thinking_stall dominant (55,902 total queue entries); ralph_repo_index accounts for 30,357 (54% of all stalls)
|
|
4043
|
+
- vLLM 400s: 0 in last 30 min
|
|
4044
|
+
- GH issues: 0 open
|
|
4045
|
+
- Dispatch queue: harness=68686 entries (multiple patterns), retrieval=74 (all already ingested), steering=0
|
|
4046
|
+
- Action this tick: committed fix for ralph_repo_index stall nudge (addresses pattern harness:thinking_stall) — prev generic nudge said "make changes" which is wrong after repo-indexing; new nudge tells model to write TEXT answer or call read_file; retrieval-drain: 0 projects ingested (all already ingested recently)
|
|
4047
|
+
|
|
4048
|
+
## 2026-05-10 04:31 UTC tick
|
|
4049
|
+
- Stress: PID 3875067 alive (33h runtime, resume-from 807/1658); current prompt "Perf: batch DB writes"; TUI child PID 125661 alive (128s), session_20260510_042832 active with 33 messages, last updated 04:30 UTC
|
|
4050
|
+
- Write rate: not directly measured; sessions cycling normally (12152 total)
|
|
4051
|
+
- Admiral last 30 min: harness:thinking_stall (137 fires, all ralph_repo_index/bash), harness:loop:bash_generic (24), harness:grep:unescaped_pattern (3)
|
|
4052
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (confirmed llm_balancer.py); docker gemma4 serving normally
|
|
4053
|
+
- GH issues: 0 open (gh returned no results)
|
|
4054
|
+
- Dispatch queue: harness=86034 (top: thinking_stall 56039, bash_generic 12758, hallucinated_name 6431), retrieval=74 (0 actionable — all within 7-day window), steering=0
|
|
4055
|
+
- retrieval-drain: 0 projects ingested (all already up to date)
|
|
4056
|
+
- Action this tick: no action — all recent patterns addressed by a6a448e/ee354e5/cd6b56c (thinking_stall nudges for ralph_repo_index/bash); auto_release ships at ~05:00 UTC; system healthy
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
4191814
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"sessionId":"e2007dbc-c6fb-476f-aadf-84bdba557467","pid":3610865,"procStart":"468128401","acquiredAt":1778204700306}
|
|
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
|