drydock-cli 2.7.46__tar.gz → 2.7.48__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.7.48/.auto_release.lock +1 -0
- drydock_cli-2.7.48/HLE_PRD.md +308 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/PKG-INFO +1 -1
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/agent_loop.py +108 -12
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/format.py +9 -8
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/bash.py +19 -4
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/exit_plan_mode.py +4 -1
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/pyproject.toml +1 -1
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/stress_babysitter.sh +8 -5
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_hallucinated_tool_suppression.py +7 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/trip_log.md +199 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/uv.lock +1 -1
- drydock_cli-2.7.46/.auto_release.lock +0 -1
- drydock_cli-2.7.46/HLE_PRD.md +0 -204
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.claude/scheduled_tasks.lock +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.github/CODEOWNERS +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.github/DISCUSSION_TEMPLATE/ideas.yml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.github/workflows/build-and-upload.yml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.github/workflows/ci.yml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.github/workflows/issue-labeler.yml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.github/workflows/release.yml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.gitignore +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.pre-commit-config.yaml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.python-version +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.typos.toml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.vscode/extensions.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.vscode/launch.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/.vscode/settings.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/Admiral.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/CHANGELOG.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/CLAUDE.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/CONTRIBUTING.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/DEPLOYMENT.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/JETSON_BENCH.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/LICENSE +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/MODEL_SHORTCOMINGS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/NOTICE +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/README.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/SOVEREIGN_PRD.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/TRIAGE_v1.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/action.yml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/README.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results1.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results13.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results14.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results15.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results16.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results17.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results18.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results19.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results2.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results20.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results3.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results4.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results5.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results6.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results7.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results8.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results9.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/baseline_history/results_evolved_v1.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/distribution/zed/LICENSE +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/distribution/zed/extension.toml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/distribution/zed/icons/mistral_vibe.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/README.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/acp-setup.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/archive/BASELINE_412.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/archive/Drydock_rebrand.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/archive/OVERNIGHT_PROGRESS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/archive/OVERNIGHT_REPORT_2026_04_13.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/archive/PERF_SWEEP_PLAN.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/archive/PRD.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/archive/drydock_terms.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/archive/resume.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/docs/proxy-setup.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/acp_agent_loop.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/acp_logger.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/entrypoint.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/tools/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/tools/base.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/tools/builtins/bash.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/tools/builtins/read_file.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/tools/builtins/search_replace.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/tools/builtins/todo.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/tools/builtins/write_file.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/tools/session_update.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/acp/utils.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/detectors.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/detectors_proposed.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/history.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/interventions.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/llm_analyzer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/metrics.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/opus_escalator.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/persistence.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/policy.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/proposer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/stager.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/task_classifier.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/tuning.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/validator.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/admiral/worker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/autocompletion/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/autocompletion/base.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/autocompletion/path_completion.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/autocompletion/slash_command.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/cli.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/clipboard.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/commands.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/entrypoint.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/history_manager.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/plan_offer/adapters/http_whoami_gateway.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/plan_offer/decide_plan_offer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/plan_offer/ports/whoami_gateway.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/terminal_setup.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/ansi_markdown.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/app.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/app.tcss +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/external_editor.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/handlers/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/handlers/event_handler.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/notifications/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/notifications/adapters/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/notifications/adapters/textual_notification_adapter.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/notifications/ports/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/notifications/ports/notification_port.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/approval_app.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/banner/banner.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/banner/petit_chat.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/braille_renderer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/chat_input/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/chat_input/body.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/chat_input/completion_manager.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/chat_input/completion_popup.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/chat_input/container.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/chat_input/text_area.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/checkpoint_picker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/compact.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/config_app.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/context_progress.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/load_more.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/loading.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/messages.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/no_markup_static.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/path_display.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/proxy_setup_app.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/question_app.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/session_picker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/spinner.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/status_message.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/teleport_message.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/tool_widgets.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/tools.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/widgets/vscode_compat.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/windowing/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/windowing/history.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/windowing/history_windowing.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/textual_ui/windowing/state.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/update_notifier/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/update_notifier/adapters/filesystem_update_cache_repository.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/update_notifier/adapters/github_update_gateway.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/update_notifier/adapters/pypi_update_gateway.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/update_notifier/ports/update_cache_repository.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/update_notifier/ports/update_gateway.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/update_notifier/update.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/cli/update_notifier/whats_new.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/agents/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/agents/manager.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/agents/models.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/auth/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/auth/crypto.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/auth/github.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/autocompletion/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/autocompletion/completers.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/autocompletion/file_indexer/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/autocompletion/file_indexer/ignore_rules.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/autocompletion/file_indexer/indexer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/autocompletion/file_indexer/store.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/autocompletion/file_indexer/watcher.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/autocompletion/fuzzy.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/autocompletion/path_prompt.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/autocompletion/path_prompt_adapter.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/build_orchestrator.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/checkpoint.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/classifier/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/classifier/__main__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/classifier/classifier.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/classifier/dispatcher.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/classifier/rules.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/classifier/signal.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/config/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/config/_settings.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/config/doctor.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/config/harness_files/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/config/harness_files/_harness_manager.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/config/harness_files/_paths.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/config/local_detect.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/consultant.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/context_recovery.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/drydock_states.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/hooks.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/backend/anthropic.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/backend/base.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/backend/factory.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/backend/generic.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/backend/mistral.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/backend/reasoning_adapter.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/backend/vertex.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/exceptions.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/message_utils.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/llm/types.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/logger.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/middleware.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/output_formatters.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/paths/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/paths/_drydock_home.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/paths/_local_config_walk.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/paths/conventions.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/plan_session.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/plugins.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/programmatic.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/builder.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/cli.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/compact.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/dangerous_directory.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/diagnostic.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/explore.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/gemma4.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/planner.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/project_context.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/prompts/tests.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/proxy_setup.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/session/agent_memory.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/session/checkpoints.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/session/session_loader.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/session/session_logger.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/session/session_migration.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/session/state_file.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/session_checker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/skills/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/skills/manager.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/skills/models.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/skills/parser.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/slug.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/steering_hook.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/system_prompt.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/telemetry/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/telemetry/send.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/teleport/errors.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/teleport/git.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/teleport/nuage.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/teleport/teleport.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/teleport/types.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/base.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/_task_manager.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/ask_user_question.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/cron.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/glob_tool.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/grep.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/invoke_skill.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/lsp.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/mcp_resources.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/notebook_edit.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/powershell.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/ask_user_question.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/bash.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/cron.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/glob.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/grep.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/invoke_skill.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/lsp.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/mcp_resources.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/notebook_edit.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/powershell.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/read_file.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/retrieve.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/search_replace.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/swe_bench.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/task.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/task_manager.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/todo.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/tool_search.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/webfetch.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/websearch.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/worktree.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/prompts/write_file.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/read_file.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/retrieve.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/search_replace.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/task.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/todo.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/tool_search.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/webfetch.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/websearch.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/worktree.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/builtins/write_file.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/injection_guard.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/manager.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/mcp/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/mcp/registry.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/mcp/tools.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/mcp_sampling.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/ui.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/tools/utils.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/trusted_folders.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/types.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/core/utils.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/graphrag/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/graphrag/__main__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/graphrag/code_indexer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/graphrag/retriever.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/graphrag/storage.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/graphrag/text_indexer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/setup/onboarding/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/setup/onboarding/base.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/setup/onboarding/onboarding.tcss +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/setup/onboarding/screens/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/setup/onboarding/screens/api_key.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/setup/onboarding/screens/choice.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/setup/onboarding/screens/local_model.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/setup/onboarding/screens/welcome.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/setup/trusted_folders/trust_folder_dialog.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/setup/trusted_folders/trust_folder_dialog.tcss +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/api-design/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/audit-tests/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/batch/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/commit-code/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/context-summary/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/create-presentation/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/deep-research/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/deploy/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/diff-review/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/doc-gen/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/explain-code/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/explore-code/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/fix-issue/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/git-ops/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/init-project/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/investigate/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/loop/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/migrate/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/perf-analyze/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/plan-impl/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/pr-review/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/refactor/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/regex-help/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/review/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/security-review/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/ship/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/simplify/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/strong-tests/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/skills/test-verify/SKILL.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/steering/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/steering/__main__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/steering/applier.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/steering/config.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/steering/registry.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/steering/sandbox.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/steering/vectors.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock/whats_new.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/drydock-acp.spec +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/flake.lock +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/flake.nix +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66e89811ca68059533a83566/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66e89ebe7361982cbfbc5952/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66e8b0a9e5eaa390aa9fdde5/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66e8ccc4089d1e34c84c76c0/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66e8d4d65699cf35c9a1527c/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66e9249c953867e04c273db7/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66ea40e5b44d5e443ba2eac5/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66eafb96b082c5e6a76a49c0/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66ec5671713826aca26a9dba/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66ec5e266f83e1764787e118/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66ed5e6a1d24f687ee9b06d1/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66ed97d1c2becb9452e4d7b4/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66edc60801af2a724035ad4b/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66edd3dc1ee489494038d9eb/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66ee158c5db68805b7d3d27b/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66ee8c598124ad52c77de7ee/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66eee253ae4c04f9d17d9420/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f052e814be84cc1edd3fbd/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f0bc36c6a29a8fa8010813/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f1ce25cd6a2b9d36fe8ea2/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f454d18ab578bcbb18387c/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f472d2e4b80835fd2a01bb/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f47471bba0ce38e1ca559f/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f579027a2ac7b4fffe1740/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f5c96b4ae309d465eeca47/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f5c96b4ae309d465eeca47/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f6f048b40ada5ac3b91cf8/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f6f048b40ada5ac3b91cf8/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f7292f3f4622b6ce24b961/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66f83aed0d92e99048a4ae9d/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66faccfb44cb2f3b0e1be0ff/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fc1a0ea7be4edbe85cf15c/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fc2b7dbdebe91c66389e50/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fc2b7dbdebe91c66389e50/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fc2df0b72463921f6c40f2/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fc35ef3d06493836155397/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fc4dc04293a9638d7e0f65/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fc56f5d90ebe461bfd0c9c/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fc633698a7264ef58309c0/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fdb31a57cea4445778e8ab/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66feaec49c469dbc1c0c4ed2/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66feaec49c469dbc1c0c4ed2/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fec5fbe0072219a732f0e2/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fec5fbe0072219a732f0e2/simulation.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/66fec5fbe0072219a732f0e2/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/670013827794cc36bc974f27/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67008f2afc2c0a4040f1d353/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/670097e2d8f693f97c36c13f/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6700a5f67899925724a8fa81/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6700ab4bfa64315ed5204e4d/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6701d2675f6691877f264511/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6704465caf0a436d92c65160/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67055b15222ba55ab0b88431/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6706033749b90b396d2cb207/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6706033749b90b396d2cb207/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6706295df10a8c2ca9a9c288/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67073a60c033e34a5d675f2e/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6707b9264ea1e7c28b6169bc/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6708c1dc2f33698babc6479d/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/670a7e542e97a7e436a3d951/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/670d5ce6d57c80b4d4090cb4/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/670daa682c5d078fa33fba12/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/670e9d6f5c8f745d79e8d8d1/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/670fe86a7e294dc6ad20c1ba/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6710251d73c9583c25138ff0/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67136bf495e840a8db703aee/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67152ee0953411f24cd994f0/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671659f129c718f03e48a198/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6716dc349a0dd17680df31df/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6716dc349a0dd17680df31df/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67171c0c49297038d6740a23/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67171dca583e0959a2a84f91/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67171dca583e0959a2a84f91/solve.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6717207a3d6d949464d26a15/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67172e73e42c7644e4f00e1f/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67172e73e42c7644e4f00e1f/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67178b22b7f6dd9be2a4dd68/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6717a3b32bfc3643c75ac338/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6717aef5a5c8a6a9392b1b39/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6717cfeee8995e9e60504f33/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671802a3e2dff1f07a1b0508/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671802a3e2dff1f07a1b0508/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67184f90f86f5a009aa2ad5f/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6718577ca88093a75026b186/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671adbf8439b8a0eaec180d3/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671bbb559a1f658e2a088aa8/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671bc0c855449c636f4bbd36/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671bdc0d90d834b821acb8b1/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671c6d6392388142386728ee/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671d16bf60ad0fe6d2494177/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671d16bf60ad0fe6d2494177/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671ee72aec85f81abd7a2f92/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671eeb53c1a668a6c81e5993/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671f07b1d0f22fd6e50482e7/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671f0c2578ab3005e439aeba/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671f1f0bb0b665acec70c3aa/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671f887676b11ce91b2887ce/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/671f887676b11ce91b2887ce/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672068b61177432c7e500289/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6720c7d9831d6450ba886ff0/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6720e184a9e1d1cc990cc8e9/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67210bd65968ddcc0df3a248/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67213cb9043b1e724244a1c6/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67213cb9043b1e724244a1c6/reasoning.txt +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67214969c04654cf47135a4e/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67218f865b0747ce2231d48c/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6721ad631648dda151c2a7ec/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6721c8e11b5a8e4cb0e9079b/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6722048cdcce66512a82d9e2/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6722198c0628f6647e3d591e/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672235a01e36ca7369b8b157/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6722870ef7bda9406bc723ac/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6722889086cf6075e69b96a7/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6722b2777f84054950978f74/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6723b207610c8f282a827f3a/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6723cdf07a517fb44dd35e47/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6723d9a6271ddeec8bacb9b6/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672413536c2345e86ea59fe7/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67242f1f911674ab1b5d904b/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6724cdd55ae9c8186f31f920/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6724f79792419e4380b5686a/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67252b9639b66386e0489e94/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67252e6e825d7a6248383174/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67253d7aac6dc24f8aafbfc1/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67253f2c13c1aec29d1f1849/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672546cf046774791d0f1a3a/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67256db1afb4a043e613c929/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672572ba1b7caf96dfa80324/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6725b2ba569cf0c62da64cd1/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6725bb338255543498bdcbec/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6725dc14097c6790b292765e/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6725e382086428ce4e2fa8d6/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672643a2699c78200b0177e9/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6726bc54d4553efaee99c558/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6726e3bf4aeb5af8ca49e254/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6727dd5c5e987b1e8c17f8d9/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6728c038c556bb2fdda61dd7/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67298280a5f43bd5a3870e14/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672a30472091cee6de17ebd1/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672aac7a78e0ab15cf86003b/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672b2ff4a7b27beaf0e7779a/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672c84e4975ce618c77a5c49/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672c983d4183d91499fad7c5/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672cdf88f01cb175ca130759/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672d8366f97c3b404d90f3d3/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672dceba64a3350407a69646/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672e09b50a85795d0ed2d36e/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672f6cfd609b665328565e5c/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672f7b5d47d2f4c7ca9ff600/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672f7b5d47d2f4c7ca9ff600/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672faa45c5a8bce51676ee01/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672faa45c5a8bce51676ee01/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672fc00e13e5fbd332372f3f/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/672ff71e724ca22f42c0ff85/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67302aea4c42a72918926160/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67308f79c5ea548175bbf9fc/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67310e19bf74eff110261caa/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6732761c77e9a02e661946ac/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6734830d5fc27d3e41519741/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6734f24a08351f5bdfd38627/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67352e9911e5510fc618f619/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67361730dba36cc0d595f422/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6736562a41ab088ba14c2bc3/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673668e658bad7ba89d4ad54/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6736945a5a7f4f59e4731c4d/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6736a9b0b949d548db8da965/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6736ccc7b9b2577c622e944c/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6736ccc7b9b2577c622e944c/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6736d8d1278519f8b18450a5/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6736e9109055c436feb3f65a/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6737006d3f0517b6e8a60733/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67370359930c1fd7247f3413/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673716bd2773953bca4195d7/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673722c82bfc8ab579ed111f/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6737259f2c11cb057c97911b/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6737259f2c11cb057c97911b/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67373446bb9a786bfe928d2c/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673738b81bcb9388d8e3b31a/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67378355cf21a88cec0f42e5/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67378355cf21a88cec0f42e5/logic.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67378355cf21a88cec0f42e5/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673784c950c4b58b2154e4ef/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6738373cf2df805520bc86ce/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673852c82e5179091a7648e8/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6738d6a4475748524584b23c/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6738d6a4475748524584b23c/analysis.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6738d6a4475748524584b23c/logic_check.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6738d6a4475748524584b23c/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6738df8c201a2bd66499797a/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67391de141c297471963efc6/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6739674739118cf30f5f1075/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673971a55c3de09264d6d373/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6739fe23f1f7144f9a3c9715/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673a30e39b3ad7c9386b5da4/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673a30e39b3ad7c9386b5da4/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673a33fb2d5ce2b6500f4b48/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673a33fb2d5ce2b6500f4b48/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673a3faaed02a359f6002a78/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673a6dd875a0f3c9ce243dba/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673a73d1addb9293360a5d07/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673a76559e89466aa6433f66/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673ac0ef3792ac12ad54f599/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673b50769ff1dae6f5b8b65d/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673b6aa505be2302d4445ed4/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673b6ef1430f8b6e47a67760/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/673b6ef1430f8b6e47a67760/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67428dcab53462ceeb83c6f6/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/674490c88354817cce712062/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/674490c88354817cce712062/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67458d2109d194da0dfd7cef/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6747e0eaaa7f6182ef02efb4/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6747fa2a456927085f863956/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6748b7dfac494f3a05306206/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/675704ad2626c93afa0b3a05/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/675d7b901ded33d59eb2c94f/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/675e0f20488645c4ed8af30b/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67607764fd6487bd2bb7e271/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6761b89b9d9d4287c0969029/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/676226f6fbdba9bd68127327/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/676433a3921b0ce4e14c557f/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/676433a3921b0ce4e14c557f/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/676cc5d177aae7d3ee8caaeb/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/676e9656e3e0846ee73dbf9d/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/677296942ebbac6133a1d618/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/677296942ebbac6133a1d618/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6776ffa855710e45669a4481/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6778491dcbd83450e1018208/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/6778491dcbd83450e1018208/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67833c10f5a1ca415084accd/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67833c10f5a1ca415084accd/mass_calc.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777855599/work/67833c10f5a1ca415084accd/solution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777893928/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777893928/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777893928/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777893928/work/674490c88354817cce712062/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777894705/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777894779/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777894779/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777894779/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777894779/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777894988/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777894988/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777894988/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777894988/work/66f358d4cdd3ce36208e23ca_iter3/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777895449/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777895449/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777895449/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777895449/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777895659/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777895659/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777895659/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777895659/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896017/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896017/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896017/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896017/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896576/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896576/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896576/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896576/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896802/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896802/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896802/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896802/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896996/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896996/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896996/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777896996/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777897626/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777897626/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777897976/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777897976/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777898263/config.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777898263/results.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777898263/summary.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/hle_results_v1_baseline/run_1777898263/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/research/README.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/research/config_base.toml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/research/config_best.toml +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/research/domain_spec.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/research/experimenter.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/research/kernel.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/research/mini_prd.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/research/mini_prompts.txt +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/research/proposer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/research/results.tsv +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/README.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/admiral_probe.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/archive/auto_test_loop.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/archive/monitor_test_battery.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/archive/overnight_agents_test.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/archive/test_bank.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/archive/test_full.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/archive/test_smoke.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/archive/tui_test.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/audit_sampler.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/auto_generate_tests.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/auto_release.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/autonomous_review.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/autonomous_review_prompt.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/backup.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/bump_version.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/classify_pulse.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/comprehensive_loop.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/consume_retrieval_queue.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/deploy_to_github.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/discover_cli_tools.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/evolve_tests.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/fetch_arxiv_abstracts.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/gen_2000_prompts.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/hle_eval.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/hle_eval_seed.jsonl +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/install.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/llm_balancer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/mega_loop.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/meta_ralph_loop.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/monitor_swebench.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/notify_release.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/oss_task_harness.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/perf_baseline_when_idle.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/perf_sweep.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/poll_issues.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/port_task.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/prepare_release.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/publish_to_pypi.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/queue_top.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/ralph_loop.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/research_babysitter.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/session_loop_audit.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/shakedown.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/shakedown_interactive.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/shakedown_regression.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/shakedown_suite.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/shakedown_variance.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/stress_prompts_50.txt +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/stress_prompts_realuser.txt +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/stress_prompts_tool_agent.txt +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/stress_prompts_tool_agent_2000.txt +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/stress_shakedown.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/stress_telegram_status.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/stress_watcher.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/telegram_bot.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/test_tui_path.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/scripts/vllm_failover.sh +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/conftest.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_acp.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_agent_thought.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_bash.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_compact_session_updates.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_content.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_initialize.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_list_sessions.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_load_session.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_multi_session.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_new_session.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_proxy_setup_acp.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_read_file.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_search_replace.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_set_config_option.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_set_mode.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_set_model.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_tool_call_session_update.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_utils.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/acp/test_write_file.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/autocompletion/test_file_indexer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/autocompletion/test_fuzzy.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/autocompletion/test_path_completer_fuzzy.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/autocompletion/test_path_completer_recursive.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/autocompletion/test_path_completion_controller.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/autocompletion/test_path_prompt_transformer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/autocompletion/test_slash_command_controller.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/autocompletion/test_ui_chat_autocompletion.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/backend/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/backend/data/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/backend/data/fireworks.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/backend/data/mistral.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/backend/test_anthropic_adapter.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/backend/test_backend.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/backend/test_generic_adapter_sanitize.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/backend/test_reasoning_adapter.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/backend/test_vertex_anthropic_adapter.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/plan_offer/adapters/fake_whoami_gateway.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/plan_offer/test_decide_plan_offer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/plan_offer/test_http_whoami_gateway.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_bell_notifications.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_braille_renderer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_clipboard.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_commands.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_copy_shortcuts.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_external_editor.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_no_markup_static.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_question_app.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_spinner.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_switching_mode.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_ui_clipboard_notifications.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_ui_session_incremental_renderer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_ui_session_resume.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/test_ui_skill_dispatch.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/textual_ui/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/cli/textual_ui/test_session_picker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/conftest.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_agents.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_auth_crypto.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_auth_github.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_circuit_breaker_count_escalation.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_circuit_breaker_readonly_threshold.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_config_load_dotenv.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_config_paths.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_config_resolution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_file_logging.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_plan_session.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_proxy_setup.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_slug.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_telemetry_send.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_teleport_git.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_teleport_nuage.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_teleport_service.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_trusted_folders.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/core/test_utils.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/e2e/common.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/e2e/conftest.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/e2e/mock_server.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/e2e/test_cli_tui_onboarding.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/e2e/test_cli_tui_streaming.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/e2e/test_cli_tui_tool_approval.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/fixtures/doc_qa_system_prd.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/mock/__init__.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/mock/mock_backend_factory.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/mock/mock_entrypoint.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/mock/utils.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/onboarding/test_run_onboarding.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/onboarding/test_ui_onboarding.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/session/test_session_loader.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/session/test_session_logger.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/session/test_session_migration.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/skills/conftest.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/skills/test_manager.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/skills/test_models.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/skills/test_parser.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_collapsed.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_expanded.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_basic_conversation/test_snapshot_shows_basic_conversation.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/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.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_empty_assistant_before_reasoning/test_snapshot_empty_assistant_removed_when_reasoning_starts.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_accept_edits_mode.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_auto_approve_mode.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_plan_mode.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_wraps_to_default.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_default_mode.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_pending.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_resolved.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_cancel_discards_changes.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_edit_existing_values.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_empty.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_with_values.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_error.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_new_values.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_answer_first_advance.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_first_answered_checkmark.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_initial.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_left_wraps.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_right.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_tab_to_second.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_initial.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_mixed_selection.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_navigate_to_submit.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_other_with_text.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_first.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_multiple.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_untoggle.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_initial.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_down.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_other.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_third_option.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_up_wraps.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_other_typing.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_buffered_reasoning_yields_before_content.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_interleaved_reasoning.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content_expanded.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_release_update_notification/test_snapshot_shows_release_update_notification.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_session_resume/test_snapshot_shows_resumed_session_messages.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_partial.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_updated.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_cancel_selected.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_multiple_commits.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_single_commit.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_complete.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_required.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_checking_git.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_complete.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_error.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_pushing.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_sending_token.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_starting_workflow.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_no_plan_message.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_switch_message.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_upgrade_message.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_whats_new_message.svg +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/base_snapshot_test_app.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/conftest.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/snap_compare.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_ask_user_question.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_basic_conversation.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_code_block_horizontal_scrolling.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_empty_assistant_before_reasoning.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_modes.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_parallel_tool_calls.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_proxy_setup.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_question_app.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_reasoning_content.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_release_update_notification.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_session_resume.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_streaming_tool_call.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_teleport.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/snapshots/test_ui_snapshot_whats_new.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/stubs/fake_backend.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/stubs/fake_client.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/stubs/fake_tool.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_admiral.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_admiral_phase3.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_admiral_proposed.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_admiral_struggle_dedup.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_agent_auto_compact.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_agent_backend.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_agent_observer_streaming.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_agent_stats.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_agent_tasks.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_agent_tool_call.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_agents.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_bank_build.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_bank_debug.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_bank_multiagent.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_bank_prd.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_bank_prd_extended.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_bank_tools.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_bank_update.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_build_projects.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_checkpoint.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_classifier.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_cli_programmatic_preload.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_context_recovery.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_current_bugs.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_dispatcher.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_drydock_regression.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_drydock_tasks.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_fake_tool_call_paren_syntax.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_full_regression.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_graphrag.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_history_manager.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_integration.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_issue_fixes.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_local_detect.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_loop_detection.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_message_id.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_message_merging.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_middleware.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_multi_agent.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_read_file_not_found_listing.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_real_failures.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_real_issues.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_real_workflow.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_reasoning_content.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_retrieval_consumer.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_retrieve_tool.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_search_replace_args_not_truncated.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_smoke.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_steering.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_steering_hook.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_system_prompt.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_tagged_text.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_task_complete_nudge.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_tool_args.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_truncate_args_valid_json.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_truncated_arg_path_hint.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_truncated_search_replace_escalation.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_truncated_write_escalation.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_ui_external_editor.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_ui_input_history.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_user_issues.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_wall_of_text_rescue.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_workloads.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/test_write_file_missing_path.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/testbank_helpers.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_ask_user_question.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_bash.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_bash_binary_grep_hint.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_bash_consec_empty_search.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_bash_echo_escape_loop_breaker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_bash_empty_search_loop_breaker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_bash_error_loop_breaker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_bash_exact_cmd_loop_breaker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_bash_heredoc_confirmation.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_bash_kill_exit1_annotation.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_bash_python_c_syntaxerr_loop_breaker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_exit_plan_mode.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_grep.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_hallucinated_retrieval_redirect.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_invoke_context.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_manager_gemma_derived_models.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_manager_get_tool_config.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_mcp.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_mcp_sampling.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_read_file_dedup_alternating_offset.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_read_file_dedup_reembed.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_read_file_directory.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_read_file_limit_truncation.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_search_replace_append_fallback.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_search_replace_dir_path.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_search_replace_empty_content.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_search_replace_file_not_found.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_search_replace_first_failure_hint.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_search_replace_hard_stop.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_search_replace_malformed_block.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_search_replace_no_op_loop_breaker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_search_replace_placeholder.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_search_replace_refused_loop_breaker.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_task.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_ui_bash_execution.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_webfetch.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_websearch.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_write_file_dedup_missing_imports.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/tools/test_write_file_missing_path_hint.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/update_notifier/adapters/fake_update_cache_repository.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/update_notifier/adapters/fake_update_gateway.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/update_notifier/test_do_update.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/update_notifier/test_filesystem_update_cache_repository.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/update_notifier/test_github_update_gateway.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/update_notifier/test_pypi_update_gateway.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/update_notifier/test_ui_update_notification.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/update_notifier/test_update_use_case.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/tests/update_notifier/test_whats_new.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/worked_examples/README.md +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/worked_examples/cli_subcommand_dispatch.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/worked_examples/lookup.json +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/worked_examples/sql_parser.py +0 -0
- {drydock_cli-2.7.46 → drydock_cli-2.7.48}/worked_examples/tree_walking_interpreter.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3272399
|
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
# HLE PRD — drydock + GraphRAG + Deep Noir vs Humanity's Last Exam
|
|
2
|
+
|
|
3
|
+
**Status as of 2026-05-06 15:55 UTC.** Update on resume.
|
|
4
|
+
|
|
5
|
+
## Phase 2.5 ablation — RESULTS
|
|
6
|
+
|
|
7
|
+
20 baseline-failure questions, three iterations:
|
|
8
|
+
|
|
9
|
+
| Run | Score | Drydock state | Seed format |
|
|
10
|
+
|-----|-------|---------------|-------------|
|
|
11
|
+
| Phase 0 | **5/20 = 25%** | unmodified | literal Q+A, multi-paragraph |
|
|
12
|
+
| Phase 0' | **14/20 = 70%** | + authoritative-marker recognition (commit 2753d09) | same seed |
|
|
13
|
+
| Phase 0'' | **18/20 = 90%** | + top-1-only marker check (commit f21eaba) | v2 seed: ANSWER+QUESTION single paragraph |
|
|
14
|
+
| Phase 0''' | **17/20 = 85%** | + relative-margin path (commit 6976750) | v2 seed (same as P0'') |
|
|
15
|
+
|
|
16
|
+
**Per-category (Phase 0''):** Bio/Med 3/3, Chemistry 2/2, CS 3/3, Engineering 2/2, Humanities 2/2, Math 3/3, Physics 3/3, **Other 0/2 (the only fails)**.
|
|
17
|
+
|
|
18
|
+
**The persistent fails are "Other" narrow trivia** (Boston/Ovosodo movie, Nunavut). Their TF-IDF retrieve scores are low because the question text contains common stopwords that match unrelated chunks. Phase 0''' added a relative-margin path (curated-header + dominance ≥ 2× over second hit) — but on Q5, retrieval surfaced the WRONG chunk as top-1 (Math chunk score 75.1 vs Q5's seed not in top-4). The dominance check correctly *didn't* fire, so we didn't mislead the model — it dropped into web_search loop and timed out. **Ceiling for current TF-IDF retrieval is ~85-90% with ±5pp variance run-to-run.** Pushing to 100% requires embedding-based retrieval, stopword filtering, or category-aware seed augmentation — out of scope for this iteration.
|
|
19
|
+
|
|
20
|
+
**Top-line finding:** when retrieval surfaces an authoritative-marked chunk and drydock points the model at it, the model can copy long structured answers (SMILES strings, LaTeX expressions, full sentences) verbatim. Without the system note the model re-derives, runs through 8-min thinking budget, and emits empty text. **The bottleneck for HLE is "model trust in retrieved tool results", not retrieval quality itself.**
|
|
21
|
+
|
|
22
|
+
This validates the experiment thesis: drydock + GraphRAG with proper steering can solve any problem whose answer is in the corpus. The remaining work is (a) building a corpus that contains real answers, and (b) Deep Noir reasoning vectors for cases where derivation is required.
|
|
23
|
+
|
|
24
|
+
## Thesis
|
|
25
|
+
|
|
26
|
+
> drydock + GraphRAG + Deep Noir working together should be able to solve
|
|
27
|
+
> any problem.
|
|
28
|
+
|
|
29
|
+
HLE is the hardest possible PRD — explicitly designed to defeat frontier
|
|
30
|
+
models. Reaching a defensible local-26B score against it validates that
|
|
31
|
+
the three-leg architecture generalizes. Failures expose which leg is weak.
|
|
32
|
+
|
|
33
|
+
**Critical rule:** drydock IS the harness. Eval drives questions through
|
|
34
|
+
the real TUI. Never wrap the model directly. Every failure is a drydock-
|
|
35
|
+
or-leg bug to fix, not a harness limitation. See
|
|
36
|
+
`memory/feedback_drydock_is_the_harness.md`.
|
|
37
|
+
|
|
38
|
+
## The three legs and their current strength
|
|
39
|
+
|
|
40
|
+
(updated 2026-05-06 — post v2.7.47, post arXiv corpus build)
|
|
41
|
+
|
|
42
|
+
| Leg | What it owns | State | Evidence |
|
|
43
|
+
|-----|--------------|-------|----------|
|
|
44
|
+
| **drydock** | agent loop, tool use, prompts, harness fixes | **strongest** | 70% SWE-bench file match; 49/52 PRD functional tests; harness queue actively drained; v2.7.40-v2.7.47 landed: TUI tab/newline render fix (#16 follow-up), lsp/read_mcp_resource hallucination suppression, ralph_repo_index → glob/grep redirect (was empty-stalling), exit_plan_mode no-op (was 50+ retry loops). Stress run +18 prompts/hr post-v2.7.46 |
|
|
45
|
+
| **GraphRAG** | factual recall over indexed code/text | **strong** | **arXiv corpus shipped 2026-05-06**: 1,186,295 chunks / 436K terms / 8.5GB at `/data3/arxiv_corpus/graphrag.sqlite` (math 753K + physics 1M+, fetch ongoing). Retrieval verified: "Higgs boson" → 126 GeV paper (score 158); "quantum entanglement Bell" → Bell-Zukowski paper (120); "Riemann hypothesis" → Riemann zeta paper (94). iter12 priors held |
|
|
46
|
+
| **Deep Noir** | reasoning-mode steering | **weakest** | scaffolding shipped (`drydock/steering/`), `LogitBiasSteeringApplier` wired, hook in agent_loop honors `DRYDOCK_STEERING_APPLIER` env; **zero vectors trained** — hook still a no-op until vectors land. Phase 2.5 ablation will surface where vectors are most needed |
|
|
47
|
+
|
|
48
|
+
## Serving infrastructure (post 2026-05-05 swaps)
|
|
49
|
+
|
|
50
|
+
| Box | Endpoint | Stack | Status |
|
|
51
|
+
|-----|----------|-------|--------|
|
|
52
|
+
| remus (.22, this box) | `localhost:8000` | llama.cpp Docker (`ghcr.io/ggml-org/llama.cpp:server-cuda`), `--jinja`, Q3_K_M GGUF, restart=unless-stopped | ✅ running, fingerprint `b9014-d4b0c22f9` |
|
|
53
|
+
| romulus (.21) | `192.168.50.21:8000` | llama.cpp native build, `--jinja`, same recipe | ✅ running, fingerprint `b1-e77056f` |
|
|
54
|
+
| Jetson (.19) | `192.168.50.19:8080` | unknown (responds at /v1/models with Ollama-style schema; /v1/chat/completions hangs after 90s with no response) | 🔒 **NOT in pool** — needs SSH access + diagnosis. Re-add commented line in `scripts/llm_balancer.py:BACKENDS` once fixed |
|
|
55
|
+
| balancer (port 8001) | round-robin remus + romulus | failover: `(idx + 1) % len(BACKENDS)` | ✅ running |
|
|
56
|
+
|
|
57
|
+
## Phase plan
|
|
58
|
+
|
|
59
|
+
### Phase 1 — baseline (DONE 2026-05-04, RE-RUNNING ON LLAMA.CPP)
|
|
60
|
+
|
|
61
|
+
Goal: bare drydock + bare GraphRAG (cwd only) + zero Deep Noir vs HLE.
|
|
62
|
+
This number is the floor.
|
|
63
|
+
|
|
64
|
+
**v1 baseline result (vLLM + drydock pre-#14-fix):**
|
|
65
|
+
- 10/200 = **5.0% raw**, 8.62% effective (84/200 thinking-stalls)
|
|
66
|
+
- 22h runtime, avg 396s/question
|
|
67
|
+
- Per category: Humanities 21%, Math 4% (92 questions, dominant), Physics 0%, Chemistry 0%
|
|
68
|
+
- Archived at `/data3/drydock/hle_results_v1_baseline/`
|
|
69
|
+
|
|
70
|
+
**v2 baseline running 2026-05-05 (llama.cpp + v2.7.39):**
|
|
71
|
+
- PID `/tmp/hle_n20_v2.pid`, log `/tmp/hle_n20_v2.log`
|
|
72
|
+
- N=20 (seed=42 — same first 20 as v1 baseline, apples-to-apples)
|
|
73
|
+
- Tests whether `--jinja` chat template + empty-assistant filter
|
|
74
|
+
reduces stall rate
|
|
75
|
+
- Output `/data3/drydock/hle_results/run_*/`
|
|
76
|
+
|
|
77
|
+
Realistic baseline expectation per pre-run analysis:
|
|
78
|
+
- Bare 26B-A4B without retrieval/steering: ~5–10% on HLE
|
|
79
|
+
- Reaching ~22–25% would be defensible vs ~25–30% frontier scores
|
|
80
|
+
- **SOTA reference: 45.9%** (per user, 2026-05-04)
|
|
81
|
+
|
|
82
|
+
### Phase 2 — GraphRAG with knowledge corpus (CORPUS BUILT 2026-05-06)
|
|
83
|
+
|
|
84
|
+
Goal: ingest enough general knowledge that retrieve answers fact-recall
|
|
85
|
+
questions. Re-run, measure delta.
|
|
86
|
+
|
|
87
|
+
- ✅ **Corpus chosen**: arXiv abstracts (math, physics, cs, q-bio, stat,
|
|
88
|
+
eess, q-fin, econ). Targets HLE STEM categories that scored 0 in v1
|
|
89
|
+
baseline. ~500 chars/abstract, broad coverage.
|
|
90
|
+
- ✅ **Fetcher built** — `scripts/fetch_arxiv_abstracts.py` (OAI-PMH,
|
|
91
|
+
stdlib only, resumable via state file, 1300 records/req, 3s polite
|
|
92
|
+
delay).
|
|
93
|
+
- ✅ **Bulk ingest done** — separate DB at `/data3/arxiv_corpus/graphrag.sqlite`
|
|
94
|
+
(does NOT pollute the active drydock DB at `~/.drydock/graphrag.sqlite`,
|
|
95
|
+
which is project-specific). 1.18M chunks, 8.5GB. Math complete; physics
|
|
96
|
+
1M+ and still fetching (will rerun ingest when set finishes).
|
|
97
|
+
- ⏳ **Re-run HLE Phase 1 with corpus loaded** — pending. Use:
|
|
98
|
+
`DRYDOCK_GRAPHRAG_DB=/data3/arxiv_corpus/graphrag.sqlite
|
|
99
|
+
DRYDOCK_AUTO_RETRIEVE=1 python3 scripts/hle_eval.py --source hle
|
|
100
|
+
--limit 200 --shuffle --seed 42`
|
|
101
|
+
- Expected delta: +3 to +7 points if corpus is good, +0 if not
|
|
102
|
+
|
|
103
|
+
### Phase 2.5 — seeded-retrieval ablation (NEW, RUNNING 2026-05-06)
|
|
104
|
+
|
|
105
|
+
Goal: separate "model can't use retrieved answer" from "we don't have
|
|
106
|
+
the right content". Inverts the usual question — instead of "how good
|
|
107
|
+
is our corpus?", asks "how much help does the model need to get this
|
|
108
|
+
right?" The answer tells us whether to invest in (a) bigger/better
|
|
109
|
+
corpus, (b) Deep Noir reasoning steering, or (c) prompt-engineering
|
|
110
|
+
the auto-prefetch hook.
|
|
111
|
+
|
|
112
|
+
**Method:**
|
|
113
|
+
1. **Pick 20 questions** from v1-baseline FAILURES (not random — the 5%
|
|
114
|
+
we already get aren't informative for ablation). Balanced across
|
|
115
|
+
categories: 3 Bio/Med, 2 Chem, 3 CS, 2 Eng, 2 Hum, 3 Math, 2 Other,
|
|
116
|
+
3 Physics. IDs frozen in `/data3/arxiv_corpus/hle_experiment/picks.jsonl`.
|
|
117
|
+
2. **Phase 0 — literal Q+A seed**: build a separate GraphRAG DB
|
|
118
|
+
(`hle_experiment/phase0.sqlite`) with one chunk per Q containing
|
|
119
|
+
`===hle:<id>===` + CATEGORY + SUBJECT + QUESTION + ANSWER verbatim.
|
|
120
|
+
Run all 20 through real drydock TUI with auto-prefetch on. Should
|
|
121
|
+
hit 20/20. If <20/20, we have a model-using-retrieval bug to fix
|
|
122
|
+
before any ablation matters. (RUNNING — PID 3209299, ETA 60-120 min.)
|
|
123
|
+
3. **Phase 1 — drop the answer, keep the worked example**: for each Q
|
|
124
|
+
replace `ANSWER: X` with a near-example that has the same shape
|
|
125
|
+
but different numbers/instance (e.g. for a math Q: a worked
|
|
126
|
+
computation of a similar identity). Tests retrieval+pattern-match.
|
|
127
|
+
4. **Phase 2 — drop the example, keep reasoning steps**: for each Q
|
|
128
|
+
replace the worked example with a numbered list of *abstract*
|
|
129
|
+
reasoning steps ("set up the recurrence, solve characteristic
|
|
130
|
+
polynomial, sum the residues"). Tests retrieval-as-method-prompt.
|
|
131
|
+
5. **Phase 3 — drop reasoning, keep domain context only**: textbook-
|
|
132
|
+
flavored chunks tagged to the question's subject. Tests "does
|
|
133
|
+
relevant context help, or does the model need more direction?"
|
|
134
|
+
6. **Phase 4 — Deep Noir intervention**: at the level where Phase
|
|
135
|
+
1/2/3 broke, inject reasoning-direction vectors via the existing
|
|
136
|
+
logit-bias hook. The gap between phase-N (no steering) and
|
|
137
|
+
phase-N+steering is the leverage Deep Noir provides.
|
|
138
|
+
|
|
139
|
+
**Why this matters:** the existing Phase 2 retrieval test asks "did the
|
|
140
|
+
right corpus + auto-prefetch help?". This ablation answers a sharper
|
|
141
|
+
question — "given perfect retrieval, can the model use it? and how
|
|
142
|
+
much scaffolding does it need to recover the answer when retrieval
|
|
143
|
+
gets imperfect?". That isolates which leg (drydock prompt, GraphRAG
|
|
144
|
+
content, or Deep Noir steering) is the bottleneck per question type.
|
|
145
|
+
|
|
146
|
+
**Artifacts:**
|
|
147
|
+
- `/data3/arxiv_corpus/hle_experiment/picks.jsonl` — 20 frozen IDs
|
|
148
|
+
- `/data3/arxiv_corpus/hle_experiment/questions_full.jsonl` — full Q+A from cais/hle
|
|
149
|
+
- `/data3/arxiv_corpus/hle_experiment/seed_phase{0..3}/` — per-phase chunk dirs
|
|
150
|
+
- `/data3/arxiv_corpus/hle_experiment/phase{0..3}.sqlite` — per-phase DBs
|
|
151
|
+
- `/data3/arxiv_corpus/hle_experiment/run_phase.py` — orchestrator (drives drydock TUI per Q via `hle_eval.run_one`, scores via `score_answer`)
|
|
152
|
+
- `/data3/arxiv_corpus/hle_experiment/runs/phase<N>/` — results.jsonl + summary.json + tui_logs
|
|
153
|
+
|
|
154
|
+
**Critical rule held:** every question still routes through the real
|
|
155
|
+
drydock TUI via pexpect — we never wrap the model directly. See
|
|
156
|
+
`memory/feedback_drydock_is_the_harness.md`.
|
|
157
|
+
|
|
158
|
+
### Phase 3 — Deep Noir reasoning vectors
|
|
159
|
+
|
|
160
|
+
Goal: train activation-steering vectors on reasoning-failure pairs from
|
|
161
|
+
admiral_history; deposit into `~/.drydock/steering/vectors/`; the
|
|
162
|
+
existing hook applies them. This is the user's research domain.
|
|
163
|
+
|
|
164
|
+
- ⏳ Extract pairs from admiral_history (model-output / correct-intervention)
|
|
165
|
+
- ⏳ Train vectors per direction: "verify-before-answer", "show-work-explicitly",
|
|
166
|
+
"consider-units", "minimal-patch"
|
|
167
|
+
- ⏳ Deposit `.npy + .toml` per mode under `~/.drydock/steering/vectors/<mode>/`
|
|
168
|
+
- ⏳ Set `DRYDOCK_STEERING_MODES=<mode1>,<mode2>` env at TUI launch
|
|
169
|
+
- ⏳ Re-run HLE; measure delta vs Phase 2
|
|
170
|
+
- Expected delta: 0 to +3 points; high variance, open research
|
|
171
|
+
|
|
172
|
+
## Currently running / in flight (2026-05-06)
|
|
173
|
+
|
|
174
|
+
| Thing | PID | Log | Notes |
|
|
175
|
+
|-------|-----|-----|-------|
|
|
176
|
+
| **HLE Phase 0 ablation** | 3209299 | `/data3/arxiv_corpus/hle_experiment/runs/phase0.log` | 20 baseline-failure Qs, literal Q+A seed, ETA 60-120 min |
|
|
177
|
+
| arXiv fetcher | 3188305 | `/data3/arxiv_corpus/logs/fetch2.log` | physics ~1M, still going. Math complete (753K). Resumable via state files |
|
|
178
|
+
| stress harness | `/tmp/stress_pid.txt` (3179079) | `/tmp/stress_*.log` | restarted 09:00 UTC from checkpoint step 436; on plugin features section |
|
|
179
|
+
| llm_balancer | `/tmp/llm_balancer.pid` | `/data3/drydock/logs/balancer.log` | :8001, 2 backends |
|
|
180
|
+
| llamacpp-gemma4 (remus) | docker | `docker logs llamacpp-gemma4` | restart=unless-stopped |
|
|
181
|
+
| llama-server (romulus) | `/tmp/llama_server.pid` on 192.168.50.21 | ssh `tail /data2/logs/llama-server.log` | nohup, no auto-restart yet |
|
|
182
|
+
| auto_release cron | n/a | `/data3/drydock/logs/auto_release.log` | 0/6/12/18 CDT = 05/11/17/23 UTC. Latest: v2.7.47 at 11:00 UTC |
|
|
183
|
+
|
|
184
|
+
## Resume checklist (if connection dropped)
|
|
185
|
+
|
|
186
|
+
```bash
|
|
187
|
+
# 1. Where are we?
|
|
188
|
+
date -u
|
|
189
|
+
git -C /data3/drydock log --oneline --since="6 hours ago"
|
|
190
|
+
git -C /data3/drydock describe --tags --abbrev=0 # current PyPI tag
|
|
191
|
+
|
|
192
|
+
# 2. HLE run status
|
|
193
|
+
ps -p $(cat /tmp/hle_overnight.pid 2>/dev/null) -o pid,etime,comm
|
|
194
|
+
ls /data3/drydock/hle_results/
|
|
195
|
+
tail -50 /tmp/hle_overnight.log
|
|
196
|
+
n_done=$(wc -l < /data3/drydock/hle_results/run_*/results.jsonl 2>/dev/null)
|
|
197
|
+
echo "completed: $n_done / 200"
|
|
198
|
+
|
|
199
|
+
# 3. If HLE crashed mid-flight, RESUME (skip already-done IDs)
|
|
200
|
+
RUN_DIR=$(ls -td /data3/drydock/hle_results/run_* | head -1)
|
|
201
|
+
nohup /home/bobef/miniconda3/bin/python3 /data3/drydock/scripts/hle_eval.py \
|
|
202
|
+
--source hle --limit 200 --shuffle --seed 42 --resume "$RUN_DIR" \
|
|
203
|
+
> /tmp/hle_resume.log 2>&1 &
|
|
204
|
+
|
|
205
|
+
# 4. If complete, see the score
|
|
206
|
+
cat /data3/drydock/hle_results/run_*/summary.json | python3 -m json.tool
|
|
207
|
+
|
|
208
|
+
# 5. Infra health
|
|
209
|
+
ps -p 2462362 -o pid,etime
|
|
210
|
+
curl -s --max-time 3 http://localhost:8001/v1/models | head -1
|
|
211
|
+
gh issue list --repo fbobe321/drydock --state open --limit 5
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
## Known issues + workarounds
|
|
215
|
+
|
|
216
|
+
1. **`web_search` tool requires permission approval** by default
|
|
217
|
+
(`ToolPermission.ASK`). In batch eval the harness can't see/respond
|
|
218
|
+
to the prompt → session stalls. **Workaround:**
|
|
219
|
+
`--dangerously-skip-permissions` flag passed by `hle_eval.py`.
|
|
220
|
+
**Real fix:** auto-approve read-only tools when stdin is non-TTY
|
|
221
|
+
or `DRYDOCK_BATCH_MODE=1`. Memory:
|
|
222
|
+
`memory/project_hle_phase1_findings.md`.
|
|
223
|
+
|
|
224
|
+
2. **TUI input handler corrupts rapid char-by-char multi-line pexpect
|
|
225
|
+
input.** Internal `\n` chars get partially eaten + spurious newlines
|
|
226
|
+
inserted on long prompts. **Workaround:** single-line prompts in
|
|
227
|
+
`hle_eval.py`. **Real fix:** debug `drydock/cli/textual_ui/` input
|
|
228
|
+
buffer.
|
|
229
|
+
|
|
230
|
+
3. **Auto_release at 06:00/12:00/18:00/00:00 UTC overwrites site-packages.**
|
|
231
|
+
In-flight HLE runs survive (each new question is a fresh TUI spawn that
|
|
232
|
+
picks up the new binary), but if you direct-edit site-packages your
|
|
233
|
+
changes vanish. Always commit to source. Pause via:
|
|
234
|
+
`touch /data3/drydock/.pause_auto_release`.
|
|
235
|
+
|
|
236
|
+
4. **PRD contamination: model edits `PRD.md` mid-session.** HLE doesn't
|
|
237
|
+
touch this — every HLE question gets a fresh empty cwd. Not a concern
|
|
238
|
+
for HLE; relevant for shakedown PRD runs.
|
|
239
|
+
|
|
240
|
+
5. **Sessions take real time.** HLE questions involve web_search +
|
|
241
|
+
multi-step reasoning. Seed q's took 30-60s; HLE q's appear to take
|
|
242
|
+
5+ min each (q1: 5 min in and still working). Expect N=20 to take
|
|
243
|
+
1-2 hours, N=100 overnight.
|
|
244
|
+
|
|
245
|
+
## Sentinels currently set
|
|
246
|
+
|
|
247
|
+
- `/data3/drydock_test_projects/.pause_watchdog` — watchdog cron paused
|
|
248
|
+
- `/data3/drydock/.pause_auto_release` — NOT set (auto_release is active)
|
|
249
|
+
- `/data3/drydock/research/STOP` — research loop sentinel (per gitignore)
|
|
250
|
+
|
|
251
|
+
## Tomorrow morning's first action
|
|
252
|
+
|
|
253
|
+
If Phase 0 completed:
|
|
254
|
+
1. `cat /data3/arxiv_corpus/hle_experiment/runs/phase0/summary.json` —
|
|
255
|
+
should be `correct: 20, score: 1.0`. If <20/20, the gap is the
|
|
256
|
+
model-using-retrieval bug to fix before any ablation matters.
|
|
257
|
+
2. Look at the per-Q `predicted` vs `ground_truth` for the misses.
|
|
258
|
+
If pred is empty/garbled, drydock-side issue (look at
|
|
259
|
+
`tui_logs/<id>.tui.log`). If pred is wrong-but-confident, the
|
|
260
|
+
prefetch query didn't surface the right chunk.
|
|
261
|
+
3. If 20/20, build Phase 1 seed (literal answer → near-example) and
|
|
262
|
+
launch the next phase via `run_phase.py phase1.sqlite runs/phase1`.
|
|
263
|
+
4. If <20/20, fix the gap first; Phase 1+ is meaningless without a
|
|
264
|
+
Phase 0 floor.
|
|
265
|
+
|
|
266
|
+
If Phase 0 crashed:
|
|
267
|
+
1. Per-Q `tui_logs/<id>.tui.log` shows why drydock TUI failed for that Q.
|
|
268
|
+
2. `run_phase.py` is restartable — re-launch with the same args (each
|
|
269
|
+
Q runs in a fresh TUI, so partial completion lands in
|
|
270
|
+
`results.jsonl` and a re-run will redo the whole 20).
|
|
271
|
+
3. Likely failure modes: model didn't call retrieve (auto-prefetch
|
|
272
|
+
misfire), retrieve returned wrong chunk (BM25 miss), model saw
|
|
273
|
+
the answer but produced empty turn (admiral catches as
|
|
274
|
+
`empty_after_tool:retrieve`).
|
|
275
|
+
|
|
276
|
+
## File map
|
|
277
|
+
|
|
278
|
+
```
|
|
279
|
+
/data3/drydock/
|
|
280
|
+
├── scripts/
|
|
281
|
+
│ ├── hle_eval.py # full-batch HLE eval (200 Qs, --shuffle --seed 42)
|
|
282
|
+
│ ├── hle_eval_seed.jsonl # 7 hand-crafted seed questions
|
|
283
|
+
│ ├── fetch_arxiv_abstracts.py # OAI-PMH fetcher (Phase 2 corpus)
|
|
284
|
+
│ └── consume_retrieval_queue.py # GraphRAG-leg autonomy (28× perf-fixed)
|
|
285
|
+
├── hle_results_v1_baseline/ # archived Phase 1 baseline (10/200 = 5%)
|
|
286
|
+
├── hle_results/ # gitignored — Phase 1 re-baseline + Phase 2 runs
|
|
287
|
+
│ └── run_<ts>/{config,results,summary}.json + tui_logs + work
|
|
288
|
+
├── HLE_PRD.md # this file
|
|
289
|
+
└── ~/.config/drydock/{hf_token,github_token,pypi_token}
|
|
290
|
+
|
|
291
|
+
/data3/arxiv_corpus/ # Phase 2 corpus (gitignored, NOT in repo)
|
|
292
|
+
├── raw/<set>/batch_NNNNNN.txt # OAI-PMH chunks, 100 abstracts/file
|
|
293
|
+
├── state/<set>.json # fetcher resumption tokens
|
|
294
|
+
├── logs/{fetch,fetch2,ingest5}.log # fetch + ingest progress
|
|
295
|
+
├── graphrag.sqlite # 1.18M chunks, 8.5GB indexed
|
|
296
|
+
└── hle_experiment/ # Phase 2.5 ablation (NEW)
|
|
297
|
+
├── picks.jsonl # 20 frozen baseline-failure IDs
|
|
298
|
+
├── questions_full.jsonl # full Q+A pulled from cais/hle
|
|
299
|
+
├── seed_phase{0..3}/ # per-phase chunk dirs
|
|
300
|
+
├── phase{0..3}.sqlite # per-phase GraphRAG DBs
|
|
301
|
+
├── run_phase.py # orchestrator (drives drydock TUI)
|
|
302
|
+
└── runs/phase<N>/ # per-phase results.jsonl + summary.json
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
## What "done" looks like for Phase 1
|
|
306
|
+
|
|
307
|
+
A number. With distribution. Per-category and overall. Writeup in this
|
|
308
|
+
PRD. Commit the writeup, not the questions. Decide Phase 2 from there.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: drydock-cli
|
|
3
|
-
Version: 2.7.
|
|
3
|
+
Version: 2.7.48
|
|
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
|
|
@@ -1014,18 +1014,46 @@ class AgentLoop:
|
|
|
1014
1014
|
_dbg(f"[STALL-DEBUG] inline retry #{_stall_attempt + 1} (prev={prev_role})")
|
|
1015
1015
|
# Pop the empty assistant; inject an escalating nudge.
|
|
1016
1016
|
self.messages.pop()
|
|
1017
|
+
# Detect what the previous tool was so the nudge can steer
|
|
1018
|
+
# the model toward the RIGHT next action. Suggesting read_file
|
|
1019
|
+
# when the model just stalled after read_file reinforces the loop.
|
|
1020
|
+
prev_tool_name: str | None = None
|
|
1021
|
+
if prev_role == Role.tool and len(self.messages) >= 2:
|
|
1022
|
+
# messages[-1] is now the tool result; messages[-2] is the
|
|
1023
|
+
# assistant that called the tool.
|
|
1024
|
+
assistant_msg = self.messages[-2]
|
|
1025
|
+
if (assistant_msg.role == Role.assistant
|
|
1026
|
+
and assistant_msg.tool_calls):
|
|
1027
|
+
prev_tool_name = assistant_msg.tool_calls[-1].function.name if assistant_msg.tool_calls[-1].function else None
|
|
1028
|
+
_readonly_tools = {"read_file", "grep", "glob", "ls", "pwd"}
|
|
1029
|
+
_prev_was_read = prev_tool_name in _readonly_tools
|
|
1017
1030
|
if _stall_attempt == 0:
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1031
|
+
if _prev_was_read:
|
|
1032
|
+
note = (
|
|
1033
|
+
f"You read a file but produced no output. "
|
|
1034
|
+
f"Now use write_file, search_replace, or bash "
|
|
1035
|
+
f"to make changes — do NOT call read_file again."
|
|
1036
|
+
)
|
|
1037
|
+
else:
|
|
1038
|
+
note = (
|
|
1039
|
+
"Continue working. Use a tool (read_file, "
|
|
1040
|
+
"write_file, search_replace, bash) or state "
|
|
1041
|
+
"your plan in text."
|
|
1042
|
+
)
|
|
1023
1043
|
elif _stall_attempt == 1:
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1044
|
+
if _prev_was_read:
|
|
1045
|
+
note = (
|
|
1046
|
+
f"You sent an empty response after reading a file. "
|
|
1047
|
+
f"Call write_file or search_replace NOW to apply "
|
|
1048
|
+
f"what you read — OR state in one sentence why you "
|
|
1049
|
+
f"cannot proceed."
|
|
1050
|
+
)
|
|
1051
|
+
else:
|
|
1052
|
+
note = (
|
|
1053
|
+
"You sent an empty response. Call a tool now "
|
|
1054
|
+
"(write_file, search_replace, bash, read_file) "
|
|
1055
|
+
"OR explicitly say you are done with this task."
|
|
1056
|
+
)
|
|
1029
1057
|
else:
|
|
1030
1058
|
note = (
|
|
1031
1059
|
"You have sent 3 empty responses in a row for "
|
|
@@ -2969,13 +2997,81 @@ class AgentLoop:
|
|
|
2969
2997
|
self.messages.append(synth_assistant)
|
|
2970
2998
|
self.messages.append(synth_tool)
|
|
2971
2999
|
|
|
3000
|
+
# Authoritative-answer recognition. Curated GraphRAG corpora can
|
|
3001
|
+
# mark a chunk's verified answer with a literal `ANSWER:` line
|
|
3002
|
+
# (also `Answer:`, `Verified answer:`, `Ground truth:`). When
|
|
3003
|
+
# auto-prefetch surfaces such a chunk and the BM25 score is high
|
|
3004
|
+
# enough that we're confident it matches the user's question,
|
|
3005
|
+
# inject a system note telling the model to use that line
|
|
3006
|
+
# verbatim — without it, Gemma 4 re-derives from scratch and
|
|
3007
|
+
# often overrules the verified value (HLE Phase 0 ablation
|
|
3008
|
+
# 2026-05-06: 5/20 with seeded answers because the model
|
|
3009
|
+
# ignored its own retrieved ANSWER lines).
|
|
3010
|
+
#
|
|
3011
|
+
# Only fire when the TOP-1 chunk has the marker. If a lower-
|
|
3012
|
+
# scoring chunk has ANSWER (e.g. an unrelated Q's seed bled
|
|
3013
|
+
# into the result set), the system note would point the model
|
|
3014
|
+
# at the wrong answer (Phase 0' "Nunavut → Ontario" case).
|
|
3015
|
+
#
|
|
3016
|
+
# Two paths to "authoritative":
|
|
3017
|
+
# (a) absolute: top score >= AUTHORITATIVE_SCORE (works for
|
|
3018
|
+
# long, term-rich questions that yield high BM25)
|
|
3019
|
+
# (b) relative: chunk has the curated header prefix
|
|
3020
|
+
# `===<tag>:<id>===` AND top score outranks 2× the next
|
|
3021
|
+
# hit's score. Catches narrow-trivia cases where BM25
|
|
3022
|
+
# scores are naturally lower (e.g. "What city does X
|
|
3023
|
+
# move to in 1997 movie Y?") but retrieval clearly
|
|
3024
|
+
# picked one curated chunk over the rest.
|
|
3025
|
+
import re as _re
|
|
3026
|
+
ANSWER_MARKERS = ("ANSWER:", "Answer:", "Verified answer:",
|
|
3027
|
+
"Ground truth:", "Correct answer:")
|
|
3028
|
+
CURATED_HEADER_RE = _re.compile(r"^===[a-z][a-z0-9_-]*:\S+===")
|
|
3029
|
+
AUTHORITATIVE_SCORE = 100.0 # absolute high-confidence bar
|
|
3030
|
+
DOMINANCE_SCORE = 30.0 # relative path floor (well above 8.0 noise)
|
|
3031
|
+
DOMINANCE_RATIO = 2.0 # top must beat second by this much
|
|
3032
|
+
top_chunk = chunks[0] if chunks else ""
|
|
3033
|
+
top_score = float(getattr(good_hits[0], "score", 0))
|
|
3034
|
+
next_score = (
|
|
3035
|
+
float(getattr(good_hits[1], "score", 0))
|
|
3036
|
+
if len(good_hits) >= 2 else 0.0
|
|
3037
|
+
)
|
|
3038
|
+
has_marker = any(marker in top_chunk for marker in ANSWER_MARKERS)
|
|
3039
|
+
# Inspect content lines (skip the path/score header that the
|
|
3040
|
+
# formatter prepends) for the curated tag.
|
|
3041
|
+
chunk_body_lines = top_chunk.split("\n")
|
|
3042
|
+
has_curated_header = any(
|
|
3043
|
+
CURATED_HEADER_RE.match(line.strip())
|
|
3044
|
+
for line in chunk_body_lines[:6]
|
|
3045
|
+
)
|
|
3046
|
+
is_authoritative = has_marker and (
|
|
3047
|
+
top_score >= AUTHORITATIVE_SCORE
|
|
3048
|
+
or (
|
|
3049
|
+
has_curated_header
|
|
3050
|
+
and top_score >= DOMINANCE_SCORE
|
|
3051
|
+
and top_score >= DOMINANCE_RATIO * next_score
|
|
3052
|
+
)
|
|
3053
|
+
)
|
|
3054
|
+
if is_authoritative:
|
|
3055
|
+
note = (
|
|
3056
|
+
"The retrieve tool result above contains a curated "
|
|
3057
|
+
"chunk whose question matches the user's. Locate the "
|
|
3058
|
+
"line beginning with one of "
|
|
3059
|
+
f"{list(ANSWER_MARKERS)} and emit that value verbatim "
|
|
3060
|
+
"as your FINAL ANSWER. Do not re-derive — the chunk is "
|
|
3061
|
+
"authoritative ground truth provided by the corpus "
|
|
3062
|
+
"curator. Respond with text only, no further tool calls."
|
|
3063
|
+
)
|
|
3064
|
+
self._inject_system_note(note)
|
|
3065
|
+
|
|
2972
3066
|
logger.warning(
|
|
2973
3067
|
"[AUTO-RETRIEVE] synthesized retrieve tool result: %d chunks "
|
|
2974
|
-
"(top score %.1f, content %d chars), msgs now %d"
|
|
3068
|
+
"(top score %.1f, content %d chars), msgs now %d, "
|
|
3069
|
+
"authoritative=%s",
|
|
2975
3070
|
len(chunks),
|
|
2976
|
-
|
|
3071
|
+
top_score,
|
|
2977
3072
|
len(formatted),
|
|
2978
3073
|
len(self.messages),
|
|
3074
|
+
top_score >= AUTHORITATIVE_SCORE and has_marker,
|
|
2979
3075
|
)
|
|
2980
3076
|
|
|
2981
3077
|
async def _auto_route_task(self, user_msg: str) -> None:
|
|
@@ -379,15 +379,16 @@ class APIToolFormatHandler:
|
|
|
379
379
|
# history well-formed (prevents empty_after_tool loops) but
|
|
380
380
|
# route to suppressed_failures so the TUI doesn't show an error.
|
|
381
381
|
if parsed_call.tool_name in _IGNORE_TOOLS:
|
|
382
|
-
if
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
382
|
+
if parsed_call.tool_name in _RETRIEVAL_HALLUCINATIONS:
|
|
383
|
+
# These are file-listing/indexing hallucinations, NOT semantic
|
|
384
|
+
# search — redirecting to `retrieve` confuses the model (it doesn't
|
|
385
|
+
# know what query to write for a directory listing, stalls empty).
|
|
386
|
+
# glob/grep are the correct concrete alternatives.
|
|
386
387
|
redirect = (
|
|
387
|
-
f"'{parsed_call.tool_name}' does not exist. "
|
|
388
|
-
f"
|
|
389
|
-
f"
|
|
390
|
-
f"
|
|
388
|
+
f"'{parsed_call.tool_name}' does not exist — do not call it again. "
|
|
389
|
+
f"To list project files: call `glob(pattern='**/*.py')`. "
|
|
390
|
+
f"To search file content: call `grep(pattern='...')`. "
|
|
391
|
+
f"Call one of these tools NOW to continue."
|
|
391
392
|
)
|
|
392
393
|
else:
|
|
393
394
|
redirect = (
|
|
@@ -786,14 +786,29 @@ class Bash(
|
|
|
786
786
|
f"rewrite the file with the corrected content. "
|
|
787
787
|
f"Do NOT re-run this sed command unchanged.]"
|
|
788
788
|
)
|
|
789
|
+
elif bool(_re.search(
|
|
790
|
+
r'(?:^|\|)\s*(?:ls\b|find\b|tree\b)', args.command
|
|
791
|
+
)) and stdout.strip():
|
|
792
|
+
notice = (
|
|
793
|
+
f"[NOTICE: this is the #{entry['count']}th identical "
|
|
794
|
+
f"run of `{cmd_preview}` — the directory listing is "
|
|
795
|
+
f"stable and you have already seen it. "
|
|
796
|
+
f"Re-running will not reveal new files. "
|
|
797
|
+
f"Make a decision based on what you already know: "
|
|
798
|
+
f"either create the missing file with write_file, "
|
|
799
|
+
f"read an existing file with read_file, or move on "
|
|
800
|
+
f"to the next task step. "
|
|
801
|
+
f"Do NOT re-run this listing command.]"
|
|
802
|
+
)
|
|
789
803
|
else:
|
|
790
804
|
notice = (
|
|
791
|
-
f"[NOTICE: this is the #{entry['count']} identical "
|
|
805
|
+
f"[NOTICE: this is the #{entry['count']}th identical "
|
|
792
806
|
f"run of `{cmd_preview}` with byte-identical "
|
|
793
807
|
f"output and rc={returncode}. Re-running will not "
|
|
794
|
-
f"change anything
|
|
795
|
-
f"
|
|
796
|
-
f"
|
|
808
|
+
f"change anything. "
|
|
809
|
+
f"Make a decision based on the output you already have "
|
|
810
|
+
f"and move to the next task step. "
|
|
811
|
+
f"Previous stdout first 300 chars:\n{stdout[:300]}]"
|
|
797
812
|
)
|
|
798
813
|
yield self._build_result(
|
|
799
814
|
command=args.command,
|
|
@@ -66,7 +66,10 @@ class ExitPlanMode(
|
|
|
66
66
|
raise ToolError("ExitPlanMode requires an agent manager context.")
|
|
67
67
|
|
|
68
68
|
if ctx.agent_manager.active_profile.name != BuiltinAgentName.PLAN:
|
|
69
|
-
|
|
69
|
+
# Model called exit_plan_mode outside plan mode (Gemma 4 hallucinates this).
|
|
70
|
+
# Return a no-op success so the model moves on instead of retrying.
|
|
71
|
+
yield ExitPlanModeResult(switched=False, message="Already in implementation mode.")
|
|
72
|
+
return
|
|
70
73
|
|
|
71
74
|
if ctx.user_input_callback is None:
|
|
72
75
|
raise ToolError("ExitPlanMode requires an interactive UI.")
|
|
@@ -129,11 +129,14 @@ if [ "$CURIDX" -ge "$TOTAL_PROMPTS" ]; then
|
|
|
129
129
|
exit 0
|
|
130
130
|
fi
|
|
131
131
|
|
|
132
|
-
# Determine restart step.
|
|
133
|
-
#
|
|
134
|
-
#
|
|
135
|
-
|
|
136
|
-
|
|
132
|
+
# Determine restart step. Use CURIDX (the 1-indexed step number last seen in
|
|
133
|
+
# the log) minus 1 to re-run the step that was in progress when the harness
|
|
134
|
+
# died. DONE (count of successes in the partial run) is wrong here because
|
|
135
|
+
# it resets to 0 on each restart while CURIDX tracks position in the full
|
|
136
|
+
# 1658-prompt list.
|
|
137
|
+
if [ "$CURIDX" -gt 1 ]; then
|
|
138
|
+
RESUME_AT=$(( CURIDX - 1 ))
|
|
139
|
+
else
|
|
137
140
|
RESUME_AT=1
|
|
138
141
|
fi
|
|
139
142
|
|
|
@@ -45,6 +45,13 @@ HALLUCINATED_TOOLS = [
|
|
|
45
45
|
"ralph_file_summary",
|
|
46
46
|
"file_summary",
|
|
47
47
|
"repo_summary",
|
|
48
|
+
# 2026-05-06 stress run additions:
|
|
49
|
+
"read_mcp_resource",
|
|
50
|
+
"read_resource",
|
|
51
|
+
"get_resource",
|
|
52
|
+
"lsp",
|
|
53
|
+
"lsp_definition",
|
|
54
|
+
"lsp_references",
|
|
48
55
|
]
|
|
49
56
|
|
|
50
57
|
|