drydock-cli 2.8.1__tar.gz → 2.8.3__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.
Files changed (1021) hide show
  1. drydock_cli-2.8.3/.auto_release.lock +1 -0
  2. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/HLE_PRD.md +14 -12
  3. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/PKG-INFO +38 -1
  4. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/README.md +37 -0
  5. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/cli.py +23 -0
  6. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/entrypoint.py +11 -0
  7. drydock_cli-2.8.3/drydock/cli/fix_windows_path.py +143 -0
  8. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/handlers/event_handler.py +2 -0
  9. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/loading.py +34 -4
  10. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/agent_loop.py +17 -0
  11. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/config/_settings.py +2 -2
  12. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/config/local_detect.py +8 -4
  13. drydock_cli-2.8.3/drydock/core/config/migrate.py +104 -0
  14. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/pyproject.toml +1 -1
  15. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/trip_log.md +217 -0
  16. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/uv.lock +1 -1
  17. drydock_cli-2.8.1/.auto_release.lock +0 -1
  18. drydock_cli-2.8.1/.claude/scheduled_tasks.lock +0 -1
  19. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.github/CODEOWNERS +0 -0
  20. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.github/DISCUSSION_TEMPLATE/ideas.yml +0 -0
  21. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
  22. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  23. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.github/workflows/build-and-upload.yml +0 -0
  24. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.github/workflows/ci.yml +0 -0
  25. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.github/workflows/issue-labeler.yml +0 -0
  26. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.github/workflows/release.yml +0 -0
  27. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.gitignore +0 -0
  28. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.pre-commit-config.yaml +0 -0
  29. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.python-version +0 -0
  30. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.typos.toml +0 -0
  31. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.vscode/extensions.json +0 -0
  32. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.vscode/launch.json +0 -0
  33. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/.vscode/settings.json +0 -0
  34. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/AGENTS.md +0 -0
  35. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/Admiral.md +0 -0
  36. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/CHANGELOG.md +0 -0
  37. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/CLAUDE.md +0 -0
  38. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/CONTRIBUTING.md +0 -0
  39. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/DEPLOYMENT.md +0 -0
  40. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/JETSON_BENCH.md +0 -0
  41. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/LICENSE +0 -0
  42. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/MODEL_SHORTCOMINGS.md +0 -0
  43. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/NOTICE +0 -0
  44. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/SOVEREIGN_PRD.md +0 -0
  45. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/TRIAGE_v1.md +0 -0
  46. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/action.yml +0 -0
  47. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/README.md +0 -0
  48. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results1.tsv +0 -0
  49. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results13.tsv +0 -0
  50. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results14.tsv +0 -0
  51. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results15.tsv +0 -0
  52. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results16.tsv +0 -0
  53. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results17.tsv +0 -0
  54. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results18.tsv +0 -0
  55. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results19.tsv +0 -0
  56. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results2.tsv +0 -0
  57. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results20.tsv +0 -0
  58. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results3.tsv +0 -0
  59. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results4.tsv +0 -0
  60. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results5.tsv +0 -0
  61. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results6.tsv +0 -0
  62. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results7.tsv +0 -0
  63. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results8.tsv +0 -0
  64. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results9.tsv +0 -0
  65. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/baseline_history/results_evolved_v1.tsv +0 -0
  66. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/distribution/zed/LICENSE +0 -0
  67. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/distribution/zed/extension.toml +0 -0
  68. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/distribution/zed/icons/mistral_vibe.svg +0 -0
  69. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/README.md +0 -0
  70. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/acp-setup.md +0 -0
  71. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/archive/BASELINE_412.md +0 -0
  72. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/archive/Drydock_rebrand.md +0 -0
  73. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/archive/OVERNIGHT_PROGRESS.md +0 -0
  74. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/archive/OVERNIGHT_REPORT_2026_04_13.md +0 -0
  75. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/archive/PERF_SWEEP_PLAN.md +0 -0
  76. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/archive/PRD.md +0 -0
  77. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/archive/drydock_terms.md +0 -0
  78. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/archive/resume.md +0 -0
  79. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/docs/proxy-setup.md +0 -0
  80. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/__init__.py +0 -0
  81. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/__init__.py +0 -0
  82. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/acp_agent_loop.py +0 -0
  83. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/acp_logger.py +0 -0
  84. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/entrypoint.py +0 -0
  85. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/tools/__init__.py +0 -0
  86. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/tools/base.py +0 -0
  87. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/tools/builtins/bash.py +0 -0
  88. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/tools/builtins/read_file.py +0 -0
  89. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/tools/builtins/search_replace.py +0 -0
  90. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/tools/builtins/todo.py +0 -0
  91. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/tools/builtins/write_file.py +0 -0
  92. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/tools/session_update.py +0 -0
  93. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/acp/utils.py +0 -0
  94. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/__init__.py +0 -0
  95. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/detectors.py +0 -0
  96. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/detectors_proposed.py +0 -0
  97. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/history.py +0 -0
  98. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/interventions.py +0 -0
  99. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/llm_analyzer.py +0 -0
  100. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/metrics.py +0 -0
  101. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/opus_escalator.py +0 -0
  102. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/persistence.py +0 -0
  103. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/policy.py +0 -0
  104. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/proposer.py +0 -0
  105. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/stager.py +0 -0
  106. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/task_classifier.py +0 -0
  107. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/tuning.py +0 -0
  108. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/validator.py +0 -0
  109. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/admiral/worker.py +0 -0
  110. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/__init__.py +0 -0
  111. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/autocompletion/__init__.py +0 -0
  112. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/autocompletion/base.py +0 -0
  113. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/autocompletion/path_completion.py +0 -0
  114. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/autocompletion/slash_command.py +0 -0
  115. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/clipboard.py +0 -0
  116. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/commands.py +0 -0
  117. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/history_manager.py +0 -0
  118. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/plan_offer/adapters/http_whoami_gateway.py +0 -0
  119. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/plan_offer/decide_plan_offer.py +0 -0
  120. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/plan_offer/ports/whoami_gateway.py +0 -0
  121. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/terminal_setup.py +0 -0
  122. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/__init__.py +0 -0
  123. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/ansi_markdown.py +0 -0
  124. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/app.py +0 -0
  125. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/app.tcss +0 -0
  126. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/external_editor.py +0 -0
  127. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/handlers/__init__.py +0 -0
  128. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/notifications/__init__.py +0 -0
  129. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/notifications/adapters/__init__.py +0 -0
  130. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/notifications/adapters/textual_notification_adapter.py +0 -0
  131. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/notifications/ports/__init__.py +0 -0
  132. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/notifications/ports/notification_port.py +0 -0
  133. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/__init__.py +0 -0
  134. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/approval_app.py +0 -0
  135. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/banner/banner.py +0 -0
  136. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/banner/petit_chat.py +0 -0
  137. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/braille_renderer.py +0 -0
  138. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/chat_input/__init__.py +0 -0
  139. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/chat_input/body.py +0 -0
  140. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/chat_input/completion_manager.py +0 -0
  141. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/chat_input/completion_popup.py +0 -0
  142. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/chat_input/container.py +0 -0
  143. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/chat_input/text_area.py +0 -0
  144. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/checkpoint_picker.py +0 -0
  145. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/compact.py +0 -0
  146. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/config_app.py +0 -0
  147. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/context_progress.py +0 -0
  148. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/load_more.py +0 -0
  149. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/messages.py +0 -0
  150. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/no_markup_static.py +0 -0
  151. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/path_display.py +0 -0
  152. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/proxy_setup_app.py +0 -0
  153. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/question_app.py +0 -0
  154. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/session_picker.py +0 -0
  155. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/spinner.py +0 -0
  156. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/status_message.py +0 -0
  157. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/teleport_message.py +0 -0
  158. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/tool_widgets.py +0 -0
  159. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/tools.py +0 -0
  160. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/widgets/vscode_compat.py +0 -0
  161. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/windowing/__init__.py +0 -0
  162. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/windowing/history.py +0 -0
  163. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/windowing/history_windowing.py +0 -0
  164. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/textual_ui/windowing/state.py +0 -0
  165. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/update_notifier/__init__.py +0 -0
  166. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/update_notifier/adapters/filesystem_update_cache_repository.py +0 -0
  167. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/update_notifier/adapters/github_update_gateway.py +0 -0
  168. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/update_notifier/adapters/pypi_update_gateway.py +0 -0
  169. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/update_notifier/ports/update_cache_repository.py +0 -0
  170. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/update_notifier/ports/update_gateway.py +0 -0
  171. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/update_notifier/update.py +0 -0
  172. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/cli/update_notifier/whats_new.py +0 -0
  173. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/__init__.py +0 -0
  174. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/agents/__init__.py +0 -0
  175. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/agents/manager.py +0 -0
  176. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/agents/models.py +0 -0
  177. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/auth/__init__.py +0 -0
  178. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/auth/crypto.py +0 -0
  179. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/auth/github.py +0 -0
  180. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/autocompletion/__init__.py +0 -0
  181. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/autocompletion/completers.py +0 -0
  182. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/autocompletion/file_indexer/__init__.py +0 -0
  183. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/autocompletion/file_indexer/ignore_rules.py +0 -0
  184. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/autocompletion/file_indexer/indexer.py +0 -0
  185. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/autocompletion/file_indexer/store.py +0 -0
  186. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/autocompletion/file_indexer/watcher.py +0 -0
  187. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/autocompletion/fuzzy.py +0 -0
  188. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/autocompletion/path_prompt.py +0 -0
  189. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/autocompletion/path_prompt_adapter.py +0 -0
  190. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/build_orchestrator.py +0 -0
  191. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/checkpoint.py +0 -0
  192. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/classifier/__init__.py +0 -0
  193. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/classifier/__main__.py +0 -0
  194. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/classifier/classifier.py +0 -0
  195. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/classifier/dispatcher.py +0 -0
  196. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/classifier/rules.py +0 -0
  197. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/classifier/signal.py +0 -0
  198. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/config/__init__.py +0 -0
  199. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/config/_dotenv.py +0 -0
  200. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/config/doctor.py +0 -0
  201. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/config/harness_files/__init__.py +0 -0
  202. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/config/harness_files/_harness_manager.py +0 -0
  203. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/config/harness_files/_paths.py +0 -0
  204. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/consultant.py +0 -0
  205. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/context_recovery.py +0 -0
  206. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/drydock_states.py +0 -0
  207. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/hooks.py +0 -0
  208. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/__init__.py +0 -0
  209. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/backend/anthropic.py +0 -0
  210. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/backend/base.py +0 -0
  211. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/backend/factory.py +0 -0
  212. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/backend/generic.py +0 -0
  213. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/backend/mistral.py +0 -0
  214. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/backend/reasoning_adapter.py +0 -0
  215. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/backend/vertex.py +0 -0
  216. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/exceptions.py +0 -0
  217. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/format.py +0 -0
  218. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/message_utils.py +0 -0
  219. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/llm/types.py +0 -0
  220. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/logger.py +0 -0
  221. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/middleware.py +0 -0
  222. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/output_formatters.py +0 -0
  223. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/paths/__init__.py +0 -0
  224. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/paths/_drydock_home.py +0 -0
  225. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/paths/_local_config_walk.py +0 -0
  226. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/paths/conventions.py +0 -0
  227. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/plan_session.py +0 -0
  228. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/plugins.py +0 -0
  229. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/programmatic.py +0 -0
  230. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/__init__.py +0 -0
  231. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/builder.md +0 -0
  232. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/cli.md +0 -0
  233. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/compact.md +0 -0
  234. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/dangerous_directory.md +0 -0
  235. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/diagnostic.md +0 -0
  236. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/explore.md +0 -0
  237. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/gemma4.md +0 -0
  238. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/planner.md +0 -0
  239. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/project_context.md +0 -0
  240. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/prompts/tests.md +0 -0
  241. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/proxy_setup.py +0 -0
  242. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/session/agent_memory.py +0 -0
  243. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/session/checkpoints.py +0 -0
  244. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/session/session_loader.py +0 -0
  245. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/session/session_logger.py +0 -0
  246. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/session/session_migration.py +0 -0
  247. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/session/state_file.py +0 -0
  248. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/session_checker.py +0 -0
  249. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/skills/__init__.py +0 -0
  250. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/skills/manager.py +0 -0
  251. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/skills/models.py +0 -0
  252. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/skills/parser.py +0 -0
  253. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/slug.py +0 -0
  254. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/steering_hook.py +0 -0
  255. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/system_prompt.py +0 -0
  256. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/telemetry/__init__.py +0 -0
  257. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/telemetry/send.py +0 -0
  258. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/teleport/errors.py +0 -0
  259. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/teleport/git.py +0 -0
  260. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/teleport/nuage.py +0 -0
  261. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/teleport/teleport.py +0 -0
  262. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/teleport/types.py +0 -0
  263. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/base.py +0 -0
  264. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/_task_manager.py +0 -0
  265. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/ask_user_question.py +0 -0
  266. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/bash.py +0 -0
  267. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/cron.py +0 -0
  268. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/exit_plan_mode.py +0 -0
  269. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/glob_tool.py +0 -0
  270. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/grep.py +0 -0
  271. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/invoke_skill.py +0 -0
  272. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/lsp.py +0 -0
  273. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/mcp_resources.py +0 -0
  274. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/notebook_edit.py +0 -0
  275. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/powershell.py +0 -0
  276. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/__init__.py +0 -0
  277. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/ask_user_question.md +0 -0
  278. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/bash.md +0 -0
  279. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/cron.md +0 -0
  280. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/glob.md +0 -0
  281. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/grep.md +0 -0
  282. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/invoke_skill.md +0 -0
  283. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/lsp.md +0 -0
  284. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/mcp_resources.md +0 -0
  285. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/notebook_edit.md +0 -0
  286. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/powershell.md +0 -0
  287. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/read_file.md +0 -0
  288. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/retrieve.md +0 -0
  289. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/search_replace.md +0 -0
  290. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/swe_bench.md +0 -0
  291. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/task.md +0 -0
  292. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/task_manager.md +0 -0
  293. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/todo.md +0 -0
  294. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/tool_search.md +0 -0
  295. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/webfetch.md +0 -0
  296. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/websearch.md +0 -0
  297. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/worktree.md +0 -0
  298. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/prompts/write_file.md +0 -0
  299. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/read_file.py +0 -0
  300. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/retrieve.py +0 -0
  301. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/search_replace.py +0 -0
  302. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/task.py +0 -0
  303. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/todo.py +0 -0
  304. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/tool_search.py +0 -0
  305. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/webfetch.py +0 -0
  306. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/websearch.py +0 -0
  307. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/worktree.py +0 -0
  308. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/builtins/write_file.py +0 -0
  309. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/injection_guard.py +0 -0
  310. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/manager.py +0 -0
  311. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/mcp/__init__.py +0 -0
  312. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/mcp/registry.py +0 -0
  313. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/mcp/tools.py +0 -0
  314. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/mcp_sampling.py +0 -0
  315. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/ui.py +0 -0
  316. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/tools/utils.py +0 -0
  317. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/trusted_folders.py +0 -0
  318. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/types.py +0 -0
  319. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/core/utils.py +0 -0
  320. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/graphrag/__init__.py +0 -0
  321. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/graphrag/__main__.py +0 -0
  322. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/graphrag/code_indexer.py +0 -0
  323. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/graphrag/retriever.py +0 -0
  324. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/graphrag/storage.py +0 -0
  325. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/graphrag/text_indexer.py +0 -0
  326. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/setup/onboarding/__init__.py +0 -0
  327. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/setup/onboarding/base.py +0 -0
  328. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/setup/onboarding/onboarding.tcss +0 -0
  329. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/setup/onboarding/screens/__init__.py +0 -0
  330. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/setup/onboarding/screens/api_key.py +0 -0
  331. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/setup/onboarding/screens/choice.py +0 -0
  332. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/setup/onboarding/screens/local_model.py +0 -0
  333. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/setup/onboarding/screens/welcome.py +0 -0
  334. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/setup/trusted_folders/trust_folder_dialog.py +0 -0
  335. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/setup/trusted_folders/trust_folder_dialog.tcss +0 -0
  336. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/__init__.py +0 -0
  337. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/api-design/SKILL.md +0 -0
  338. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/audit-tests/SKILL.md +0 -0
  339. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/batch/SKILL.md +0 -0
  340. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/commit-code/SKILL.md +0 -0
  341. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/context-summary/SKILL.md +0 -0
  342. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/create-presentation/SKILL.md +0 -0
  343. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/deep-research/SKILL.md +0 -0
  344. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/deploy/SKILL.md +0 -0
  345. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/diff-review/SKILL.md +0 -0
  346. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/doc-gen/SKILL.md +0 -0
  347. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/explain-code/SKILL.md +0 -0
  348. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/explore-code/SKILL.md +0 -0
  349. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/fix-issue/SKILL.md +0 -0
  350. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/git-ops/SKILL.md +0 -0
  351. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/init-project/SKILL.md +0 -0
  352. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/investigate/SKILL.md +0 -0
  353. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/loop/SKILL.md +0 -0
  354. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/migrate/SKILL.md +0 -0
  355. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/perf-analyze/SKILL.md +0 -0
  356. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/plan-impl/SKILL.md +0 -0
  357. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/pr-review/SKILL.md +0 -0
  358. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/refactor/SKILL.md +0 -0
  359. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/regex-help/SKILL.md +0 -0
  360. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/review/SKILL.md +0 -0
  361. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/security-review/SKILL.md +0 -0
  362. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/ship/SKILL.md +0 -0
  363. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/simplify/SKILL.md +0 -0
  364. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/strong-tests/SKILL.md +0 -0
  365. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/skills/test-verify/SKILL.md +0 -0
  366. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/steering/__init__.py +0 -0
  367. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/steering/__main__.py +0 -0
  368. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/steering/applier.py +0 -0
  369. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/steering/config.py +0 -0
  370. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/steering/registry.py +0 -0
  371. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/steering/sandbox.py +0 -0
  372. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/steering/vectors.py +0 -0
  373. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock/whats_new.md +0 -0
  374. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/drydock-acp.spec +0 -0
  375. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/flake.lock +0 -0
  376. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/flake.nix +0 -0
  377. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/config.json +0 -0
  378. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/results.jsonl +0 -0
  379. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/summary.json +0 -0
  380. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66e89811ca68059533a83566/AGENTS.md +0 -0
  381. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66e89ebe7361982cbfbc5952/AGENTS.md +0 -0
  382. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66e8b0a9e5eaa390aa9fdde5/AGENTS.md +0 -0
  383. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66e8ccc4089d1e34c84c76c0/AGENTS.md +0 -0
  384. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66e8d4d65699cf35c9a1527c/AGENTS.md +0 -0
  385. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66e9249c953867e04c273db7/AGENTS.md +0 -0
  386. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66ea40e5b44d5e443ba2eac5/AGENTS.md +0 -0
  387. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66eafb96b082c5e6a76a49c0/AGENTS.md +0 -0
  388. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66ec5671713826aca26a9dba/AGENTS.md +0 -0
  389. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66ec5e266f83e1764787e118/AGENTS.md +0 -0
  390. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66ed5e6a1d24f687ee9b06d1/AGENTS.md +0 -0
  391. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66ed97d1c2becb9452e4d7b4/AGENTS.md +0 -0
  392. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66edc60801af2a724035ad4b/AGENTS.md +0 -0
  393. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66edd3dc1ee489494038d9eb/AGENTS.md +0 -0
  394. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66ee158c5db68805b7d3d27b/AGENTS.md +0 -0
  395. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66ee8c598124ad52c77de7ee/AGENTS.md +0 -0
  396. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66eee253ae4c04f9d17d9420/AGENTS.md +0 -0
  397. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f052e814be84cc1edd3fbd/AGENTS.md +0 -0
  398. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f0bc36c6a29a8fa8010813/AGENTS.md +0 -0
  399. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f1ce25cd6a2b9d36fe8ea2/AGENTS.md +0 -0
  400. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  401. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f454d18ab578bcbb18387c/AGENTS.md +0 -0
  402. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f472d2e4b80835fd2a01bb/AGENTS.md +0 -0
  403. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f47471bba0ce38e1ca559f/AGENTS.md +0 -0
  404. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f579027a2ac7b4fffe1740/AGENTS.md +0 -0
  405. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f5c96b4ae309d465eeca47/AGENTS.md +0 -0
  406. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f5c96b4ae309d465eeca47/solution.py +0 -0
  407. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f6f048b40ada5ac3b91cf8/AGENTS.md +0 -0
  408. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f6f048b40ada5ac3b91cf8/solution.py +0 -0
  409. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f7292f3f4622b6ce24b961/AGENTS.md +0 -0
  410. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66f83aed0d92e99048a4ae9d/AGENTS.md +0 -0
  411. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66faccfb44cb2f3b0e1be0ff/AGENTS.md +0 -0
  412. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fc1a0ea7be4edbe85cf15c/AGENTS.md +0 -0
  413. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fc2b7dbdebe91c66389e50/AGENTS.md +0 -0
  414. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fc2b7dbdebe91c66389e50/solution.py +0 -0
  415. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fc2df0b72463921f6c40f2/AGENTS.md +0 -0
  416. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fc35ef3d06493836155397/AGENTS.md +0 -0
  417. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fc4dc04293a9638d7e0f65/AGENTS.md +0 -0
  418. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fc56f5d90ebe461bfd0c9c/AGENTS.md +0 -0
  419. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fc633698a7264ef58309c0/AGENTS.md +0 -0
  420. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fdb31a57cea4445778e8ab/AGENTS.md +0 -0
  421. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66feaec49c469dbc1c0c4ed2/AGENTS.md +0 -0
  422. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66feaec49c469dbc1c0c4ed2/solution.py +0 -0
  423. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fec5fbe0072219a732f0e2/AGENTS.md +0 -0
  424. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fec5fbe0072219a732f0e2/simulation.py +0 -0
  425. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/66fec5fbe0072219a732f0e2/solution.py +0 -0
  426. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/670013827794cc36bc974f27/AGENTS.md +0 -0
  427. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67008f2afc2c0a4040f1d353/AGENTS.md +0 -0
  428. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/670097e2d8f693f97c36c13f/AGENTS.md +0 -0
  429. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6700a5f67899925724a8fa81/AGENTS.md +0 -0
  430. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6700ab4bfa64315ed5204e4d/AGENTS.md +0 -0
  431. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6701d2675f6691877f264511/AGENTS.md +0 -0
  432. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6704465caf0a436d92c65160/AGENTS.md +0 -0
  433. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67055b15222ba55ab0b88431/AGENTS.md +0 -0
  434. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6706033749b90b396d2cb207/AGENTS.md +0 -0
  435. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6706033749b90b396d2cb207/solution.py +0 -0
  436. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6706295df10a8c2ca9a9c288/AGENTS.md +0 -0
  437. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67073a60c033e34a5d675f2e/AGENTS.md +0 -0
  438. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6707b9264ea1e7c28b6169bc/AGENTS.md +0 -0
  439. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6708c1dc2f33698babc6479d/AGENTS.md +0 -0
  440. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/670a7e542e97a7e436a3d951/AGENTS.md +0 -0
  441. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/670d5ce6d57c80b4d4090cb4/AGENTS.md +0 -0
  442. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/670daa682c5d078fa33fba12/AGENTS.md +0 -0
  443. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/670e9d6f5c8f745d79e8d8d1/AGENTS.md +0 -0
  444. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/670fe86a7e294dc6ad20c1ba/AGENTS.md +0 -0
  445. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6710251d73c9583c25138ff0/AGENTS.md +0 -0
  446. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67136bf495e840a8db703aee/AGENTS.md +0 -0
  447. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67152ee0953411f24cd994f0/AGENTS.md +0 -0
  448. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671659f129c718f03e48a198/AGENTS.md +0 -0
  449. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6716dc349a0dd17680df31df/AGENTS.md +0 -0
  450. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6716dc349a0dd17680df31df/solution.py +0 -0
  451. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67171c0c49297038d6740a23/AGENTS.md +0 -0
  452. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67171dca583e0959a2a84f91/AGENTS.md +0 -0
  453. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67171dca583e0959a2a84f91/solve.py +0 -0
  454. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6717207a3d6d949464d26a15/AGENTS.md +0 -0
  455. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67172e73e42c7644e4f00e1f/AGENTS.md +0 -0
  456. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67172e73e42c7644e4f00e1f/solution.py +0 -0
  457. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67178b22b7f6dd9be2a4dd68/AGENTS.md +0 -0
  458. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6717a3b32bfc3643c75ac338/AGENTS.md +0 -0
  459. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6717aef5a5c8a6a9392b1b39/AGENTS.md +0 -0
  460. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6717cfeee8995e9e60504f33/AGENTS.md +0 -0
  461. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671802a3e2dff1f07a1b0508/AGENTS.md +0 -0
  462. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671802a3e2dff1f07a1b0508/solution.py +0 -0
  463. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67184f90f86f5a009aa2ad5f/AGENTS.md +0 -0
  464. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6718577ca88093a75026b186/AGENTS.md +0 -0
  465. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671adbf8439b8a0eaec180d3/AGENTS.md +0 -0
  466. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671bbb559a1f658e2a088aa8/AGENTS.md +0 -0
  467. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671bc0c855449c636f4bbd36/AGENTS.md +0 -0
  468. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671bdc0d90d834b821acb8b1/AGENTS.md +0 -0
  469. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671c6d6392388142386728ee/AGENTS.md +0 -0
  470. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671d16bf60ad0fe6d2494177/AGENTS.md +0 -0
  471. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671d16bf60ad0fe6d2494177/solution.py +0 -0
  472. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671ee72aec85f81abd7a2f92/AGENTS.md +0 -0
  473. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671eeb53c1a668a6c81e5993/AGENTS.md +0 -0
  474. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671f07b1d0f22fd6e50482e7/AGENTS.md +0 -0
  475. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671f0c2578ab3005e439aeba/AGENTS.md +0 -0
  476. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671f1f0bb0b665acec70c3aa/AGENTS.md +0 -0
  477. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671f887676b11ce91b2887ce/AGENTS.md +0 -0
  478. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/671f887676b11ce91b2887ce/solution.py +0 -0
  479. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672068b61177432c7e500289/AGENTS.md +0 -0
  480. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6720c7d9831d6450ba886ff0/AGENTS.md +0 -0
  481. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6720e184a9e1d1cc990cc8e9/AGENTS.md +0 -0
  482. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67210bd65968ddcc0df3a248/AGENTS.md +0 -0
  483. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67213cb9043b1e724244a1c6/AGENTS.md +0 -0
  484. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67213cb9043b1e724244a1c6/reasoning.txt +0 -0
  485. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67214969c04654cf47135a4e/AGENTS.md +0 -0
  486. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67218f865b0747ce2231d48c/AGENTS.md +0 -0
  487. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6721ad631648dda151c2a7ec/AGENTS.md +0 -0
  488. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6721c8e11b5a8e4cb0e9079b/AGENTS.md +0 -0
  489. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6722048cdcce66512a82d9e2/AGENTS.md +0 -0
  490. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6722198c0628f6647e3d591e/AGENTS.md +0 -0
  491. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672235a01e36ca7369b8b157/AGENTS.md +0 -0
  492. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6722870ef7bda9406bc723ac/AGENTS.md +0 -0
  493. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6722889086cf6075e69b96a7/AGENTS.md +0 -0
  494. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6722b2777f84054950978f74/AGENTS.md +0 -0
  495. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6723b207610c8f282a827f3a/AGENTS.md +0 -0
  496. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6723cdf07a517fb44dd35e47/AGENTS.md +0 -0
  497. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6723d9a6271ddeec8bacb9b6/AGENTS.md +0 -0
  498. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672413536c2345e86ea59fe7/AGENTS.md +0 -0
  499. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67242f1f911674ab1b5d904b/AGENTS.md +0 -0
  500. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6724cdd55ae9c8186f31f920/AGENTS.md +0 -0
  501. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6724f79792419e4380b5686a/AGENTS.md +0 -0
  502. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67252b9639b66386e0489e94/AGENTS.md +0 -0
  503. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67252e6e825d7a6248383174/AGENTS.md +0 -0
  504. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67253d7aac6dc24f8aafbfc1/AGENTS.md +0 -0
  505. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67253f2c13c1aec29d1f1849/AGENTS.md +0 -0
  506. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672546cf046774791d0f1a3a/AGENTS.md +0 -0
  507. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67256db1afb4a043e613c929/AGENTS.md +0 -0
  508. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672572ba1b7caf96dfa80324/AGENTS.md +0 -0
  509. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6725b2ba569cf0c62da64cd1/AGENTS.md +0 -0
  510. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6725bb338255543498bdcbec/AGENTS.md +0 -0
  511. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6725dc14097c6790b292765e/AGENTS.md +0 -0
  512. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6725e382086428ce4e2fa8d6/AGENTS.md +0 -0
  513. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672643a2699c78200b0177e9/AGENTS.md +0 -0
  514. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6726bc54d4553efaee99c558/AGENTS.md +0 -0
  515. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6726e3bf4aeb5af8ca49e254/AGENTS.md +0 -0
  516. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6727dd5c5e987b1e8c17f8d9/AGENTS.md +0 -0
  517. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6728c038c556bb2fdda61dd7/AGENTS.md +0 -0
  518. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67298280a5f43bd5a3870e14/AGENTS.md +0 -0
  519. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672a30472091cee6de17ebd1/AGENTS.md +0 -0
  520. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672aac7a78e0ab15cf86003b/AGENTS.md +0 -0
  521. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672b2ff4a7b27beaf0e7779a/AGENTS.md +0 -0
  522. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672c84e4975ce618c77a5c49/AGENTS.md +0 -0
  523. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672c983d4183d91499fad7c5/AGENTS.md +0 -0
  524. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672cdf88f01cb175ca130759/AGENTS.md +0 -0
  525. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672d8366f97c3b404d90f3d3/AGENTS.md +0 -0
  526. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672dceba64a3350407a69646/AGENTS.md +0 -0
  527. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672e09b50a85795d0ed2d36e/AGENTS.md +0 -0
  528. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672f6cfd609b665328565e5c/AGENTS.md +0 -0
  529. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672f7b5d47d2f4c7ca9ff600/AGENTS.md +0 -0
  530. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672f7b5d47d2f4c7ca9ff600/solution.py +0 -0
  531. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672faa45c5a8bce51676ee01/AGENTS.md +0 -0
  532. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672faa45c5a8bce51676ee01/solution.py +0 -0
  533. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672fc00e13e5fbd332372f3f/AGENTS.md +0 -0
  534. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/672ff71e724ca22f42c0ff85/AGENTS.md +0 -0
  535. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67302aea4c42a72918926160/AGENTS.md +0 -0
  536. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67308f79c5ea548175bbf9fc/AGENTS.md +0 -0
  537. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67310e19bf74eff110261caa/AGENTS.md +0 -0
  538. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6732761c77e9a02e661946ac/AGENTS.md +0 -0
  539. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6734830d5fc27d3e41519741/AGENTS.md +0 -0
  540. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6734f24a08351f5bdfd38627/AGENTS.md +0 -0
  541. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67352e9911e5510fc618f619/AGENTS.md +0 -0
  542. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67361730dba36cc0d595f422/AGENTS.md +0 -0
  543. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6736562a41ab088ba14c2bc3/AGENTS.md +0 -0
  544. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673668e658bad7ba89d4ad54/AGENTS.md +0 -0
  545. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6736945a5a7f4f59e4731c4d/AGENTS.md +0 -0
  546. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6736a9b0b949d548db8da965/AGENTS.md +0 -0
  547. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6736ccc7b9b2577c622e944c/AGENTS.md +0 -0
  548. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6736ccc7b9b2577c622e944c/solution.py +0 -0
  549. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6736d8d1278519f8b18450a5/AGENTS.md +0 -0
  550. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6736e9109055c436feb3f65a/AGENTS.md +0 -0
  551. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6737006d3f0517b6e8a60733/AGENTS.md +0 -0
  552. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67370359930c1fd7247f3413/AGENTS.md +0 -0
  553. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673716bd2773953bca4195d7/AGENTS.md +0 -0
  554. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673722c82bfc8ab579ed111f/AGENTS.md +0 -0
  555. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6737259f2c11cb057c97911b/AGENTS.md +0 -0
  556. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6737259f2c11cb057c97911b/solution.py +0 -0
  557. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67373446bb9a786bfe928d2c/AGENTS.md +0 -0
  558. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673738b81bcb9388d8e3b31a/AGENTS.md +0 -0
  559. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67378355cf21a88cec0f42e5/AGENTS.md +0 -0
  560. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67378355cf21a88cec0f42e5/logic.py +0 -0
  561. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67378355cf21a88cec0f42e5/solution.py +0 -0
  562. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673784c950c4b58b2154e4ef/AGENTS.md +0 -0
  563. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6738373cf2df805520bc86ce/AGENTS.md +0 -0
  564. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673852c82e5179091a7648e8/AGENTS.md +0 -0
  565. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6738d6a4475748524584b23c/AGENTS.md +0 -0
  566. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6738d6a4475748524584b23c/analysis.py +0 -0
  567. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6738d6a4475748524584b23c/logic_check.py +0 -0
  568. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6738d6a4475748524584b23c/solution.py +0 -0
  569. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6738df8c201a2bd66499797a/AGENTS.md +0 -0
  570. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67391de141c297471963efc6/AGENTS.md +0 -0
  571. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6739674739118cf30f5f1075/AGENTS.md +0 -0
  572. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673971a55c3de09264d6d373/AGENTS.md +0 -0
  573. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6739fe23f1f7144f9a3c9715/AGENTS.md +0 -0
  574. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673a30e39b3ad7c9386b5da4/AGENTS.md +0 -0
  575. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673a30e39b3ad7c9386b5da4/solution.py +0 -0
  576. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673a33fb2d5ce2b6500f4b48/AGENTS.md +0 -0
  577. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673a33fb2d5ce2b6500f4b48/solution.py +0 -0
  578. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673a3faaed02a359f6002a78/AGENTS.md +0 -0
  579. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673a6dd875a0f3c9ce243dba/AGENTS.md +0 -0
  580. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673a73d1addb9293360a5d07/AGENTS.md +0 -0
  581. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673a76559e89466aa6433f66/AGENTS.md +0 -0
  582. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673ac0ef3792ac12ad54f599/AGENTS.md +0 -0
  583. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673b50769ff1dae6f5b8b65d/AGENTS.md +0 -0
  584. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673b6aa505be2302d4445ed4/AGENTS.md +0 -0
  585. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673b6ef1430f8b6e47a67760/AGENTS.md +0 -0
  586. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/673b6ef1430f8b6e47a67760/solution.py +0 -0
  587. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67428dcab53462ceeb83c6f6/AGENTS.md +0 -0
  588. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/674490c88354817cce712062/AGENTS.md +0 -0
  589. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/674490c88354817cce712062/solution.py +0 -0
  590. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67458d2109d194da0dfd7cef/AGENTS.md +0 -0
  591. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6747e0eaaa7f6182ef02efb4/AGENTS.md +0 -0
  592. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6747fa2a456927085f863956/AGENTS.md +0 -0
  593. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6748b7dfac494f3a05306206/AGENTS.md +0 -0
  594. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/675704ad2626c93afa0b3a05/AGENTS.md +0 -0
  595. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/675d7b901ded33d59eb2c94f/AGENTS.md +0 -0
  596. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/675e0f20488645c4ed8af30b/AGENTS.md +0 -0
  597. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67607764fd6487bd2bb7e271/AGENTS.md +0 -0
  598. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6761b89b9d9d4287c0969029/AGENTS.md +0 -0
  599. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/676226f6fbdba9bd68127327/AGENTS.md +0 -0
  600. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/676433a3921b0ce4e14c557f/AGENTS.md +0 -0
  601. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/676433a3921b0ce4e14c557f/solution.py +0 -0
  602. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/676cc5d177aae7d3ee8caaeb/AGENTS.md +0 -0
  603. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/676e9656e3e0846ee73dbf9d/AGENTS.md +0 -0
  604. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/677296942ebbac6133a1d618/AGENTS.md +0 -0
  605. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/677296942ebbac6133a1d618/solution.py +0 -0
  606. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6776ffa855710e45669a4481/AGENTS.md +0 -0
  607. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6778491dcbd83450e1018208/AGENTS.md +0 -0
  608. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/6778491dcbd83450e1018208/solution.py +0 -0
  609. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67833c10f5a1ca415084accd/AGENTS.md +0 -0
  610. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67833c10f5a1ca415084accd/mass_calc.py +0 -0
  611. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777855599/work/67833c10f5a1ca415084accd/solution.py +0 -0
  612. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777893928/config.json +0 -0
  613. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777893928/results.jsonl +0 -0
  614. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777893928/summary.json +0 -0
  615. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777893928/work/674490c88354817cce712062/AGENTS.md +0 -0
  616. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777894705/config.json +0 -0
  617. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777894779/config.json +0 -0
  618. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777894779/results.jsonl +0 -0
  619. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777894779/summary.json +0 -0
  620. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777894779/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  621. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777894988/config.json +0 -0
  622. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777894988/results.jsonl +0 -0
  623. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777894988/summary.json +0 -0
  624. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777894988/work/66f358d4cdd3ce36208e23ca_iter3/AGENTS.md +0 -0
  625. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777895449/config.json +0 -0
  626. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777895449/results.jsonl +0 -0
  627. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777895449/summary.json +0 -0
  628. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777895449/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  629. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777895659/config.json +0 -0
  630. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777895659/results.jsonl +0 -0
  631. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777895659/summary.json +0 -0
  632. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777895659/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  633. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896017/config.json +0 -0
  634. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896017/results.jsonl +0 -0
  635. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896017/summary.json +0 -0
  636. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896017/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  637. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896576/config.json +0 -0
  638. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896576/results.jsonl +0 -0
  639. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896576/summary.json +0 -0
  640. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896576/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  641. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896802/config.json +0 -0
  642. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896802/results.jsonl +0 -0
  643. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896802/summary.json +0 -0
  644. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896802/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  645. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896996/config.json +0 -0
  646. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896996/results.jsonl +0 -0
  647. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896996/summary.json +0 -0
  648. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777896996/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  649. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777897626/config.json +0 -0
  650. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777897626/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  651. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777897976/config.json +0 -0
  652. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777897976/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  653. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777898263/config.json +0 -0
  654. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777898263/results.jsonl +0 -0
  655. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777898263/summary.json +0 -0
  656. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/hle_results_v1_baseline/run_1777898263/work/66f358d4cdd3ce36208e23ca/AGENTS.md +0 -0
  657. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/research/README.md +0 -0
  658. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/research/config_base.toml +0 -0
  659. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/research/config_best.toml +0 -0
  660. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/research/domain_spec.md +0 -0
  661. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/research/experimenter.py +0 -0
  662. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/research/kernel.py +0 -0
  663. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/research/mini_prd.md +0 -0
  664. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/research/mini_prompts.txt +0 -0
  665. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/research/proposer.py +0 -0
  666. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/research/results.tsv +0 -0
  667. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/README.md +0 -0
  668. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/admiral_probe.py +0 -0
  669. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/archive/auto_test_loop.sh +0 -0
  670. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/archive/monitor_test_battery.sh +0 -0
  671. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/archive/overnight_agents_test.sh +0 -0
  672. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/archive/test_bank.sh +0 -0
  673. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/archive/test_full.sh +0 -0
  674. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/archive/test_smoke.sh +0 -0
  675. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/archive/tui_test.py +0 -0
  676. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/audit_sampler.py +0 -0
  677. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/auto_generate_tests.py +0 -0
  678. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/auto_release.sh +0 -0
  679. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/autonomous_review.sh +0 -0
  680. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/autonomous_review_prompt.md +0 -0
  681. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/backup.sh +0 -0
  682. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/bump_version.py +0 -0
  683. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/classify_pulse.sh +0 -0
  684. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/comprehensive_loop.py +0 -0
  685. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/consume_retrieval_queue.py +0 -0
  686. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/deploy_to_github.sh +0 -0
  687. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/discover_cli_tools.sh +0 -0
  688. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/evolve_tests.py +0 -0
  689. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/fetch_arxiv_abstracts.py +0 -0
  690. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/gen_2000_prompts.py +0 -0
  691. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/hle_eval.py +0 -0
  692. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/hle_eval_seed.jsonl +0 -0
  693. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/install.sh +0 -0
  694. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/llm_balancer.py +0 -0
  695. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/mega_loop.py +0 -0
  696. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/meta_ralph_loop.py +0 -0
  697. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/monitor_swebench.sh +0 -0
  698. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/notify_release.py +0 -0
  699. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/oss_task_harness.py +0 -0
  700. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/perf_baseline_when_idle.sh +0 -0
  701. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/perf_sweep.py +0 -0
  702. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/poll_issues.sh +0 -0
  703. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/port_task.py +0 -0
  704. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/prepare_release.py +0 -0
  705. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/publish_to_pypi.sh +0 -0
  706. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/queue_top.py +0 -0
  707. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/ralph_loop.py +0 -0
  708. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/research_babysitter.sh +0 -0
  709. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/session_loop_audit.py +0 -0
  710. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/shakedown.py +0 -0
  711. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/shakedown_interactive.py +0 -0
  712. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/shakedown_regression.sh +0 -0
  713. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/shakedown_suite.sh +0 -0
  714. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/shakedown_variance.sh +0 -0
  715. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/stress_babysitter.sh +0 -0
  716. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/stress_prompts_50.txt +0 -0
  717. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/stress_prompts_realuser.txt +0 -0
  718. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/stress_prompts_tool_agent.txt +0 -0
  719. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/stress_prompts_tool_agent_2000.txt +0 -0
  720. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/stress_shakedown.py +0 -0
  721. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/stress_telegram_status.py +0 -0
  722. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/stress_watcher.py +0 -0
  723. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/telegram_bot.py +0 -0
  724. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/test_tui_path.py +0 -0
  725. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/scripts/vllm_failover.sh +0 -0
  726. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/__init__.py +0 -0
  727. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/conftest.py +0 -0
  728. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_acp.py +0 -0
  729. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_agent_thought.py +0 -0
  730. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_bash.py +0 -0
  731. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_compact_session_updates.py +0 -0
  732. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_content.py +0 -0
  733. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_initialize.py +0 -0
  734. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_list_sessions.py +0 -0
  735. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_load_session.py +0 -0
  736. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_multi_session.py +0 -0
  737. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_new_session.py +0 -0
  738. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_proxy_setup_acp.py +0 -0
  739. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_read_file.py +0 -0
  740. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_search_replace.py +0 -0
  741. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_set_config_option.py +0 -0
  742. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_set_mode.py +0 -0
  743. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_set_model.py +0 -0
  744. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_tool_call_session_update.py +0 -0
  745. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_utils.py +0 -0
  746. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/acp/test_write_file.py +0 -0
  747. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/autocompletion/test_file_indexer.py +0 -0
  748. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/autocompletion/test_fuzzy.py +0 -0
  749. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/autocompletion/test_path_completer_fuzzy.py +0 -0
  750. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/autocompletion/test_path_completer_recursive.py +0 -0
  751. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/autocompletion/test_path_completion_controller.py +0 -0
  752. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/autocompletion/test_path_prompt_transformer.py +0 -0
  753. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/autocompletion/test_slash_command_controller.py +0 -0
  754. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/autocompletion/test_ui_chat_autocompletion.py +0 -0
  755. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/backend/__init__.py +0 -0
  756. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/backend/data/__init__.py +0 -0
  757. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/backend/data/fireworks.py +0 -0
  758. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/backend/data/mistral.py +0 -0
  759. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/backend/test_anthropic_adapter.py +0 -0
  760. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/backend/test_backend.py +0 -0
  761. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/backend/test_generic_adapter_sanitize.py +0 -0
  762. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/backend/test_reasoning_adapter.py +0 -0
  763. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/backend/test_vertex_anthropic_adapter.py +0 -0
  764. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/plan_offer/adapters/fake_whoami_gateway.py +0 -0
  765. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/plan_offer/test_decide_plan_offer.py +0 -0
  766. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/plan_offer/test_http_whoami_gateway.py +0 -0
  767. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_bell_notifications.py +0 -0
  768. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_braille_renderer.py +0 -0
  769. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_clipboard.py +0 -0
  770. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_commands.py +0 -0
  771. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_copy_shortcuts.py +0 -0
  772. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_external_editor.py +0 -0
  773. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_no_markup_static.py +0 -0
  774. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_question_app.py +0 -0
  775. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_spinner.py +0 -0
  776. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_switching_mode.py +0 -0
  777. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_ui_clipboard_notifications.py +0 -0
  778. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_ui_session_incremental_renderer.py +0 -0
  779. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_ui_session_resume.py +0 -0
  780. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/test_ui_skill_dispatch.py +0 -0
  781. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/textual_ui/__init__.py +0 -0
  782. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/cli/textual_ui/test_session_picker.py +0 -0
  783. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/conftest.py +0 -0
  784. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_agents.py +0 -0
  785. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_auth_crypto.py +0 -0
  786. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_auth_github.py +0 -0
  787. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_circuit_breaker_count_escalation.py +0 -0
  788. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_circuit_breaker_readonly_threshold.py +0 -0
  789. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_config_load_dotenv.py +0 -0
  790. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_config_paths.py +0 -0
  791. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_config_resolution.py +0 -0
  792. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_file_logging.py +0 -0
  793. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_plan_session.py +0 -0
  794. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_proxy_setup.py +0 -0
  795. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_slug.py +0 -0
  796. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_telemetry_send.py +0 -0
  797. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_teleport_git.py +0 -0
  798. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_teleport_nuage.py +0 -0
  799. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_teleport_service.py +0 -0
  800. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_trusted_folders.py +0 -0
  801. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/core/test_utils.py +0 -0
  802. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/e2e/common.py +0 -0
  803. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/e2e/conftest.py +0 -0
  804. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/e2e/mock_server.py +0 -0
  805. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/e2e/test_cli_tui_onboarding.py +0 -0
  806. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/e2e/test_cli_tui_streaming.py +0 -0
  807. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/e2e/test_cli_tui_tool_approval.py +0 -0
  808. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/fixtures/doc_qa_system_prd.md +0 -0
  809. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/mock/__init__.py +0 -0
  810. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/mock/mock_backend_factory.py +0 -0
  811. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/mock/mock_entrypoint.py +0 -0
  812. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/mock/utils.py +0 -0
  813. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/onboarding/test_run_onboarding.py +0 -0
  814. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/onboarding/test_ui_onboarding.py +0 -0
  815. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/session/test_session_loader.py +0 -0
  816. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/session/test_session_logger.py +0 -0
  817. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/session/test_session_migration.py +0 -0
  818. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/skills/conftest.py +0 -0
  819. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/skills/test_manager.py +0 -0
  820. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/skills/test_models.py +0 -0
  821. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/skills/test_parser.py +0 -0
  822. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_collapsed.svg +0 -0
  823. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_expanded.svg +0 -0
  824. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_basic_conversation/test_snapshot_shows_basic_conversation.svg +0 -0
  825. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_code_block_horizontal_scrolling/test_snapshot_allows_horizontal_scrolling_for_long_code_blocks.svg +0 -0
  826. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_empty_assistant_before_reasoning/test_snapshot_empty_assistant_removed_when_reasoning_starts.svg +0 -0
  827. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_accept_edits_mode.svg +0 -0
  828. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_auto_approve_mode.svg +0 -0
  829. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_plan_mode.svg +0 -0
  830. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_wraps_to_default.svg +0 -0
  831. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_default_mode.svg +0 -0
  832. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_pending.svg +0 -0
  833. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_resolved.svg +0 -0
  834. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_cancel_discards_changes.svg +0 -0
  835. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_edit_existing_values.svg +0 -0
  836. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_empty.svg +0 -0
  837. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_with_values.svg +0 -0
  838. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_error.svg +0 -0
  839. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_new_values.svg +0 -0
  840. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_answer_first_advance.svg +0 -0
  841. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_first_answered_checkmark.svg +0 -0
  842. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_initial.svg +0 -0
  843. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_left_wraps.svg +0 -0
  844. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_right.svg +0 -0
  845. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_tab_to_second.svg +0 -0
  846. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_initial.svg +0 -0
  847. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_mixed_selection.svg +0 -0
  848. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_navigate_to_submit.svg +0 -0
  849. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_other_with_text.svg +0 -0
  850. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_first.svg +0 -0
  851. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_multiple.svg +0 -0
  852. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_untoggle.svg +0 -0
  853. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_initial.svg +0 -0
  854. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_down.svg +0 -0
  855. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_other.svg +0 -0
  856. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_third_option.svg +0 -0
  857. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_up_wraps.svg +0 -0
  858. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_other_typing.svg +0 -0
  859. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_buffered_reasoning_yields_before_content.svg +0 -0
  860. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_interleaved_reasoning.svg +0 -0
  861. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content.svg +0 -0
  862. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content_expanded.svg +0 -0
  863. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_release_update_notification/test_snapshot_shows_release_update_notification.svg +0 -0
  864. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_session_resume/test_snapshot_shows_resumed_session_messages.svg +0 -0
  865. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_partial.svg +0 -0
  866. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_updated.svg +0 -0
  867. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_cancel_selected.svg +0 -0
  868. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_multiple_commits.svg +0 -0
  869. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_single_commit.svg +0 -0
  870. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_complete.svg +0 -0
  871. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_required.svg +0 -0
  872. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_checking_git.svg +0 -0
  873. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_complete.svg +0 -0
  874. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_error.svg +0 -0
  875. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_pushing.svg +0 -0
  876. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_sending_token.svg +0 -0
  877. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_starting_workflow.svg +0 -0
  878. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_no_plan_message.svg +0 -0
  879. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_switch_message.svg +0 -0
  880. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_upgrade_message.svg +0 -0
  881. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_whats_new_message.svg +0 -0
  882. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/base_snapshot_test_app.py +0 -0
  883. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/conftest.py +0 -0
  884. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/snap_compare.py +0 -0
  885. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_ask_user_question.py +0 -0
  886. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_basic_conversation.py +0 -0
  887. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_code_block_horizontal_scrolling.py +0 -0
  888. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_empty_assistant_before_reasoning.py +0 -0
  889. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_modes.py +0 -0
  890. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_parallel_tool_calls.py +0 -0
  891. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_proxy_setup.py +0 -0
  892. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_question_app.py +0 -0
  893. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_reasoning_content.py +0 -0
  894. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_release_update_notification.py +0 -0
  895. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_session_resume.py +0 -0
  896. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_streaming_tool_call.py +0 -0
  897. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_teleport.py +0 -0
  898. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/snapshots/test_ui_snapshot_whats_new.py +0 -0
  899. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/stubs/fake_backend.py +0 -0
  900. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/stubs/fake_client.py +0 -0
  901. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/stubs/fake_tool.py +0 -0
  902. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_admiral.py +0 -0
  903. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_admiral_phase3.py +0 -0
  904. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_admiral_proposed.py +0 -0
  905. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_admiral_struggle_dedup.py +0 -0
  906. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_agent_auto_compact.py +0 -0
  907. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_agent_backend.py +0 -0
  908. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_agent_observer_streaming.py +0 -0
  909. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_agent_stats.py +0 -0
  910. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_agent_tasks.py +0 -0
  911. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_agent_tool_call.py +0 -0
  912. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_agents.py +0 -0
  913. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_bank_build.py +0 -0
  914. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_bank_debug.py +0 -0
  915. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_bank_multiagent.py +0 -0
  916. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_bank_prd.py +0 -0
  917. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_bank_prd_extended.py +0 -0
  918. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_bank_tools.py +0 -0
  919. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_bank_update.py +0 -0
  920. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_build_projects.py +0 -0
  921. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_checkpoint.py +0 -0
  922. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_classifier.py +0 -0
  923. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_cli_programmatic_preload.py +0 -0
  924. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_config_migration.py +0 -0
  925. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_context_recovery.py +0 -0
  926. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_current_bugs.py +0 -0
  927. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_dispatcher.py +0 -0
  928. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_drydock_regression.py +0 -0
  929. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_drydock_tasks.py +0 -0
  930. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_fake_tool_call_paren_syntax.py +0 -0
  931. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_full_regression.py +0 -0
  932. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_graphrag.py +0 -0
  933. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_hallucinated_tool_suppression.py +0 -0
  934. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_history_manager.py +0 -0
  935. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_integration.py +0 -0
  936. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_issue_fixes.py +0 -0
  937. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_local_detect.py +0 -0
  938. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_loop_detection.py +0 -0
  939. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_message_id.py +0 -0
  940. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_message_merging.py +0 -0
  941. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_middleware.py +0 -0
  942. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_multi_agent.py +0 -0
  943. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_read_file_not_found_listing.py +0 -0
  944. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_real_failures.py +0 -0
  945. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_real_issues.py +0 -0
  946. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_real_workflow.py +0 -0
  947. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_reasoning_content.py +0 -0
  948. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_retrieval_consumer.py +0 -0
  949. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_retrieve_tool.py +0 -0
  950. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_search_replace_args_not_truncated.py +0 -0
  951. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_smoke.py +0 -0
  952. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_steering.py +0 -0
  953. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_steering_hook.py +0 -0
  954. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_system_prompt.py +0 -0
  955. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_tagged_text.py +0 -0
  956. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_task_complete_nudge.py +0 -0
  957. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_tool_args.py +0 -0
  958. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_truncate_args_valid_json.py +0 -0
  959. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_truncated_arg_path_hint.py +0 -0
  960. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_truncated_search_replace_escalation.py +0 -0
  961. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_truncated_write_escalation.py +0 -0
  962. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_ui_external_editor.py +0 -0
  963. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_ui_input_history.py +0 -0
  964. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_user_issues.py +0 -0
  965. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_wall_of_text_rescue.py +0 -0
  966. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_workloads.py +0 -0
  967. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/test_write_file_missing_path.py +0 -0
  968. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/testbank_helpers.py +0 -0
  969. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_ask_user_question.py +0 -0
  970. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_bash.py +0 -0
  971. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_bash_binary_grep_hint.py +0 -0
  972. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_bash_consec_empty_search.py +0 -0
  973. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_bash_echo_escape_loop_breaker.py +0 -0
  974. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_bash_empty_search_loop_breaker.py +0 -0
  975. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_bash_error_loop_breaker.py +0 -0
  976. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_bash_exact_cmd_loop_breaker.py +0 -0
  977. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_bash_heredoc_confirmation.py +0 -0
  978. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_bash_kill_exit1_annotation.py +0 -0
  979. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_bash_python_c_syntaxerr_loop_breaker.py +0 -0
  980. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_exit_plan_mode.py +0 -0
  981. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_grep.py +0 -0
  982. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_hallucinated_retrieval_redirect.py +0 -0
  983. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_invoke_context.py +0 -0
  984. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_manager_gemma_derived_models.py +0 -0
  985. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_manager_get_tool_config.py +0 -0
  986. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_mcp.py +0 -0
  987. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_mcp_sampling.py +0 -0
  988. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_read_file_dedup_alternating_offset.py +0 -0
  989. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_read_file_dedup_reembed.py +0 -0
  990. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_read_file_directory.py +0 -0
  991. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_read_file_limit_truncation.py +0 -0
  992. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_search_replace_append_fallback.py +0 -0
  993. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_search_replace_dir_path.py +0 -0
  994. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_search_replace_empty_content.py +0 -0
  995. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_search_replace_file_not_found.py +0 -0
  996. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_search_replace_first_failure_hint.py +0 -0
  997. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_search_replace_hard_stop.py +0 -0
  998. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_search_replace_malformed_block.py +0 -0
  999. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_search_replace_no_op_loop_breaker.py +0 -0
  1000. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_search_replace_placeholder.py +0 -0
  1001. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_search_replace_refused_loop_breaker.py +0 -0
  1002. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_task.py +0 -0
  1003. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_ui_bash_execution.py +0 -0
  1004. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_webfetch.py +0 -0
  1005. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_websearch.py +0 -0
  1006. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_write_file_dedup_missing_imports.py +0 -0
  1007. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/tools/test_write_file_missing_path_hint.py +0 -0
  1008. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/update_notifier/adapters/fake_update_cache_repository.py +0 -0
  1009. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/update_notifier/adapters/fake_update_gateway.py +0 -0
  1010. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/update_notifier/test_do_update.py +0 -0
  1011. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/update_notifier/test_filesystem_update_cache_repository.py +0 -0
  1012. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/update_notifier/test_github_update_gateway.py +0 -0
  1013. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/update_notifier/test_pypi_update_gateway.py +0 -0
  1014. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/update_notifier/test_ui_update_notification.py +0 -0
  1015. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/update_notifier/test_update_use_case.py +0 -0
  1016. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/tests/update_notifier/test_whats_new.py +0 -0
  1017. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/worked_examples/README.md +0 -0
  1018. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/worked_examples/cli_subcommand_dispatch.py +0 -0
  1019. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/worked_examples/lookup.json +0 -0
  1020. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/worked_examples/sql_parser.py +0 -0
  1021. {drydock_cli-2.8.1 → drydock_cli-2.8.3}/worked_examples/tree_walking_interpreter.py +0 -0
@@ -0,0 +1 @@
1
+ 3620634
@@ -1,10 +1,10 @@
1
1
  # HLE PRD — drydock + GraphRAG + Deep Noir vs Humanity's Last Exam
2
2
 
3
- **Status as of 2026-05-06 15:55 UTC.** Update on resume.
3
+ **Status as of 2026-05-07 22:00 UTC.** Phase 2.5 ablation COMPLETE.
4
4
 
5
- ## Phase 2.5 ablation — RESULTS
5
+ ## Phase 2.5 ablation — FINAL RESULTS
6
6
 
7
- 20 baseline-failure questions, three iterations:
7
+ Phase 0v4 hit 20/20 = 100% with literal answers in retrieval. Phase 1 (worked example only) collapsed to 1/20 = 5%, indistinguishable from the no-retrieval baseline. Phase 2 (method/reasoning skeleton) hit 0/20 = 0%. The cliff is sharp: anything short of the literal answer drops Gemma 4 26B-A4B to baseline, isolating Deep Noir reasoning vectors as the only remaining lever for the half of HLE that can't be pre-seeded into a corpus.
8
8
 
9
9
  | Run | Score | Drydock state | Seed format |
10
10
  |-----|-------|---------------|-------------|
@@ -13,19 +13,21 @@
13
13
  | Phase 0'' | **18/20 = 90%** | + top-1-only marker check (commit f21eaba) | v2 seed: ANSWER+QUESTION single paragraph |
14
14
  | Phase 0''' | **17/20 = 85%** | + relative-margin path (commit 6976750) | v2 seed (same as P0'') |
15
15
  | **Phase 0v4** | **20/20 = 100%** | **+ stopword filter on queries (commit f60841c)** | **v2 seed (same as P0'')** |
16
- | Phase 1 | **1/18 5%** (in flight) | same as P0v4 | worked example replaces answer; 11 with example, 9 empty |
16
+ | **Phase 1** | **1/20 = 5%** | same as P0v4 | worked example replaces answer (11 generated, 9 empty) |
17
+ | **Phase 2** | **0/20 = 0%** | same as P0v4 | numbered method/reasoning steps; no example, no answer |
18
+ | Baseline (no retrieval) | ~5% | same as P0v4 | n/a (model alone) |
19
+
20
+ ### Detail
17
21
 
18
22
  **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)**.
19
23
 
20
24
  **Phase 0v4 closed the last gap to 20/20 = 100%.** The stopword filter (`drydock/graphrag/storage.py::_tokenize_query`) drops English stopwords + HLE-prompt-template wrappers from query-side tokens. Index-side tokenizer keeps stopwords for accurate IDF accounting; only scoring drops them. Combined with a lower DOMINANCE_SCORE=15 (was 30) — necessary because absolute scores shrink when fewer terms are scored — the relative-margin path now fires on narrow trivia. Q5 (Boston/Ovosodo) went from "wrong chunk top-1, score 75.1" → "right chunk top-1, score 46.2 with 5.8× dominance"; Q12 (Nunavut) went from not in top-4 → top-1 with 9.1× dominance.
21
25
 
22
- **Phase 0 cycle complete.** With the literal answer in GraphRAG and drydock's authoritative-recognition + retrieval improvements, drydock + Gemma 4 26B-A4B solves 20/20 of the v1 baseline failures across all 8 categories.
23
-
24
- **Phase 1 (worked example, in flight)**: removed the literal `ANSWER:` line and replaced with a similar-but-distinct worked example (11/20 generated by gemma4 itself; 9/20 empty due to thinking-budget exhaustion — left as natural fallback). At 18/20 done: **1/18 = ~5% correct** — basically baseline. This isolates the model-trust mechanism: when the literal answer is in retrieval, drydock can steer the model to copy it (90%+); when only a similar-but-different worked example is provided, the model can't extract the pattern and drops to baseline. **Deep Noir steering is the leverage to bridge this gap.**
26
+ **Phase 1 (worked example, final 1/20 = 5%)**: removed the literal `ANSWER:` line and replaced with a similar-but-distinct worked example (11/20 generated by gemma4 itself; 9/20 empty due to thinking-budget exhaustion left as natural fallback). Statistically indistinguishable from the no-retrieval baseline.
25
27
 
26
- **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.**
28
+ **Phase 2 (method/reasoning skeleton, final 0/20 = 0%)**: replaced the worked example with numbered, abstract reasoning steps for the question's category. Even worse than Phase 1 method text occupies retrieval-context budget without contributing usable signal.
27
29
 
28
- 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.
30
+ **Implications:** drydock's retrieval+steering pipeline is solved (100% when the answer is present); GraphRAG corpus quality is the only lever for ~half of HLE (mechanical ingestion work); Deep Noir reasoning vectors are the only lever for the other half. Phase 3 is the next experiment.
29
31
 
30
32
  ## Thesis
31
33
 
@@ -175,17 +177,17 @@ existing hook applies them. This is the user's research domain.
175
177
  - ⏳ Re-run HLE; measure delta vs Phase 2
176
178
  - Expected delta: 0 to +3 points; high variance, open research
177
179
 
178
- ## Currently running / in flight (2026-05-06)
180
+ ## Currently running / in flight (2026-05-07)
179
181
 
180
182
  | Thing | PID | Log | Notes |
181
183
  |-------|-----|-----|-------|
182
- | **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 |
184
+ | **HLE Phase 2.5 ablation** | n/a | `/data3/arxiv_corpus/hle_experiment/runs/phase{0,1,2}/` | COMPLETE. Phase 0v4 = 20/20, Phase 1 = 1/20, Phase 2 = 0/20. Conclusion: cliff between literal-answer and any abstraction; Deep Noir is the only remaining lever |
183
185
  | arXiv fetcher | 3188305 | `/data3/arxiv_corpus/logs/fetch2.log` | physics ~1M, still going. Math complete (753K). Resumable via state files |
184
186
  | stress harness | `/tmp/stress_pid.txt` (3179079) | `/tmp/stress_*.log` | restarted 09:00 UTC from checkpoint step 436; on plugin features section |
185
187
  | llm_balancer | `/tmp/llm_balancer.pid` | `/data3/drydock/logs/balancer.log` | :8001, 2 backends |
186
188
  | llamacpp-gemma4 (remus) | docker | `docker logs llamacpp-gemma4` | restart=unless-stopped |
187
189
  | llama-server (romulus) | `/tmp/llama_server.pid` on 192.168.50.21 | ssh `tail /data2/logs/llama-server.log` | nohup, no auto-restart yet |
188
- | 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 |
190
+ | auto_release cron | n/a | `/data3/drydock/logs/auto_release.log` | 0/6/12/18 CDT = 05/11/17/23 UTC. Latest: v2.8.2 at 18:00 UTC |
189
191
 
190
192
  ## Resume checklist (if connection dropped)
191
193
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: drydock-cli
3
- Version: 2.8.1
3
+ Version: 2.8.3
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
@@ -224,6 +224,43 @@ uv tool install drydock-cli
224
224
  > trace back to missing vLLM flags (`--tool-call-parser gemma4`,
225
225
  > `--enable-auto-tool-choice`) or temperature/thinking config drift.
226
226
 
227
+ ### Windows: `drydock` not found after install
228
+
229
+ Pip on Windows often warns:
230
+
231
+ ```
232
+ WARNING: The scripts drydock.exe and drydock-acp.exe are installed in
233
+ 'C:\Users\<you>\AppData\Roaming\Python\Python3xx\Scripts' which is not on PATH.
234
+ ```
235
+
236
+ This is a generic `pip install --user` warning, not a drydock bug — Windows
237
+ doesn't add the per-user scripts directory to `PATH` by default. Three
238
+ workarounds, in increasing convenience:
239
+
240
+ **Option A — invoke without the shim (always works):**
241
+ ```powershell
242
+ python -m drydock
243
+ ```
244
+
245
+ **Option B — install in a venv (recommended):**
246
+ ```powershell
247
+ python -m venv .venv
248
+ .\.venv\Scripts\Activate.ps1
249
+ pip install drydock-cli
250
+ drydock
251
+ ```
252
+
253
+ **Option C — add the user-scripts directory to PATH once.** Drydock ships
254
+ a one-shot helper:
255
+ ```powershell
256
+ python -m drydock --fix-windows-path
257
+ ```
258
+ This appends `%APPDATA%\Python\Python3xx\Scripts` to your **user** `PATH`
259
+ environment variable (no admin required, no system PATH touched). Open a
260
+ fresh PowerShell session and `drydock` will resolve. To do it manually:
261
+ **System Properties → Environment Variables → User variables → Path → Edit
262
+ → New →** paste the directory the warning printed.
263
+
227
264
  ## Quick Start
228
265
 
229
266
  ```bash
@@ -169,6 +169,43 @@ uv tool install drydock-cli
169
169
  > trace back to missing vLLM flags (`--tool-call-parser gemma4`,
170
170
  > `--enable-auto-tool-choice`) or temperature/thinking config drift.
171
171
 
172
+ ### Windows: `drydock` not found after install
173
+
174
+ Pip on Windows often warns:
175
+
176
+ ```
177
+ WARNING: The scripts drydock.exe and drydock-acp.exe are installed in
178
+ 'C:\Users\<you>\AppData\Roaming\Python\Python3xx\Scripts' which is not on PATH.
179
+ ```
180
+
181
+ This is a generic `pip install --user` warning, not a drydock bug — Windows
182
+ doesn't add the per-user scripts directory to `PATH` by default. Three
183
+ workarounds, in increasing convenience:
184
+
185
+ **Option A — invoke without the shim (always works):**
186
+ ```powershell
187
+ python -m drydock
188
+ ```
189
+
190
+ **Option B — install in a venv (recommended):**
191
+ ```powershell
192
+ python -m venv .venv
193
+ .\.venv\Scripts\Activate.ps1
194
+ pip install drydock-cli
195
+ drydock
196
+ ```
197
+
198
+ **Option C — add the user-scripts directory to PATH once.** Drydock ships
199
+ a one-shot helper:
200
+ ```powershell
201
+ python -m drydock --fix-windows-path
202
+ ```
203
+ This appends `%APPDATA%\Python\Python3xx\Scripts` to your **user** `PATH`
204
+ environment variable (no admin required, no system PATH touched). Open a
205
+ fresh PowerShell session and `drydock` will resolve. To do it manually:
206
+ **System Properties → Environment Variables → User variables → Path → Edit
207
+ → New →** paste the directory the warning printed.
208
+
172
209
  ## Quick Start
173
210
 
174
211
  ```bash
@@ -65,6 +65,15 @@ def load_config_or_exit() -> DrydockConfig:
65
65
  def bootstrap_config_files() -> None:
66
66
  mgr = get_harness_files_manager()
67
67
  config_file = mgr.user_config_file
68
+ if config_file.exists():
69
+ # Forward-migrate existing configs: add any new schema keys
70
+ # (e.g. context_window, auto_compact_threshold) that drydock has
71
+ # introduced since the file was first written. Safe and idempotent.
72
+ try:
73
+ from drydock.core.config.migrate import migrate_user_config
74
+ migrate_user_config(config_file)
75
+ except Exception as e: # migration must never break startup
76
+ logger.debug("config migration failed: %s", e)
68
77
  if not config_file.exists():
69
78
  try:
70
79
  config_file.parent.mkdir(parents=True, exist_ok=True)
@@ -89,6 +98,20 @@ def bootstrap_config_files() -> None:
89
98
  f" To use a different LLM, run [cyan]drydock --setup[/] "
90
99
  f"or edit [cyan]{config_file}[/]"
91
100
  )
101
+ else:
102
+ # No local server answering — default config already
103
+ # points at llama.cpp on http://127.0.0.1:8000/v1 with
104
+ # active_model="local". Tell the user so they know what
105
+ # endpoint drydock will try, and how to point it
106
+ # elsewhere if needed.
107
+ rprint(
108
+ "[yellow]No local LLM server detected.[/]\n"
109
+ " Defaulting to [cyan]llama.cpp at "
110
+ "http://127.0.0.1:8000/v1[/] (OpenAI-compatible).\n"
111
+ " Start a server on that port, run "
112
+ "[cyan]drydock --setup[/], or edit "
113
+ f"[cyan]{config_file}[/] to use a different URL."
114
+ )
92
115
  except Exception as e: # detection must never break first launch
93
116
  logger.debug("local-LLM detection failed: %s", e)
94
117
  with config_file.open("wb") as f:
@@ -82,6 +82,13 @@ def parse_arguments() -> argparse.Namespace:
82
82
  "or custom from ~/.drydock/agents/NAME.toml)",
83
83
  )
84
84
  parser.add_argument("--setup", action="store_true", help="Setup API key and exit")
85
+ parser.add_argument(
86
+ "--fix-windows-path",
87
+ action="store_true",
88
+ help="Add the per-user Python Scripts directory to user PATH on Windows "
89
+ "(no-op on Linux/macOS). Useful when `pip install --user drydock-cli` "
90
+ "warned that drydock.exe is not on PATH.",
91
+ )
85
92
  parser.add_argument(
86
93
  "--doctor",
87
94
  action="store_true",
@@ -186,6 +193,10 @@ def check_and_resolve_trusted_folder() -> None:
186
193
  def main() -> None:
187
194
  args = parse_arguments()
188
195
 
196
+ if getattr(args, "fix_windows_path", False):
197
+ from drydock.cli.fix_windows_path import fix_windows_path
198
+ sys.exit(fix_windows_path())
199
+
189
200
  if getattr(args, "doctor", False):
190
201
  from drydock.core.config.doctor import run_doctor
191
202
  init_harness_files_manager("user", "project")
@@ -0,0 +1,143 @@
1
+ """One-shot helper to add the per-user Python scripts dir to user PATH on Windows.
2
+
3
+ Pip installs `drydock.exe` and `drydock-acp.exe` into
4
+ `%APPDATA%\\Python\\PythonXY\\Scripts` when run as `pip install --user`.
5
+ That directory is not on `PATH` by default on Windows, so the user types
6
+ `drydock` and gets "command not found." This helper appends the
7
+ directory to the **user** PATH (HKCU\\Environment, no admin needed) and
8
+ returns. Open a fresh shell and `drydock` resolves.
9
+
10
+ Idempotent — if the directory is already on user PATH, prints a confirmation
11
+ and exits 0.
12
+
13
+ The Linux/macOS path is a no-op (returns 0 with a hint) so the same
14
+ `--fix-windows-path` flag is safe to invoke on any platform.
15
+ """
16
+ from __future__ import annotations
17
+
18
+ import os
19
+ import platform
20
+ import sys
21
+ import sysconfig
22
+ from pathlib import Path
23
+
24
+
25
+ def _user_scripts_dir() -> Path | None:
26
+ # On Windows with `pip install --user`, the per-user scripts dir is
27
+ # what `sysconfig.get_path("scripts", "nt_user")` reports. Pip prints
28
+ # this exact path in its post-install warning.
29
+ try:
30
+ path = sysconfig.get_path("scripts", "nt_user")
31
+ except KeyError:
32
+ return None
33
+ if not path:
34
+ return None
35
+ return Path(path)
36
+
37
+
38
+ def _read_user_path() -> str:
39
+ import winreg # type: ignore[import-not-found]
40
+
41
+ with winreg.OpenKey(winreg.HKEY_CURRENT_USER, "Environment", 0, winreg.KEY_READ) as key:
42
+ try:
43
+ value, _ = winreg.QueryValueEx(key, "Path")
44
+ return value
45
+ except FileNotFoundError:
46
+ return ""
47
+
48
+
49
+ def _write_user_path(new_path: str) -> None:
50
+ import winreg # type: ignore[import-not-found]
51
+
52
+ with winreg.OpenKey(
53
+ winreg.HKEY_CURRENT_USER, "Environment", 0, winreg.KEY_SET_VALUE
54
+ ) as key:
55
+ # REG_EXPAND_SZ preserves %VARS% if the user already had any.
56
+ winreg.SetValueEx(key, "Path", 0, winreg.REG_EXPAND_SZ, new_path)
57
+
58
+
59
+ def _broadcast_environment_change() -> None:
60
+ """Tell other processes that the environment changed.
61
+
62
+ Without this, freshly-spawned shells may still inherit the old PATH
63
+ until the user logs out. A WM_SETTINGCHANGE broadcast is best-effort —
64
+ PowerShell sessions started after this call will see the new value.
65
+ """
66
+ try:
67
+ import ctypes
68
+ from ctypes import wintypes
69
+
70
+ HWND_BROADCAST = 0xFFFF
71
+ WM_SETTINGCHANGE = 0x001A
72
+ SMTO_ABORTIFHUNG = 0x0002
73
+ result = wintypes.DWORD()
74
+ ctypes.windll.user32.SendMessageTimeoutW(
75
+ HWND_BROADCAST,
76
+ WM_SETTINGCHANGE,
77
+ 0,
78
+ "Environment",
79
+ SMTO_ABORTIFHUNG,
80
+ 5000,
81
+ ctypes.byref(result),
82
+ )
83
+ except Exception:
84
+ pass # best-effort; failure is harmless
85
+
86
+
87
+ def fix_windows_path() -> int:
88
+ if platform.system() != "Windows":
89
+ print(
90
+ "--fix-windows-path is a Windows-only helper. On Linux/macOS the "
91
+ "scripts dir from `pip install --user` is typically already on PATH "
92
+ "(via ~/.local/bin) or trivially added to your shell rc.",
93
+ file=sys.stderr,
94
+ )
95
+ return 0
96
+
97
+ scripts_dir = _user_scripts_dir()
98
+ if scripts_dir is None:
99
+ print(
100
+ "Could not determine the per-user scripts directory. Try running "
101
+ "`python -m site --user-base` to find your user-base, then add "
102
+ "`<user-base>\\Scripts` to PATH manually via System Properties.",
103
+ file=sys.stderr,
104
+ )
105
+ return 1
106
+
107
+ scripts_str = str(scripts_dir)
108
+ drydock_exe = scripts_dir / "drydock.exe"
109
+ if not drydock_exe.exists():
110
+ print(
111
+ f"Warning: {drydock_exe} does not exist. The scripts dir is "
112
+ f"{scripts_str} but drydock.exe is not in it — did you install "
113
+ "with `pip install --user drydock-cli`? Continuing anyway.",
114
+ file=sys.stderr,
115
+ )
116
+
117
+ try:
118
+ current = _read_user_path()
119
+ except OSError as e:
120
+ print(f"Failed to read user PATH from registry: {e}", file=sys.stderr)
121
+ return 1
122
+
123
+ # Case-insensitive match — Windows paths aren't case-sensitive.
124
+ existing_entries = [p for p in current.split(os.pathsep) if p]
125
+ already_present = any(p.lower() == scripts_str.lower() for p in existing_entries)
126
+
127
+ if already_present:
128
+ print(f"OK — {scripts_str} is already on user PATH. Nothing to do.")
129
+ return 0
130
+
131
+ new_value = (current + os.pathsep + scripts_str) if current else scripts_str
132
+ try:
133
+ _write_user_path(new_value)
134
+ except OSError as e:
135
+ print(f"Failed to write user PATH: {e}", file=sys.stderr)
136
+ return 1
137
+
138
+ _broadcast_environment_change()
139
+
140
+ print(f"Added {scripts_str} to user PATH.")
141
+ print("Open a NEW PowerShell or Command Prompt window for the change to take effect.")
142
+ print("Then run: drydock")
143
+ return 0
@@ -76,12 +76,14 @@ class EventHandler:
76
76
  loading_widget.set_status(
77
77
  f"\u2693 {get_state_term('reason')}"
78
78
  )
79
+ loading_widget.add_streamed_chars(len(event.content or ""))
79
80
  await self._handle_reasoning_message(event)
80
81
  case AssistantEvent():
81
82
  if loading_widget:
82
83
  loading_widget.set_status(
83
84
  f"\u2693 {get_state_term('reason')}"
84
85
  )
86
+ loading_widget.add_streamed_chars(len(event.content or ""))
85
87
  await self._handle_assistant_message(event)
86
88
  case ToolCallEvent():
87
89
  # Finalize assistant content stream (user-visible text) but
@@ -28,6 +28,19 @@ def _format_elapsed(seconds: int) -> str:
28
28
  return f"{hours}h{mins}m{secs}s"
29
29
 
30
30
 
31
+ # Rough chars-per-token ratio for English + code. Good enough for a
32
+ # liveness indicator — never used for billing or context-window math.
33
+ _CHARS_PER_TOKEN = 4
34
+
35
+
36
+ def _format_tokens(n_tokens: int) -> str:
37
+ if n_tokens < 1000: # noqa: PLR2004
38
+ return f"{n_tokens} tokens"
39
+ if n_tokens < 10_000: # noqa: PLR2004
40
+ return f"{n_tokens / 1000:.1f}k tokens"
41
+ return f"{n_tokens // 1000}k tokens"
42
+
43
+
31
44
  class LoadingWidget(SpinnerMixin, Static):
32
45
  TARGET_COLORS = ("#0077B6", "#0096C7", "#00B4D8", "#48CAE4", "#90E0EF")
33
46
  SPINNER_TYPE = SpinnerType.WAVE
@@ -81,6 +94,12 @@ class LoadingWidget(SpinnerMixin, Static):
81
94
  self._paused_total: float = 0.0
82
95
  self._pause_start: float | None = None
83
96
  self._last_status_change: float = 0.0
97
+ # Streaming-liveness counter. Counts characters (cheap) and
98
+ # converts to an estimated token count for display so the user
99
+ # can see the LLM is actively producing output even when the
100
+ # elapsed-seconds tick is too coarse to feel "alive."
101
+ self._streamed_chars: int = 0
102
+ self._last_displayed_tokens: int = -1
84
103
 
85
104
  def _get_easter_egg(self) -> str | None:
86
105
  EASTER_EGG_PROBABILITY = 0.10
@@ -114,6 +133,10 @@ class LoadingWidget(SpinnerMixin, Static):
114
133
  self._paused_total += time() - self._pause_start
115
134
  self._pause_start = None
116
135
 
136
+ def add_streamed_chars(self, n: int) -> None:
137
+ if n > 0:
138
+ self._streamed_chars += n
139
+
117
140
  def set_status(self, status: str) -> None:
118
141
  # Throttle status word changes to prevent flicker
119
142
  now = time()
@@ -194,11 +217,18 @@ class LoadingWidget(SpinnerMixin, Static):
194
217
  time() - self._pause_start if self._pause_start else 0
195
218
  )
196
219
  elapsed = int(time() - self.start_time - paused)
197
- if elapsed != self._last_elapsed:
220
+ tokens = self._streamed_chars // _CHARS_PER_TOKEN
221
+ if elapsed != self._last_elapsed or tokens != self._last_displayed_tokens:
198
222
  self._last_elapsed = elapsed
199
- self.hint_widget.update(
200
- f"({_format_elapsed(elapsed)} esc to interrupt)"
201
- )
223
+ self._last_displayed_tokens = tokens
224
+ if tokens > 0:
225
+ hint = (
226
+ f"({_format_elapsed(elapsed)} ↓ "
227
+ f"{_format_tokens(tokens)} · esc to interrupt)"
228
+ )
229
+ else:
230
+ hint = f"({_format_elapsed(elapsed)} esc to interrupt)"
231
+ self.hint_widget.update(hint)
202
232
 
203
233
 
204
234
  @contextmanager
@@ -1061,6 +1061,17 @@ class AgentLoop:
1061
1061
  or "nothing added to commit" in _prev_tool_result
1062
1062
  )
1063
1063
  )
1064
+ # Detect bash that returned a successful git commit output.
1065
+ # Signature: "[branch hash] message\n N file(s) changed".
1066
+ # Without this, the model stalls after commit, gets "Continue working",
1067
+ # then re-commits — wastes a round and adds a confusing duplicate commit.
1068
+ import re as _re
1069
+ _prev_bash_commit_succeeded = (
1070
+ prev_tool_name in ("bash", "run_command")
1071
+ and bool(_re.search(r"\[[\w/]+ [0-9a-f]{4,}\]", _prev_tool_result))
1072
+ and "file" in _prev_tool_result
1073
+ and "changed" in _prev_tool_result
1074
+ )
1064
1075
  if _stall_attempt == 0:
1065
1076
  if _prev_write_path_error:
1066
1077
  note = (
@@ -1094,6 +1105,12 @@ class AgentLoop:
1094
1105
  "The task is COMPLETE. Respond with a short summary of what you did "
1095
1106
  "and stop. Do NOT run another git commit or git add."
1096
1107
  )
1108
+ elif _prev_bash_commit_succeeded:
1109
+ note = (
1110
+ "Your git commit succeeded. The task is COMPLETE. "
1111
+ "Respond with a short summary of what you changed and stop. "
1112
+ "Do NOT run git add or git commit again."
1113
+ )
1097
1114
  else:
1098
1115
  note = (
1099
1116
  "Continue working. Use a tool (write_file, "
@@ -280,7 +280,7 @@ DEFAULT_PROVIDERS = [
280
280
  ),
281
281
  ProviderConfig(
282
282
  name="llamacpp",
283
- api_base="http://127.0.0.1:8080/v1",
283
+ api_base="http://127.0.0.1:8000/v1",
284
284
  api_key_env_var="", # NOTE: if you wish to use --api-key in llama-server, change this value
285
285
  ),
286
286
  ]
@@ -311,7 +311,7 @@ DEFAULT_MODELS = [
311
311
 
312
312
 
313
313
  class DrydockConfig(BaseSettings):
314
- active_model: str = "devstral-2"
314
+ active_model: str = "local"
315
315
  vim_keybindings: bool = False
316
316
  disable_welcome_banner_animation: bool = False
317
317
  autocopy_to_clipboard: bool = True
@@ -26,13 +26,17 @@ from dataclasses import dataclass
26
26
 
27
27
 
28
28
  # (label, api_base) — order matters: try most-likely first.
29
- # We try llama-server first (per the upstream PRD draft's recommended
30
- # Q3_K_M setup), then Ollama (largest install base of the four), then
31
- # vLLM (drydock's own dev stack), then LM Studio.
29
+ # Drydock's documented default is llama.cpp on port 8000 (matches the
30
+ # Q3_K_M startup recipe in CLAUDE.md and start_gemma4.sh). Probe that
31
+ # first, then fall back to llama-server's own upstream default (8080),
32
+ # Ollama, then LM Studio. Note: vLLM also commonly runs on 8000, so a
33
+ # vLLM box with an OpenAI-compat /v1 surface will be picked up by the
34
+ # first probe and labeled "llama.cpp" — harmless, both speak the same
35
+ # protocol from drydock's perspective.
32
36
  _CANDIDATE_ENDPOINTS: list[tuple[str, str]] = [
37
+ ("llama.cpp", "http://127.0.0.1:8000/v1"),
33
38
  ("llama.cpp", "http://127.0.0.1:8080/v1"),
34
39
  ("Ollama", "http://127.0.0.1:11434/v1"),
35
- ("vLLM", "http://127.0.0.1:8000/v1"),
36
40
  ("LM Studio", "http://127.0.0.1:1234/v1"),
37
41
  ]
38
42
 
@@ -0,0 +1,104 @@
1
+ """Forward-migration of existing `~/.drydock/config.toml` files.
2
+
3
+ Drydock's `ModelConfig` schema gains new fields over time (e.g. when we
4
+ introduced `context_window` so users could control the max context size
5
+ per model). Pydantic happily accepts a missing field and falls back to
6
+ the default, but the user never *sees* the knob in their config file —
7
+ so they don't know they can tune it.
8
+
9
+ This module bridges the gap. On every launch, after the existing-config
10
+ check, we walk the user's TOML and add any keys that the current
11
+ schema declares but their file doesn't have. Idempotent: if every key
12
+ is already present we don't touch the file.
13
+
14
+ Comments are not preserved (tomli_w doesn't write them, and tomlkit
15
+ isn't a hard dependency). The user's data is round-tripped through
16
+ `tomllib` → dict → `tomli_w`, so values and structure survive intact.
17
+ """
18
+ from __future__ import annotations
19
+
20
+ from pathlib import Path
21
+ import tomllib
22
+ from typing import Any
23
+
24
+ import tomli_w
25
+ from rich import print as rprint
26
+
27
+ from drydock.core.logger import logger
28
+
29
+
30
+ # Per-model defaults applied during migration. Heuristic on the model's
31
+ # `provider` field: llama.cpp boxes typically run `-c 32768`, while
32
+ # vLLM/Mistral defaults match Gemma 4's 131K. Users can override these
33
+ # in config.toml after migration.
34
+ _LLAMACPP_CONTEXT_WINDOW = 32_768
35
+ _LLAMACPP_COMPACT_HEADROOM = 4_096
36
+ _DEFAULT_CONTEXT_WINDOW = 131_072
37
+ _DEFAULT_COMPACT_HEADROOM = 4_096
38
+
39
+
40
+ def _default_window_for(provider: str) -> int:
41
+ if "llamacpp" in (provider or "").lower():
42
+ return _LLAMACPP_CONTEXT_WINDOW
43
+ return _DEFAULT_CONTEXT_WINDOW
44
+
45
+
46
+ def _default_compact_threshold_for(window: int) -> int:
47
+ headroom = (
48
+ _LLAMACPP_COMPACT_HEADROOM
49
+ if window <= _LLAMACPP_CONTEXT_WINDOW
50
+ else _DEFAULT_COMPACT_HEADROOM
51
+ )
52
+ return max(8_000, window - headroom)
53
+
54
+
55
+ def migrate_user_config(config_file: Path) -> None:
56
+ """Add any missing schema keys to the user's existing config.
57
+
58
+ Safe to call when the file is absent — returns silently. Safe to
59
+ call repeatedly — only writes when at least one key was added.
60
+ Failures (unreadable file, write error) are logged at debug level
61
+ so a broken migration never blocks startup; the eventual
62
+ `DrydockConfig.load()` call will surface any real config errors.
63
+ """
64
+ if not config_file.exists():
65
+ return
66
+
67
+ try:
68
+ with config_file.open("rb") as f:
69
+ data: dict[str, Any] = tomllib.load(f)
70
+ except (tomllib.TOMLDecodeError, OSError) as e:
71
+ logger.debug("config migration: cannot read %s: %s", config_file, e)
72
+ return
73
+
74
+ added: list[str] = []
75
+ models = data.get("models")
76
+ if isinstance(models, list):
77
+ for model in models:
78
+ if not isinstance(model, dict):
79
+ continue
80
+ label = model.get("alias") or model.get("name") or "?"
81
+ provider = model.get("provider", "")
82
+ if "context_window" not in model:
83
+ model["context_window"] = _default_window_for(provider)
84
+ added.append(f"models.{label}.context_window")
85
+ if "auto_compact_threshold" not in model:
86
+ window = model.get("context_window") or _default_window_for(provider)
87
+ model["auto_compact_threshold"] = _default_compact_threshold_for(window)
88
+ added.append(f"models.{label}.auto_compact_threshold")
89
+
90
+ if not added:
91
+ return
92
+
93
+ try:
94
+ with config_file.open("wb") as f:
95
+ tomli_w.dump(data, f)
96
+ except OSError as e:
97
+ logger.warning("config migration: cannot write %s: %s", config_file, e)
98
+ return
99
+
100
+ rprint(
101
+ f"[cyan]Drydock config migrated: added {len(added)} new "
102
+ f"key(s) to {config_file}[/]\n "
103
+ + "\n ".join(added)
104
+ )
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "drydock-cli"
3
- version = "2.8.1"
3
+ version = "2.8.3"
4
4
  description = "Local-first CLI coding agent — tested with Gemma 4 26B via vLLM"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12"