drydock-cli 2.8.9__tar.gz → 2.8.11__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 (733) hide show
  1. drydock_cli-2.8.11/.auto_release.lock +1 -0
  2. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/PKG-INFO +1 -1
  3. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/agent_loop.py +115 -8
  4. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/pyproject.toml +1 -1
  5. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/trip_log.md +226 -0
  6. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/uv.lock +1 -1
  7. drydock_cli-2.8.9/.auto_release.lock +0 -1
  8. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.github/CODEOWNERS +0 -0
  9. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.github/DISCUSSION_TEMPLATE/ideas.yml +0 -0
  10. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
  11. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  12. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.github/workflows/build-and-upload.yml +0 -0
  13. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.github/workflows/ci.yml +0 -0
  14. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.github/workflows/issue-labeler.yml +0 -0
  15. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.github/workflows/release.yml +0 -0
  16. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.gitignore +0 -0
  17. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.pre-commit-config.yaml +0 -0
  18. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.python-version +0 -0
  19. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.typos.toml +0 -0
  20. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.vscode/extensions.json +0 -0
  21. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.vscode/launch.json +0 -0
  22. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/.vscode/settings.json +0 -0
  23. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/AGENTS.md +0 -0
  24. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/Admiral.md +0 -0
  25. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/CHANGELOG.md +0 -0
  26. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/CLAUDE.md +0 -0
  27. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/CONTRIBUTING.md +0 -0
  28. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/DEEP_NOIR_PRD.md +0 -0
  29. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/DEPLOYMENT.md +0 -0
  30. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/HLE_PRD.md +0 -0
  31. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/JETSON_BENCH.md +0 -0
  32. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/LICENSE +0 -0
  33. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/MODEL_SHORTCOMINGS.md +0 -0
  34. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/NOTICE +0 -0
  35. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/README.md +0 -0
  36. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/SOVEREIGN_PRD.md +0 -0
  37. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/TRIAGE_v1.md +0 -0
  38. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/action.yml +0 -0
  39. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/README.md +0 -0
  40. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results1.tsv +0 -0
  41. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results13.tsv +0 -0
  42. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results14.tsv +0 -0
  43. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results15.tsv +0 -0
  44. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results16.tsv +0 -0
  45. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results17.tsv +0 -0
  46. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results18.tsv +0 -0
  47. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results19.tsv +0 -0
  48. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results2.tsv +0 -0
  49. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results20.tsv +0 -0
  50. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results3.tsv +0 -0
  51. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results4.tsv +0 -0
  52. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results5.tsv +0 -0
  53. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results6.tsv +0 -0
  54. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results7.tsv +0 -0
  55. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results8.tsv +0 -0
  56. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results9.tsv +0 -0
  57. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/baseline_history/results_evolved_v1.tsv +0 -0
  58. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/distribution/zed/LICENSE +0 -0
  59. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/distribution/zed/extension.toml +0 -0
  60. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/distribution/zed/icons/mistral_vibe.svg +0 -0
  61. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/README.md +0 -0
  62. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/acp-setup.md +0 -0
  63. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/archive/BASELINE_412.md +0 -0
  64. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/archive/Drydock_rebrand.md +0 -0
  65. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/archive/OVERNIGHT_PROGRESS.md +0 -0
  66. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/archive/OVERNIGHT_REPORT_2026_04_13.md +0 -0
  67. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/archive/PERF_SWEEP_PLAN.md +0 -0
  68. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/archive/PRD.md +0 -0
  69. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/archive/drydock_terms.md +0 -0
  70. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/archive/resume.md +0 -0
  71. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/docs/proxy-setup.md +0 -0
  72. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/__init__.py +0 -0
  73. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/__main__.py +0 -0
  74. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/__init__.py +0 -0
  75. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/acp_agent_loop.py +0 -0
  76. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/acp_logger.py +0 -0
  77. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/entrypoint.py +0 -0
  78. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/tools/__init__.py +0 -0
  79. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/tools/base.py +0 -0
  80. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/tools/builtins/bash.py +0 -0
  81. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/tools/builtins/read_file.py +0 -0
  82. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/tools/builtins/search_replace.py +0 -0
  83. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/tools/builtins/todo.py +0 -0
  84. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/tools/builtins/write_file.py +0 -0
  85. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/tools/session_update.py +0 -0
  86. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/acp/utils.py +0 -0
  87. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/__init__.py +0 -0
  88. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/detectors.py +0 -0
  89. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/detectors_proposed.py +0 -0
  90. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/history.py +0 -0
  91. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/interventions.py +0 -0
  92. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/llm_analyzer.py +0 -0
  93. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/metrics.py +0 -0
  94. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/opus_escalator.py +0 -0
  95. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/persistence.py +0 -0
  96. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/policy.py +0 -0
  97. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/proposer.py +0 -0
  98. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/stager.py +0 -0
  99. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/task_classifier.py +0 -0
  100. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/tuning.py +0 -0
  101. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/validator.py +0 -0
  102. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/admiral/worker.py +0 -0
  103. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/__init__.py +0 -0
  104. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/autocompletion/__init__.py +0 -0
  105. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/autocompletion/base.py +0 -0
  106. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/autocompletion/path_completion.py +0 -0
  107. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/autocompletion/slash_command.py +0 -0
  108. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/cli.py +0 -0
  109. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/clipboard.py +0 -0
  110. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/commands.py +0 -0
  111. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/entrypoint.py +0 -0
  112. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/fix_windows_path.py +0 -0
  113. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/history_manager.py +0 -0
  114. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/plan_offer/adapters/http_whoami_gateway.py +0 -0
  115. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/plan_offer/decide_plan_offer.py +0 -0
  116. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/plan_offer/ports/whoami_gateway.py +0 -0
  117. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/terminal_setup.py +0 -0
  118. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/__init__.py +0 -0
  119. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/ansi_markdown.py +0 -0
  120. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/app.py +0 -0
  121. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/app.tcss +0 -0
  122. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/external_editor.py +0 -0
  123. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/handlers/__init__.py +0 -0
  124. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/handlers/event_handler.py +0 -0
  125. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/notifications/__init__.py +0 -0
  126. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/notifications/adapters/__init__.py +0 -0
  127. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/notifications/adapters/textual_notification_adapter.py +0 -0
  128. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/notifications/ports/__init__.py +0 -0
  129. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/notifications/ports/notification_port.py +0 -0
  130. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/__init__.py +0 -0
  131. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/approval_app.py +0 -0
  132. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/banner/banner.py +0 -0
  133. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/banner/petit_chat.py +0 -0
  134. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/braille_renderer.py +0 -0
  135. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/chat_input/__init__.py +0 -0
  136. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/chat_input/body.py +0 -0
  137. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/chat_input/completion_manager.py +0 -0
  138. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/chat_input/completion_popup.py +0 -0
  139. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/chat_input/container.py +0 -0
  140. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/chat_input/text_area.py +0 -0
  141. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/checkpoint_picker.py +0 -0
  142. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/compact.py +0 -0
  143. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/config_app.py +0 -0
  144. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/context_progress.py +0 -0
  145. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/load_more.py +0 -0
  146. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/loading.py +0 -0
  147. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/messages.py +0 -0
  148. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/no_markup_static.py +0 -0
  149. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/path_display.py +0 -0
  150. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/proxy_setup_app.py +0 -0
  151. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/question_app.py +0 -0
  152. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/session_picker.py +0 -0
  153. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/spinner.py +0 -0
  154. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/status_message.py +0 -0
  155. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/teleport_message.py +0 -0
  156. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/tool_widgets.py +0 -0
  157. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/tools.py +0 -0
  158. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/widgets/vscode_compat.py +0 -0
  159. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/windowing/__init__.py +0 -0
  160. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/windowing/history.py +0 -0
  161. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/windowing/history_windowing.py +0 -0
  162. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/textual_ui/windowing/state.py +0 -0
  163. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/update_notifier/__init__.py +0 -0
  164. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/update_notifier/adapters/filesystem_update_cache_repository.py +0 -0
  165. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/update_notifier/adapters/github_update_gateway.py +0 -0
  166. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/update_notifier/adapters/pypi_update_gateway.py +0 -0
  167. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/update_notifier/ports/update_cache_repository.py +0 -0
  168. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/update_notifier/ports/update_gateway.py +0 -0
  169. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/update_notifier/update.py +0 -0
  170. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/cli/update_notifier/whats_new.py +0 -0
  171. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/__init__.py +0 -0
  172. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/agents/__init__.py +0 -0
  173. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/agents/manager.py +0 -0
  174. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/agents/models.py +0 -0
  175. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/auth/__init__.py +0 -0
  176. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/auth/crypto.py +0 -0
  177. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/auth/github.py +0 -0
  178. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/autocompletion/__init__.py +0 -0
  179. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/autocompletion/completers.py +0 -0
  180. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/autocompletion/file_indexer/__init__.py +0 -0
  181. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/autocompletion/file_indexer/ignore_rules.py +0 -0
  182. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/autocompletion/file_indexer/indexer.py +0 -0
  183. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/autocompletion/file_indexer/store.py +0 -0
  184. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/autocompletion/file_indexer/watcher.py +0 -0
  185. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/autocompletion/fuzzy.py +0 -0
  186. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/autocompletion/path_prompt.py +0 -0
  187. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/autocompletion/path_prompt_adapter.py +0 -0
  188. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/build_orchestrator.py +0 -0
  189. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/checkpoint.py +0 -0
  190. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/classifier/__init__.py +0 -0
  191. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/classifier/__main__.py +0 -0
  192. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/classifier/classifier.py +0 -0
  193. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/classifier/dispatcher.py +0 -0
  194. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/classifier/rules.py +0 -0
  195. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/classifier/signal.py +0 -0
  196. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/config/__init__.py +0 -0
  197. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/config/_dotenv.py +0 -0
  198. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/config/_settings.py +0 -0
  199. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/config/doctor.py +0 -0
  200. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/config/harness_files/__init__.py +0 -0
  201. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/config/harness_files/_harness_manager.py +0 -0
  202. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/config/harness_files/_paths.py +0 -0
  203. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/config/local_detect.py +0 -0
  204. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/config/migrate.py +0 -0
  205. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/consultant.py +0 -0
  206. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/context_recovery.py +0 -0
  207. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/drydock_states.py +0 -0
  208. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/hooks.py +0 -0
  209. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/__init__.py +0 -0
  210. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/backend/anthropic.py +0 -0
  211. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/backend/base.py +0 -0
  212. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/backend/factory.py +0 -0
  213. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/backend/generic.py +0 -0
  214. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/backend/mistral.py +0 -0
  215. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/backend/reasoning_adapter.py +0 -0
  216. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/backend/vertex.py +0 -0
  217. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/exceptions.py +0 -0
  218. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/format.py +0 -0
  219. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/message_utils.py +0 -0
  220. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/llm/types.py +0 -0
  221. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/logger.py +0 -0
  222. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/middleware.py +0 -0
  223. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/output_formatters.py +0 -0
  224. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/paths/__init__.py +0 -0
  225. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/paths/_drydock_home.py +0 -0
  226. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/paths/_local_config_walk.py +0 -0
  227. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/paths/conventions.py +0 -0
  228. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/plan_session.py +0 -0
  229. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/plugins.py +0 -0
  230. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/programmatic.py +0 -0
  231. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/__init__.py +0 -0
  232. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/builder.md +0 -0
  233. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/cli.md +0 -0
  234. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/compact.md +0 -0
  235. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/dangerous_directory.md +0 -0
  236. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/diagnostic.md +0 -0
  237. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/explore.md +0 -0
  238. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/gemma4.md +0 -0
  239. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/planner.md +0 -0
  240. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/project_context.md +0 -0
  241. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/prompts/tests.md +0 -0
  242. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/proxy_setup.py +0 -0
  243. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/session/agent_memory.py +0 -0
  244. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/session/checkpoints.py +0 -0
  245. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/session/session_loader.py +0 -0
  246. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/session/session_logger.py +0 -0
  247. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/session/session_migration.py +0 -0
  248. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/session/state_file.py +0 -0
  249. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/session_checker.py +0 -0
  250. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/skills/__init__.py +0 -0
  251. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/skills/manager.py +0 -0
  252. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/skills/models.py +0 -0
  253. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/skills/parser.py +0 -0
  254. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/slug.py +0 -0
  255. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/steering_hook.py +0 -0
  256. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/system_prompt.py +0 -0
  257. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/telemetry/__init__.py +0 -0
  258. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/telemetry/send.py +0 -0
  259. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/teleport/errors.py +0 -0
  260. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/teleport/git.py +0 -0
  261. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/teleport/nuage.py +0 -0
  262. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/teleport/teleport.py +0 -0
  263. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/teleport/types.py +0 -0
  264. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/base.py +0 -0
  265. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/_task_manager.py +0 -0
  266. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/ask_user_question.py +0 -0
  267. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/bash.py +0 -0
  268. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/cron.py +0 -0
  269. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/exit_plan_mode.py +0 -0
  270. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/glob_tool.py +0 -0
  271. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/grep.py +0 -0
  272. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/invoke_skill.py +0 -0
  273. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/lsp.py +0 -0
  274. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/mcp_resources.py +0 -0
  275. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/notebook_edit.py +0 -0
  276. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/powershell.py +0 -0
  277. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/__init__.py +0 -0
  278. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/ask_user_question.md +0 -0
  279. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/bash.md +0 -0
  280. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/cron.md +0 -0
  281. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/glob.md +0 -0
  282. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/grep.md +0 -0
  283. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/invoke_skill.md +0 -0
  284. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/lsp.md +0 -0
  285. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/mcp_resources.md +0 -0
  286. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/notebook_edit.md +0 -0
  287. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/powershell.md +0 -0
  288. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/read_file.md +0 -0
  289. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/retrieve.md +0 -0
  290. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/search_replace.md +0 -0
  291. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/swe_bench.md +0 -0
  292. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/task.md +0 -0
  293. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/task_manager.md +0 -0
  294. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/todo.md +0 -0
  295. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/tool_search.md +0 -0
  296. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/webfetch.md +0 -0
  297. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/websearch.md +0 -0
  298. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/worktree.md +0 -0
  299. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/prompts/write_file.md +0 -0
  300. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/read_file.py +0 -0
  301. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/retrieve.py +0 -0
  302. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/search_replace.py +0 -0
  303. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/task.py +0 -0
  304. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/todo.py +0 -0
  305. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/tool_search.py +0 -0
  306. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/webfetch.py +0 -0
  307. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/websearch.py +0 -0
  308. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/worktree.py +0 -0
  309. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/builtins/write_file.py +0 -0
  310. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/injection_guard.py +0 -0
  311. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/manager.py +0 -0
  312. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/mcp/__init__.py +0 -0
  313. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/mcp/registry.py +0 -0
  314. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/mcp/tools.py +0 -0
  315. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/mcp_sampling.py +0 -0
  316. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/ui.py +0 -0
  317. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/tools/utils.py +0 -0
  318. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/trusted_folders.py +0 -0
  319. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/types.py +0 -0
  320. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/core/utils.py +0 -0
  321. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/graphrag/__init__.py +0 -0
  322. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/graphrag/__main__.py +0 -0
  323. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/graphrag/code_indexer.py +0 -0
  324. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/graphrag/retriever.py +0 -0
  325. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/graphrag/storage.py +0 -0
  326. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/graphrag/text_indexer.py +0 -0
  327. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/setup/onboarding/__init__.py +0 -0
  328. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/setup/onboarding/base.py +0 -0
  329. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/setup/onboarding/onboarding.tcss +0 -0
  330. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/setup/onboarding/screens/__init__.py +0 -0
  331. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/setup/onboarding/screens/api_key.py +0 -0
  332. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/setup/onboarding/screens/choice.py +0 -0
  333. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/setup/onboarding/screens/local_model.py +0 -0
  334. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/setup/onboarding/screens/welcome.py +0 -0
  335. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/setup/trusted_folders/trust_folder_dialog.py +0 -0
  336. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/setup/trusted_folders/trust_folder_dialog.tcss +0 -0
  337. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/__init__.py +0 -0
  338. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/api-design/SKILL.md +0 -0
  339. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/audit-tests/SKILL.md +0 -0
  340. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/batch/SKILL.md +0 -0
  341. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/commit-code/SKILL.md +0 -0
  342. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/context-summary/SKILL.md +0 -0
  343. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/create-presentation/SKILL.md +0 -0
  344. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/deep-research/SKILL.md +0 -0
  345. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/deploy/SKILL.md +0 -0
  346. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/diff-review/SKILL.md +0 -0
  347. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/doc-gen/SKILL.md +0 -0
  348. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/explain-code/SKILL.md +0 -0
  349. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/explore-code/SKILL.md +0 -0
  350. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/fix-issue/SKILL.md +0 -0
  351. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/git-ops/SKILL.md +0 -0
  352. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/init-project/SKILL.md +0 -0
  353. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/investigate/SKILL.md +0 -0
  354. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/loop/SKILL.md +0 -0
  355. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/migrate/SKILL.md +0 -0
  356. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/perf-analyze/SKILL.md +0 -0
  357. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/plan-impl/SKILL.md +0 -0
  358. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/pr-review/SKILL.md +0 -0
  359. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/refactor/SKILL.md +0 -0
  360. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/regex-help/SKILL.md +0 -0
  361. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/review/SKILL.md +0 -0
  362. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/security-review/SKILL.md +0 -0
  363. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/ship/SKILL.md +0 -0
  364. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/simplify/SKILL.md +0 -0
  365. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/strong-tests/SKILL.md +0 -0
  366. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/skills/test-verify/SKILL.md +0 -0
  367. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/steering/__init__.py +0 -0
  368. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/steering/__main__.py +0 -0
  369. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/steering/applier.py +0 -0
  370. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/steering/config.py +0 -0
  371. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/steering/registry.py +0 -0
  372. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/steering/sandbox.py +0 -0
  373. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/steering/sidecar/__init__.py +0 -0
  374. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/steering/sidecar/header_parser.py +0 -0
  375. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/steering/sidecar/server.py +0 -0
  376. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/steering/vectors.py +0 -0
  377. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock/whats_new.md +0 -0
  378. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/drydock-acp.spec +0 -0
  379. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/flake.lock +0 -0
  380. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/flake.nix +0 -0
  381. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/research/README.md +0 -0
  382. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/research/config_base.toml +0 -0
  383. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/research/config_best.toml +0 -0
  384. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/research/domain_spec.md +0 -0
  385. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/research/experimenter.py +0 -0
  386. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/research/kernel.py +0 -0
  387. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/research/mini_prd.md +0 -0
  388. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/research/mini_prompts.txt +0 -0
  389. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/research/proposer.py +0 -0
  390. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/research/results.tsv +0 -0
  391. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/README.md +0 -0
  392. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/admiral_probe.py +0 -0
  393. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/archive/auto_test_loop.sh +0 -0
  394. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/archive/monitor_test_battery.sh +0 -0
  395. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/archive/overnight_agents_test.sh +0 -0
  396. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/archive/test_bank.sh +0 -0
  397. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/archive/test_full.sh +0 -0
  398. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/archive/test_smoke.sh +0 -0
  399. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/archive/tui_test.py +0 -0
  400. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/audit_sampler.py +0 -0
  401. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/auto_generate_tests.py +0 -0
  402. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/auto_release.sh +0 -0
  403. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/autonomous_review.sh +0 -0
  404. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/autonomous_review_prompt.md +0 -0
  405. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/backup.sh +0 -0
  406. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/bump_version.py +0 -0
  407. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/classify_pulse.sh +0 -0
  408. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/consume_retrieval_queue.py +0 -0
  409. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/deploy_to_github.sh +0 -0
  410. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/fetch_arxiv_abstracts.py +0 -0
  411. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/gen_2000_prompts.py +0 -0
  412. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/hle_eval.py +0 -0
  413. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/hle_eval_seed.jsonl +0 -0
  414. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/llm_balancer.py +0 -0
  415. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/notify_release.py +0 -0
  416. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/perf_baseline_when_idle.sh +0 -0
  417. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/perf_sweep.py +0 -0
  418. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/poll_issues.sh +0 -0
  419. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/publish_to_pypi.sh +0 -0
  420. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/queue_top.py +0 -0
  421. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/ralph_loop.py +0 -0
  422. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/research_babysitter.sh +0 -0
  423. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/shakedown.py +0 -0
  424. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/shakedown_interactive.py +0 -0
  425. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/shakedown_suite.sh +0 -0
  426. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/shakedown_variance.sh +0 -0
  427. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/start_steering_sidecar.sh +0 -0
  428. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/stress_babysitter.sh +0 -0
  429. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/stress_prompts_50.txt +0 -0
  430. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/stress_prompts_realuser.txt +0 -0
  431. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/stress_prompts_tool_agent.txt +0 -0
  432. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/stress_prompts_tool_agent_2000.txt +0 -0
  433. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/stress_shakedown.py +0 -0
  434. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/stress_telegram_status.py +0 -0
  435. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/stress_watcher.py +0 -0
  436. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/telegram_bot.py +0 -0
  437. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/scripts/vllm_failover.sh +0 -0
  438. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/__init__.py +0 -0
  439. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/conftest.py +0 -0
  440. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_acp.py +0 -0
  441. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_agent_thought.py +0 -0
  442. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_bash.py +0 -0
  443. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_compact_session_updates.py +0 -0
  444. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_content.py +0 -0
  445. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_initialize.py +0 -0
  446. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_list_sessions.py +0 -0
  447. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_load_session.py +0 -0
  448. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_multi_session.py +0 -0
  449. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_new_session.py +0 -0
  450. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_proxy_setup_acp.py +0 -0
  451. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_read_file.py +0 -0
  452. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_search_replace.py +0 -0
  453. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_set_config_option.py +0 -0
  454. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_set_mode.py +0 -0
  455. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_set_model.py +0 -0
  456. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_tool_call_session_update.py +0 -0
  457. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_utils.py +0 -0
  458. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/acp/test_write_file.py +0 -0
  459. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/autocompletion/test_file_indexer.py +0 -0
  460. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/autocompletion/test_fuzzy.py +0 -0
  461. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/autocompletion/test_path_completer_fuzzy.py +0 -0
  462. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/autocompletion/test_path_completer_recursive.py +0 -0
  463. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/autocompletion/test_path_completion_controller.py +0 -0
  464. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/autocompletion/test_path_prompt_transformer.py +0 -0
  465. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/autocompletion/test_slash_command_controller.py +0 -0
  466. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/autocompletion/test_ui_chat_autocompletion.py +0 -0
  467. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/backend/__init__.py +0 -0
  468. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/backend/data/__init__.py +0 -0
  469. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/backend/data/fireworks.py +0 -0
  470. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/backend/data/mistral.py +0 -0
  471. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/backend/test_anthropic_adapter.py +0 -0
  472. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/backend/test_backend.py +0 -0
  473. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/backend/test_generic_adapter_sanitize.py +0 -0
  474. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/backend/test_reasoning_adapter.py +0 -0
  475. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/backend/test_vertex_anthropic_adapter.py +0 -0
  476. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/plan_offer/adapters/fake_whoami_gateway.py +0 -0
  477. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/plan_offer/test_decide_plan_offer.py +0 -0
  478. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/plan_offer/test_http_whoami_gateway.py +0 -0
  479. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_bell_notifications.py +0 -0
  480. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_braille_renderer.py +0 -0
  481. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_clipboard.py +0 -0
  482. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_commands.py +0 -0
  483. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_copy_shortcuts.py +0 -0
  484. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_external_editor.py +0 -0
  485. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_no_markup_static.py +0 -0
  486. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_question_app.py +0 -0
  487. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_spinner.py +0 -0
  488. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_switching_mode.py +0 -0
  489. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_ui_clipboard_notifications.py +0 -0
  490. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_ui_session_incremental_renderer.py +0 -0
  491. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_ui_session_resume.py +0 -0
  492. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/test_ui_skill_dispatch.py +0 -0
  493. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/textual_ui/__init__.py +0 -0
  494. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/cli/textual_ui/test_session_picker.py +0 -0
  495. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/conftest.py +0 -0
  496. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_agents.py +0 -0
  497. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_auth_crypto.py +0 -0
  498. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_auth_github.py +0 -0
  499. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_circuit_breaker_count_escalation.py +0 -0
  500. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_circuit_breaker_readonly_threshold.py +0 -0
  501. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_config_load_dotenv.py +0 -0
  502. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_config_paths.py +0 -0
  503. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_config_resolution.py +0 -0
  504. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_file_logging.py +0 -0
  505. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_plan_session.py +0 -0
  506. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_proxy_setup.py +0 -0
  507. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_slug.py +0 -0
  508. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_telemetry_send.py +0 -0
  509. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_teleport_git.py +0 -0
  510. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_teleport_nuage.py +0 -0
  511. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_teleport_service.py +0 -0
  512. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_trusted_folders.py +0 -0
  513. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/core/test_utils.py +0 -0
  514. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/e2e/common.py +0 -0
  515. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/e2e/conftest.py +0 -0
  516. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/e2e/mock_server.py +0 -0
  517. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/e2e/test_cli_tui_onboarding.py +0 -0
  518. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/e2e/test_cli_tui_streaming.py +0 -0
  519. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/e2e/test_cli_tui_tool_approval.py +0 -0
  520. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/fixtures/doc_qa_system_prd.md +0 -0
  521. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/mock/__init__.py +0 -0
  522. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/mock/mock_backend_factory.py +0 -0
  523. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/mock/mock_entrypoint.py +0 -0
  524. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/mock/utils.py +0 -0
  525. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/onboarding/test_run_onboarding.py +0 -0
  526. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/onboarding/test_ui_onboarding.py +0 -0
  527. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/session/test_session_loader.py +0 -0
  528. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/session/test_session_logger.py +0 -0
  529. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/session/test_session_migration.py +0 -0
  530. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/skills/conftest.py +0 -0
  531. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/skills/test_manager.py +0 -0
  532. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/skills/test_models.py +0 -0
  533. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/skills/test_parser.py +0 -0
  534. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_collapsed.svg +0 -0
  535. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_expanded.svg +0 -0
  536. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_basic_conversation/test_snapshot_shows_basic_conversation.svg +0 -0
  537. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_code_block_horizontal_scrolling/test_snapshot_allows_horizontal_scrolling_for_long_code_blocks.svg +0 -0
  538. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_empty_assistant_before_reasoning/test_snapshot_empty_assistant_removed_when_reasoning_starts.svg +0 -0
  539. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_accept_edits_mode.svg +0 -0
  540. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_auto_approve_mode.svg +0 -0
  541. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_plan_mode.svg +0 -0
  542. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_wraps_to_default.svg +0 -0
  543. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_default_mode.svg +0 -0
  544. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_pending.svg +0 -0
  545. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_resolved.svg +0 -0
  546. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_cancel_discards_changes.svg +0 -0
  547. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_edit_existing_values.svg +0 -0
  548. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_empty.svg +0 -0
  549. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_with_values.svg +0 -0
  550. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_error.svg +0 -0
  551. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_new_values.svg +0 -0
  552. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_answer_first_advance.svg +0 -0
  553. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_first_answered_checkmark.svg +0 -0
  554. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_initial.svg +0 -0
  555. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_left_wraps.svg +0 -0
  556. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_right.svg +0 -0
  557. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_tab_to_second.svg +0 -0
  558. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_initial.svg +0 -0
  559. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_mixed_selection.svg +0 -0
  560. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_navigate_to_submit.svg +0 -0
  561. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_other_with_text.svg +0 -0
  562. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_first.svg +0 -0
  563. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_multiple.svg +0 -0
  564. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_untoggle.svg +0 -0
  565. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_initial.svg +0 -0
  566. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_down.svg +0 -0
  567. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_other.svg +0 -0
  568. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_third_option.svg +0 -0
  569. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_up_wraps.svg +0 -0
  570. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_other_typing.svg +0 -0
  571. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_buffered_reasoning_yields_before_content.svg +0 -0
  572. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_interleaved_reasoning.svg +0 -0
  573. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content.svg +0 -0
  574. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content_expanded.svg +0 -0
  575. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_release_update_notification/test_snapshot_shows_release_update_notification.svg +0 -0
  576. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_session_resume/test_snapshot_shows_resumed_session_messages.svg +0 -0
  577. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_partial.svg +0 -0
  578. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_updated.svg +0 -0
  579. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_cancel_selected.svg +0 -0
  580. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_multiple_commits.svg +0 -0
  581. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_single_commit.svg +0 -0
  582. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_complete.svg +0 -0
  583. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_required.svg +0 -0
  584. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_checking_git.svg +0 -0
  585. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_complete.svg +0 -0
  586. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_error.svg +0 -0
  587. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_pushing.svg +0 -0
  588. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_sending_token.svg +0 -0
  589. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_starting_workflow.svg +0 -0
  590. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_no_plan_message.svg +0 -0
  591. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_switch_message.svg +0 -0
  592. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_upgrade_message.svg +0 -0
  593. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_whats_new_message.svg +0 -0
  594. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/base_snapshot_test_app.py +0 -0
  595. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/conftest.py +0 -0
  596. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/snap_compare.py +0 -0
  597. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_ask_user_question.py +0 -0
  598. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_basic_conversation.py +0 -0
  599. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_code_block_horizontal_scrolling.py +0 -0
  600. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_empty_assistant_before_reasoning.py +0 -0
  601. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_modes.py +0 -0
  602. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_parallel_tool_calls.py +0 -0
  603. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_proxy_setup.py +0 -0
  604. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_question_app.py +0 -0
  605. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_reasoning_content.py +0 -0
  606. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_release_update_notification.py +0 -0
  607. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_session_resume.py +0 -0
  608. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_streaming_tool_call.py +0 -0
  609. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_teleport.py +0 -0
  610. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/snapshots/test_ui_snapshot_whats_new.py +0 -0
  611. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/stubs/fake_backend.py +0 -0
  612. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/stubs/fake_client.py +0 -0
  613. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/stubs/fake_tool.py +0 -0
  614. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_admiral.py +0 -0
  615. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_admiral_phase3.py +0 -0
  616. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_admiral_proposed.py +0 -0
  617. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_admiral_struggle_dedup.py +0 -0
  618. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_agent_auto_compact.py +0 -0
  619. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_agent_backend.py +0 -0
  620. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_agent_observer_streaming.py +0 -0
  621. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_agent_stats.py +0 -0
  622. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_agent_tasks.py +0 -0
  623. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_agent_tool_call.py +0 -0
  624. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_agents.py +0 -0
  625. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_bank_build.py +0 -0
  626. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_bank_debug.py +0 -0
  627. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_bank_multiagent.py +0 -0
  628. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_bank_prd.py +0 -0
  629. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_bank_prd_extended.py +0 -0
  630. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_bank_tools.py +0 -0
  631. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_bank_update.py +0 -0
  632. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_build_projects.py +0 -0
  633. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_checkpoint.py +0 -0
  634. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_classifier.py +0 -0
  635. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_cli_programmatic_preload.py +0 -0
  636. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_config_migration.py +0 -0
  637. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_context_recovery.py +0 -0
  638. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_current_bugs.py +0 -0
  639. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_dispatcher.py +0 -0
  640. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_drydock_regression.py +0 -0
  641. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_drydock_tasks.py +0 -0
  642. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_fake_tool_call_paren_syntax.py +0 -0
  643. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_full_regression.py +0 -0
  644. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_graphrag.py +0 -0
  645. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_hallucinated_tool_suppression.py +0 -0
  646. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_history_manager.py +0 -0
  647. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_integration.py +0 -0
  648. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_issue_fixes.py +0 -0
  649. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_local_detect.py +0 -0
  650. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_loop_detection.py +0 -0
  651. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_message_id.py +0 -0
  652. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_message_merging.py +0 -0
  653. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_middleware.py +0 -0
  654. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_multi_agent.py +0 -0
  655. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_read_file_not_found_listing.py +0 -0
  656. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_real_failures.py +0 -0
  657. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_real_issues.py +0 -0
  658. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_real_workflow.py +0 -0
  659. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_reasoning_content.py +0 -0
  660. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_retrieval_consumer.py +0 -0
  661. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_retrieve_tool.py +0 -0
  662. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_search_replace_args_not_truncated.py +0 -0
  663. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_smoke.py +0 -0
  664. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_steering.py +0 -0
  665. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_steering_hook.py +0 -0
  666. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_system_prompt.py +0 -0
  667. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_tagged_text.py +0 -0
  668. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_task_complete_nudge.py +0 -0
  669. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_tool_args.py +0 -0
  670. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_truncate_args_valid_json.py +0 -0
  671. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_truncated_arg_path_hint.py +0 -0
  672. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_truncated_search_replace_escalation.py +0 -0
  673. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_truncated_write_escalation.py +0 -0
  674. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_ui_external_editor.py +0 -0
  675. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_ui_input_history.py +0 -0
  676. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_user_issues.py +0 -0
  677. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_wall_of_text_rescue.py +0 -0
  678. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_workloads.py +0 -0
  679. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/test_write_file_missing_path.py +0 -0
  680. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/testbank_helpers.py +0 -0
  681. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_ask_user_question.py +0 -0
  682. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_bash.py +0 -0
  683. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_bash_binary_grep_hint.py +0 -0
  684. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_bash_consec_empty_search.py +0 -0
  685. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_bash_echo_escape_loop_breaker.py +0 -0
  686. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_bash_empty_search_loop_breaker.py +0 -0
  687. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_bash_error_loop_breaker.py +0 -0
  688. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_bash_exact_cmd_loop_breaker.py +0 -0
  689. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_bash_heredoc_confirmation.py +0 -0
  690. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_bash_kill_exit1_annotation.py +0 -0
  691. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_bash_python_c_syntaxerr_loop_breaker.py +0 -0
  692. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_exit_plan_mode.py +0 -0
  693. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_grep.py +0 -0
  694. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_hallucinated_retrieval_redirect.py +0 -0
  695. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_invoke_context.py +0 -0
  696. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_manager_gemma_derived_models.py +0 -0
  697. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_manager_get_tool_config.py +0 -0
  698. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_mcp.py +0 -0
  699. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_mcp_sampling.py +0 -0
  700. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_read_file_dedup_alternating_offset.py +0 -0
  701. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_read_file_dedup_reembed.py +0 -0
  702. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_read_file_directory.py +0 -0
  703. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_read_file_limit_truncation.py +0 -0
  704. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_search_replace_append_fallback.py +0 -0
  705. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_search_replace_dir_path.py +0 -0
  706. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_search_replace_empty_content.py +0 -0
  707. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_search_replace_file_not_found.py +0 -0
  708. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_search_replace_first_failure_hint.py +0 -0
  709. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_search_replace_hard_stop.py +0 -0
  710. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_search_replace_malformed_block.py +0 -0
  711. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_search_replace_no_op_loop_breaker.py +0 -0
  712. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_search_replace_placeholder.py +0 -0
  713. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_search_replace_refused_loop_breaker.py +0 -0
  714. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_task.py +0 -0
  715. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_ui_bash_execution.py +0 -0
  716. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_webfetch.py +0 -0
  717. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_websearch.py +0 -0
  718. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_write_file_dedup_missing_imports.py +0 -0
  719. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/tools/test_write_file_missing_path_hint.py +0 -0
  720. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/update_notifier/adapters/fake_update_cache_repository.py +0 -0
  721. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/update_notifier/adapters/fake_update_gateway.py +0 -0
  722. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/update_notifier/test_do_update.py +0 -0
  723. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/update_notifier/test_filesystem_update_cache_repository.py +0 -0
  724. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/update_notifier/test_github_update_gateway.py +0 -0
  725. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/update_notifier/test_pypi_update_gateway.py +0 -0
  726. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/update_notifier/test_ui_update_notification.py +0 -0
  727. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/update_notifier/test_update_use_case.py +0 -0
  728. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/tests/update_notifier/test_whats_new.py +0 -0
  729. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/worked_examples/README.md +0 -0
  730. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/worked_examples/cli_subcommand_dispatch.py +0 -0
  731. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/worked_examples/lookup.json +0 -0
  732. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/worked_examples/sql_parser.py +0 -0
  733. {drydock_cli-2.8.9 → drydock_cli-2.8.11}/worked_examples/tree_walking_interpreter.py +0 -0
@@ -0,0 +1 @@
1
+ 201506
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: drydock-cli
3
- Version: 2.8.9
3
+ Version: 2.8.11
4
4
  Summary: Local-first CLI coding agent — tested with Gemma 4 26B via vLLM
5
5
  Project-URL: Homepage, https://github.com/fbobe321/drydock
6
6
  Project-URL: Repository, https://github.com/fbobe321/drydock
@@ -1080,7 +1080,8 @@ class AgentLoop:
1080
1080
  and assistant_msg.tool_calls):
1081
1081
  prev_tool_name = assistant_msg.tool_calls[-1].function.name if assistant_msg.tool_calls[-1].function else None
1082
1082
  _readonly_tools = {"read_file", "grep", "glob", "ls", "pwd",
1083
- "ralph_repo_index", "retrieve", "search_files"}
1083
+ "ralph_repo_index", "ralph_file_summary",
1084
+ "retrieve", "search_files"}
1084
1085
  _write_tools = {"write_file", "search_replace"}
1085
1086
  _prev_was_read = prev_tool_name in _readonly_tools
1086
1087
  _prev_was_write = prev_tool_name in _write_tools
@@ -1127,6 +1128,27 @@ class AgentLoop:
1127
1128
  and "file" in _prev_tool_result
1128
1129
  and "changed" in _prev_tool_result
1129
1130
  )
1131
+ # Detect bash that returned an error/traceback.
1132
+ # These stalls fire as empty_after_tool:bash :: source=canned — the
1133
+ # generic note doesn't tell the model what to DO with the error.
1134
+ _prev_bash_had_error = (
1135
+ prev_tool_name in ("bash", "run_command")
1136
+ and not _prev_bash_nothing_to_commit
1137
+ and not _prev_bash_commit_succeeded
1138
+ and bool(_re.search(
1139
+ r"(Error|error|Traceback|FAILED|exit code [1-9]|command not found)",
1140
+ _prev_tool_result
1141
+ ))
1142
+ )
1143
+ # Detect bash that returned non-empty output without an error.
1144
+ # Model stalls instead of using the output to write or fix code.
1145
+ _prev_bash_had_output = (
1146
+ prev_tool_name in ("bash", "run_command")
1147
+ and not _prev_bash_nothing_to_commit
1148
+ and not _prev_bash_commit_succeeded
1149
+ and not _prev_bash_had_error
1150
+ and bool(_prev_tool_result.strip())
1151
+ )
1130
1152
  if _stall_attempt == 0:
1131
1153
  if _prev_write_path_error:
1132
1154
  note = (
@@ -1142,6 +1164,13 @@ class AgentLoop:
1142
1164
  "or grep(pattern='...') to search content. "
1143
1165
  "Do NOT send an empty response."
1144
1166
  )
1167
+ elif prev_tool_name == "ralph_repo_index":
1168
+ note = (
1169
+ "You indexed the repository but produced no output. "
1170
+ "Now write a text answer to the user's question, "
1171
+ "or call read_file to inspect a specific file. "
1172
+ "Do NOT call ralph_repo_index again."
1173
+ )
1145
1174
  elif _prev_was_read:
1146
1175
  _tool_name_str = prev_tool_name or "read_file"
1147
1176
  note = (
@@ -1167,6 +1196,18 @@ class AgentLoop:
1167
1196
  "Respond with a short summary of what you changed and stop. "
1168
1197
  "Do NOT run git add or git commit again."
1169
1198
  )
1199
+ elif _prev_bash_had_error:
1200
+ note = (
1201
+ "The command returned an error. Read the error message above, "
1202
+ "then fix the code with search_replace or write_file, or try a "
1203
+ "different command. Do NOT re-run the same failing command."
1204
+ )
1205
+ elif _prev_bash_had_output:
1206
+ note = (
1207
+ "The command ran and returned output. Use that output now: "
1208
+ "write or update code files, fix any issues shown, or respond "
1209
+ "to the user. Do NOT re-run the same command."
1210
+ )
1170
1211
  else:
1171
1212
  note = (
1172
1213
  "Continue working. Use a tool (write_file, "
@@ -1174,7 +1215,14 @@ class AgentLoop:
1174
1215
  "your plan in text."
1175
1216
  )
1176
1217
  elif _stall_attempt == 1:
1177
- if _prev_was_read:
1218
+ if prev_tool_name == "ralph_repo_index":
1219
+ note = (
1220
+ "You sent an empty response after indexing the repository. "
1221
+ "Respond in TEXT now — answer the user's question directly, "
1222
+ "or state in one sentence why you cannot proceed. "
1223
+ "Do NOT call ralph_repo_index again."
1224
+ )
1225
+ elif _prev_was_read:
1178
1226
  _tool_name_str = prev_tool_name or "read_file"
1179
1227
  note = (
1180
1228
  f"You sent an empty response after calling {_tool_name_str}. "
@@ -1182,6 +1230,27 @@ class AgentLoop:
1182
1230
  f"what you read — OR state in one sentence why you "
1183
1231
  f"cannot proceed. Do NOT call {_tool_name_str} again."
1184
1232
  )
1233
+ elif _prev_was_write:
1234
+ _tool_name_str = prev_tool_name or "write_file"
1235
+ note = (
1236
+ f"You sent an empty response after {_tool_name_str}. "
1237
+ "Write the NEXT file in your plan NOW with write_file, "
1238
+ "or run bash to test what you have built. "
1239
+ "Do NOT send another empty response."
1240
+ )
1241
+ elif _prev_bash_had_error:
1242
+ note = (
1243
+ "Second empty response after a bash error. "
1244
+ "Fix the error NOW with search_replace or write_file. "
1245
+ "Do NOT re-run the same failing command."
1246
+ )
1247
+ elif _prev_bash_had_output:
1248
+ note = (
1249
+ "Second empty response after bash output. "
1250
+ "Use the output now — write code with write_file, "
1251
+ "fix issues with search_replace, or respond to the user. "
1252
+ "Do NOT re-run the same command."
1253
+ )
1185
1254
  else:
1186
1255
  note = (
1187
1256
  "You sent an empty response. Call a tool now "
@@ -1189,12 +1258,50 @@ class AgentLoop:
1189
1258
  "OR explicitly say you are done with this task."
1190
1259
  )
1191
1260
  else:
1192
- note = (
1193
- "You have sent 3 empty responses in a row for "
1194
- "this user request. Respond with either (a) a "
1195
- "tool call to make progress, or (b) one "
1196
- "sentence explaining why you cannot proceed."
1197
- )
1261
+ if prev_tool_name == "ralph_repo_index":
1262
+ note = (
1263
+ "THIRD empty response after ralph_repo_index. "
1264
+ "Stop write a text reply to the user RIGHT NOW. "
1265
+ "If you cannot answer, say 'I was unable to find that information' "
1266
+ "and stop. Do NOT call ralph_repo_index or any other tool."
1267
+ )
1268
+ elif prev_tool_name in _readonly_tools:
1269
+ _tool_name_str = prev_tool_name or "read_file"
1270
+ note = (
1271
+ f"THIRD empty response after {_tool_name_str}. "
1272
+ "Stop reading — call write_file or search_replace NOW to apply "
1273
+ "the change, or respond in text explaining why you cannot proceed. "
1274
+ f"Do NOT call {_tool_name_str} again."
1275
+ )
1276
+ elif _prev_was_write:
1277
+ _tool_name_str = prev_tool_name or "write_file"
1278
+ note = (
1279
+ f"THIRD empty response after {_tool_name_str}. "
1280
+ "Call bash NOW to run the tests or verify what you built, "
1281
+ "or write the next required file. "
1282
+ "Do NOT send another empty response."
1283
+ )
1284
+ elif _prev_bash_had_error:
1285
+ note = (
1286
+ "THIRD empty response after a bash error. "
1287
+ "Fix the error NOW — call search_replace or write_file to "
1288
+ "correct the broken code, or respond in text with what went wrong. "
1289
+ "Do NOT run the same failing command again."
1290
+ )
1291
+ elif _prev_bash_had_output:
1292
+ note = (
1293
+ "THIRD empty response after bash output. "
1294
+ "Act on the output NOW — write or fix code with write_file "
1295
+ "or search_replace, or respond in one sentence. "
1296
+ "Do NOT re-run the same command."
1297
+ )
1298
+ else:
1299
+ note = (
1300
+ "You have sent 3 empty responses in a row for "
1301
+ "this user request. Respond with either (a) a "
1302
+ "tool call to make progress, or (b) one "
1303
+ "sentence explaining why you cannot proceed."
1304
+ )
1198
1305
  self._inject_system_note(note)
1199
1306
  logger.info(
1200
1307
  "Empty-response stall (inline retry %d/%d, prev=%s)",
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "drydock-cli"
3
- version = "2.8.9"
3
+ version = "2.8.11"
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"
@@ -1,5 +1,167 @@
1
1
  # Drydock Trip Log
2
2
 
3
+ ## 2026-05-10 11:12 UTC tick
4
+ - Stress: PID 3875067 alive (1d 15h runtime), ~80% through tool_agent 2000-prompt suite
5
+ - Write rate: degraded — 19 SKIPs in last 29 prompts prior to 10:18 UTC TUI recycle; recovering after recycle
6
+ - Admiral last 30 min: 5 harness:thinking_stall fires (ralph_repo_index stalls 10:14-10:17), plus 3 TUI-recycle-requested stress-actions (09:52, 10:05, 10:18) and retry-spike alert (145% retry rate)
7
+ - vLLM 400s: ~20 seen in balancer.log (context overflow bursts), resolved after TUI recycle at 10:18; balancer healthy now
8
+ - GH issues: 0 open
9
+ - Dispatch queue: harness=88511, retrieval=84 (all already consumed), steering=0
10
+ - Action this tick: no fix — skip spike caused by context-overflow 400s from long sessions; AdmiralWorker recycled TUI at 10:18 and system is recovering; all harness:thinking_stall fixes (427a631, 0820952, 9f8d022) are in source awaiting next auto_release at 12:00 CDT; retrieval drain found nothing new
11
+
12
+ ## 2026-05-10 10:12 UTC tick
13
+ - Stress: PID 3875067 alive (1d 14h runtime), sessions active at 09:29-09:30 UTC; stress run was at 1331/1658 at 09:00 UTC
14
+ - Write rate: ~11 prompts/hr (steady)
15
+ - Admiral last 30 min: harness:thinking_stall continuing to fire (88K queue total, all same pattern)
16
+ - vLLM 400s: 0 (balancer healthy, 8000/8001 both OK)
17
+ - GH issues: 0 open
18
+ - Dispatch queue: harness=88057, retrieval=78 (all already consumed), steering=0
19
+ - Action this tick: no action — all harness:thinking_stall patterns addressed by commits (427a631, 0820952, 9f8d022) shipped today; retrieval drain found nothing new to ingest; system healthy
20
+
21
+ ## 2026-05-10 09:12 UTC tick
22
+ - Stress: 1331/1658 (PID 3875067 alive, 1d 13h runtime); done=250, skip=273, recycle=172; babysitter confirmed healthy through 09:00 UTC tick
23
+ - Write rate: ~11 prompts/hr last hour (3 done, 8 skip, 5 recycle)
24
+ - Admiral last 30 min: harness:thinking_stall dominant — 279 ralph_repo_index, 70 bash, 28 read_file/write_file in last hour; all stall sub-patterns covered by commits in current release queue (9f8d022 atm2 ralph/read, 0820952 write/sr atms 1-2, 427a631 bash atms 1-2), shipping at next auto_release ~11:00 UTC
25
+ - vLLM 400s: 0; balancer responding on :8001 (1 model), vLLM on :8000 up
26
+ - GH issues: 0 open
27
+ - Dispatch queue: harness=87834, retrieval=75 (0 actionable — all consumed), steering=0
28
+ - retrieval-drain: 0 projects ingested (all previously consumed)
29
+ - Action this tick: no action — 3 unshipped stall fixes pending next auto_release (~11:00 UTC); system healthy; no new unaddressed patterns
30
+
31
+ ## 2026-05-10 08:52 UTC tick
32
+ - Stress: 1320/1658 (PID 3875067 alive, 1d 13h runtime); done=247, skip=265, recycle=167; babysitter healthy, last tick 08:00 UTC
33
+ - Write rate: ~14 prompts/hr last hour (8 done, 5 skip, 1 recycle)
34
+ - Admiral last 30 min: harness:thinking_stall still dominant (87621 harness queue total); all recent stall types (bash, write_file, search_replace, ralph_repo_index, read_file) addressed by commits 427a631/0820952/9f8d022 shipped in v2.8.11+; no new unaddressed patterns observed
35
+ - vLLM 400s: 0 (balancer on :8001 showing HTTP 400 502s — context overflow, not model crash); llamacpp-gemma4 container up and responding on :8000 and :8001
36
+ - GH issues: 0 open
37
+ - Dispatch queue: harness=87621, retrieval=74 (0 actionable — all consumed), steering=0
38
+ - retrieval-drain: 0 projects ingested
39
+ - Action this tick: no action — all queued patterns already addressed in 24h commits; stress run progressing steadily; system healthy
40
+
41
+ ## 2026-05-10 08:12 UTC tick
42
+ - Stress: PID 3875067 alive (resume-from-step 807/1658 tool_agent); balancer OK on :8001; vLLM docker up (unhealthy status but responding, 0 400s in last 30m)
43
+ - Write rate: N/A (mid-session)
44
+ - Admiral last 30 min: harness:thinking_stall dominant (9890 today); harness:grep:unescaped_pattern 4014 today (model looping same grep call 5+ times, not invalid regex — advisory NOTE fires after 5 repeats); harness:loop:bash_generic 962; harness:tool:hallucinated_name 862
45
+ - vLLM 400s: 0
46
+ - GH issues: 0 open
47
+ - Dispatch queue: harness=87403, retrieval=74 (0 actionable — all consumed), steering=0
48
+ - retrieval-drain: 0 projects ingested
49
+ - Action this tick: committed fix 427a631 — bash stall nudges at attempts 1 and 2 (addresses pattern harness:thinking_stall); bash error/output cases at attempts 1+2 fell through to generic else, now get specific fix/act-on-output nudges matching pattern used for write_file and read_file; auto_release will ship with prior 3 commits as v2.8.11
50
+
51
+ ## 2026-05-10 07:32 UTC tick
52
+ - Stress: PID 3875067 alive (1d 12h runtime, resume-from-step 807/1658 tool_agent); vLLM 0 JSONDecodeErrors; balancer OK on :8001
53
+ - Write rate: N/A (mid-session)
54
+ - Admiral last 30 min: harness:thinking_stall dominant (57020 total in queue)
55
+ - vLLM 400s: 0
56
+ - GH issues: 0 open
57
+ - Dispatch queue: harness=87171, retrieval=74 (all already consumed, 0 ingested)
58
+ - Action this tick: no action — 2 commits unreleased since v2.8.10 (0820952 write_file/search_replace stall nudges at attempt 1+2, 9f8d022 ralph_repo_index+read_file at attempt 2); next auto_release will ship as v2.8.11; bash_generic (12896) and search_replace:not_found_loop (4798) remain high-volume but the advisory FORCE_STOP mechanism already handles them (loop detection removes bash from tools for 1 turn); no new actionable bug found this tick
59
+
60
+ ## 2026-05-10 07:11 UTC tick
61
+ - Stress: PID 3875067 alive (1d 13h runtime, resume-from-step 807/1658); balancer healthy on :8001; vLLM 0 JSONDecodeErrors in last 30 min; docker gemma4 running
62
+ - Write rate: N/A (mid-session)
63
+ - Admiral last 30 min: harness:thinking_stall firing for ralph_repo_index/write_file/bash (all addressed by commits 0820952 + 9f8d022 pending next auto_release at ~11:00 UTC)
64
+ - vLLM 400s: 0
65
+ - GH issues: 0 open
66
+ - Dispatch queue: harness=86968, retrieval=74 (0 actionable — all within 7-day re-ingest window), steering=0
67
+ - retrieval-drain: 0 projects ingested (all already up to date)
68
+ - Action this tick: no action — all top stall patterns addressed by today's commits (0820952 adds write_file/search_replace nudges at attempts 1+2; 9f8d022 adds ralph_repo_index/read_file at attempt 2); pending ship at next auto_release ~11:00 UTC; system healthy
69
+
70
+ ## 2026-05-10 06:32 UTC tick
71
+ - Stress: PID 3875067 alive (1d 11h runtime, resume-from-step 807/1658); balancer on :8001 healthy; vLLM 0 JSONDecodeErrors
72
+ - Write rate: N/A (session mid-flight)
73
+ - Admiral last 30 min: harness:thinking_stall dominant; top stall tools from full queue: ralph_repo_index=30849, bash=9082, read_file=7136, write_file=5854, search_replace=2180
74
+ - vLLM 400s: 0
75
+ - GH issues: 0 open
76
+ - Dispatch queue: harness=86765, retrieval=74 (0 actionable)
77
+ - retrieval-drain: 0 projects ingested
78
+ - Action this tick: committed fix — write_file and search_replace stalls at attempts 1 and 2 fell through to generic note (5854+2180 queue entries); added _prev_was_write branches at attempts 1 and 2 matching the ralph_repo_index/bash pattern; commit 0820952 (addresses pattern harness:thinking_stall)
79
+
80
+ ## 2026-05-10 06:02 UTC tick
81
+ - Stress: PID 3875067 alive (resume-from-step 807/1658, 34h+ runtime); session_20260510_055041 active with 119 messages (57 assistant, 56 tool), messages.jsonl updated at 06:01 UTC — harness live and processing
82
+ - Write rate: N/A (session mid-flight at tick time)
83
+ - Admiral last 30 min: harness:thinking_stall=148, harness:loop:bash_generic=24, harness:grep:unescaped_pattern=3; ralph_repo_index dominant tool (102 stalls/30min), bash=15, read_file=9
84
+ - vLLM 400s: 0 JSONDecodeErrors; balancer PID 3944578 healthy on :8001; simple completions and balancer respond correctly; balancer.log shows 502s for some context-overflow tool-call requests (expected — model stalls on long sessions); gemma4 docker logs clean
85
+ - GH issues: 0 open
86
+ - Dispatch queue: harness=86573 total (thinking_stall dominant, same pattern as prior ticks); retrieval=74 (0 actionable, all within 7-day window)
87
+ - retrieval-drain: 0 projects ingested (all already ingested recently)
88
+ - Action this tick: no fix committed — today's v2.8.10 release (commits 9f8d022, a6a448e, ee354e5, cd6b56c) already added specific stall nudges for ralph_repo_index at all 3 attempt levels, bash error/output cases, and ralph_file_summary; all top queue patterns are addressed; no new unaddressed patterns found; system healthy
89
+
90
+ ## 2026-05-10 03:32 UTC tick
91
+ - Stress: PID 3875067 alive (resume-from-step 807/1658, 32h+ runtime); new TUI child PID 115006 just spawned at 22:29 CDT; harness actively recycling sessions (12146 total sessions)
92
+ - Write rate: strained — admiral reports 91% retry rate and 14+ SKIP clusters in last 35 prompts; TUI recycle mechanism firing correctly
93
+ - Admiral last 30 min: high skip/retry pattern; last fires at 03:29 UTC (bootstrap after recycle); dominant patterns: thinking_stall, loop:bash_generic
94
+ - vLLM 400s: balancer showing 4905 total 502 errors (context overflow), balancer healthy on :8001 forwarding to gemma4 OK
95
+ - GH issues: 0 open
96
+ - Dispatch queue: harness=85708 (thinking_stall dominant, bash_generic secondary), retrieval=74 (0 actionable, all within 7-day window)
97
+ - retrieval-drain: 0 projects ingested (all up to date)
98
+ - Action this tick: no fix committed — ee354e5+cd6b56c (bash stall nudges + ralph_file_summary to readonly-tools) already address all top dispatch queue patterns and are pending next auto_release at 00:00 CDT (06:00 UTC); no new unaddressed patterns found
99
+
100
+ ## 2026-05-10 02:47 UTC tick
101
+ - Stress: PID 3875067 alive (resume-from-step 807, running since May 8, 45+ hr runtime); recent sessions cycling through "Doc:" single-letter prompts; harness advancing
102
+ - Write rate: N/A (stress sessions in Doc prompt segment)
103
+ - Admiral last 30 min: harness:thinking_stall dominant (6,962 in last 24h); harness:grep:unescaped_pattern 3,981 (fix b3922fa in v2.8.6 deployed, queue entries are historical); loop:bash_generic 660
104
+ - vLLM 400s: 0; llm_balancer PID 3944578 healthy on :8001 (gemma4 OK)
105
+ - GH issues: 0 open
106
+ - Dispatch queue: harness=85,384 (956 classifier batches), retrieval=74 (0 actionable, all within 7-day window)
107
+ - Retrieval-drain: 0 projects ingested (74 entries all already ingested recently)
108
+ - Action this tick: no fix committed — all top patterns (thinking_stall, grep:unescaped_pattern, heredoc_loop) addressed by commits ee354e5/cd6b56c/c8a5f7f/dd07921/b3922fa in last 24h; search_replace:not_found_loop at 114/24h, HARD-STOP logic already handles it; system healthy
109
+
110
+ ## 2026-05-10 01:32 UTC tick
111
+ - Stress: PID 3875067 alive; current cycle at ~680/1658 (stress_2000 log tail); harness proceeding through API prompt segment; watcher active
112
+ - Write rate: N/A (log-based estimate not available this tick)
113
+ - Admiral last 30 min: harness:thinking_stall dominant; harness:loop:bash_generic secondary; all patterns have existing nudge coverage
114
+ - vLLM 400s: 0; llm_balancer PID 3944578 healthy on :8001; no port squatters
115
+ - GH issues: 0 open
116
+ - Dispatch queue: harness=85,052, retrieval=74 (0 actionable; all within 7-day re-ingest window); steering=0
117
+ - Retrieval-drain: 0 projects ingested (74 entries all already ingested recently)
118
+ - Action this tick: no action — system healthy; recent commits cd6b56c + c8a5f7f already address dominant harness:thinking_stall pattern; harness:loop:bash_generic covered by existing FORCE_STOP + admiral nudges; no new actionable drydock bugs found
119
+
120
+ ## 2026-05-10 01:30 UTC tick
121
+ - Stress: 1197/1658 (done=166, skip=223, recycle=134); PID 3875067 alive (30h runtime); high skip rate in "Doc:" prompt segment (single-letter shortcuts confuse model, causes bash loops → TUI approval modal stall → harness skips); harness is recycling TUI correctly and advancing
122
+ - Write rate: all recent steps skipped (Doc segment, model inherently loops on ambiguous prompts)
123
+ - Admiral last 30 min: harness:thinking_stall (55,104 cumulative); harness:loop:bash_generic (12,574); harness:tool:hallucinated_name (6,425); harness:search_replace:not_found_loop (4,798)
124
+ - vLLM 400s: 0; llm_balancer PID 3944578 healthy on :8001; vLLM model count=1
125
+ - GH issues: 0 open
126
+ - Dispatch queue: harness=84,888, retrieval=74 (0 actionable); retrieval-drain: 0 projects ingested
127
+ - Action this tick: no action — system healthy; recent commits cd6b56c + c8a5f7f address dominant thinking_stall pattern; bash_generic covered by existing FORCE_STOP + admiral; no new actionable drydock bugs found
128
+
129
+ ## 2026-05-10 01:05 UTC tick
130
+ - Stress: active; PID 3875067 alive (29h runtime, etimes=104563, resume-from-step 807); latest session session_20260510_002909_d671f1bd started 19:30 local; harness cycling normally
131
+ - Write rate: N/A (not exposed in live log)
132
+ - Admiral last 30 min: harness:thinking_stall dominant (54,976 cumulative); harness:loop:bash_generic (12,544); harness:tool:hallucinated_name (6,422); harness:search_replace:not_found_loop (4,798); harness:grep:unescaped_pattern (3,969)
133
+ - vLLM 400s: 0; llm_balancer PID 3944578 healthy on :8001 (confirmed legit); docker serving gemma4 normally
134
+ - GH issues: 0 open
135
+ - Dispatch queue: harness=84,724, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
136
+ - Action this tick: no action — system healthy; 1 unreleased commit cd6b56c (ralph_file_summary stall nudge) pending next auto_release; all major patterns (thinking_stall, grep:unescaped_pattern, search_replace:not_found_loop, hallucinated_name) addressed by commits in last 48h; bash_generic (12K) handled by existing FORCE_STOP + admiral, inherent model limitation
137
+
138
+ ## 2026-05-10 00:04 UTC tick
139
+ - Stress: 1189/1658 (stress_2000_v10, log updated 1 min ago); PID 3875067 (stress_shakedown.py, 28.5h runtime from step 807) also alive
140
+ - Write rate: not recalculated (doc-heavy segment ongoing — architecture diagrams, release notes, changelog entries driving high SKIP rate)
141
+ - Admiral last 30 min: harness:thinking_stall dominant (54K cumulative), harness:loop:bash_generic (12K), harness:tool:hallucinated_name (6.4K), harness:search_replace:not_found_loop (4.8K); all covered by existing fixes
142
+ - vLLM 400s: 0; llm_balancer PID 3944578 confirmed healthy on :8001 (not an orphan); no :8001 squatting
143
+ - GH issues: 0 open
144
+ - Dispatch queue: harness=84547, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
145
+ - Action this tick: no action — all patterns addressed by commits from last 24h (cd6b56c, c8a5f7f, b3922fa, dd07921); ralph_repo_index is top stall trigger (29K queue) but already in _readonly_tools since prior fix; system healthy
146
+
147
+ ## 2026-05-09 23:33 UTC tick
148
+ - Stress: 1183/1658; PID 3875067 alive; done=165, skip=205, recycle=125 (babysitter shows step 1183 active)
149
+ - Write rate: ~44.6% (165/370 non-timeout prompts written)
150
+ - Admiral last 30 min: 0 fires (classify_pulse log empty for this window)
151
+ - vLLM 400s: 0; llm_balancer PID 3944578 healthy on :8001 (confirmed legit)
152
+ - GH issues: 0 open
153
+ - Dispatch queue: harness=84359, retrieval=74 (0 actionable); retrieval-drain: 0 ingested (all within 7-day window)
154
+ - Action this tick: no action — all queued patterns (harness:thinking_stall, harness:loop:bash_generic) addressed by recent commits cd6b56c + c8a5f7f + 2cfa973; TUI showing "Queued: 4 pending" indicating multi-prompt queue buildup during doc-heavy segment, not a drydock source bug; system healthy
155
+
156
+ ## 2026-05-09 23:03 UTC tick
157
+ - Stress: 1178+/1658; PID 3875067 alive (27.5h runtime); 165 done, 205 skip, 125 recycles since step 807 resume; doc-heavy segment (architecture diagrams, release notes) causing high SKIP rate from prompt-acceptance retries
158
+ - Write rate: ~31% overall (stable)
159
+ - Admiral last 30 min: harness:thinking_stall dominant (86/100 recent queue entries), harness:loop:bash_generic (12/100), hallucinated_name (1), grep:unescaped_pattern (1)
160
+ - vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (confirmed llm_balancer.py); docker status unknown (CLI unavailable)
161
+ - GH issues: 0 open
162
+ - Dispatch queue: harness=84167, retrieval=74 (0 actionable, all within 7-day window); retrieval-drain: 0 projects ingested
163
+ - Action this tick: committed fix cd6b56c — added ralph_file_summary to _readonly_tools set in stall handler (addresses pattern harness:thinking_stall); stalls after ralph_file_summary were getting generic "Continue working" nudge instead of the specific "you called {tool} but produced no output" message
164
+
3
165
  ## 2026-05-09 23:30 UTC tick
4
166
  - Stress: 1173/1658; PID 3875067 alive (27h runtime); progressing from 1130 in prior tick — ~43 steps/1.5h
5
167
  - Write rate: ~31% (stable, unchanged across multiple ticks)
@@ -3941,3 +4103,67 @@ restarted, cron self-match bug fixed in this same session).
3941
4103
  - GH issues: 0 open
3942
4104
  - Dispatch queue: harness=83168, retrieval=74 (0 actionable); retrieval-drain: 0 projects ingested (74 entries all within 7-day re-ingest window)
3943
4105
  - Action this tick: no action — all top patterns have existing fixes; dd07921+c8a5f7f pending auto_release at 00:00 CDT (05:00 UTC); search_replace:not_found_loop (4798 total) already has file-head embedding fix in source; bash:escape_loop (170 total) already has sed/echo escape detection in bash.py; system healthy
4106
+
4107
+ ## 2026-05-10 02:30 UTC tick
4108
+ - Stress: 1218/1658 (actively running, PID 3875067)
4109
+ - Write rate: N/A (no report-every line visible in current log slice)
4110
+ - Admiral last 30 min: harness:thinking_stall dominant (55364 total queue), harness:loop:bash_generic (12634), harness:tool:hallucinated_name (6431), harness:search_replace:not_found_loop (4798)
4111
+ - vLLM 400s: 0; balancer OK on :8001; docker gemma4 healthy
4112
+ - GH issues: 0 open
4113
+ - Dispatch queue: harness=55364+, retrieval=74 (0 actionable, all within re-ingest window), steering=0
4114
+ - Action this tick: committed ee354e5 fix(stall): add specific bash stall nudges for error and output cases (addresses pattern harness:thinking_stall) — empty_after_tool:bash::source=canned was falling through to generic 'Continue working'; new _prev_bash_had_error and _prev_bash_had_output branches give the model concrete direction. Auto_release will ship at next 0/6/12/18 CDT tick.
4115
+
4116
+ ## 2026-05-10 04:03 UTC tick
4117
+ - Stress: 1230/1658 (wedged — harness alive PID 3875067, TUI child 110424 alive since 22:03 CDT, log stale 5+ hours since 22:01 CDT)
4118
+ - Write rate: 0 new writes observed (183 accepted / 235 skipped total at last progress report, prompt 1225)
4119
+ - Admiral last 30 min: not measurable (admiral_history.log not updated)
4120
+ - vLLM 400s: 0
4121
+ - GH issues: gh unavailable this tick
4122
+ - Dispatch queue: harness=85546 entries (2 patterns: thinking_stall 42 fires addressed in 24h commits, bash_generic 8 fires advisory), retrieval=74 entries (all already ingested), steering=0
4123
+ - retrieval-drain: 0 projects ingested (all up to date)
4124
+ - Action this tick: no fix committed — harness is alive but wedged (TUI child spawned at 22:03 created session_20260510_030327 with only 3 messages then stalled; babysitter cannot restart a live harness; watcher PIDs 3875068+110078 are running but recycle signals haven't unblocked it). harness:thinking_stall pattern was already addressed in today's commits (ee354e5, cd6b56c); harness:loop:bash_generic is low-confidence (0.6) with admiral nudge already firing — no source fix warranted.
4125
+
4126
+ ## 2026-05-10 04:30 UTC tick
4127
+ - Stress: 1253/1658 prompts (idx), done=200, skip=245, timeout=0, recycle=148; PID 3875067 alive (1d 8h runtime)
4128
+ - Write rate: not directly measured this tick
4129
+ - Admiral last 30 min: harness:thinking_stall dominant (55,902 total queue entries); ralph_repo_index accounts for 30,357 (54% of all stalls)
4130
+ - vLLM 400s: 0 in last 30 min
4131
+ - GH issues: 0 open
4132
+ - Dispatch queue: harness=68686 entries (multiple patterns), retrieval=74 (all already ingested), steering=0
4133
+ - Action this tick: committed fix for ralph_repo_index stall nudge (addresses pattern harness:thinking_stall) — prev generic nudge said "make changes" which is wrong after repo-indexing; new nudge tells model to write TEXT answer or call read_file; retrieval-drain: 0 projects ingested (all already ingested recently)
4134
+
4135
+ ## 2026-05-10 04:31 UTC tick
4136
+ - Stress: PID 3875067 alive (33h runtime, resume-from 807/1658); current prompt "Perf: batch DB writes"; TUI child PID 125661 alive (128s), session_20260510_042832 active with 33 messages, last updated 04:30 UTC
4137
+ - Write rate: not directly measured; sessions cycling normally (12152 total)
4138
+ - Admiral last 30 min: harness:thinking_stall (137 fires, all ralph_repo_index/bash), harness:loop:bash_generic (24), harness:grep:unescaped_pattern (3)
4139
+ - vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (confirmed llm_balancer.py); docker gemma4 serving normally
4140
+ - GH issues: 0 open (gh returned no results)
4141
+ - Dispatch queue: harness=86034 (top: thinking_stall 56039, bash_generic 12758, hallucinated_name 6431), retrieval=74 (0 actionable — all within 7-day window), steering=0
4142
+ - retrieval-drain: 0 projects ingested (all already up to date)
4143
+ - Action this tick: no action — all recent patterns addressed by a6a448e/ee354e5/cd6b56c (thinking_stall nudges for ralph_repo_index/bash); auto_release ships at ~05:00 UTC; system healthy
4144
+
4145
+ ## 2026-05-10 05:03 UTC tick
4146
+ - Stress: 807+/1658 (PID 3875067 alive, tool_agent run)
4147
+ - vLLM 400s: 0; balancer healthy on :8001; docker gemma4 serving normally
4148
+ - GH issues: 0 open
4149
+ - Dispatch queue: harness=86219, retrieval=74 (0 actionable), steering=0
4150
+ - retrieval-drain: 0 projects ingested (all within 7-day window)
4151
+ - Action this tick: committed fix for ralph_repo_index:canned and read_file:canned stalls (56+53 fires in 3h at attempt 2 were falling through to generic note; added tool-specific nudges at _stall_attempt==2). Addresses pattern harness:thinking_stall. resume.md not present; worked from dispatch queue directly.
4152
+
4153
+ ## 2026-05-10 05:35 UTC tick
4154
+ - Stress: PID 3875067 alive (1d 10h runtime, resume-from-step 807/1658); most recent session session_20260510_051933 (05:19 UTC); harness cycling normally
4155
+ - vLLM 400s: 0; balancer PID 3944578 healthy on :8001 (confirmed llm_balancer.py); docker gemma4 serving normally
4156
+ - GH issues: 0 open
4157
+ - Dispatch queue: harness=86398 (top: thinking_stall 56349, bash_generic 12806, hallucinated_name 6431, search_replace:not_found_loop 4798, grep:unescaped_pattern 3999), retrieval=74 (0 actionable — all within 7-day re-ingest window), steering=0
4158
+ - retrieval-drain: 0 projects ingested (all already up to date)
4159
+ - Action this tick: no action — all top patterns addressed by commits in last 24h (9f8d022/a6a448e/ee354e5/cd6b56c fix thinking_stall for ralph_repo_index+bash at all 3 stall attempts; b3922fa fixes grep:unescaped_pattern; dd07921 fixes heredoc_loop); bash_generic and hallucinated_name are model-behavior with advisory circuit-breaker already catching repeats; system healthy awaiting next auto_release at 06:00 UTC to ship v2.8.10
4160
+
4161
+ ## 2026-05-10 11:12 UTC tick
4162
+ - Stress: PID 3875067 alive, resumed at step 807; current step ~1343/1658
4163
+ - Write rate: high skip rate (~81%: 280/345 prompts skipped in current run segment); each SKIP takes 3×120s retries before giving up, so run is progressing slowly but has advanced ~536 steps since resuming
4164
+ - Admiral last 30 min: 10+ thinking_stall fires (ralph_repo_index, write_file, bash patterns)
4165
+ - vLLM 400s: 0; balancer PID 3944578 healthy on :8001; gemma4 docker serving normally
4166
+ - GH issues: 0 open
4167
+ - Dispatch queue: harness=88280 (top: thinking_stall 58836, bash_generic 12978, hallucinated_name 6431, search_replace:not_found_loop 4798, grep:unescaped_pattern 4038), retrieval=81 (all within 7-day window, 0 actionable)
4168
+ - retrieval-drain: 0 projects ingested (all up to date)
4169
+ - Action this tick: no action — all top patterns addressed by recent commits (427a631/0820952/9f8d022/a6a448e/ee354e5/cd6b56c cover thinking_stall at all 3 retry levels; dd07921 covers heredoc_loop); high skip rate is pexpect harness behavior under model stall conditions, not a new drydock bug; system healthy
@@ -326,7 +326,7 @@ wheels = [
326
326
 
327
327
  [[package]]
328
328
  name = "drydock-cli"
329
- version = "2.8.7"
329
+ version = "2.8.10"
330
330
  source = { editable = "." }
331
331
  dependencies = [
332
332
  { name = "agent-client-protocol" },
@@ -1 +0,0 @@
1
- 65938
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes