drydock-cli 2.8.8__tar.gz → 2.8.9__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.9/.auto_release.lock +1 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/PKG-INFO +1 -1
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/agent_loop.py +6 -4
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/bash.py +25 -4
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/pyproject.toml +1 -1
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/trip_log.md +108 -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.9}/.github/CODEOWNERS +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.github/DISCUSSION_TEMPLATE/ideas.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.github/workflows/build-and-upload.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.github/workflows/ci.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.github/workflows/issue-labeler.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.github/workflows/release.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.gitignore +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.pre-commit-config.yaml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.python-version +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.typos.toml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.vscode/extensions.json +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.vscode/launch.json +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/.vscode/settings.json +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/AGENTS.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/Admiral.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/CHANGELOG.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/CLAUDE.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/CONTRIBUTING.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/DEEP_NOIR_PRD.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/DEPLOYMENT.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/HLE_PRD.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/JETSON_BENCH.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/LICENSE +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/MODEL_SHORTCOMINGS.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/NOTICE +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/SOVEREIGN_PRD.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/TRIAGE_v1.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/action.yml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results1.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results13.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results14.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results15.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results16.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results17.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results18.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results19.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results2.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results20.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results3.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results4.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results5.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results6.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results7.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results8.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results9.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/baseline_history/results_evolved_v1.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/distribution/zed/LICENSE +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/distribution/zed/extension.toml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/distribution/zed/icons/mistral_vibe.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/acp-setup.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/archive/BASELINE_412.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/archive/Drydock_rebrand.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/archive/OVERNIGHT_PROGRESS.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/archive/OVERNIGHT_REPORT_2026_04_13.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/archive/PERF_SWEEP_PLAN.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/archive/PRD.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/archive/drydock_terms.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/archive/resume.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/docs/proxy-setup.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/__main__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/acp_agent_loop.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/acp_logger.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/entrypoint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/tools/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/tools/base.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/tools/builtins/bash.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/tools/builtins/read_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/tools/builtins/search_replace.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/tools/builtins/todo.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/tools/builtins/write_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/tools/session_update.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/acp/utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/detectors.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/detectors_proposed.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/history.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/interventions.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/llm_analyzer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/metrics.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/opus_escalator.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/persistence.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/policy.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/proposer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/stager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/task_classifier.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/tuning.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/validator.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/admiral/worker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/autocompletion/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/autocompletion/base.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/autocompletion/path_completion.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/autocompletion/slash_command.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/cli.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/clipboard.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/commands.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/entrypoint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/fix_windows_path.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/history_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/plan_offer/adapters/http_whoami_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/plan_offer/decide_plan_offer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/plan_offer/ports/whoami_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/terminal_setup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/ansi_markdown.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/app.tcss +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/external_editor.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/handlers/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/handlers/event_handler.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/notifications/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/notifications/adapters/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/notifications/adapters/textual_notification_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/notifications/ports/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/notifications/ports/notification_port.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/approval_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/banner/banner.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/banner/petit_chat.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/braille_renderer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/chat_input/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/chat_input/body.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/chat_input/completion_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/chat_input/completion_popup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/chat_input/container.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/chat_input/text_area.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/checkpoint_picker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/compact.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/config_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/context_progress.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/load_more.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/loading.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/messages.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/no_markup_static.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/path_display.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/proxy_setup_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/question_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/session_picker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/spinner.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/status_message.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/teleport_message.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/tool_widgets.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/tools.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/vscode_compat.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/windowing/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/windowing/history.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/windowing/history_windowing.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/windowing/state.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/update_notifier/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/update_notifier/adapters/filesystem_update_cache_repository.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/update_notifier/adapters/github_update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/update_notifier/adapters/pypi_update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/update_notifier/ports/update_cache_repository.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/update_notifier/ports/update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/update_notifier/update.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/update_notifier/whats_new.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/agents/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/agents/manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/agents/models.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/auth/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/auth/crypto.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/auth/github.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/autocompletion/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/autocompletion/completers.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/autocompletion/file_indexer/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/autocompletion/file_indexer/ignore_rules.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/autocompletion/file_indexer/indexer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/autocompletion/file_indexer/store.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/autocompletion/file_indexer/watcher.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/autocompletion/fuzzy.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/autocompletion/path_prompt.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/autocompletion/path_prompt_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/build_orchestrator.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/checkpoint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/classifier/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/classifier/__main__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/classifier/classifier.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/classifier/dispatcher.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/classifier/rules.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/classifier/signal.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/config/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/config/_dotenv.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/config/_settings.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/config/doctor.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/config/harness_files/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/config/harness_files/_harness_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/config/harness_files/_paths.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/config/local_detect.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/config/migrate.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/consultant.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/context_recovery.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/drydock_states.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/hooks.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/backend/anthropic.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/backend/base.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/backend/factory.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/backend/generic.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/backend/mistral.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/backend/reasoning_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/backend/vertex.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/exceptions.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/format.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/message_utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/llm/types.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/logger.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/middleware.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/output_formatters.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/paths/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/paths/_drydock_home.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/paths/_local_config_walk.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/paths/conventions.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/plan_session.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/plugins.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/programmatic.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/builder.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/cli.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/compact.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/dangerous_directory.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/diagnostic.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/explore.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/gemma4.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/planner.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/project_context.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/prompts/tests.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/proxy_setup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/session/agent_memory.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/session/checkpoints.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/session/session_loader.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/session/session_logger.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/session/session_migration.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/session/state_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/session_checker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/skills/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/skills/manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/skills/models.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/skills/parser.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/slug.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/steering_hook.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/system_prompt.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/telemetry/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/telemetry/send.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/teleport/errors.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/teleport/git.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/teleport/nuage.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/teleport/teleport.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/teleport/types.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/base.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/_task_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/ask_user_question.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/cron.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/exit_plan_mode.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/glob_tool.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/grep.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/invoke_skill.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/lsp.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/mcp_resources.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/notebook_edit.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/powershell.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/ask_user_question.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/bash.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/cron.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/glob.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/grep.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/invoke_skill.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/lsp.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/mcp_resources.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/notebook_edit.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/powershell.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/read_file.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/retrieve.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/search_replace.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/swe_bench.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/task.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/task_manager.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/todo.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/tool_search.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/webfetch.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/websearch.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/worktree.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/prompts/write_file.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/read_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/retrieve.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/search_replace.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/task.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/todo.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/tool_search.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/webfetch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/websearch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/worktree.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/builtins/write_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/injection_guard.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/mcp/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/mcp/registry.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/mcp/tools.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/mcp_sampling.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/ui.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/tools/utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/trusted_folders.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/types.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/core/utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/graphrag/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/graphrag/__main__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/graphrag/code_indexer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/graphrag/retriever.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/graphrag/storage.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/graphrag/text_indexer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/setup/onboarding/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/setup/onboarding/base.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/setup/onboarding/onboarding.tcss +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/setup/onboarding/screens/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/setup/onboarding/screens/api_key.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/setup/onboarding/screens/choice.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/setup/onboarding/screens/local_model.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/setup/onboarding/screens/welcome.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/setup/trusted_folders/trust_folder_dialog.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/setup/trusted_folders/trust_folder_dialog.tcss +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/api-design/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/audit-tests/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/batch/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/commit-code/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/context-summary/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/create-presentation/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/deep-research/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/deploy/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/diff-review/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/doc-gen/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/explain-code/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/explore-code/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/fix-issue/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/git-ops/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/init-project/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/investigate/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/loop/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/migrate/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/perf-analyze/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/plan-impl/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/pr-review/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/refactor/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/regex-help/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/review/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/security-review/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/ship/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/simplify/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/strong-tests/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/skills/test-verify/SKILL.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/steering/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/steering/__main__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/steering/applier.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/steering/config.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/steering/registry.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/steering/sandbox.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/steering/sidecar/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/steering/sidecar/header_parser.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/steering/sidecar/server.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/steering/vectors.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/whats_new.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock-acp.spec +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/flake.lock +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/flake.nix +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/research/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/research/config_base.toml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/research/config_best.toml +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/research/domain_spec.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/research/experimenter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/research/kernel.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/research/mini_prd.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/research/mini_prompts.txt +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/research/proposer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/research/results.tsv +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/admiral_probe.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/archive/auto_test_loop.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/archive/monitor_test_battery.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/archive/overnight_agents_test.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/archive/test_bank.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/archive/test_full.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/archive/test_smoke.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/archive/tui_test.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/audit_sampler.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/auto_generate_tests.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/auto_release.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/autonomous_review.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/autonomous_review_prompt.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/backup.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/bump_version.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/classify_pulse.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/consume_retrieval_queue.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/deploy_to_github.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/fetch_arxiv_abstracts.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/gen_2000_prompts.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/hle_eval.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/hle_eval_seed.jsonl +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/llm_balancer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/notify_release.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/perf_baseline_when_idle.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/perf_sweep.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/poll_issues.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/publish_to_pypi.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/queue_top.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/ralph_loop.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/research_babysitter.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/shakedown.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/shakedown_interactive.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/shakedown_suite.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/shakedown_variance.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/start_steering_sidecar.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/stress_babysitter.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/stress_prompts_50.txt +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/stress_prompts_realuser.txt +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/stress_prompts_tool_agent.txt +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/stress_prompts_tool_agent_2000.txt +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/stress_shakedown.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/stress_telegram_status.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/stress_watcher.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/telegram_bot.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/scripts/vllm_failover.sh +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/conftest.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_acp.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_agent_thought.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_bash.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_compact_session_updates.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_content.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_initialize.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_list_sessions.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_load_session.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_multi_session.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_new_session.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_proxy_setup_acp.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_read_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_search_replace.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_set_config_option.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_set_mode.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_set_model.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_tool_call_session_update.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/acp/test_write_file.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/autocompletion/test_file_indexer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/autocompletion/test_fuzzy.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/autocompletion/test_path_completer_fuzzy.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/autocompletion/test_path_completer_recursive.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/autocompletion/test_path_completion_controller.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/autocompletion/test_path_prompt_transformer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/autocompletion/test_slash_command_controller.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/autocompletion/test_ui_chat_autocompletion.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/backend/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/backend/data/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/backend/data/fireworks.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/backend/data/mistral.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/backend/test_anthropic_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/backend/test_backend.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/backend/test_generic_adapter_sanitize.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/backend/test_reasoning_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/backend/test_vertex_anthropic_adapter.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/plan_offer/adapters/fake_whoami_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/plan_offer/test_decide_plan_offer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/plan_offer/test_http_whoami_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_bell_notifications.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_braille_renderer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_clipboard.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_commands.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_copy_shortcuts.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_external_editor.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_no_markup_static.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_question_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_spinner.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_switching_mode.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_ui_clipboard_notifications.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_ui_session_incremental_renderer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_ui_session_resume.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/test_ui_skill_dispatch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/textual_ui/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/cli/textual_ui/test_session_picker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/conftest.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_agents.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_auth_crypto.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_auth_github.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_circuit_breaker_count_escalation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_circuit_breaker_readonly_threshold.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_config_load_dotenv.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_config_paths.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_config_resolution.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_file_logging.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_plan_session.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_proxy_setup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_slug.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_telemetry_send.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_teleport_git.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_teleport_nuage.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_teleport_service.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_trusted_folders.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/core/test_utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/e2e/common.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/e2e/conftest.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/e2e/mock_server.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/e2e/test_cli_tui_onboarding.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/e2e/test_cli_tui_streaming.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/e2e/test_cli_tui_tool_approval.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/fixtures/doc_qa_system_prd.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/mock/__init__.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/mock/mock_backend_factory.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/mock/mock_entrypoint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/mock/utils.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/onboarding/test_run_onboarding.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/onboarding/test_ui_onboarding.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/session/test_session_loader.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/session/test_session_logger.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/session/test_session_migration.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/skills/conftest.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/skills/test_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/skills/test_models.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/skills/test_parser.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_default_mode.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_complete.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_error.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_pushing.svg +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/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.9}/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.9}/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.9}/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.9}/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.9}/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.9}/tests/snapshots/base_snapshot_test_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/conftest.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/snap_compare.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_ask_user_question.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_basic_conversation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_code_block_horizontal_scrolling.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_empty_assistant_before_reasoning.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_modes.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_parallel_tool_calls.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_proxy_setup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_question_app.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_reasoning_content.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_release_update_notification.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_session_resume.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_streaming_tool_call.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_teleport.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/snapshots/test_ui_snapshot_whats_new.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/stubs/fake_backend.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/stubs/fake_client.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/stubs/fake_tool.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_admiral.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_admiral_phase3.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_admiral_proposed.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_admiral_struggle_dedup.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_agent_auto_compact.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_agent_backend.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_agent_observer_streaming.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_agent_stats.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_agent_tasks.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_agent_tool_call.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_agents.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_bank_build.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_bank_debug.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_bank_multiagent.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_bank_prd.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_bank_prd_extended.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_bank_tools.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_bank_update.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_build_projects.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_checkpoint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_classifier.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_cli_programmatic_preload.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_config_migration.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_context_recovery.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_current_bugs.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_dispatcher.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_drydock_regression.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_drydock_tasks.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_fake_tool_call_paren_syntax.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_full_regression.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_graphrag.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_hallucinated_tool_suppression.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_history_manager.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_integration.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_issue_fixes.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_local_detect.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_loop_detection.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_message_id.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_message_merging.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_middleware.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_multi_agent.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_read_file_not_found_listing.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_real_failures.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_real_issues.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_real_workflow.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_reasoning_content.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_retrieval_consumer.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_retrieve_tool.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_search_replace_args_not_truncated.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_smoke.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_steering.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_steering_hook.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_system_prompt.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_tagged_text.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_task_complete_nudge.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_tool_args.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_truncate_args_valid_json.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_truncated_arg_path_hint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_truncated_search_replace_escalation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_truncated_write_escalation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_ui_external_editor.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_ui_input_history.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_user_issues.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_wall_of_text_rescue.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_workloads.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/test_write_file_missing_path.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/testbank_helpers.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_ask_user_question.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_bash.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_bash_binary_grep_hint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_bash_consec_empty_search.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_bash_echo_escape_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_bash_empty_search_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_bash_error_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_bash_exact_cmd_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_bash_heredoc_confirmation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_bash_kill_exit1_annotation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_bash_python_c_syntaxerr_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_exit_plan_mode.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_grep.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_hallucinated_retrieval_redirect.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_invoke_context.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_manager_gemma_derived_models.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_manager_get_tool_config.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_mcp.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_mcp_sampling.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_read_file_dedup_alternating_offset.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_read_file_dedup_reembed.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_read_file_directory.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_read_file_limit_truncation.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_search_replace_append_fallback.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_search_replace_dir_path.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_search_replace_empty_content.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_search_replace_file_not_found.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_search_replace_first_failure_hint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_search_replace_hard_stop.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_search_replace_malformed_block.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_search_replace_no_op_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_search_replace_placeholder.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_search_replace_refused_loop_breaker.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_task.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_ui_bash_execution.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_webfetch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_websearch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_write_file_dedup_missing_imports.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/tools/test_write_file_missing_path_hint.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/update_notifier/adapters/fake_update_cache_repository.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/update_notifier/adapters/fake_update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/update_notifier/test_do_update.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/update_notifier/test_filesystem_update_cache_repository.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/update_notifier/test_github_update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/update_notifier/test_pypi_update_gateway.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/update_notifier/test_ui_update_notification.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/update_notifier/test_update_use_case.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/tests/update_notifier/test_whats_new.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/uv.lock +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/worked_examples/README.md +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/worked_examples/cli_subcommand_dispatch.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/worked_examples/lookup.json +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/worked_examples/sql_parser.py +0 -0
- {drydock_cli-2.8.8 → drydock_cli-2.8.9}/worked_examples/tree_walking_interpreter.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
65938
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: drydock-cli
|
|
3
|
-
Version: 2.8.
|
|
3
|
+
Version: 2.8.9
|
|
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
|
|
@@ -1143,10 +1143,11 @@ class AgentLoop:
|
|
|
1143
1143
|
"Do NOT send an empty response."
|
|
1144
1144
|
)
|
|
1145
1145
|
elif _prev_was_read:
|
|
1146
|
+
_tool_name_str = prev_tool_name or "read_file"
|
|
1146
1147
|
note = (
|
|
1147
|
-
f"You
|
|
1148
|
+
f"You called {_tool_name_str} but produced no output. "
|
|
1148
1149
|
f"Now use write_file, search_replace, or bash "
|
|
1149
|
-
f"to make changes — do NOT call
|
|
1150
|
+
f"to make changes — do NOT call {_tool_name_str} again."
|
|
1150
1151
|
)
|
|
1151
1152
|
elif _prev_write_success:
|
|
1152
1153
|
note = (
|
|
@@ -1174,11 +1175,12 @@ class AgentLoop:
|
|
|
1174
1175
|
)
|
|
1175
1176
|
elif _stall_attempt == 1:
|
|
1176
1177
|
if _prev_was_read:
|
|
1178
|
+
_tool_name_str = prev_tool_name or "read_file"
|
|
1177
1179
|
note = (
|
|
1178
|
-
f"You sent an empty response after
|
|
1180
|
+
f"You sent an empty response after calling {_tool_name_str}. "
|
|
1179
1181
|
f"Call write_file or search_replace NOW to apply "
|
|
1180
1182
|
f"what you read — OR state in one sentence why you "
|
|
1181
|
-
f"cannot proceed."
|
|
1183
|
+
f"cannot proceed. Do NOT call {_tool_name_str} again."
|
|
1182
1184
|
)
|
|
1183
1185
|
else:
|
|
1184
1186
|
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,77 @@
|
|
|
1
1
|
# Drydock Trip Log
|
|
2
2
|
|
|
3
|
+
## 2026-05-09 23:30 UTC tick
|
|
4
|
+
- Stress: 1173/1658; PID 3875067 alive (27h runtime); progressing from 1130 in prior tick — ~43 steps/1.5h
|
|
5
|
+
- Write rate: ~31% (stable, unchanged across multiple ticks)
|
|
6
|
+
- 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
|
|
7
|
+
- vLLM 400s: 0; balancer PID 3944578 confirmed llm_balancer.py on :8001; forwarding to gemma4 verified
|
|
8
|
+
- GH issues: 0 open
|
|
9
|
+
- Dispatch queue: harness=83976, retrieval=74 (0 actionable, all within 7-day re-ingest window); retrieval-drain: 0 projects ingested
|
|
10
|
+
- 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
|
|
11
|
+
|
|
12
|
+
## 2026-05-09 22:05 UTC tick
|
|
13
|
+
- 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
|
|
14
|
+
- Write rate: ~45% (done vs skip+done since resume at 807)
|
|
15
|
+
- 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
|
|
16
|
+
- vLLM 400s: 0; balancer PID 3944578 on :8001 healthy; docker "unhealthy" known false alarm
|
|
17
|
+
- GH issues: 0 open
|
|
18
|
+
- Dispatch queue: harness=83795, retrieval=74, steering=0; retrieval-drain: 0 projects ingested (all within 7-day window)
|
|
19
|
+
- 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)
|
|
20
|
+
|
|
21
|
+
## 2026-05-09 21:32 UTC tick
|
|
22
|
+
- 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)
|
|
23
|
+
- Write rate: ~31% overall (stable)
|
|
24
|
+
- 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
|
|
25
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (confirmed llm_balancer.py); docker "unhealthy" is known false alarm (serving normally)
|
|
26
|
+
- GH issues: 0 open
|
|
27
|
+
- Dispatch queue: harness=83613, retrieval=74 (0 actionable, all within 7-day re-ingest window); retrieval-drain: 0 projects ingested
|
|
28
|
+
- 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
|
|
29
|
+
|
|
30
|
+
## 2026-05-09 21:10 UTC tick
|
|
31
|
+
- Stress: 1142/1658 (PID 3875067 alive, 25h runtime); done=142 skip=192 recycle=115 timeout=0
|
|
32
|
+
- Write rate: ~42% (done/(done+skip))
|
|
33
|
+
- 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)
|
|
34
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001; gemma4 docker "unhealthy" but API nominal
|
|
35
|
+
- GH issues: 0 open
|
|
36
|
+
- Dispatch queue: harness=83400, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
37
|
+
- 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
|
|
38
|
+
|
|
39
|
+
## 2026-05-09 19:33 UTC tick
|
|
40
|
+
- 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
|
|
41
|
+
- Write rate: ~31% (consistent with prior ticks)
|
|
42
|
+
- 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
|
|
43
|
+
- vLLM 400s: 0; balancer PID healthy on :8001 serving gemma4; docker gemma4 serving normally
|
|
44
|
+
- GH issues: 0 open
|
|
45
|
+
- Dispatch queue: harness=82658, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
46
|
+
- 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
|
|
47
|
+
|
|
48
|
+
## 2026-05-09 19:00 UTC tick
|
|
49
|
+
- Stress: ~807/1658 (PID 3875067 alive, --resume-from-step 807); active sessions writing (96 msgs in latest session)
|
|
50
|
+
- Write rate: n/a (no stress log file found)
|
|
51
|
+
- 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
|
|
52
|
+
- vLLM 400s: 0; balancer PID 3944578 on :8001 healthy; gemma4 serving fine
|
|
53
|
+
- GH issues: 0 open
|
|
54
|
+
- Dispatch queue: harness=82077, retrieval=74 (0 actionable); steering=0
|
|
55
|
+
- 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.
|
|
56
|
+
|
|
57
|
+
## 2026-05-09 18:30 UTC tick
|
|
58
|
+
- 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
|
|
59
|
+
- Write rate: 62 writes / 303 msgs (~20%); 620 accepted / 675 prompts (91.8% accept rate)
|
|
60
|
+
- 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
|
|
61
|
+
- vLLM 400s: 0; balancer PID 3944578 on :8001 healthy (confirmed curl); gemma4 container shows "unhealthy" docker status but forwarding fine
|
|
62
|
+
- GH issues: 0 open
|
|
63
|
+
- Dispatch queue: harness=81751, retrieval=74 (0 actionable, all within 7-day window); steering=0
|
|
64
|
+
- Action this tick: no action — all top dispatch patterns addressed by v2.8.0-v2.8.7; retrieval drain: 0 projects ingested; system healthy
|
|
65
|
+
|
|
66
|
+
## 2026-05-09 17:00 UTC tick
|
|
67
|
+
- 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)
|
|
68
|
+
- Write rate: ~46% on accepted prompts (consistent with prior ticks)
|
|
69
|
+
- 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
|
|
70
|
+
- vLLM 400s: 0; balancer PID 3944578 on :8001 healthy; gemma4 container up, 0 JSONDecodeErrors
|
|
71
|
+
- GH issues: 0 open
|
|
72
|
+
- Dispatch queue: harness=81063, retrieval=74 (0 actionable); retrieval-drain: 0 projects ingested (all 74 within 7-day window)
|
|
73
|
+
- 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
|
|
74
|
+
|
|
3
75
|
## 2026-05-09 16:35 UTC tick
|
|
4
76
|
- 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
77
|
- 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 +3905,39 @@ restarted, cron self-match bug fixed in this same session).
|
|
|
3833
3905
|
- Dispatch queue: harness=77713, retrieval=74 (0 actionable, all within 7-day window)
|
|
3834
3906
|
- retrieval-drain: 0 projects ingested (all 74 already ingested)
|
|
3835
3907
|
- 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
|
|
3908
|
+
|
|
3909
|
+
## 2026-05-09 17:45 UTC tick
|
|
3910
|
+
- 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
|
|
3911
|
+
- Write rate: ~31% overall; step 1101 (Doc: tutorial for Z) completed with 19 msgs, 0 writes — consistent with doc-heavy segment of prompts
|
|
3912
|
+
- 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)
|
|
3913
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (gemma4 only, romulus still paused); no JSONDecodeErrors in docker logs
|
|
3914
|
+
- GH issues: 0 open
|
|
3915
|
+
- Dispatch queue: harness=81410, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
3916
|
+
- 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
|
|
3917
|
+
|
|
3918
|
+
## 2026-05-09 19:10 UTC tick
|
|
3919
|
+
- Stress: 807/1658 (PID 3875067, tool_agent suite)
|
|
3920
|
+
- Write rate: N/A (progress tracking not exposed in log)
|
|
3921
|
+
- 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)
|
|
3922
|
+
- vLLM 400s: 0; balancer healthy on :8001 (PID 3944578); vLLM docker "unhealthy" status but serving normally
|
|
3923
|
+
- GH issues: 0 open
|
|
3924
|
+
- Dispatch queue: harness=82375, retrieval=74 (0 actionable); retrieval-drain: 0 projects ingested
|
|
3925
|
+
- 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
|
|
3926
|
+
|
|
3927
|
+
## 2026-05-09 21:00 UTC tick
|
|
3928
|
+
- 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
|
|
3929
|
+
- Write rate: ~31% overall (unchanged)
|
|
3930
|
+
- 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
|
|
3931
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001; docker "unhealthy" is known false alarm (serving normally); no JSONDecodeErrors
|
|
3932
|
+
- GH issues: 0 open
|
|
3933
|
+
- Dispatch queue: harness=82923, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
|
|
3934
|
+
- 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
|
|
3935
|
+
|
|
3936
|
+
## 2026-05-09 22:30 UTC tick
|
|
3937
|
+
- 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)
|
|
3938
|
+
- Write rate: ~31% (stable)
|
|
3939
|
+
- Admiral last 30 min: harness:thinking_stall (159), harness:grep:unescaped_pattern (56), harness:loop:bash_generic (24), harness:tool:hallucinated_name (6)
|
|
3940
|
+
- vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (confirmed legit llm_balancer.py); docker CLI unavailable (known)
|
|
3941
|
+
- GH issues: 0 open
|
|
3942
|
+
- Dispatch queue: harness=83168, retrieval=74 (0 actionable); retrieval-drain: 0 projects ingested (74 entries all within 7-day re-ingest window)
|
|
3943
|
+
- 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
|
|
@@ -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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/plan_offer/adapters/http_whoami_gateway.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/notifications/adapters/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/notifications/ports/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/chat_input/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/chat_input/container.py
RENAMED
|
File without changes
|
{drydock_cli-2.8.8 → drydock_cli-2.8.9}/drydock/cli/textual_ui/widgets/chat_input/text_area.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|