drydock-cli 2.8.16__tar.gz → 2.8.18__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 (749) hide show
  1. drydock_cli-2.8.18/.auto_release.lock +1 -0
  2. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/PKG-INFO +1 -1
  3. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/commands.py +9 -0
  4. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/app.py +170 -0
  5. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/pyproject.toml +1 -1
  6. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/trip_log.md +218 -0
  7. drydock_cli-2.8.16/.auto_release.lock +0 -1
  8. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.github/CODEOWNERS +0 -0
  9. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.github/DISCUSSION_TEMPLATE/ideas.yml +0 -0
  10. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
  11. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  12. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.github/workflows/build-and-upload.yml +0 -0
  13. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.github/workflows/ci.yml +0 -0
  14. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.github/workflows/issue-labeler.yml +0 -0
  15. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.github/workflows/release.yml +0 -0
  16. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.gitignore +0 -0
  17. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.pre-commit-config.yaml +0 -0
  18. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.python-version +0 -0
  19. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.typos.toml +0 -0
  20. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.vscode/extensions.json +0 -0
  21. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.vscode/launch.json +0 -0
  22. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/.vscode/settings.json +0 -0
  23. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/AGENTS.md +0 -0
  24. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/Admiral.md +0 -0
  25. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/CHANGELOG.md +0 -0
  26. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/CLAUDE.md +0 -0
  27. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/CONTRIBUTING.md +0 -0
  28. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/DEEP_NOIR_PRD.md +0 -0
  29. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/DEPLOYMENT.md +0 -0
  30. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/HLE_PRD.md +0 -0
  31. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/JETSON_BENCH.md +0 -0
  32. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/LICENSE +0 -0
  33. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/MODEL_SHORTCOMINGS.md +0 -0
  34. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/NOTICE +0 -0
  35. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/README.md +0 -0
  36. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/SOVEREIGN_PRD.md +0 -0
  37. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/TRIAGE_v1.md +0 -0
  38. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/action.yml +0 -0
  39. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/README.md +0 -0
  40. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results1.tsv +0 -0
  41. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results13.tsv +0 -0
  42. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results14.tsv +0 -0
  43. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results15.tsv +0 -0
  44. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results16.tsv +0 -0
  45. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results17.tsv +0 -0
  46. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results18.tsv +0 -0
  47. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results19.tsv +0 -0
  48. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results2.tsv +0 -0
  49. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results20.tsv +0 -0
  50. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results3.tsv +0 -0
  51. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results4.tsv +0 -0
  52. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results5.tsv +0 -0
  53. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results6.tsv +0 -0
  54. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results7.tsv +0 -0
  55. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results8.tsv +0 -0
  56. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results9.tsv +0 -0
  57. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/baseline_history/results_evolved_v1.tsv +0 -0
  58. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/distribution/zed/LICENSE +0 -0
  59. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/distribution/zed/extension.toml +0 -0
  60. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/distribution/zed/icons/mistral_vibe.svg +0 -0
  61. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/README.md +0 -0
  62. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/acp-setup.md +0 -0
  63. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/archive/BASELINE_412.md +0 -0
  64. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/archive/Drydock_rebrand.md +0 -0
  65. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/archive/OVERNIGHT_PROGRESS.md +0 -0
  66. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/archive/OVERNIGHT_REPORT_2026_04_13.md +0 -0
  67. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/archive/PERF_SWEEP_PLAN.md +0 -0
  68. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/archive/PRD.md +0 -0
  69. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/archive/drydock_terms.md +0 -0
  70. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/archive/resume.md +0 -0
  71. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/docs/proxy-setup.md +0 -0
  72. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/__init__.py +0 -0
  73. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/__main__.py +0 -0
  74. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/__init__.py +0 -0
  75. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/acp_agent_loop.py +0 -0
  76. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/acp_logger.py +0 -0
  77. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/entrypoint.py +0 -0
  78. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/tools/__init__.py +0 -0
  79. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/tools/base.py +0 -0
  80. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/tools/builtins/bash.py +0 -0
  81. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/tools/builtins/read_file.py +0 -0
  82. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/tools/builtins/search_replace.py +0 -0
  83. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/tools/builtins/todo.py +0 -0
  84. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/tools/builtins/write_file.py +0 -0
  85. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/tools/session_update.py +0 -0
  86. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/acp/utils.py +0 -0
  87. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/__init__.py +0 -0
  88. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/detectors.py +0 -0
  89. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/detectors_proposed.py +0 -0
  90. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/history.py +0 -0
  91. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/interventions.py +0 -0
  92. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/llm_analyzer.py +0 -0
  93. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/metrics.py +0 -0
  94. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/opus_escalator.py +0 -0
  95. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/persistence.py +0 -0
  96. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/policy.py +0 -0
  97. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/proposer.py +0 -0
  98. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/stager.py +0 -0
  99. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/task_classifier.py +0 -0
  100. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/tuning.py +0 -0
  101. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/validator.py +0 -0
  102. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/admiral/worker.py +0 -0
  103. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/__init__.py +0 -0
  104. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/autocompletion/__init__.py +0 -0
  105. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/autocompletion/base.py +0 -0
  106. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/autocompletion/path_completion.py +0 -0
  107. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/autocompletion/slash_command.py +0 -0
  108. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/cli.py +0 -0
  109. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/clipboard.py +0 -0
  110. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/entrypoint.py +0 -0
  111. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/fix_windows_path.py +0 -0
  112. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/history_manager.py +0 -0
  113. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/plan_offer/adapters/http_whoami_gateway.py +0 -0
  114. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/plan_offer/decide_plan_offer.py +0 -0
  115. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/plan_offer/ports/whoami_gateway.py +0 -0
  116. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/terminal_setup.py +0 -0
  117. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/__init__.py +0 -0
  118. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/ansi_markdown.py +0 -0
  119. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/app.tcss +0 -0
  120. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/external_editor.py +0 -0
  121. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/handlers/__init__.py +0 -0
  122. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/handlers/event_handler.py +0 -0
  123. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/notifications/__init__.py +0 -0
  124. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/notifications/adapters/__init__.py +0 -0
  125. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/notifications/adapters/textual_notification_adapter.py +0 -0
  126. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/notifications/ports/__init__.py +0 -0
  127. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/notifications/ports/notification_port.py +0 -0
  128. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/__init__.py +0 -0
  129. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/approval_app.py +0 -0
  130. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/banner/banner.py +0 -0
  131. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/banner/petit_chat.py +0 -0
  132. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/braille_renderer.py +0 -0
  133. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/chat_input/__init__.py +0 -0
  134. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/chat_input/body.py +0 -0
  135. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/chat_input/completion_manager.py +0 -0
  136. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/chat_input/completion_popup.py +0 -0
  137. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/chat_input/container.py +0 -0
  138. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/chat_input/text_area.py +0 -0
  139. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/checkpoint_picker.py +0 -0
  140. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/compact.py +0 -0
  141. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/config_app.py +0 -0
  142. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/context_progress.py +0 -0
  143. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/load_more.py +0 -0
  144. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/loading.py +0 -0
  145. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/messages.py +0 -0
  146. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/no_markup_static.py +0 -0
  147. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/path_display.py +0 -0
  148. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/proxy_setup_app.py +0 -0
  149. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/question_app.py +0 -0
  150. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/session_picker.py +0 -0
  151. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/spinner.py +0 -0
  152. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/status_message.py +0 -0
  153. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/teleport_message.py +0 -0
  154. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/tool_widgets.py +0 -0
  155. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/tools.py +0 -0
  156. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/widgets/vscode_compat.py +0 -0
  157. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/windowing/__init__.py +0 -0
  158. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/windowing/history.py +0 -0
  159. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/windowing/history_windowing.py +0 -0
  160. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/textual_ui/windowing/state.py +0 -0
  161. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/update_notifier/__init__.py +0 -0
  162. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/update_notifier/adapters/filesystem_update_cache_repository.py +0 -0
  163. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/update_notifier/adapters/github_update_gateway.py +0 -0
  164. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/update_notifier/adapters/pypi_update_gateway.py +0 -0
  165. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/update_notifier/ports/update_cache_repository.py +0 -0
  166. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/update_notifier/ports/update_gateway.py +0 -0
  167. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/update_notifier/update.py +0 -0
  168. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/cli/update_notifier/whats_new.py +0 -0
  169. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/__init__.py +0 -0
  170. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/agent_loop.py +0 -0
  171. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/agents/__init__.py +0 -0
  172. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/agents/manager.py +0 -0
  173. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/agents/models.py +0 -0
  174. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/auth/__init__.py +0 -0
  175. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/auth/crypto.py +0 -0
  176. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/auth/github.py +0 -0
  177. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/autocompletion/__init__.py +0 -0
  178. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/autocompletion/completers.py +0 -0
  179. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/autocompletion/file_indexer/__init__.py +0 -0
  180. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/autocompletion/file_indexer/ignore_rules.py +0 -0
  181. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/autocompletion/file_indexer/indexer.py +0 -0
  182. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/autocompletion/file_indexer/store.py +0 -0
  183. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/autocompletion/file_indexer/watcher.py +0 -0
  184. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/autocompletion/fuzzy.py +0 -0
  185. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/autocompletion/path_prompt.py +0 -0
  186. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/autocompletion/path_prompt_adapter.py +0 -0
  187. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/build_orchestrator.py +0 -0
  188. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/checkpoint.py +0 -0
  189. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/classifier/__init__.py +0 -0
  190. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/classifier/__main__.py +0 -0
  191. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/classifier/classifier.py +0 -0
  192. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/classifier/dispatcher.py +0 -0
  193. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/classifier/rules.py +0 -0
  194. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/classifier/signal.py +0 -0
  195. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/config/__init__.py +0 -0
  196. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/config/_dotenv.py +0 -0
  197. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/config/_settings.py +0 -0
  198. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/config/doctor.py +0 -0
  199. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/config/harness_files/__init__.py +0 -0
  200. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/config/harness_files/_harness_manager.py +0 -0
  201. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/config/harness_files/_paths.py +0 -0
  202. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/config/local_detect.py +0 -0
  203. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/config/migrate.py +0 -0
  204. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/consultant.py +0 -0
  205. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/context_recovery.py +0 -0
  206. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/drydock_states.py +0 -0
  207. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/hooks.py +0 -0
  208. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/__init__.py +0 -0
  209. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/backend/anthropic.py +0 -0
  210. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/backend/base.py +0 -0
  211. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/backend/factory.py +0 -0
  212. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/backend/generic.py +0 -0
  213. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/backend/mistral.py +0 -0
  214. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/backend/reasoning_adapter.py +0 -0
  215. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/backend/vertex.py +0 -0
  216. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/exceptions.py +0 -0
  217. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/format.py +0 -0
  218. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/message_utils.py +0 -0
  219. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/llm/types.py +0 -0
  220. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/logger.py +0 -0
  221. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/middleware.py +0 -0
  222. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/output_formatters.py +0 -0
  223. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/paths/__init__.py +0 -0
  224. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/paths/_drydock_home.py +0 -0
  225. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/paths/_local_config_walk.py +0 -0
  226. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/paths/conventions.py +0 -0
  227. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/plan_session.py +0 -0
  228. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/plugins.py +0 -0
  229. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/programmatic.py +0 -0
  230. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/__init__.py +0 -0
  231. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/builder.md +0 -0
  232. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/cli.md +0 -0
  233. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/compact.md +0 -0
  234. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/dangerous_directory.md +0 -0
  235. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/diagnostic.md +0 -0
  236. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/explore.md +0 -0
  237. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/gemma4.md +0 -0
  238. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/planner.md +0 -0
  239. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/project_context.md +0 -0
  240. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/prompts/tests.md +0 -0
  241. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/proxy_setup.py +0 -0
  242. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/session/agent_memory.py +0 -0
  243. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/session/checkpoints.py +0 -0
  244. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/session/session_loader.py +0 -0
  245. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/session/session_logger.py +0 -0
  246. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/session/session_migration.py +0 -0
  247. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/session/state_file.py +0 -0
  248. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/session_checker.py +0 -0
  249. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/skills/__init__.py +0 -0
  250. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/skills/manager.py +0 -0
  251. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/skills/models.py +0 -0
  252. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/skills/parser.py +0 -0
  253. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/slug.py +0 -0
  254. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/steering_hook.py +0 -0
  255. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/system_prompt.py +0 -0
  256. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/telemetry/__init__.py +0 -0
  257. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/telemetry/send.py +0 -0
  258. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/teleport/errors.py +0 -0
  259. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/teleport/git.py +0 -0
  260. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/teleport/nuage.py +0 -0
  261. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/teleport/teleport.py +0 -0
  262. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/teleport/types.py +0 -0
  263. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/base.py +0 -0
  264. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/_task_manager.py +0 -0
  265. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/ask_user_question.py +0 -0
  266. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/bash.py +0 -0
  267. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/cron.py +0 -0
  268. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/exit_plan_mode.py +0 -0
  269. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/glob_tool.py +0 -0
  270. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/grep.py +0 -0
  271. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/invoke_skill.py +0 -0
  272. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/lsp.py +0 -0
  273. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/mcp_resources.py +0 -0
  274. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/notebook_edit.py +0 -0
  275. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/powershell.py +0 -0
  276. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/__init__.py +0 -0
  277. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/ask_user_question.md +0 -0
  278. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/bash.md +0 -0
  279. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/cron.md +0 -0
  280. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/glob.md +0 -0
  281. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/grep.md +0 -0
  282. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/invoke_skill.md +0 -0
  283. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/lsp.md +0 -0
  284. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/mcp_resources.md +0 -0
  285. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/notebook_edit.md +0 -0
  286. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/powershell.md +0 -0
  287. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/read_file.md +0 -0
  288. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/retrieve.md +0 -0
  289. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/search_replace.md +0 -0
  290. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/swe_bench.md +0 -0
  291. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/task.md +0 -0
  292. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/task_manager.md +0 -0
  293. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/todo.md +0 -0
  294. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/tool_search.md +0 -0
  295. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/webfetch.md +0 -0
  296. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/websearch.md +0 -0
  297. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/worktree.md +0 -0
  298. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/prompts/write_file.md +0 -0
  299. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/read_file.py +0 -0
  300. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/retrieve.py +0 -0
  301. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/search_replace.py +0 -0
  302. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/task.py +0 -0
  303. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/todo.py +0 -0
  304. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/tool_search.py +0 -0
  305. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/webfetch.py +0 -0
  306. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/websearch.py +0 -0
  307. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/worktree.py +0 -0
  308. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/builtins/write_file.py +0 -0
  309. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/injection_guard.py +0 -0
  310. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/manager.py +0 -0
  311. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/mcp/__init__.py +0 -0
  312. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/mcp/registry.py +0 -0
  313. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/mcp/tools.py +0 -0
  314. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/mcp_sampling.py +0 -0
  315. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/ui.py +0 -0
  316. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/tools/utils.py +0 -0
  317. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/trusted_folders.py +0 -0
  318. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/types.py +0 -0
  319. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/core/utils.py +0 -0
  320. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/graphrag/__init__.py +0 -0
  321. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/graphrag/__main__.py +0 -0
  322. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/graphrag/code_indexer.py +0 -0
  323. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/graphrag/retriever.py +0 -0
  324. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/graphrag/storage.py +0 -0
  325. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/graphrag/text_indexer.py +0 -0
  326. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/setup/onboarding/__init__.py +0 -0
  327. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/setup/onboarding/base.py +0 -0
  328. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/setup/onboarding/onboarding.tcss +0 -0
  329. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/setup/onboarding/screens/__init__.py +0 -0
  330. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/setup/onboarding/screens/api_key.py +0 -0
  331. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/setup/onboarding/screens/choice.py +0 -0
  332. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/setup/onboarding/screens/local_model.py +0 -0
  333. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/setup/onboarding/screens/welcome.py +0 -0
  334. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/setup/trusted_folders/trust_folder_dialog.py +0 -0
  335. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/setup/trusted_folders/trust_folder_dialog.tcss +0 -0
  336. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/__init__.py +0 -0
  337. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/api-design/SKILL.md +0 -0
  338. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/audit-tests/SKILL.md +0 -0
  339. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/batch/SKILL.md +0 -0
  340. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/commit-code/SKILL.md +0 -0
  341. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/context-summary/SKILL.md +0 -0
  342. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/create-presentation/SKILL.md +0 -0
  343. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/deep-research/SKILL.md +0 -0
  344. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/deploy/SKILL.md +0 -0
  345. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/diff-review/SKILL.md +0 -0
  346. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/doc-gen/SKILL.md +0 -0
  347. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/explain-code/SKILL.md +0 -0
  348. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/explore-code/SKILL.md +0 -0
  349. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/fix-issue/SKILL.md +0 -0
  350. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/git-ops/SKILL.md +0 -0
  351. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/init-project/SKILL.md +0 -0
  352. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/investigate/SKILL.md +0 -0
  353. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/loop/SKILL.md +0 -0
  354. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/migrate/SKILL.md +0 -0
  355. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/perf-analyze/SKILL.md +0 -0
  356. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/plan-impl/SKILL.md +0 -0
  357. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/pr-review/SKILL.md +0 -0
  358. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/refactor/SKILL.md +0 -0
  359. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/regex-help/SKILL.md +0 -0
  360. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/review/SKILL.md +0 -0
  361. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/security-review/SKILL.md +0 -0
  362. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/ship/SKILL.md +0 -0
  363. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/simplify/SKILL.md +0 -0
  364. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/strong-tests/SKILL.md +0 -0
  365. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/skills/test-verify/SKILL.md +0 -0
  366. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/__init__.py +0 -0
  367. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/__main__.py +0 -0
  368. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/applier.py +0 -0
  369. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/config.py +0 -0
  370. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/registry.py +0 -0
  371. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/sandbox.py +0 -0
  372. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/sidecar/__init__.py +0 -0
  373. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/sidecar/header_parser.py +0 -0
  374. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/sidecar/hooks.py +0 -0
  375. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/sidecar/loader.py +0 -0
  376. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/sidecar/server.py +0 -0
  377. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/train/__init__.py +0 -0
  378. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/train/capture.py +0 -0
  379. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/train/compute_vector.py +0 -0
  380. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/train/extract_pairs.py +0 -0
  381. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/steering/vectors.py +0 -0
  382. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock/whats_new.md +0 -0
  383. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/drydock-acp.spec +0 -0
  384. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/flake.lock +0 -0
  385. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/flake.nix +0 -0
  386. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/outlook_draft_assistant.tar.gz +0 -0
  387. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/research/README.md +0 -0
  388. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/research/config_base.toml +0 -0
  389. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/research/config_best.toml +0 -0
  390. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/research/domain_spec.md +0 -0
  391. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/research/experimenter.py +0 -0
  392. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/research/kernel.py +0 -0
  393. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/research/mini_prd.md +0 -0
  394. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/research/mini_prompts.txt +0 -0
  395. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/research/proposer.py +0 -0
  396. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/research/results.tsv +0 -0
  397. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/README.md +0 -0
  398. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/admiral_probe.py +0 -0
  399. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/archive/auto_test_loop.sh +0 -0
  400. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/archive/monitor_test_battery.sh +0 -0
  401. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/archive/overnight_agents_test.sh +0 -0
  402. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/archive/test_bank.sh +0 -0
  403. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/archive/test_full.sh +0 -0
  404. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/archive/test_smoke.sh +0 -0
  405. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/archive/tui_test.py +0 -0
  406. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/audit_sampler.py +0 -0
  407. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/auto_generate_tests.py +0 -0
  408. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/auto_release.sh +0 -0
  409. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/autonomous_review.sh +0 -0
  410. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/autonomous_review_prompt.md +0 -0
  411. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/backup.sh +0 -0
  412. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/bump_version.py +0 -0
  413. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/classify_pulse.sh +0 -0
  414. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/consume_retrieval_queue.py +0 -0
  415. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/deploy_to_github.sh +0 -0
  416. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/fetch_arxiv_abstracts.py +0 -0
  417. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/gen_2000_prompts.py +0 -0
  418. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/hle_eval.py +0 -0
  419. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/hle_eval_seed.jsonl +0 -0
  420. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/llm_balancer.py +0 -0
  421. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/notify_release.py +0 -0
  422. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/perf_baseline_when_idle.sh +0 -0
  423. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/perf_sweep.py +0 -0
  424. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/poll_issues.sh +0 -0
  425. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/publish_to_pypi.sh +0 -0
  426. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/queue_top.py +0 -0
  427. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/ralph_loop.py +0 -0
  428. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/research_babysitter.sh +0 -0
  429. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/shakedown.py +0 -0
  430. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/shakedown_interactive.py +0 -0
  431. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/shakedown_suite.sh +0 -0
  432. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/shakedown_variance.sh +0 -0
  433. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/start_steering_sidecar.sh +0 -0
  434. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/stress_babysitter.sh +0 -0
  435. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/stress_prompts_50.txt +0 -0
  436. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/stress_prompts_realuser.txt +0 -0
  437. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/stress_prompts_tool_agent.txt +0 -0
  438. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/stress_prompts_tool_agent_2000.txt +0 -0
  439. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/stress_shakedown.py +0 -0
  440. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/stress_telegram_status.py +0 -0
  441. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/stress_watcher.py +0 -0
  442. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/telegram_bot.py +0 -0
  443. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/scripts/vllm_failover.sh +0 -0
  444. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/__init__.py +0 -0
  445. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/conftest.py +0 -0
  446. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_acp.py +0 -0
  447. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_agent_thought.py +0 -0
  448. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_bash.py +0 -0
  449. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_compact_session_updates.py +0 -0
  450. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_content.py +0 -0
  451. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_initialize.py +0 -0
  452. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_list_sessions.py +0 -0
  453. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_load_session.py +0 -0
  454. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_multi_session.py +0 -0
  455. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_new_session.py +0 -0
  456. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_proxy_setup_acp.py +0 -0
  457. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_read_file.py +0 -0
  458. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_search_replace.py +0 -0
  459. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_set_config_option.py +0 -0
  460. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_set_mode.py +0 -0
  461. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_set_model.py +0 -0
  462. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_tool_call_session_update.py +0 -0
  463. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_utils.py +0 -0
  464. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/acp/test_write_file.py +0 -0
  465. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/autocompletion/test_file_indexer.py +0 -0
  466. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/autocompletion/test_fuzzy.py +0 -0
  467. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/autocompletion/test_path_completer_fuzzy.py +0 -0
  468. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/autocompletion/test_path_completer_recursive.py +0 -0
  469. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/autocompletion/test_path_completion_controller.py +0 -0
  470. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/autocompletion/test_path_prompt_transformer.py +0 -0
  471. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/autocompletion/test_slash_command_controller.py +0 -0
  472. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/autocompletion/test_ui_chat_autocompletion.py +0 -0
  473. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/backend/__init__.py +0 -0
  474. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/backend/data/__init__.py +0 -0
  475. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/backend/data/fireworks.py +0 -0
  476. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/backend/data/mistral.py +0 -0
  477. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/backend/test_anthropic_adapter.py +0 -0
  478. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/backend/test_backend.py +0 -0
  479. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/backend/test_generic_adapter_sanitize.py +0 -0
  480. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/backend/test_reasoning_adapter.py +0 -0
  481. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/backend/test_vertex_anthropic_adapter.py +0 -0
  482. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/plan_offer/adapters/fake_whoami_gateway.py +0 -0
  483. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/plan_offer/test_decide_plan_offer.py +0 -0
  484. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/plan_offer/test_http_whoami_gateway.py +0 -0
  485. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_bell_notifications.py +0 -0
  486. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_braille_renderer.py +0 -0
  487. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_clipboard.py +0 -0
  488. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_commands.py +0 -0
  489. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_copy_shortcuts.py +0 -0
  490. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_external_editor.py +0 -0
  491. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_no_markup_static.py +0 -0
  492. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_question_app.py +0 -0
  493. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_spinner.py +0 -0
  494. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_switching_mode.py +0 -0
  495. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_ui_clipboard_notifications.py +0 -0
  496. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_ui_session_incremental_renderer.py +0 -0
  497. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_ui_session_resume.py +0 -0
  498. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/test_ui_skill_dispatch.py +0 -0
  499. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/textual_ui/__init__.py +0 -0
  500. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/cli/textual_ui/test_session_picker.py +0 -0
  501. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/conftest.py +0 -0
  502. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_agents.py +0 -0
  503. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_auth_crypto.py +0 -0
  504. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_auth_github.py +0 -0
  505. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_circuit_breaker_count_escalation.py +0 -0
  506. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_circuit_breaker_readonly_threshold.py +0 -0
  507. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_config_load_dotenv.py +0 -0
  508. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_config_paths.py +0 -0
  509. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_config_resolution.py +0 -0
  510. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_file_logging.py +0 -0
  511. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_plan_session.py +0 -0
  512. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_proxy_setup.py +0 -0
  513. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_slug.py +0 -0
  514. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_telemetry_send.py +0 -0
  515. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_teleport_git.py +0 -0
  516. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_teleport_nuage.py +0 -0
  517. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_teleport_service.py +0 -0
  518. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_trusted_folders.py +0 -0
  519. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/core/test_utils.py +0 -0
  520. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/e2e/common.py +0 -0
  521. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/e2e/conftest.py +0 -0
  522. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/e2e/mock_server.py +0 -0
  523. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/e2e/test_cli_tui_onboarding.py +0 -0
  524. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/e2e/test_cli_tui_streaming.py +0 -0
  525. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/e2e/test_cli_tui_tool_approval.py +0 -0
  526. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/fixtures/doc_qa_system_prd.md +0 -0
  527. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/mock/__init__.py +0 -0
  528. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/mock/mock_backend_factory.py +0 -0
  529. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/mock/mock_entrypoint.py +0 -0
  530. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/mock/utils.py +0 -0
  531. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/onboarding/test_run_onboarding.py +0 -0
  532. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/onboarding/test_ui_onboarding.py +0 -0
  533. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/session/test_session_loader.py +0 -0
  534. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/session/test_session_logger.py +0 -0
  535. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/session/test_session_migration.py +0 -0
  536. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/skills/conftest.py +0 -0
  537. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/skills/test_manager.py +0 -0
  538. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/skills/test_models.py +0 -0
  539. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/skills/test_parser.py +0 -0
  540. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_collapsed.svg +0 -0
  541. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_expanded.svg +0 -0
  542. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_basic_conversation/test_snapshot_shows_basic_conversation.svg +0 -0
  543. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_code_block_horizontal_scrolling/test_snapshot_allows_horizontal_scrolling_for_long_code_blocks.svg +0 -0
  544. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_empty_assistant_before_reasoning/test_snapshot_empty_assistant_removed_when_reasoning_starts.svg +0 -0
  545. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_accept_edits_mode.svg +0 -0
  546. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_auto_approve_mode.svg +0 -0
  547. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_plan_mode.svg +0 -0
  548. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_wraps_to_default.svg +0 -0
  549. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_default_mode.svg +0 -0
  550. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_pending.svg +0 -0
  551. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_resolved.svg +0 -0
  552. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_cancel_discards_changes.svg +0 -0
  553. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_edit_existing_values.svg +0 -0
  554. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_empty.svg +0 -0
  555. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_with_values.svg +0 -0
  556. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_error.svg +0 -0
  557. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_new_values.svg +0 -0
  558. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_answer_first_advance.svg +0 -0
  559. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_first_answered_checkmark.svg +0 -0
  560. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_initial.svg +0 -0
  561. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_left_wraps.svg +0 -0
  562. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_right.svg +0 -0
  563. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_tab_to_second.svg +0 -0
  564. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_initial.svg +0 -0
  565. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_mixed_selection.svg +0 -0
  566. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_navigate_to_submit.svg +0 -0
  567. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_other_with_text.svg +0 -0
  568. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_first.svg +0 -0
  569. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_multiple.svg +0 -0
  570. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_untoggle.svg +0 -0
  571. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_initial.svg +0 -0
  572. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_down.svg +0 -0
  573. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_other.svg +0 -0
  574. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_third_option.svg +0 -0
  575. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_up_wraps.svg +0 -0
  576. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_other_typing.svg +0 -0
  577. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_buffered_reasoning_yields_before_content.svg +0 -0
  578. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_interleaved_reasoning.svg +0 -0
  579. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content.svg +0 -0
  580. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content_expanded.svg +0 -0
  581. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_release_update_notification/test_snapshot_shows_release_update_notification.svg +0 -0
  582. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_session_resume/test_snapshot_shows_resumed_session_messages.svg +0 -0
  583. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_partial.svg +0 -0
  584. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_updated.svg +0 -0
  585. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_cancel_selected.svg +0 -0
  586. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_multiple_commits.svg +0 -0
  587. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_single_commit.svg +0 -0
  588. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_complete.svg +0 -0
  589. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_required.svg +0 -0
  590. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_checking_git.svg +0 -0
  591. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_complete.svg +0 -0
  592. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_error.svg +0 -0
  593. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_pushing.svg +0 -0
  594. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_sending_token.svg +0 -0
  595. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_starting_workflow.svg +0 -0
  596. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_no_plan_message.svg +0 -0
  597. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_switch_message.svg +0 -0
  598. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_upgrade_message.svg +0 -0
  599. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_whats_new_message.svg +0 -0
  600. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/base_snapshot_test_app.py +0 -0
  601. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/conftest.py +0 -0
  602. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/snap_compare.py +0 -0
  603. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_ask_user_question.py +0 -0
  604. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_basic_conversation.py +0 -0
  605. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_code_block_horizontal_scrolling.py +0 -0
  606. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_empty_assistant_before_reasoning.py +0 -0
  607. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_modes.py +0 -0
  608. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_parallel_tool_calls.py +0 -0
  609. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_proxy_setup.py +0 -0
  610. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_question_app.py +0 -0
  611. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_reasoning_content.py +0 -0
  612. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_release_update_notification.py +0 -0
  613. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_session_resume.py +0 -0
  614. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_streaming_tool_call.py +0 -0
  615. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_teleport.py +0 -0
  616. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/snapshots/test_ui_snapshot_whats_new.py +0 -0
  617. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/stubs/fake_backend.py +0 -0
  618. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/stubs/fake_client.py +0 -0
  619. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/stubs/fake_tool.py +0 -0
  620. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_admiral.py +0 -0
  621. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_admiral_hallucinated_tool_filter.py +0 -0
  622. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_admiral_intervention_outcome.py +0 -0
  623. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_admiral_phase3.py +0 -0
  624. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_admiral_proposed.py +0 -0
  625. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_admiral_session_id.py +0 -0
  626. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_admiral_struggle_dedup.py +0 -0
  627. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_agent_auto_compact.py +0 -0
  628. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_agent_backend.py +0 -0
  629. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_agent_observer_streaming.py +0 -0
  630. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_agent_stats.py +0 -0
  631. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_agent_tasks.py +0 -0
  632. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_agent_tool_call.py +0 -0
  633. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_agents.py +0 -0
  634. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_bank_build.py +0 -0
  635. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_bank_debug.py +0 -0
  636. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_bank_multiagent.py +0 -0
  637. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_bank_prd.py +0 -0
  638. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_bank_prd_extended.py +0 -0
  639. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_bank_tools.py +0 -0
  640. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_bank_update.py +0 -0
  641. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_build_projects.py +0 -0
  642. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_checkpoint.py +0 -0
  643. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_classifier.py +0 -0
  644. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_cli_programmatic_preload.py +0 -0
  645. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_config_migration.py +0 -0
  646. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_context_recovery.py +0 -0
  647. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_current_bugs.py +0 -0
  648. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_dispatcher.py +0 -0
  649. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_drydock_regression.py +0 -0
  650. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_drydock_tasks.py +0 -0
  651. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_fake_tool_call_paren_syntax.py +0 -0
  652. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_full_regression.py +0 -0
  653. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_graphrag.py +0 -0
  654. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_graphrag_worked_examples.py +0 -0
  655. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_hallucinated_tool_suppression.py +0 -0
  656. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_history_manager.py +0 -0
  657. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_hle_typing.py +0 -0
  658. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_integration.py +0 -0
  659. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_issue_fixes.py +0 -0
  660. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_local_detect.py +0 -0
  661. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_loop_detection.py +0 -0
  662. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_message_id.py +0 -0
  663. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_message_merging.py +0 -0
  664. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_middleware.py +0 -0
  665. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_multi_agent.py +0 -0
  666. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_read_file_not_found_listing.py +0 -0
  667. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_real_failures.py +0 -0
  668. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_real_issues.py +0 -0
  669. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_real_workflow.py +0 -0
  670. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_reasoning_content.py +0 -0
  671. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_retrieval_consumer.py +0 -0
  672. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_retrieve_tool.py +0 -0
  673. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_search_replace_args_not_truncated.py +0 -0
  674. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_smoke.py +0 -0
  675. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_steering.py +0 -0
  676. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_steering_capture.py +0 -0
  677. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_steering_compute_vector.py +0 -0
  678. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_steering_extract_pairs.py +0 -0
  679. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_steering_hook.py +0 -0
  680. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_steering_sidecar_hooks.py +0 -0
  681. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_system_prompt.py +0 -0
  682. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_tagged_text.py +0 -0
  683. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_task_complete_nudge.py +0 -0
  684. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_tool_args.py +0 -0
  685. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_truncate_args_valid_json.py +0 -0
  686. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_truncated_arg_path_hint.py +0 -0
  687. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_truncated_search_replace_escalation.py +0 -0
  688. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_truncated_write_escalation.py +0 -0
  689. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_ui_external_editor.py +0 -0
  690. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_ui_input_history.py +0 -0
  691. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_user_issues.py +0 -0
  692. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_wall_of_text_rescue.py +0 -0
  693. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_workloads.py +0 -0
  694. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/test_write_file_missing_path.py +0 -0
  695. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/testbank_helpers.py +0 -0
  696. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_ask_user_question.py +0 -0
  697. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_bash.py +0 -0
  698. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_bash_binary_grep_hint.py +0 -0
  699. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_bash_consec_empty_search.py +0 -0
  700. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_bash_echo_escape_loop_breaker.py +0 -0
  701. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_bash_empty_search_loop_breaker.py +0 -0
  702. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_bash_error_loop_breaker.py +0 -0
  703. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_bash_exact_cmd_loop_breaker.py +0 -0
  704. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_bash_heredoc_confirmation.py +0 -0
  705. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_bash_kill_exit1_annotation.py +0 -0
  706. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_bash_python_c_syntaxerr_loop_breaker.py +0 -0
  707. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_exit_plan_mode.py +0 -0
  708. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_grep.py +0 -0
  709. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_hallucinated_retrieval_redirect.py +0 -0
  710. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_invoke_context.py +0 -0
  711. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_manager_gemma_derived_models.py +0 -0
  712. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_manager_get_tool_config.py +0 -0
  713. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_mcp.py +0 -0
  714. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_mcp_sampling.py +0 -0
  715. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_read_file_dedup_alternating_offset.py +0 -0
  716. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_read_file_dedup_reembed.py +0 -0
  717. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_read_file_directory.py +0 -0
  718. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_read_file_limit_truncation.py +0 -0
  719. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_search_replace_append_fallback.py +0 -0
  720. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_search_replace_dir_path.py +0 -0
  721. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_search_replace_empty_content.py +0 -0
  722. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_search_replace_file_not_found.py +0 -0
  723. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_search_replace_first_failure_hint.py +0 -0
  724. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_search_replace_hard_stop.py +0 -0
  725. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_search_replace_malformed_block.py +0 -0
  726. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_search_replace_no_op_loop_breaker.py +0 -0
  727. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_search_replace_placeholder.py +0 -0
  728. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_search_replace_refused_loop_breaker.py +0 -0
  729. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_task.py +0 -0
  730. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_ui_bash_execution.py +0 -0
  731. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_webfetch.py +0 -0
  732. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_websearch.py +0 -0
  733. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_write_file_dedup_missing_imports.py +0 -0
  734. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/tools/test_write_file_missing_path_hint.py +0 -0
  735. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/update_notifier/adapters/fake_update_cache_repository.py +0 -0
  736. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/update_notifier/adapters/fake_update_gateway.py +0 -0
  737. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/update_notifier/test_do_update.py +0 -0
  738. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/update_notifier/test_filesystem_update_cache_repository.py +0 -0
  739. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/update_notifier/test_github_update_gateway.py +0 -0
  740. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/update_notifier/test_pypi_update_gateway.py +0 -0
  741. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/update_notifier/test_ui_update_notification.py +0 -0
  742. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/update_notifier/test_update_use_case.py +0 -0
  743. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/tests/update_notifier/test_whats_new.py +0 -0
  744. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/uv.lock +0 -0
  745. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/worked_examples/README.md +0 -0
  746. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/worked_examples/cli_subcommand_dispatch.py +0 -0
  747. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/worked_examples/lookup.json +0 -0
  748. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/worked_examples/sql_parser.py +0 -0
  749. {drydock_cli-2.8.16 → drydock_cli-2.8.18}/worked_examples/tree_walking_interpreter.py +0 -0
@@ -0,0 +1 @@
1
+ 670648
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: drydock-cli
3
- Version: 2.8.16
3
+ Version: 2.8.18
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
@@ -125,6 +125,15 @@ class CommandRegistry:
125
125
  "/steering off | /steering list).",
126
126
  handler="_steering_command",
127
127
  ),
128
+ "mcp": Command(
129
+ aliases=frozenset(["/mcp"]),
130
+ description="Configure MCP servers in ~/.drydock/config.toml "
131
+ "(usage: /mcp | /mcp add stdio <name> <cmd...> | "
132
+ "/mcp add http <name> <url> | "
133
+ "/mcp add streamable-http <name> <url> | "
134
+ "/mcp remove <name> | /mcp examples).",
135
+ handler="_mcp_command",
136
+ ),
128
137
  }
129
138
 
130
139
  for command in excluded_commands:
@@ -1462,6 +1462,176 @@ class DrydockApp(App): # noqa: PLR0904
1462
1462
  )
1463
1463
  )
1464
1464
 
1465
+ async def _mcp_command(self, args: str = "") -> None:
1466
+ """Configure MCP servers in ~/.drydock/config.toml."""
1467
+ import shlex
1468
+ import tomli
1469
+ import tomli_w
1470
+
1471
+ config_path = Path.home() / ".drydock" / "config.toml"
1472
+ config_path.parent.mkdir(parents=True, exist_ok=True)
1473
+
1474
+ def _load() -> dict:
1475
+ if not config_path.exists():
1476
+ return {}
1477
+ try:
1478
+ return tomli.loads(config_path.read_text())
1479
+ except Exception:
1480
+ return {}
1481
+
1482
+ def _save(data: dict) -> None:
1483
+ config_path.write_text(tomli_w.dumps(data))
1484
+
1485
+ def _render_servers(servers: list[dict]) -> str:
1486
+ if not servers:
1487
+ return "_(no MCP servers configured)_"
1488
+ lines = []
1489
+ for s in servers:
1490
+ name = s.get("name", "?")
1491
+ transport = s.get("transport", "?")
1492
+ if transport == "stdio":
1493
+ cmd = s.get("command", "")
1494
+ if isinstance(cmd, list):
1495
+ cmd = " ".join(cmd)
1496
+ extra = " ".join(s.get("args", []) or [])
1497
+ target = f"`{cmd} {extra}`".strip()
1498
+ else:
1499
+ target = f"`{s.get('url', '')}`"
1500
+ lines.append(f"- **{name}** ({transport}) → {target}")
1501
+ return "\n".join(lines)
1502
+
1503
+ parts = shlex.split(args) if args.strip() else []
1504
+ sub = parts[0].lower() if parts else "list"
1505
+
1506
+ if sub in ("list", ""):
1507
+ data = _load()
1508
+ servers = data.get("mcp_servers", []) or []
1509
+ msg = (
1510
+ "### MCP servers\n\n"
1511
+ f"Config: `{config_path}`\n\n"
1512
+ f"{_render_servers(servers)}\n\n"
1513
+ "**Commands:**\n"
1514
+ "- `/mcp add stdio <name> <command> [args...]`\n"
1515
+ "- `/mcp add http <name> <url>`\n"
1516
+ "- `/mcp add streamable-http <name> <url>`\n"
1517
+ "- `/mcp remove <name>`\n"
1518
+ "- `/mcp examples`\n\n"
1519
+ "_Restart Drydock after changes to load new servers._"
1520
+ )
1521
+ await self._mount_and_scroll(UserCommandMessage(msg))
1522
+ return
1523
+
1524
+ if sub == "examples":
1525
+ await self._mount_and_scroll(UserCommandMessage(
1526
+ "### MCP server examples\n\n"
1527
+ "**stdio (local process):**\n"
1528
+ "```\n"
1529
+ "/mcp add stdio filesystem npx -y "
1530
+ "@modelcontextprotocol/server-filesystem /data\n"
1531
+ "```\n\n"
1532
+ "**HTTP:**\n"
1533
+ "```\n"
1534
+ "/mcp add http weather https://mcp.example.com\n"
1535
+ "```\n\n"
1536
+ "**Streamable HTTP:**\n"
1537
+ "```\n"
1538
+ "/mcp add streamable-http myapi https://api.example.com/mcp\n"
1539
+ "```\n\n"
1540
+ "For auth headers, env-var API keys, custom timeouts, or "
1541
+ "`sampling_enabled=false`, edit `~/.drydock/config.toml` "
1542
+ "directly. Schema: `name`, `transport`, plus `command`/"
1543
+ "`args`/`env` (stdio) or `url`/`headers`/`api_key_env`/"
1544
+ "`api_key_header`/`api_key_format` (http variants)."
1545
+ ))
1546
+ return
1547
+
1548
+ if sub == "remove":
1549
+ if len(parts) < 2:
1550
+ await self._mount_and_scroll(UserCommandMessage(
1551
+ "Usage: `/mcp remove <name>`"
1552
+ ))
1553
+ return
1554
+ name = parts[1]
1555
+ data = _load()
1556
+ servers = data.get("mcp_servers", []) or []
1557
+ new_servers = [s for s in servers if s.get("name") != name]
1558
+ if len(new_servers) == len(servers):
1559
+ await self._mount_and_scroll(UserCommandMessage(
1560
+ f"No MCP server named `{name}` found."
1561
+ ))
1562
+ return
1563
+ data["mcp_servers"] = new_servers
1564
+ _save(data)
1565
+ await self._mount_and_scroll(UserCommandMessage(
1566
+ f"Removed MCP server `{name}`. Restart Drydock to apply."
1567
+ ))
1568
+ return
1569
+
1570
+ if sub == "add":
1571
+ if len(parts) < 4:
1572
+ await self._mount_and_scroll(UserCommandMessage(
1573
+ "Usage:\n"
1574
+ "- `/mcp add stdio <name> <command> [args...]`\n"
1575
+ "- `/mcp add http <name> <url>`\n"
1576
+ "- `/mcp add streamable-http <name> <url>`"
1577
+ ))
1578
+ return
1579
+ transport = parts[1].lower()
1580
+ name = parts[2]
1581
+ rest = parts[3:]
1582
+
1583
+ if transport not in ("stdio", "http", "streamable-http"):
1584
+ await self._mount_and_scroll(UserCommandMessage(
1585
+ f"Unknown transport `{transport}`. "
1586
+ "Use `stdio`, `http`, or `streamable-http`."
1587
+ ))
1588
+ return
1589
+
1590
+ entry: dict
1591
+ if transport == "stdio":
1592
+ entry = {
1593
+ "name": name,
1594
+ "transport": "stdio",
1595
+ "command": rest[0],
1596
+ "args": list(rest[1:]),
1597
+ }
1598
+ else:
1599
+ if len(rest) != 1:
1600
+ await self._mount_and_scroll(UserCommandMessage(
1601
+ f"Usage: `/mcp add {transport} <name> <url>`"
1602
+ ))
1603
+ return
1604
+ entry = {
1605
+ "name": name,
1606
+ "transport": transport,
1607
+ "url": rest[0],
1608
+ }
1609
+
1610
+ data = _load()
1611
+ servers = data.get("mcp_servers", []) or []
1612
+ servers = [s for s in servers if s.get("name") != name]
1613
+ servers.append(entry)
1614
+ data["mcp_servers"] = servers
1615
+ _save(data)
1616
+
1617
+ target = (
1618
+ f"`{entry['command']} {' '.join(entry.get('args', []))}`".strip()
1619
+ if transport == "stdio"
1620
+ else f"`{entry['url']}`"
1621
+ )
1622
+ await self._mount_and_scroll(UserCommandMessage(
1623
+ f"Added MCP server **{name}** ({transport}) → {target}\n\n"
1624
+ f"Config: `{config_path}`\n"
1625
+ "Restart Drydock to load the server. Edit the file directly "
1626
+ "for advanced fields (headers, env, api_key_env, timeouts)."
1627
+ ))
1628
+ return
1629
+
1630
+ await self._mount_and_scroll(UserCommandMessage(
1631
+ "Usage: `/mcp {list | add <transport> <name> ... | "
1632
+ "remove <name> | examples}`"
1633
+ ))
1634
+
1465
1635
  async def _admiral_apply_command(self, args: str = "") -> None:
1466
1636
  """Merge an Admiral-staged proposal branch into main."""
1467
1637
  import subprocess
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "drydock-cli"
3
- version = "2.8.16"
3
+ version = "2.8.18"
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,52 @@
1
1
  # Drydock Trip Log
2
2
 
3
+ ## 2026-05-12 15:00 UTC tick
4
+ - Stress: 1658/1658 COMPLETE (cycle done, PID dead, babysitter idle)
5
+ - Write rate: N/A (cycle complete)
6
+ - Admiral last 30 min: not checked (no stress run active)
7
+ - vLLM 400s: 0
8
+ - GH issues: 0 open
9
+ - Dispatch queue: harness=104303, retrieval=175 (0 new ingests), steering=0
10
+ - Action: no action — healthy. Uncommitted /mcp feature (179 lines) continues deferred to user review per >100-line soft rule. Retrieval drain consumed 0 (all already ingested).
11
+
12
+ ## 2026-05-12 14:00 UTC tick
13
+ - Stress: 1658/1658 COMPLETE (cycle finished, PID dead, babysitter idle as expected)
14
+ - Write rate: N/A (cycle complete)
15
+ - Admiral last 30 min: N/A (stress not running)
16
+ - vLLM 400s: 0
17
+ - GH issues: 0 open
18
+ - Dispatch queue: harness=104303, retrieval=175 (0 actionable), steering=N/A
19
+ - Action this tick: no action — healthy; dispatch queue dominated by thinking_stall and bash:heredoc_loop already addressed in prior commits; retrieval drain 0 new ingests; balancer PID 380535 on :8001 healthy
20
+
21
+ ## 2026-05-12 04:00 UTC tick
22
+ - Stress: 1658/1658 COMPLETE (PID 340932 dead — run finished normally; babysitter idle as expected)
23
+ - Write rate: N/A (cycle complete)
24
+ - Admiral last 30 min: 0 fires (no active sessions)
25
+ - vLLM 400s: 0 (vLLM container exited 6 days ago; replaced by llamacpp-gemma4 running on :8000 at ~73 tok/s; health-check flag "unhealthy" but completions confirmed working via direct test)
26
+ - GH issues: 0 open
27
+ - Dispatch queue: harness=104302, retrieval=175, steering=0
28
+ - retrieval-drain: 0 projects ingested (all already consumed)
29
+ - Action this tick: no action — healthy. Balancer PID 380535 live on :8001; stale 502 errors in balancer.log are from the now-complete stress run (last written May 11 02:36 CDT). No actionable dispatch patterns; all dominant patterns (thinking_stall, heredoc_loop) already addressed in source.
30
+
31
+ ## 2026-05-12 00:00 UTC tick
32
+ - Stress: 1658/1658 COMPLETE (done=88, skip=53, timeout=0; full cycle finished in 555min; babysitter correctly idle)
33
+ - Write rate: N/A (cycle complete)
34
+ - Admiral last 30 min: 0 fires
35
+ - vLLM 400s: 0 (container up, unhealthy flag but forwarding fine)
36
+ - GH issues: 0 open
37
+ - Dispatch queue: harness=104302, retrieval=175, steering=0
38
+ - retrieval-drain: 0 projects ingested (all 175 entries already consumed)
39
+ - Action this tick: no action — healthy. Stress run completed normally. Balancer PID 380535 on :8001 confirmed live. No new patterns in queue since last tick.
40
+
41
+ ## 2026-05-11 22:00 UTC tick
42
+ - Stress: 1658/1658 COMPLETE (run finished, PID dead, babysitter not restarting by design)
43
+ - Write rate: N/A (cycle complete)
44
+ - Admiral last 30 min: 0 fires
45
+ - vLLM 400s: 0
46
+ - GH issues: 0 open
47
+ - Dispatch queue: harness=104302, retrieval=175 (retrieval drain: 0 actionable — all already ingested)
48
+ - Action this tick: no action — system healthy. Balancer PID 380535 running on :8001. Both dominant patterns (thinking_stall, heredoc_loop) already addressed by prior commits. No new bugs found.
49
+
3
50
  ## 2026-05-11 18:00 UTC tick
4
51
  - Stress: 1658/1658 COMPLETE (done=88, skip=53, timeout=0, recycle=42; harness finished, PID dead as expected)
5
52
  - Write rate: N/A (cycle complete)
@@ -4713,3 +4760,174 @@ restarted, cron self-match bug fixed in this same session).
4713
4760
  - GH issues: 0 open
4714
4761
  - Dispatch queue: harness=104301+, retrieval=175 (drain: 0 actionable — all already ingested), steering=0
4715
4762
  - Action this tick: no action — system healthy. Dominant dispatch patterns (harness:thinking_stall, harness:bash:heredoc_loop) already addressed by prior commits. Stress cycle complete, no restart needed.
4763
+
4764
+ ## 2026-05-11 20:00 UTC tick
4765
+ - Stress: 1658/1658 COMPLETE (cycle done, PID 340932 exited cleanly, no restart needed)
4766
+ - Write rate: N/A (cycle complete)
4767
+ - Admiral last 30 min: 0 fires
4768
+ - vLLM 400s: 0 (balancer PID 380535 on :8001 healthy)
4769
+ - GH issues: 0 open
4770
+ - Dispatch queue: harness=104302, retrieval=175, steering=0 (0 actionable on retrieval drain)
4771
+ - Action this tick: no action — system healthy. Dominant patterns (harness:thinking_stall, harness:bash:heredoc_loop) already addressed by prior commits. No new bugs found.
4772
+
4773
+ ## 2026-05-11 21:00 UTC tick
4774
+ - Stress: 1658/1658 (COMPLETE — full run finished, babysitter not restarting per design)
4775
+ - Write rate: done=88 skip=53 recycle=42 (last segment stats; idx reached 1658)
4776
+ - Admiral last 30 min: 0 fires
4777
+ - vLLM 400s: 0 (gemma4 docker not queried directly; balancer on :8001 healthy, serving llama.cpp backend)
4778
+ - GH issues: 0 open
4779
+ - Dispatch queue: harness=104302, retrieval=175, steering=0 (retrieval drain: 0 actionable — all already ingested)
4780
+ - Action this tick: no action — stress run completed full 1658-prompt cycle; all queued patterns (thinking_stall, heredoc_loop) already addressed in prior commits; system healthy
4781
+
4782
+ ## 2026-05-11 23:00 UTC tick
4783
+ - Stress: 1658/1658 COMPLETE
4784
+ - Write rate: N/A (cycle complete)
4785
+ - Admiral last 30 min: 0 fires (log empty)
4786
+ - vLLM 400s: 0
4787
+ - GH issues: 0 open
4788
+ - Dispatch queue: harness=104302, retrieval=175, steering=0 (retrieval drain: 0 actionable — all already ingested)
4789
+ - Action this tick: no action — system healthy; balancer PID 380535 running on :8001; vllm_failover paused by sentinel; both dominant dispatch patterns (thinking_stall, heredoc_loop) already addressed in prior commits
4790
+
4791
+ ## 2026-05-12 00:00 UTC tick
4792
+ - Stress: 1658/1658 COMPLETE
4793
+ - Write rate: N/A (cycle complete)
4794
+ - Admiral last 30 min: 0 fires (log empty)
4795
+ - vLLM 400s: 0
4796
+ - GH issues: 0 open
4797
+ - Dispatch queue: harness=104302, retrieval=175, steering=0 (retrieval drain: 0 actionable — all already ingested)
4798
+ - Action this tick: no action — system healthy; balancer PID 380535 running on :8001 (llm_balancer.py confirmed); dominant dispatch patterns (thinking_stall 73K, bash_generic 13K, hallucinated_name 6K) already addressed in prior commits; no new bugs found
4799
+
4800
+ ## 2026-05-12 01:00 UTC tick
4801
+ - Stress: 1658/1658 COMPLETE (PID 340932 gone, babysitter not restarting — full cycle done)
4802
+ - Write rate: N/A (cycle complete)
4803
+ - Admiral last 30 min: 0 fires
4804
+ - vLLM 400s: 0 (balancer PID 380535 on :8001 healthy; llm_balancer.py confirmed)
4805
+ - GH issues: 0 open
4806
+ - Dispatch queue: harness=104302+, retrieval=175, steering=0 (retrieval drain: 0 actionable — all already ingested)
4807
+ - Action this tick: no action — system healthy; dominant dispatch patterns (thinking_stall, bash_heredoc_loop) already addressed in prior commits; no new bugs found
4808
+
4809
+ ## 2026-05-12 02:00 UTC tick
4810
+ - Stress: 1658/1658 (complete, babysitter idle)
4811
+ - Write rate: N/A (cycle complete)
4812
+ - Admiral last 30 min: 0 fires
4813
+ - vLLM 400s: 0 (docker "unhealthy" flag but API responds normally)
4814
+ - GH issues: 0 open
4815
+ - Dispatch queue: harness=104302, retrieval=175 (drain: 0 actionable — all already ingested), steering=0
4816
+ - Action this tick: no action — system healthy; stress cycle complete; dominant dispatch patterns (thinking_stall, bash_heredoc_loop) addressed in prior commits; balancer PID 380535 confirmed on :8001
4817
+
4818
+ ## 2026-05-12 03:00 UTC tick
4819
+ - Stress: 1658/1658 (complete, babysitter idle — no restart on full cycle)
4820
+ - Write rate: N/A (cycle complete)
4821
+ - Admiral last 30 min: 0 fires
4822
+ - vLLM 400s: 0 (docker "unhealthy" flag; API via balancer responds normally)
4823
+ - GH issues: 0 open
4824
+ - Dispatch queue: harness=104302, retrieval=175 (drain: 0 actionable — all already ingested), steering=0
4825
+ - Action this tick: no action — system healthy; balancer PID 380535 confirmed on :8001 (llm_balancer.py); dominant dispatch patterns (thinking_stall, bash_heredoc_loop) already addressed in prior commits; no new bugs found
4826
+
4827
+ ## 2026-05-12 05:00 UTC tick
4828
+ - Stress: 1658/1658 (complete, babysitter idle)
4829
+ - Write rate: N/A (cycle complete)
4830
+ - Admiral last 30 min: 0 fires
4831
+ - vLLM 400s: 0 (API via balancer responds normally)
4832
+ - GH issues: 0 open
4833
+ - Dispatch queue: harness=104302, retrieval=175 (drain: 0 actionable — all already ingested), steering=0
4834
+ - Action this tick: no action — system healthy; balancer PID 380535 confirmed on :8001 (llm_balancer.py); dominant dispatch patterns (thinking_stall, bash_heredoc_loop) already addressed in prior commits; no new bugs found
4835
+
4836
+ ## 2026-05-12 06:00 UTC tick
4837
+ - Stress: 1658/1658 (complete, babysitter idle)
4838
+ - Write rate: N/A (cycle complete)
4839
+ - Admiral last 30 min: 0 fires
4840
+ - vLLM 400s: 0 (API via balancer responds normally)
4841
+ - GH issues: 0 open
4842
+ - Dispatch queue: harness=104302, retrieval=175 (drain: 0 actionable — all already ingested), steering=0
4843
+ - Action this tick: no action — system healthy; balancer PID 380535 confirmed on :8001 (llm_balancer.py); dominant dispatch patterns (thinking_stall, bash_heredoc_loop) already addressed in prior commits; no new bugs found
4844
+
4845
+ ## 2026-05-12 07:00 UTC tick
4846
+ - Stress: 1658/1658 (complete, babysitter idle)
4847
+ - Write rate: N/A (cycle complete)
4848
+ - Admiral last 30 min: 0 fires
4849
+ - vLLM 400s: 0 (API via balancer responds normally)
4850
+ - GH issues: 0 open
4851
+ - Dispatch queue: harness=104302, retrieval=175 (drain: 0 actionable — all already ingested), steering=0
4852
+ - Action this tick: no action — system healthy; balancer PID 380535 confirmed on :8001 (llm_balancer.py); dominant dispatch patterns (thinking_stall, bash_heredoc_loop) already addressed in prior commits; no new bugs found
4853
+
4854
+ ## 2026-05-12 08:00 UTC tick
4855
+ - Stress: 1658/1658 (complete, babysitter idle)
4856
+ - Write rate: N/A (cycle complete)
4857
+ - Admiral last 30 min: 0 fires
4858
+ - vLLM 400s: 0 (balancer PID 380535 on :8001 healthy)
4859
+ - GH issues: 0 open
4860
+ - Dispatch queue: harness=104302, retrieval=175 (all ingested), steering=0
4861
+ - Action this tick: no action — system healthy; dominant dispatch patterns (thinking_stall, bash_heredoc_loop) already addressed in prior commits (493c2b2 et al.); no new bugs found
4862
+
4863
+ ## 2026-05-12 09:00 UTC tick
4864
+ - Stress: 1658/1658 (complete, harness exited cleanly at end of cycle)
4865
+ - Write rate: N/A (cycle complete)
4866
+ - Admiral last 30 min: 0 fires
4867
+ - vLLM 400s: 0 (balancer PID 380535 on :8001 healthy)
4868
+ - GH issues: 0 open
4869
+ - Dispatch queue: harness=104303, retrieval=175 (drain: 0 actionable — all already ingested), steering=0
4870
+ - Action this tick: no action — system healthy; babysitter confirms harness exited at idx=1658/1658 (not a crash); dominant dispatch patterns (thinking_stall, bash_heredoc_loop) already addressed in prior commits; no new bugs found
4871
+
4872
+ ## 2026-05-12 10:00 UTC tick
4873
+ - Stress: 1658/1658 (complete, cycle ended cleanly)
4874
+ - Write rate: N/A (cycle complete)
4875
+ - Admiral last 30 min: 0 fires
4876
+ - vLLM 400s: 0 (llamacpp-gemma4 up 6 days, balancer PID 380535 on :8001 healthy)
4877
+ - GH issues: 0 open
4878
+ - Dispatch queue: harness=104303, retrieval=175 (drain: 0 actionable — all already ingested), steering=0
4879
+ - Action this tick: no action — system healthy; stress run completed full 1658-prompt cycle; dominant dispatch patterns (thinking_stall, bash_heredoc_loop) already addressed in prior commits; no new bugs found
4880
+
4881
+ ## 2026-05-12 11:00 UTC tick
4882
+ - Stress: 1658/1658 (complete, cycle ended cleanly)
4883
+ - Write rate: N/A (cycle complete)
4884
+ - Admiral last 30 min: 0 fires
4885
+ - vLLM 400s: 0 (balancer PID 380535 on :8001 healthy)
4886
+ - GH issues: 0 open
4887
+ - Dispatch queue: harness=104303, retrieval=175 (drain: 0 actionable — all already ingested), steering=0
4888
+ - Action this tick: no action — system healthy; stress run completed full 1658-prompt cycle; babysitter confirms clean exit (done=88 skip=53 recycle=42); dominant dispatch patterns (thinking_stall, bash_heredoc_loop) already addressed in prior commits; no new bugs found
4889
+
4890
+ ## 2026-05-12 12:00 UTC tick
4891
+ - Stress: 1658/1658 (complete, cycle ended cleanly)
4892
+ - Write rate: N/A (cycle complete)
4893
+ - Admiral last 30 min: 0 fires
4894
+ - vLLM 400s: 0 (balancer PID 380535 on :8001 healthy)
4895
+ - GH issues: 0 open
4896
+ - Dispatch queue: harness=104303, retrieval=175 (drain: 0 actionable — all already ingested), steering=0
4897
+ - Action this tick: no commit — found 180-line uncommitted feature in working tree (drydock/cli/commands.py + textual_ui/app.py): adds /mcp command for configuring MCP servers in ~/.drydock/config.toml (list/add/remove/examples subcommands); syntax clean, tomli/tomli_w available; deferred to user review per >100-line soft rule; dominant dispatch patterns (thinking_stall, bash_heredoc_loop, hallucinated_name) already addressed in prior commits
4898
+
4899
+ ## 2026-05-12 13:00 UTC tick
4900
+ - Stress: 1658/1658 (complete, PID 340932 dead — normal end-of-cycle; babysitter idle)
4901
+ - Write rate: N/A (cycle complete)
4902
+ - Admiral last 30 min: 0 fires
4903
+ - vLLM 400s: 0 (llamacpp-gemma4 on :8000, balancer PID 380535 on :8001 healthy)
4904
+ - GH issues: 0 open
4905
+ - Dispatch queue: harness=104303, retrieval=175, steering=0 (dominant patterns thinking_stall + bash_heredoc_loop already addressed in prior commits)
4906
+ - Action this tick: no action — system healthy; uncommitted /mcp feature (179 lines in commands.py + app.py) still deferred to user review per >100-line soft rule
4907
+
4908
+ ## 2026-05-12 15:00 UTC tick
4909
+ - Stress: 1658/1658 (complete, PID 340932 dead — normal end-of-cycle; babysitter idle)
4910
+ - Write rate: N/A (cycle complete)
4911
+ - Admiral last 30 min: 0 fires
4912
+ - vLLM 400s: 0 (balancer PID 380535 on :8001 healthy)
4913
+ - GH issues: 0 open
4914
+ - Dispatch queue: harness=104303, retrieval=175, steering=0 (dominant patterns thinking_stall + bash_heredoc_loop already addressed in prior commits)
4915
+ - Action this tick: no action — system healthy; uncommitted /mcp feature (179 lines in commands.py + app.py) still deferred to user review per >100-line soft rule; no new bugs found
4916
+
4917
+ ## 2026-05-12 16:00 UTC tick
4918
+ - Stress: 1658/1658 (complete, PID 340932 dead — normal end-of-cycle; babysitter idle)
4919
+ - Write rate: N/A (cycle complete)
4920
+ - Admiral last 30 min: 0 fires
4921
+ - vLLM 400s: 0 (balancer PID 380535 on :8001 healthy)
4922
+ - GH issues: 0 open
4923
+ - Dispatch queue: harness=104303, retrieval=175, steering=0 (dominant patterns thinking_stall + bash_heredoc_loop already addressed in prior commits; retrieval drain: 0 actionable)
4924
+ - Action this tick: no action — system healthy; uncommitted /mcp feature (179 lines in commands.py + app.py) still deferred to user review per >100-line soft rule
4925
+
4926
+ ## 2026-05-12 17:00 UTC tick
4927
+ - Stress: 1658/1658 (complete, PID 340932 dead — normal end-of-cycle; babysitter idle)
4928
+ - Write rate: N/A (cycle complete)
4929
+ - Admiral last 30 min: 0 fires
4930
+ - vLLM 400s: 0 (balancer PID 380535 on :8001 healthy, gemma4 container up)
4931
+ - GH issues: 0 open
4932
+ - Dispatch queue: harness=104303, retrieval=175, steering=0 (dominant patterns thinking_stall + bash_heredoc_loop already addressed in prior commits; retrieval drain: 0 actionable)
4933
+ - Action this tick: no action — system healthy; uncommitted /mcp feature (179 lines in commands.py + app.py) still deferred to user review per >100-line soft rule
@@ -1 +0,0 @@
1
- 542177
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