monkeybot 3.13.0__tar.gz → 3.14.0__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 (1487) hide show
  1. {monkeybot-3.13.0 → monkeybot-3.14.0}/CHANGELOG.md +21 -0
  2. {monkeybot-3.13.0 → monkeybot-3.14.0}/PKG-INFO +1 -1
  3. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/pyproject.toml +1 -1
  4. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/testing.md +15 -0
  5. {monkeybot-3.13.0 → monkeybot-3.14.0}/pyproject.toml +1 -1
  6. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/mcp.py +3 -0
  7. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/protocol.py +1 -0
  8. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/session.py +3 -1
  9. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/loop.py +19 -1
  10. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/child_calls_fixture.yml +15 -0
  11. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/child_keeps_calling_hidden_server.yaml +114 -0
  12. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/enable_other_keeps_hidden.yaml +93 -0
  13. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/enable_restores_hidden.yaml +110 -0
  14. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/hidden_tool_call_rejected.yaml +124 -0
  15. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/idle_count_spans_user_messages.yaml +103 -0
  16. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/idle_hides_after_ten.yaml +111 -0
  17. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/meta_tools_drop_when_all_hidden.yaml +109 -0
  18. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/only_idle_server_hidden.yaml +92 -0
  19. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/second_session_still_sees_server.yaml +116 -0
  20. monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/use_resets_idle_count.yaml +168 -0
  21. monkeybot-3.14.0/regression/t2/python/test_mcp_idle_hide.py +245 -0
  22. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/__init__.py +51 -15
  23. monkeybot-3.14.0/src/monkeybot/core/mcp/session_visibility.py +155 -0
  24. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/realtime_loop.py +19 -0
  25. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/tool_dispatch.py +58 -0
  26. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/turn_loop.py +30 -0
  27. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subagents/subagent_worker.py +2 -0
  28. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subagents/supervisor.py +10 -4
  29. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/core_tool_executor.py +109 -23
  30. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/routes.py +9 -0
  31. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/app.py +1 -0
  32. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/session_bus.py +4 -1
  33. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_catalog_pairing.py +3 -3
  34. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_context.py +85 -0
  35. monkeybot-3.14.0/tests/unit/core/mcp/test_session_visibility.py +95 -0
  36. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_supervisor.py +36 -0
  37. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_core_tool_executor.py +121 -0
  38. {monkeybot-3.13.0 → monkeybot-3.14.0}/uv.lock +2 -2
  39. {monkeybot-3.13.0 → monkeybot-3.14.0}/.cursor/hooks/pre-pr.py +0 -0
  40. {monkeybot-3.13.0 → monkeybot-3.14.0}/.cursor/hooks/test-failure-notice.py +0 -0
  41. {monkeybot-3.13.0 → monkeybot-3.14.0}/.cursor/hooks.json +0 -0
  42. {monkeybot-3.13.0 → monkeybot-3.14.0}/.cursor/rules/test-failures.mdc +0 -0
  43. {monkeybot-3.13.0 → monkeybot-3.14.0}/.cursor/skills/mb-retro/SKILL.md +0 -0
  44. {monkeybot-3.13.0 → monkeybot-3.14.0}/.dockerignore +0 -0
  45. {monkeybot-3.13.0 → monkeybot-3.14.0}/.github/CODEOWNERS +0 -0
  46. {monkeybot-3.13.0 → monkeybot-3.14.0}/.github/workflows/ci.yml +0 -0
  47. {monkeybot-3.13.0 → monkeybot-3.14.0}/.github/workflows/live-eval-smoke.yml +0 -0
  48. {monkeybot-3.13.0 → monkeybot-3.14.0}/.github/workflows/prepare-release.yml +0 -0
  49. {monkeybot-3.13.0 → monkeybot-3.14.0}/.github/workflows/publish-release.yml +0 -0
  50. {monkeybot-3.13.0 → monkeybot-3.14.0}/.gitignore +0 -0
  51. {monkeybot-3.13.0 → monkeybot-3.14.0}/.pre-commit-config.yaml +0 -0
  52. {monkeybot-3.13.0 → monkeybot-3.14.0}/BACKLOG.md +0 -0
  53. {monkeybot-3.13.0 → monkeybot-3.14.0}/CONTRIBUTING.md +0 -0
  54. {monkeybot-3.13.0 → monkeybot-3.14.0}/LICENSE +0 -0
  55. {monkeybot-3.13.0 → monkeybot-3.14.0}/README.md +0 -0
  56. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/skills/monkeybot/SKILL.md +0 -0
  57. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/skills/monkeybot/references/config-sections.md +0 -0
  58. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/__init__.py +0 -0
  59. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_file_index.py +0 -0
  60. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_local_shell.py +0 -0
  61. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_renderer.py +0 -0
  62. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_session.py +0 -0
  63. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_status_bar.py +0 -0
  64. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_theme.py +0 -0
  65. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_tool_display.py +0 -0
  66. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_tui.py +0 -0
  67. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_tui_widgets.py +0 -0
  68. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/__init__.py +0 -0
  69. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/chat.py +0 -0
  70. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/doctor.py +0 -0
  71. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/loop.py +0 -0
  72. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/mcp_login.py +0 -0
  73. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/new.py +0 -0
  74. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/refresh.py +0 -0
  75. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/run_cmd.py +0 -0
  76. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/talk.py +0 -0
  77. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/trace.py +0 -0
  78. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/validate.py +0 -0
  79. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/compat.py +0 -0
  80. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/config_resolve.py +0 -0
  81. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/exit_commands.py +0 -0
  82. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/extras_catalog.py +0 -0
  83. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/gateway_health.py +0 -0
  84. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/main.py +0 -0
  85. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/opensandbox_lifecycle.py +0 -0
  86. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/output.py +0 -0
  87. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/overrides.txt +0 -0
  88. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/process_tree.py +0 -0
  89. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/providers.py +0 -0
  90. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/__init__.py +0 -0
  91. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/audio_io.py +0 -0
  92. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/client.py +0 -0
  93. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/gateway_manager.py +0 -0
  94. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/push_to_talk.py +0 -0
  95. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/session.py +0 -0
  96. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/session_controller.py +0 -0
  97. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/talk_ui.py +0 -0
  98. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/wire_encode.py +0 -0
  99. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/runtime_python.py +0 -0
  100. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold.py +0 -0
  101. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/AGENT.md +0 -0
  102. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/Dockerfile +0 -0
  103. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/__init__.py +0 -0
  104. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/browser/SKILL.md +0 -0
  105. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/command_allowlist.yaml +0 -0
  106. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/dockerignore +0 -0
  107. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/env.example +0 -0
  108. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/goal/SKILL.md +0 -0
  109. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/image-generator/SKILL.md +0 -0
  110. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/image-generator/generate_image.py +0 -0
  111. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/loop/SKILL.md +0 -0
  112. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/mcp.json +0 -0
  113. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/monkeybot.example.yaml +0 -0
  114. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/opensandbox.docker.toml +0 -0
  115. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/otel-collector.example.yaml +0 -0
  116. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/permissions.yaml +0 -0
  117. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/templates/coding/AGENT.md +0 -0
  118. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/templates/coding/command_allowlist.yaml +0 -0
  119. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/templates/coding/monkeybot.overrides.yaml +0 -0
  120. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/templates/coding/permissions.yaml +0 -0
  121. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/session_controller.py +0 -0
  122. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/terminal_markdown.py +0 -0
  123. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_continue.py +0 -0
  124. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_e2e.py +0 -0
  125. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_errors.py +0 -0
  126. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_file_index.py +0 -0
  127. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_grounding.py +0 -0
  128. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_local_shell.py +0 -0
  129. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_renderer_parity.py +0 -0
  130. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_session.py +0 -0
  131. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_status_bar.py +0 -0
  132. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_theme.py +0 -0
  133. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_tool_display.py +0 -0
  134. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_tui.py +0 -0
  135. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_cli.py +0 -0
  136. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_config_resolve.py +0 -0
  137. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_doctor.py +0 -0
  138. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_extras_catalog.py +0 -0
  139. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_gateway_health.py +0 -0
  140. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_opensandbox_lifecycle.py +0 -0
  141. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_realtime_session_controller.py +0 -0
  142. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_run_cmd.py +0 -0
  143. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_runtime_python.py +0 -0
  144. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_scaffold.py +0 -0
  145. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_terminal_markdown.py +0 -0
  146. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_trace_cmd.py +0 -0
  147. {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/uv.lock +0 -0
  148. {monkeybot-3.13.0 → monkeybot-3.14.0}/conftest.py +0 -0
  149. {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/Dockerfile +0 -0
  150. {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/demo-model.yaml +0 -0
  151. {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/demo.yaml +0 -0
  152. {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/docker-compose.sandbox.yml +0 -0
  153. {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/opensandbox.docker.toml +0 -0
  154. {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/sandbox.Dockerfile +0 -0
  155. {monkeybot-3.13.0 → monkeybot-3.14.0}/docker-compose.yml +0 -0
  156. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/agent-layout.md +0 -0
  157. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/assets/logo.png +0 -0
  158. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/browser-mcp-perf-baseline.md +0 -0
  159. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/browser-mcp-performance-plan.md +0 -0
  160. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/browser-mcp.md +0 -0
  161. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/cloud-deployment-design.md +0 -0
  162. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/deploy-aws-agentcore.md +0 -0
  163. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/deploy-pattern-a-container.md +0 -0
  164. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/deploy-pattern-b-serverless.md +0 -0
  165. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/deploy-pattern-c-agent-platform.md +0 -0
  166. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/deploy-pattern-d-realtime.md +0 -0
  167. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/features.md +0 -0
  168. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/getting-started.md +0 -0
  169. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/live-evals.md +0 -0
  170. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/mcp.md +0 -0
  171. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/migrations/agent-scope-namespacing.md +0 -0
  172. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/migrations/history-row-id.sql +0 -0
  173. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/migrations/memory-outbox.sql +0 -0
  174. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/migrations/session-branches.sql +0 -0
  175. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/observability-runbook.md +0 -0
  176. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/ollama-local.md +0 -0
  177. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/otel-collector.example.yaml +0 -0
  178. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/progressive-loop-tools.md +0 -0
  179. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/progressive-mcp-tools.md +0 -0
  180. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/skills.md +0 -0
  181. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/spill-dynamic-design.md +0 -0
  182. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/sse-gateway-ui.md +0 -0
  183. {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/verifier-agent-design.md +0 -0
  184. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/README.md +0 -0
  185. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/agentcore/handler.py +0 -0
  186. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/agentcore/runtime_app.py +0 -0
  187. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/agentengine/handler.py +0 -0
  188. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/cloud-functions/main.py +0 -0
  189. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/lambda/handler.py +0 -0
  190. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/ollama/PrefixStable.Modelfile +0 -0
  191. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/browser/SKILL.md +0 -0
  192. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/browser/playbooks/.gitkeep +0 -0
  193. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/diagnostics/README.md +0 -0
  194. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/diagnostics/SKILL.md +0 -0
  195. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/diagnostics/__init__.py +0 -0
  196. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/diagnostics/diagnostics.py +0 -0
  197. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/image-generator/SKILL.md +0 -0
  198. {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/image-generator/generate_image.py +0 -0
  199. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/pyproject.toml +0 -0
  200. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/scripts/agentcore_smoke.py +0 -0
  201. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/scripts/dump_tool_surface.py +0 -0
  202. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/scripts/perf_bench.py +0 -0
  203. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/__init__.py +0 -0
  204. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/actions.py +0 -0
  205. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/agentcore.py +0 -0
  206. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/app.py +0 -0
  207. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/assets/NOTICE.md +0 -0
  208. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/assets/dom_tree.js +0 -0
  209. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/assets/pa_driver.js +0 -0
  210. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/backend.py +0 -0
  211. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/chat_context.py +0 -0
  212. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/chat_scope.py +0 -0
  213. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/dom_indexing.py +0 -0
  214. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/in_app_cdp.py +0 -0
  215. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/login.py +0 -0
  216. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/observe.py +0 -0
  217. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/perf.py +0 -0
  218. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/playbooks.py +0 -0
  219. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/playwright_helpers.py +0 -0
  220. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/results.py +0 -0
  221. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/screenshots.py +0 -0
  222. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/server.py +0 -0
  223. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tab_ops.py +0 -0
  224. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tabs.py +0 -0
  225. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/__init__.py +0 -0
  226. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/batch.py +0 -0
  227. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/capture.py +0 -0
  228. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/interact.py +0 -0
  229. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/navigate.py +0 -0
  230. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/playbook.py +0 -0
  231. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/read.py +0 -0
  232. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/tab_control.py +0 -0
  233. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/conftest.py +0 -0
  234. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/api.json +0 -0
  235. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/article.html +0 -0
  236. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/cards.html +0 -0
  237. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/form.html +0 -0
  238. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/long_list.html +0 -0
  239. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/spa.html +0 -0
  240. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/tool_surface.json +0 -0
  241. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/conftest.py +0 -0
  242. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_act_observe.py +0 -0
  243. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_driver_persist.py +0 -0
  244. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_intent_tools.py +0 -0
  245. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_multi_tab.py +0 -0
  246. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_observation.py +0 -0
  247. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_run_playbook.py +0 -0
  248. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_wait_for.py +0 -0
  249. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_act.py +0 -0
  250. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_agentcore.py +0 -0
  251. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_chat_isolation.py +0 -0
  252. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_chat_scope.py +0 -0
  253. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_dom_indexing.py +0 -0
  254. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_fill_form.py +0 -0
  255. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_in_app_cdp.py +0 -0
  256. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_indexed_tools.py +0 -0
  257. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_observe.py +0 -0
  258. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_observe_after.py +0 -0
  259. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_perf.py +0 -0
  260. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_playbook_flows.py +0 -0
  261. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_playbooks.py +0 -0
  262. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_playwright_helpers.py +0 -0
  263. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_screenshots.py +0 -0
  264. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_server_shutdown.py +0 -0
  265. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_tabs.py +0 -0
  266. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_tool_surface.py +0 -0
  267. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_wait_tools.py +0 -0
  268. {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/uv.lock +0 -0
  269. {monkeybot-3.13.0 → monkeybot-3.14.0}/pytest.ini +0 -0
  270. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/__init__.py +0 -0
  271. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/conftest.py +0 -0
  272. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/__init__.py +0 -0
  273. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/__init__.py +0 -0
  274. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/git.py +0 -0
  275. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/hooks.py +0 -0
  276. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/host_tools.py +0 -0
  277. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/memory.py +0 -0
  278. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/policy.py +0 -0
  279. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/prompt_context.py +0 -0
  280. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/store.py +0 -0
  281. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/subagents.py +0 -0
  282. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/verifier.py +0 -0
  283. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/workspace.py +0 -0
  284. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/gateway.py +0 -0
  285. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/realtime.py +0 -0
  286. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/record.py +0 -0
  287. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/replay.py +0 -0
  288. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/__init__.py +0 -0
  289. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/config.py +0 -0
  290. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/env.py +0 -0
  291. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/executor.py +0 -0
  292. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/paths.py +0 -0
  293. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/tokens.py +0 -0
  294. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/__init__.py +0 -0
  295. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/build.py +0 -0
  296. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/agent.base.yaml +0 -0
  297. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/command_allowlist.default.yaml +0 -0
  298. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/command_allowlist.empty.yaml +0 -0
  299. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/command_allowlist.no_deny_patterns.yaml +0 -0
  300. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/command_allowlist.strict.yaml +0 -0
  301. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/grants.corrupt.json +0 -0
  302. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/grants.json +0 -0
  303. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/mcp.autoconnect.json +0 -0
  304. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/mcp.broken.json +0 -0
  305. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/mcp.progressive.json +0 -0
  306. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/mcp.two_prefix.json +0 -0
  307. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/permissions.ask.yaml +0 -0
  308. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/permissions.default.yaml +0 -0
  309. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/permissions.overlap.yaml +0 -0
  310. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/verifier.block.yaml +0 -0
  311. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/verifier.judge.yaml +0 -0
  312. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/verifier.replan.yaml +0 -0
  313. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/verifier.tracker.yaml +0 -0
  314. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/{workspace}/child.db +0 -0
  315. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/conftest.py +0 -0
  316. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/mcp/fixture_mcp_server.py +0 -0
  317. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/scripts/one_turn.yaml +0 -0
  318. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/skills/a/nested/SKILL.md +0 -0
  319. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/skills/diagnostics/SKILL.md +0 -0
  320. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/skills/plain/SKILL.md +0 -0
  321. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/.gitkeep +0 -0
  322. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/absent_file.ndjson +0 -0
  323. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/child_error.ndjson +0 -0
  324. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/echo.ndjson +0 -0
  325. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/hold.ndjson +0 -0
  326. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/large_line.ndjson +0 -0
  327. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/nested_task.ndjson +0 -0
  328. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/present_file.ndjson +0 -0
  329. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/roundtrip.ndjson +0 -0
  330. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/system_prompt.ndjson +0 -0
  331. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_secret.txt +0 -0
  332. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/.monkeybot/attachments/loop-scenario/att-link +0 -0
  333. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/.monkeybot/attachments/loop-scenario/att-link.json +0 -0
  334. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/.monkeybot/attachments/loop-scenario/att-pdf +0 -0
  335. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/.monkeybot/attachments/loop-scenario/att-pdf.json +0 -0
  336. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i1.png +0 -0
  337. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i2.png +0 -0
  338. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i3.png +0 -0
  339. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i4.png +0 -0
  340. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i5.png +0 -0
  341. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i6.png +0 -0
  342. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/tiny.png +0 -0
  343. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/.gitignore +0 -0
  344. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/AGENTS.md +0 -0
  345. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/build/calc/ops.py +0 -0
  346. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/calc/__init__.py +0 -0
  347. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/calc/ops.py +0 -0
  348. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/node_modules/left-pad/index.js +0 -0
  349. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/node_modules/left-pad/package.json +0 -0
  350. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/pyproject.toml +0 -0
  351. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/tests/test_ops.py +0 -0
  352. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/.gitignore +0 -0
  353. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/AGENTS.md +0 -0
  354. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/build/calc/ops.py +0 -0
  355. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/calc/__init__.py +0 -0
  356. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/calc/ops.py +0 -0
  357. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/node_modules/left-pad/index.js +0 -0
  358. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/node_modules/left-pad/package.json +0 -0
  359. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/pyproject.toml +0 -0
  360. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/tests/test_ops.py +0 -0
  361. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/drift_ws/DONE.txt +0 -0
  362. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/drift_ws/db/migrations/001_init.sql +0 -0
  363. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/drift_ws/src/models.py +0 -0
  364. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/grants_ws/granted/.env +0 -0
  365. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/grants_ws/granted/notes.md +0 -0
  366. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/grants_ws/workspace/src/app.txt +0 -0
  367. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/.gitignore +0 -0
  368. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/AGENTS.md +0 -0
  369. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/node_modules/left.js +0 -0
  370. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/notes.txt +0 -0
  371. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/pkg/.gitignore +0 -0
  372. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/pkg/hidden.txt +0 -0
  373. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/pkg/visible.txt +0 -0
  374. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/secret.txt +0 -0
  375. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/src/app.py +0 -0
  376. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/wide.txt +0 -0
  377. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/overlays/bug_discount/shop/pricing.py +0 -0
  378. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/overlays/noisy_tests/shop/taxes.py +0 -0
  379. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/overlays/noisy_tests/tests/conftest.py +0 -0
  380. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/overlays/offline_gateway/tests/test_gateway.py +0 -0
  381. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/.gitignore +0 -0
  382. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/AGENTS.md +0 -0
  383. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/CHANGELOG.md +0 -0
  384. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/README.md +0 -0
  385. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/build/shop/shipping.py +0 -0
  386. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/pyproject.toml +0 -0
  387. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/__init__.py +0 -0
  388. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/cart.py +0 -0
  389. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/coupons.py +0 -0
  390. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/gateway.py +0 -0
  391. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/inventory.py +0 -0
  392. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/legacy/__init__.py +0 -0
  393. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/legacy/pricing_v1.py +0 -0
  394. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/legacy/shipping_v1.py +0 -0
  395. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/models.py +0 -0
  396. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/orders.py +0 -0
  397. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/pricing.py +0 -0
  398. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/reports.py +0 -0
  399. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/shipping.py +0 -0
  400. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/taxes.py +0 -0
  401. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/utils/__init__.py +0 -0
  402. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/utils/money.py +0 -0
  403. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/utils/text.py +0 -0
  404. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_cart.py +0 -0
  405. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_coupons.py +0 -0
  406. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_inventory.py +0 -0
  407. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_money.py +0 -0
  408. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_orders.py +0 -0
  409. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_pricing.py +0 -0
  410. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_reports.py +0 -0
  411. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_shipping.py +0 -0
  412. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_taxes.py +0 -0
  413. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/vendor/pricekit/__init__.py +0 -0
  414. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/AGENT_GUIDE.md +0 -0
  415. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/README.md +0 -0
  416. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-0a-tier1-reorg.md +0 -0
  417. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-0b-foundations.md +0 -0
  418. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-1-t2-harness-logic.md +0 -0
  419. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-2-contracts-and-gateway.md +0 -0
  420. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-3-record-replay.md +0 -0
  421. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-4-live.md +0 -0
  422. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-5-trials.md +0 -0
  423. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-6-cutover.md +0 -0
  424. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/01-goals-and-principles.md +0 -0
  425. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/03-tiers.md +0 -0
  426. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/04-file-structure.md +0 -0
  427. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.1-doubles.md +0 -0
  428. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.10-testing-doc.md +0 -0
  429. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.11-live-provider.md +0 -0
  430. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.2-scenario-schema.md +0 -0
  431. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.3-assertions-and-invariants.md +0 -0
  432. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.4-fixtures.md +0 -0
  433. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.5-cassettes.md +0 -0
  434. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.6-pytest-reporting-trials.md +0 -0
  435. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.9-failure-ledger.md +0 -0
  436. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/00-index.md +0 -0
  437. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6A-loop.md +0 -0
  438. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6B-ctx.md +0 -0
  439. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6C-hook.md +0 -0
  440. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6D-file.md +0 -0
  441. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6E-shell.md +0 -0
  442. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6F-pol.md +0 -0
  443. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6G-code.md +0 -0
  444. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6H-att.md +0 -0
  445. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6I-comp.md +0 -0
  446. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6J-sub.md +0 -0
  447. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6K-ver.md +0 -0
  448. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6L-sched.md +0 -0
  449. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6M-skill.md +0 -0
  450. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6N-mcp.md +0 -0
  451. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6O-web.md +0 -0
  452. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6P-mem.md +0 -0
  453. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6Q-store.md +0 -0
  454. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6R-cfg.md +0 -0
  455. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6S-todo.md +0 -0
  456. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6T-prov.md +0 -0
  457. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6U-gw.md +0 -0
  458. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6V-rt.md +0 -0
  459. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6W-ops.md +0 -0
  460. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/07-migration-map.md +0 -0
  461. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/09-ci.md +0 -0
  462. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/10-policies.md +0 -0
  463. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/11-known-issues.md +0 -0
  464. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/12-decisions.md +0 -0
  465. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/appendices.md +0 -0
  466. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/status.md +0 -0
  467. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/tasks.md +0 -0
  468. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plugin.py +0 -0
  469. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/__init__.py +0 -0
  470. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/assertions.py +0 -0
  471. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/events.py +0 -0
  472. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/invariants.py +0 -0
  473. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/scenario.py +0 -0
  474. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/sse_norm.py +0 -0
  475. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/steps.py +0 -0
  476. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/__init__.py +0 -0
  477. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/recorded/t4_run_smoke_sample.json +0 -0
  478. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_agent_project.py +0 -0
  479. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_assertions.py +0 -0
  480. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_bundle_order.py +0 -0
  481. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_coding_hard_oracle.py +0 -0
  482. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_diff.py +0 -0
  483. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_fixtures.py +0 -0
  484. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_from_transcript.py +0 -0
  485. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_gateway_driver.py +0 -0
  486. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_invariants.py +0 -0
  487. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_judge.py +0 -0
  488. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_live_engine.py +0 -0
  489. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_live_ledger.py +0 -0
  490. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_live_scenarios.py +0 -0
  491. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_preflight.py +0 -0
  492. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_report.py +0 -0
  493. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_runner_sse.py +0 -0
  494. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_scenario_schema.py +0 -0
  495. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_scorer.py +0 -0
  496. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_steps.py +0 -0
  497. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_trials_stats.py +0 -0
  498. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/__init__.py +0 -0
  499. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/gateway/harness.py +0 -0
  500. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/gateway/scenarios/gw/reconnect_last_event_id.yaml +0 -0
  501. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/gateway/scenarios/gw/scripted_turn_golden_sse.yaml +0 -0
  502. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/gateway/scenarios/gw/tool_turn_golden_sse.yaml +0 -0
  503. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/gateway/test_cases.py +0 -0
  504. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/attachment_symlink_leaf_rejected.yaml +0 -0
  505. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/freeze_descriptors_in_history.yaml +0 -0
  506. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/load_both_args.yaml +0 -0
  507. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/load_image_preview.yaml +0 -0
  508. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/load_pdf.yaml +0 -0
  509. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/load_per_reply_cap.yaml +0 -0
  510. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/load_text_rejected.yaml +0 -0
  511. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/compaction_forgets_reads.yaml +0 -0
  512. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/fix_failing_test.yaml +0 -0
  513. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_background_verify_not_counted.yaml +0 -0
  514. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_cap_then_accept.yaml +0 -0
  515. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_custom_verify_commands.yaml +0 -0
  516. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_masked_exit.yaml +0 -0
  517. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_non_executing_wrapper.yaml +0 -0
  518. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_open_todos_reject.yaml +0 -0
  519. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_passes_when_verified.yaml +0 -0
  520. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_question_not_gated.yaml +0 -0
  521. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_rejected_answer_not_persisted.yaml +0 -0
  522. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_rejects_unverified.yaml +0 -0
  523. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_write_after_verify.yaml +0 -0
  524. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/git_context_absent.yaml +0 -0
  525. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/git_context_note.yaml +0 -0
  526. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/git_env_isolation.yaml +0 -0
  527. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/read_before_write.yaml +0 -0
  528. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/subagent_has_ledger_no_gate.yaml +0 -0
  529. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/subagent_ledger_child.yml +0 -0
  530. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/clipboard_cap.yaml +0 -0
  531. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/denied_apps_and_schemes.yaml +0 -0
  532. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/denied_dirs_and_globs.yaml +0 -0
  533. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/move_trash_not_always_scoped.yaml +0 -0
  534. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/open_exec_suffix_denied.yaml +0 -0
  535. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/trash_huge_tree_refused.yaml +0 -0
  536. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/x.sh +0 -0
  537. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/background_summary_applied.yaml +0 -0
  538. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/background_summary_stale_fallback.yaml +0 -0
  539. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/base64_sanitized.yaml +0 -0
  540. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_at_trigger.yaml +0 -0
  541. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_does_not_persist_repairs.yaml +0 -0
  542. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_fallback.yaml +0 -0
  543. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_keep_tail_ratio.yaml +0 -0
  544. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_pins_verdict_attachment_thinking.yaml +0 -0
  545. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_trailer_from_goal_ledger.yaml +0 -0
  546. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/context_usage_current_not_peak.yaml +0 -0
  547. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/epoch_after_compaction.yaml +0 -0
  548. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/epoch_stable_change.yaml +0 -0
  549. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/epoch_volatile_update.yaml +0 -0
  550. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/memory_wake_up_large.yaml +0 -0
  551. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/project_instructions_spoof_heading.yaml +0 -0
  552. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/slash_skill_turn_scoped.yaml +0 -0
  553. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/stable_prefix_byte_stable.yaml +0 -0
  554. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/summarizer_model_override.yaml +0 -0
  555. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/tool_result_shaping_under_pressure.yaml +0 -0
  556. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/file_change_absent_on_error.yaml +0 -0
  557. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/file_change_binary.yaml +0 -0
  558. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/file_change_patch.yaml +0 -0
  559. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/file_change_review.yaml +0 -0
  560. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/glob_cap_incomplete.yaml +0 -0
  561. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/glob_skips_noise.yaml +0 -0
  562. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/grep_gitignore_default.yaml +0 -0
  563. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/grep_incomplete_scan.yaml +0 -0
  564. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/grep_invalid_regex.yaml +0 -0
  565. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/grep_pagination.yaml +0 -0
  566. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/list_dir_truncate.yaml +0 -0
  567. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/overwrite_unread_rejected.yaml +0 -0
  568. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/patch_add_existing.yaml +0 -0
  569. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/patch_fail_closed.yaml +0 -0
  570. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/patch_move_dest_exists.yaml +0 -0
  571. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/patch_rollback.yaml +0 -0
  572. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/patch_update_requires_read.yaml +0 -0
  573. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_absolute_needs_grant.yaml +0 -0
  574. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_escape_dotdot.yaml +0 -0
  575. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_escape_symlink.yaml +0 -0
  576. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_huge_single_line.yaml +0 -0
  577. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_offset_past_eof.yaml +0 -0
  578. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_paging_no_gap.yaml +0 -0
  579. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/replace_error_codes.yaml +0 -0
  580. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/replace_fuzzy_unicode.yaml +0 -0
  581. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/skills_read_only.yaml +0 -0
  582. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/spill_large_tool_output.yaml +0 -0
  583. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/spill_session_id_sanitized.yaml +0 -0
  584. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/stale_read_rejected.yaml +0 -0
  585. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/tool_glob_grep.yaml +0 -0
  586. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/tool_read.yaml +0 -0
  587. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/tool_replace_apply_patch.yaml +0 -0
  588. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/tool_write.yaml +0 -0
  589. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/virtual_mounts.yaml +0 -0
  590. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/write_new_without_read_ok.yaml +0 -0
  591. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/write_outside_scope.yaml +0 -0
  592. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/write_payload_too_large.yaml +0 -0
  593. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/evidence_grep_only_not_accepted.yaml +0 -0
  594. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/evidence_missing_path.yaml +0 -0
  595. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/evidence_thread_isolation.yaml +0 -0
  596. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/evidence_unread_then_read.yaml +0 -0
  597. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/secret_ends_routine_turn.yaml +0 -0
  598. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/secret_in_tool_args.yaml +0 -0
  599. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/secret_redacted_interactive.yaml +0 -0
  600. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/secret_scanner_failure_fails_closed.yaml +0 -0
  601. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/all_parse_error_batch_rejected.yaml +0 -0
  602. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/ask_user_non_interactive.yaml +0 -0
  603. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/ask_user_roundtrip.yaml +0 -0
  604. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/background_check_raises_fails_closed.yaml +0 -0
  605. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/background_nudge_then_release.yaml +0 -0
  606. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/background_nudges_exhausted.yaml +0 -0
  607. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/cancel_after_tool_call_before_execute.yaml +0 -0
  608. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/cancel_mid_stream.yaml +0 -0
  609. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/confirm_always_remembered.yaml +0 -0
  610. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/confirm_approve.yaml +0 -0
  611. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/confirm_deny.yaml +0 -0
  612. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/confirm_timeout.yaml +0 -0
  613. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/doom_disabled.yaml +0 -0
  614. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/doom_exempt_poll.yaml +0 -0
  615. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/doom_identical_read.yaml +0 -0
  616. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/doom_path_reset_on_success.yaml +0 -0
  617. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/doom_path_retry_spelling.yaml +0 -0
  618. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/empty_exhausted.yaml +0 -0
  619. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/empty_then_text.yaml +0 -0
  620. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/grounding_event_passthrough.yaml +0 -0
  621. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/max_turns_cap.yaml +0 -0
  622. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/max_turns_not_on_clean_finish.yaml +0 -0
  623. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/mixed_parse_error_batch_runs_valid.yaml +0 -0
  624. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/parallel_concurrency_cap.yaml +0 -0
  625. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/parallel_results_in_submission_order.yaml +0 -0
  626. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/post_tool_empty_retry.yaml +0 -0
  627. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/promote_follow_up_provenance.yaml +0 -0
  628. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/provider_raises.yaml +0 -0
  629. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/registry_refresh_same_turn.yaml +0 -0
  630. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/repair_missing_tool_result.yaml +0 -0
  631. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/repair_orphan_tool_response.yaml +0 -0
  632. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/resume_thinking_budget_routine.yaml +0 -0
  633. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/steer_mid_turn.yaml +0 -0
  634. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/thinking_block_order.yaml +0 -0
  635. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/thinking_only_is_empty.yaml +0 -0
  636. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/thought_signature_preserved.yaml +0 -0
  637. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/tool_input_delta_passthrough.yaml +0 -0
  638. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/truncated_batch_rejected.yaml +0 -0
  639. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/turn_completion.yaml +0 -0
  640. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/ui_row_between_tool_pair.yaml +0 -0
  641. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/ui_row_splits_a_batch.yaml +0 -0
  642. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/usage_totals.yaml +0 -0
  643. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/autoconnect_failure_is_status.yaml +0 -0
  644. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/catalog_diff_reload.yaml +0 -0
  645. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/disable_removes_tools.yaml +0 -0
  646. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/disabled_server_not_catalogued.yaml +0 -0
  647. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/enable_then_call.yaml +0 -0
  648. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/enable_unknown_server.yaml +0 -0
  649. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/env_interpolation_missing.yaml +0 -0
  650. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/meta_tools_only_when_connected.yaml +0 -0
  651. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/name_prefix_split.yaml +0 -0
  652. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/resources_and_prompts.yaml +0 -0
  653. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/strict_load_rolls_back.yaml +0 -0
  654. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/ephemeral_palace_shared_outbox_rejected.yaml +0 -0
  655. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/memory_off.yaml +0 -0
  656. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/memory_write_inject.yaml +0 -0
  657. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/mempalace_search_real.yaml +0 -0
  658. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/outbox_failure_does_not_fail_turn.yaml +0 -0
  659. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/outbox_ingest_then_inject.yaml +0 -0
  660. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/outbox_thread_isolation.yaml +0 -0
  661. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/subagent_no_ingest.yaml +0 -0
  662. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/command_grant_from_store.yaml +0 -0
  663. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/default_deny_patterns.yaml +0 -0
  664. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/grant_revocation_clears.yaml +0 -0
  665. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/granted_folder_credential_denied.yaml +0 -0
  666. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/path_grant_read.yaml +0 -0
  667. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/permissions_last_match_wins.yaml +0 -0
  668. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/permissions_missing_file_fail_open.yaml +0 -0
  669. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/start_loop_always_confirms.yaml +0 -0
  670. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/symlink_in_grant_does_not_widen.yaml +0 -0
  671. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/unknown_binary_confirm_approve.yaml +0 -0
  672. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/unknown_binary_confirm_deny.yaml +0 -0
  673. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/create_goal_requires_slash_goal.yaml +0 -0
  674. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/create_goal_with_slash_goal.yaml +0 -0
  675. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/enable_loops_progressive.yaml +0 -0
  676. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/loop_goal_isolation.yaml +0 -0
  677. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/loop_lifecycle_real_store.yaml +0 -0
  678. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/one_open_goal_per_session.yaml +0 -0
  679. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/start_loop_requires_stop_guard.yaml +0 -0
  680. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/tool_loops.yaml +0 -0
  681. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/allowlist_deny.yaml +0 -0
  682. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/argv_forms.yaml +0 -0
  683. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/bg_job_cap.yaml +0 -0
  684. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/bg_kill_command.yaml +0 -0
  685. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/bg_killed_at_turn_end.yaml +0 -0
  686. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/bg_start_await_cursor.yaml +0 -0
  687. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/cwd_escape.yaml +0 -0
  688. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/home_escape.yaml +0 -0
  689. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/large_stdout_spill_keeps_exit.yaml +0 -0
  690. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/mempalace_refused_memory_off.yaml +0 -0
  691. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/mempalace_search_only.yaml +0 -0
  692. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/nonzero_exit.yaml +0 -0
  693. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/run_command.yaml +0 -0
  694. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/shell_wrapper_bypass.yaml +0 -0
  695. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/timeout_partial_output.yaml +0 -0
  696. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/unscreenable_script_fails_closed.yaml +0 -0
  697. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/list_then_read_skill.yaml +0 -0
  698. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/skill_symlink_escape.yaml +0 -0
  699. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/skill_write_denied.yaml +0 -0
  700. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/skills_in_prompt.yaml +0 -0
  701. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/skills_path_hot_reload.yaml +0 -0
  702. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/slash_unknown_skill.yaml +0 -0
  703. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/store/compaction_reset_row_ids.yaml +0 -0
  704. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/store/transcript_convertible.yaml +0 -0
  705. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/store/usage_recorded_on_turn_complete.yaml +0 -0
  706. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/child_errors_record_failed.yaml +0 -0
  707. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/child_memory_read_only.yaml +0 -0
  708. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/expect_files_absent.yaml +0 -0
  709. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/expect_files_escape.yaml +0 -0
  710. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/expect_files_present.yaml +0 -0
  711. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/large_ndjson_line.yaml +0 -0
  712. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/ledger_context_forwarded.yaml +0 -0
  713. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/nested_task_refused.yaml +0 -0
  714. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/parallel_task_cap.yaml +0 -0
  715. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/parent_cancel.yaml +0 -0
  716. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/persona_applied.yaml +0 -0
  717. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/queue_pending_not_success.yaml +0 -0
  718. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/subagent_roundtrip.yaml +0 -0
  719. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/subagent_timeout.yaml +0 -0
  720. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/system_prompt_redacted_on_pipe.yaml +0 -0
  721. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/unknown_subagent_type.yaml +0 -0
  722. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/caps.yaml +0 -0
  723. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/ids_stable.yaml +0 -0
  724. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/mirror_hydrate.yaml +0 -0
  725. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/reminder_once.yaml +0 -0
  726. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/single_in_progress.yaml +0 -0
  727. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/todo_list.yaml +0 -0
  728. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/todo_list_steps.yaml +0 -0
  729. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/block_denies_mutating_tools.yaml +0 -0
  730. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/constraint_touch_negative.yaml +0 -0
  731. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/constraint_touch_positive.yaml +0 -0
  732. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/done_unmet_positive.yaml +0 -0
  733. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/error_streak_negative.yaml +0 -0
  734. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/error_streak_positive.yaml +0 -0
  735. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/free_text_constraint_never_matches.yaml +0 -0
  736. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/judge_malformed_fails_open.yaml +0 -0
  737. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/judge_rate_limits.yaml +0 -0
  738. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/judge_replay_valid.yaml +0 -0
  739. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/judge_spend_ratio.yaml +0 -0
  740. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/mailbox_stale_checkpoint_dropped.yaml +0 -0
  741. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/min_turn_before_verdict.yaml +0 -0
  742. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/no_progress_budget_burn_not_mailboxed.yaml +0 -0
  743. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/preempt_negative.yaml +0 -0
  744. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/repeat_correction_positive.yaml +0 -0
  745. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/replan_one_turn.yaml +0 -0
  746. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/rewrite_churn_positive.yaml +0 -0
  747. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/rewrite_effects_branch_copy.yaml +0 -0
  748. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/severity_cap_nudge.yaml +0 -0
  749. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/sticky_nudge.yaml +0 -0
  750. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/supersession_negative.yaml +0 -0
  751. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/verdict_in_history_stripped_for_provider.yaml +0 -0
  752. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/verifier_off_no_effect.yaml +0 -0
  753. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/write_without_read_negative.yaml +0 -0
  754. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/write_without_read_positive.yaml +0 -0
  755. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/backend_none_not_advertised.yaml +0 -0
  756. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/browser_mcp.json +0 -0
  757. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/browser_stop_on_disconnect.yaml +0 -0
  758. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/browser_stop_server.py +0 -0
  759. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/empty_query.yaml +0 -0
  760. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/max_results.yaml +0 -0
  761. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/web_search.yaml +0 -0
  762. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/__init__.py +0 -0
  763. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_change_parent_session.py +0 -0
  764. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_drift_confusion_matrix.py +0 -0
  765. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_e2e_simple_reply.py +0 -0
  766. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_grep_parity.py +0 -0
  767. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_hooks_lifecycle.py +0 -0
  768. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_jail.py +0 -0
  769. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_memory_commit.py +0 -0
  770. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_observability_acceptance.py +0 -0
  771. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_observability_integration.py +0 -0
  772. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_ops_cli.py +0 -0
  773. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_ops_observability.py +0 -0
  774. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_prompt_caching_integration.py +0 -0
  775. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_scheduler_engine.py +0 -0
  776. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_sse_stream_pressure.py +0 -0
  777. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_blocks_history_rewrite.yaml +0 -0
  778. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_guardrail_budget.yaml +0 -0
  779. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_interrupt.yaml +0 -0
  780. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_slot_limit.yaml +0 -0
  781. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_text_turn.yaml +0 -0
  782. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_tool_confirmation.yaml +0 -0
  783. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_tool_turn.yaml +0 -0
  784. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/__init__.py +0 -0
  785. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/mcp/tools_list_call.json +0 -0
  786. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/memory/wake_up_snapshot.json +0 -0
  787. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/sse/basic_turn.sse +0 -0
  788. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/sse/cassette_turn.sse +0 -0
  789. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/sse/tool_turn.sse +0 -0
  790. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/subagents/child_tape.ndjson +0 -0
  791. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_golden_sse.py +0 -0
  792. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_replay_mcp.py +0 -0
  793. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_replay_subagent_tape.py +0 -0
  794. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_replay_trajectories.py +0 -0
  795. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_replay_wake_up.py +0 -0
  796. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_replay_wire.py +0 -0
  797. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/tools/__init__.py +0 -0
  798. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/tools/cassette.py +0 -0
  799. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/tools/check_staleness.py +0 -0
  800. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/tools/from_transcript.py +0 -0
  801. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/tools/record_wire.py +0 -0
  802. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/ctx/replay_live_compaction.cassette.json +0 -0
  803. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/ctx/replay_live_compaction.yaml +0 -0
  804. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/loop/replay_live_doom_loop.cassette.json +0 -0
  805. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/loop/replay_live_doom_loop.yaml +0 -0
  806. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/loop/replay_live_truncation.cassette.json +0 -0
  807. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/loop/replay_live_truncation.yaml +0 -0
  808. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/shell/replay_live_pytest_run.cassette.json +0 -0
  809. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/shell/replay_live_pytest_run.yaml +0 -0
  810. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/verifier/replay_drift_tape.cassette.json +0 -0
  811. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/verifier/replay_drift_tape.yaml +0 -0
  812. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/wire/ollama_cloud/glm_tool_turn.json +0 -0
  813. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/wire/ollama_cloud/thinking_only_completion.json +0 -0
  814. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/__init__.py +0 -0
  815. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/__main__.py +0 -0
  816. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/.gitignore +0 -0
  817. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.blob_seq_ids_migrated +0 -0
  818. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.collection_type_fixed +0 -0
  819. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.embedder_identity +0 -0
  820. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.embedding-migrate.lock +0 -0
  821. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.palace_id +0 -0
  822. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.palace_write.lock +0 -0
  823. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/2d1891d4-34d0-43bd-8eea-2fb73026046b/data_level0.bin +0 -0
  824. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/2d1891d4-34d0-43bd-8eea-2fb73026046b/header.bin +0 -0
  825. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/2d1891d4-34d0-43bd-8eea-2fb73026046b/length.bin +0 -0
  826. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/2d1891d4-34d0-43bd-8eea-2fb73026046b/link_lists.bin +0 -0
  827. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/identity.txt +0 -0
  828. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/mempalace_embedder.json +0 -0
  829. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/.t4-gateway-993b836fb2a9.yaml +0 -0
  830. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/AGENT.coding.md +0 -0
  831. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/AGENT.md +0 -0
  832. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/AGENT.researcher.md +0 -0
  833. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/command_allowlist.yaml +0 -0
  834. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/grants.json +0 -0
  835. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/mcp.json +0 -0
  836. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/mcp.progressive.json +0 -0
  837. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/monkeybot.coding.yaml +0 -0
  838. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/monkeybot.verifier-judge.yaml +0 -0
  839. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/monkeybot.verifier-tracker.yaml +0 -0
  840. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/monkeybot.yaml +0 -0
  841. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/permissions.yaml +0 -0
  842. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/pyproject.toml +0 -0
  843. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/skills/browser/SKILL.md +0 -0
  844. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/uv.lock +0 -0
  845. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/assertions.py +0 -0
  846. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/baselines/smoke.json +0 -0
  847. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/baselines/smoke.md +0 -0
  848. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/conftest.py +0 -0
  849. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/diff.py +0 -0
  850. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/eval_config.yaml +0 -0
  851. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/gateway.py +0 -0
  852. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/models.py +0 -0
  853. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/persistence.py +0 -0
  854. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/preflight.py +0 -0
  855. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/python/__init__.py +0 -0
  856. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/python/test_docker_image_health.py +0 -0
  857. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/python/test_provider_live_matrix.py +0 -0
  858. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/report.py +0 -0
  859. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/runner.py +0 -0
  860. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenario_loader.py +0 -0
  861. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/attachments/describe_image_live.yaml +0 -0
  862. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding/add_feature_with_tests.yaml +0 -0
  863. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding/fix_failing_test.yaml +0 -0
  864. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding/navigate_repo.yaml +0 -0
  865. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/add_bulk_discount.yaml +0 -0
  866. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/fix_discount_rounding.yaml +0 -0
  867. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/honest_unfixable_failure.yaml +0 -0
  868. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/multi_feature_long.yaml +0 -0
  869. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/navigate_intl_rate.yaml +0 -0
  870. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/noisy_test_failure.yaml +0 -0
  871. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/rename_calc_tax.yaml +0 -0
  872. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/config/reload_memory_off_live.yaml +0 -0
  873. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/context/post_compaction_continuity.yaml +0 -0
  874. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/context/summarization_trigger.yaml +0 -0
  875. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/drift/declares_done.yaml +0 -0
  876. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/drift/path_constraint.yaml +0 -0
  877. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/drift/preempt.yaml +0 -0
  878. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/drift/repeat_correction.yaml +0 -0
  879. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/drift/supersession.yaml +0 -0
  880. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/file/core_read.yaml +0 -0
  881. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/file/core_read_error.yaml +0 -0
  882. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/file/core_write.yaml +0 -0
  883. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/file/grep_absence_honesty.yaml +0 -0
  884. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/gateway/live_resume.yaml +0 -0
  885. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/hooks/evidence_citation_live.yaml +0 -0
  886. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/mcp/enable_then_echo_live.yaml +0 -0
  887. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/mcp/get_prompt.yaml +0 -0
  888. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/mcp/list_resources.yaml +0 -0
  889. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/mcp/tool_invoke.yaml +0 -0
  890. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/memory/recall_cross_session.yaml +0 -0
  891. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/memory/recall_single_session.yaml +0 -0
  892. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/memory/search_past_session.yaml +0 -0
  893. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/multi_turn/task_tracking.yaml +0 -0
  894. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/scheduler/http_one_tick_live.yaml +0 -0
  895. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/scheduler/model_starts_loop.yaml +0 -0
  896. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/shell/core_run_command.yaml +0 -0
  897. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/shell/core_run_command_sandbox.yaml +0 -0
  898. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/skills/skill_invocation.yaml +0 -0
  899. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/subagents/dispatch_complete.yaml +0 -0
  900. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/subagents/persona_dispatch.yaml +0 -0
  901. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/score.py +0 -0
  902. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/coding.yaml +0 -0
  903. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/coding_hard.yaml +0 -0
  904. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/context.yaml +0 -0
  905. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/drift.yaml +0 -0
  906. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/mcp.yaml +0 -0
  907. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/memory.yaml +0 -0
  908. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/nightly.yaml +0 -0
  909. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/scheduler.yaml +0 -0
  910. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/smoke.yaml +0 -0
  911. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/subagents.yaml +0 -0
  912. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/__init__.py +0 -0
  913. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/__main__.py +0 -0
  914. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/baselines/subagents__ollama-cloud__glm-5.3-flash.json +0 -0
  915. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/compare.py +0 -0
  916. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/parallel.py +0 -0
  917. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/python/test_cancel_storm.py +0 -0
  918. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/python/test_reconnect_storm.py +0 -0
  919. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/runs/coding.json +0 -0
  920. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/runs/mcp.json +0 -0
  921. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/runs/smoke.json +0 -0
  922. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/runs/subagents.json +0 -0
  923. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/stats.py +0 -0
  924. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/suites/capability.yaml +0 -0
  925. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/suites/drift.yaml +0 -0
  926. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/suites/reliability.yaml +0 -0
  927. {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/trials.py +0 -0
  928. {monkeybot-3.13.0 → monkeybot-3.14.0}/scripts/ci-local.sh +0 -0
  929. {monkeybot-3.13.0 → monkeybot-3.14.0}/scripts/create_schema.py +0 -0
  930. {monkeybot-3.13.0 → monkeybot-3.14.0}/scripts/precommit-pytest.sh +0 -0
  931. {monkeybot-3.13.0 → monkeybot-3.14.0}/scripts/release.py +0 -0
  932. {monkeybot-3.13.0 → monkeybot-3.14.0}/scripts/smoke_global_cli.sh +0 -0
  933. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/__init__.py +0 -0
  934. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/__init__.py +0 -0
  935. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/__main__.py +0 -0
  936. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/audio_io.py +0 -0
  937. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/gateway_manager.py +0 -0
  938. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/main.py +0 -0
  939. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/push_to_talk.py +0 -0
  940. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/realtime_client.py +0 -0
  941. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/computer/__init__.py +0 -0
  942. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/computer/approvals.py +0 -0
  943. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/computer/permissions.py +0 -0
  944. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/computer/safety.py +0 -0
  945. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/computer/tools.py +0 -0
  946. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/__init__.py +0 -0
  947. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/__init__.py +0 -0
  948. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/catalog.py +0 -0
  949. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/config.py +0 -0
  950. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/freeze.py +0 -0
  951. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/image_preview.py +0 -0
  952. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/resolve.py +0 -0
  953. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/store.py +0 -0
  954. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/text.py +0 -0
  955. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/tools.py +0 -0
  956. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/bootstrap.py +0 -0
  957. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/coding/__init__.py +0 -0
  958. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/coding/git_context_hook.py +0 -0
  959. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/coding/read_ledger_hook.py +0 -0
  960. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/coding/verification_gate.py +0 -0
  961. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/__init__.py +0 -0
  962. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/realtime_config.py +0 -0
  963. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/runtime_env.py +0 -0
  964. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/settings.py +0 -0
  965. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/snapshot.py +0 -0
  966. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/validation.py +0 -0
  967. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/yaml_loader.py +0 -0
  968. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/campaign_context.py +0 -0
  969. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/common.py +0 -0
  970. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/epoch.py +0 -0
  971. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/project_context.py +0 -0
  972. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/secret_egress.py +0 -0
  973. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/slash_skills.py +0 -0
  974. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/tool_output_policy.py +0 -0
  975. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/tool_result_ingress.py +0 -0
  976. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/tool_shapers.py +0 -0
  977. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/goals/__init__.py +0 -0
  978. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/goals/service.py +0 -0
  979. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/hooks/__init__.py +0 -0
  980. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/hooks/evidence_guard.py +0 -0
  981. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/layout.py +0 -0
  982. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/llm/__init__.py +0 -0
  983. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/llm/provider.py +0 -0
  984. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/llm/realtime_provider.py +0 -0
  985. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/llm/usage.py +0 -0
  986. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/lockfile_names.py +0 -0
  987. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/logging_utils.py +0 -0
  988. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/mcp/__init__.py +0 -0
  989. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/mcp/mcp_client.py +0 -0
  990. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/mcp/oauth_flow.py +0 -0
  991. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/mcp/ports_mcp.py +0 -0
  992. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/__init__.py +0 -0
  993. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/config.py +0 -0
  994. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/hook.py +0 -0
  995. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/ids.py +0 -0
  996. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/ingest.py +0 -0
  997. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/migrate_embedding.py +0 -0
  998. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/migrate_layout.py +0 -0
  999. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/observability.py +0 -0
  1000. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/outbox.py +0 -0
  1001. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/palace.py +0 -0
  1002. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/subsystem.py +0 -0
  1003. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/uri.py +0 -0
  1004. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/writer.py +0 -0
  1005. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/messages/__init__.py +0 -0
  1006. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/messages/convert_provider.py +0 -0
  1007. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/messages/tool_integrity.py +0 -0
  1008. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/messages/transform_context.py +0 -0
  1009. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/path_safety.py +0 -0
  1010. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/__init__.py +0 -0
  1011. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/backends.py +0 -0
  1012. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/branches.py +0 -0
  1013. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/db.py +0 -0
  1014. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/durable_runs.py +0 -0
  1015. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/errors.py +0 -0
  1016. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/firestore.indexes.json +0 -0
  1017. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/firestore.py +0 -0
  1018. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/firestore_scheduled_loops.py +0 -0
  1019. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/goal_ledger.py +0 -0
  1020. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/history.py +0 -0
  1021. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/postgres.py +0 -0
  1022. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/row_ids.py +0 -0
  1023. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/runs.py +0 -0
  1024. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/scheduled_loops.py +0 -0
  1025. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/session_turn_locks.py +0 -0
  1026. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/sqlite.py +0 -0
  1027. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/sqlite_backend.py +0 -0
  1028. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/thread_summary.py +0 -0
  1029. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/transcript.py +0 -0
  1030. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/transcript_reader.py +0 -0
  1031. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/usage.py +0 -0
  1032. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/usage_buckets.py +0 -0
  1033. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/prompts/__init__.py +0 -0
  1034. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/prompts/harness_prompt.py +0 -0
  1035. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/prompts/headings.py +0 -0
  1036. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/prompts/prompt.py +0 -0
  1037. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/__init__.py +0 -0
  1038. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/background_summary.py +0 -0
  1039. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/chat_title.py +0 -0
  1040. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/context_budget.py +0 -0
  1041. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/doom_loop.py +0 -0
  1042. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/events.py +0 -0
  1043. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/history_compaction.py +0 -0
  1044. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/history_rewrite.py +0 -0
  1045. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/input_admission.py +0 -0
  1046. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/loop.py +0 -0
  1047. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/loop_hooks.py +0 -0
  1048. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/loop_messages.py +0 -0
  1049. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/loop_ports.py +0 -0
  1050. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/loop_usage.py +0 -0
  1051. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/provider_stream_mapper.py +0 -0
  1052. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/tool_batch.py +0 -0
  1053. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/utterance_buffer.py +0 -0
  1054. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subagents/__init__.py +0 -0
  1055. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subagents/progress_publish.py +0 -0
  1056. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subagents/subagent_proto.py +0 -0
  1057. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subprocess_groups.py +0 -0
  1058. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/testing/__init__.py +0 -0
  1059. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/testing/mocks_provider.py +0 -0
  1060. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/testing/mocks_realtime_provider.py +0 -0
  1061. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/__init__.py +0 -0
  1062. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/ask_user.py +0 -0
  1063. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/background_jobs.py +0 -0
  1064. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/change_recorder.py +0 -0
  1065. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/command_executor.py +0 -0
  1066. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/fs_isolation.py +0 -0
  1067. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/gitignore.py +0 -0
  1068. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/grant_store.py +0 -0
  1069. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/inspector.py +0 -0
  1070. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/loop_inspector.py +0 -0
  1071. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/patch.py +0 -0
  1072. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/path_grant_inspector.py +0 -0
  1073. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/permission.py +0 -0
  1074. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/read_ledger.py +0 -0
  1075. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/sandbox_executor.py +0 -0
  1076. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/spill_inventory.py +0 -0
  1077. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/terminal.py +0 -0
  1078. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/text_normalize.py +0 -0
  1079. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/tool_hint.py +0 -0
  1080. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/tool_kind.py +0 -0
  1081. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/types.py +0 -0
  1082. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/workspace_service.py +0 -0
  1083. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/types/__init__.py +0 -0
  1084. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/types/content_blocks.py +0 -0
  1085. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/types/interfaces.py +0 -0
  1086. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/types/types_tools.py +0 -0
  1087. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/__init__.py +0 -0
  1088. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/actuator.py +0 -0
  1089. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/binding.py +0 -0
  1090. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/classify.py +0 -0
  1091. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/inspector.py +0 -0
  1092. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/intervention.py +0 -0
  1093. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/judge.py +0 -0
  1094. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/ledger.py +0 -0
  1095. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/mailbox.py +0 -0
  1096. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/match.py +0 -0
  1097. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/port.py +0 -0
  1098. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/rewrite_effects.py +0 -0
  1099. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/severity.py +0 -0
  1100. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/tracker.py +0 -0
  1101. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/__init__.py +0 -0
  1102. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/factory.py +0 -0
  1103. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/gcs.py +0 -0
  1104. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/local.py +0 -0
  1105. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/protocol.py +0 -0
  1106. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/s3.py +0 -0
  1107. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace_layout.py +0 -0
  1108. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/__init__.py +0 -0
  1109. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/bootstrap.py +0 -0
  1110. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/main.py +0 -0
  1111. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/pending_response_bus.py +0 -0
  1112. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/__init__.py +0 -0
  1113. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/app.py +0 -0
  1114. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/deps.py +0 -0
  1115. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/errors.py +0 -0
  1116. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/guardrails.py +0 -0
  1117. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/manager.py +0 -0
  1118. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/metrics.py +0 -0
  1119. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/session.py +0 -0
  1120. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/wire.py +0 -0
  1121. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime_main.py +0 -0
  1122. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/__init__.py +0 -0
  1123. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/goal_routes.py +0 -0
  1124. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/history_routes.py +0 -0
  1125. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/loop_port.py +0 -0
  1126. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/models.py +0 -0
  1127. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/reload.py +0 -0
  1128. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/reply_body.py +0 -0
  1129. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/request_storage.py +0 -0
  1130. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/routes.py +0 -0
  1131. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/scheduler_routes.py +0 -0
  1132. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/scheduler_wiring.py +0 -0
  1133. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/sse.py +0 -0
  1134. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/workspace_layout.py +0 -0
  1135. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/__init__.py +0 -0
  1136. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/_state.py +0 -0
  1137. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/instrumentation.py +0 -0
  1138. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/propagation.py +0 -0
  1139. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/spans.py +0 -0
  1140. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/sqlite_exporter.py +0 -0
  1141. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/__init__.py +0 -0
  1142. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/_bedrock_converse.py +0 -0
  1143. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/_openai_compat.py +0 -0
  1144. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/_sdk_client.py +0 -0
  1145. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/_stream_marks.py +0 -0
  1146. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/_utils.py +0 -0
  1147. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/bedrock.py +0 -0
  1148. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/claude.py +0 -0
  1149. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/fireworks.py +0 -0
  1150. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/gemini.py +0 -0
  1151. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/gemini_live.py +0 -0
  1152. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/huggingface.py +0 -0
  1153. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/model_capabilities.py +0 -0
  1154. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/nvidia.py +0 -0
  1155. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/ollama.py +0 -0
  1156. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/openai.py +0 -0
  1157. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/openrouter.py +0 -0
  1158. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/pricing.py +0 -0
  1159. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/rejected_sampling.py +0 -0
  1160. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/request_budget.py +0 -0
  1161. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/sampling.py +0 -0
  1162. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/vertex_claude.py +0 -0
  1163. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scaffold/__init__.py +0 -0
  1164. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/__init__.py +0 -0
  1165. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/__main__.py +0 -0
  1166. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/engine.py +0 -0
  1167. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/http_invoker.py +0 -0
  1168. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/interval.py +0 -0
  1169. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/tick_result.py +0 -0
  1170. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/worker.py +0 -0
  1171. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/todo_list/__init__.py +0 -0
  1172. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/todo_list/hook.py +0 -0
  1173. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/todo_list/store.py +0 -0
  1174. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/todo_list/tool.py +0 -0
  1175. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/__init__.py +0 -0
  1176. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/backends/__init__.py +0 -0
  1177. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/backends/duckduckgo.py +0 -0
  1178. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/backends/firecrawl.py +0 -0
  1179. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/backends/tavily.py +0 -0
  1180. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/protocol.py +0 -0
  1181. {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/tool.py +0 -0
  1182. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/__init__.py +0 -0
  1183. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/backends.py +0 -0
  1184. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/clock.py +0 -0
  1185. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/context.py +0 -0
  1186. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/conversations.py +0 -0
  1187. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/data/attachments/tiny.jpg +0 -0
  1188. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/data/attachments/tiny.png +0 -0
  1189. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/data/attachments/with-text.pdf +0 -0
  1190. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/data/attachments/without-text.pdf +0 -0
  1191. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/executors.py +0 -0
  1192. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/failure_ledger.py +0 -0
  1193. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/failures/__init__.py +0 -0
  1194. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/failures/__main__.py +0 -0
  1195. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/failures/catalog.py +0 -0
  1196. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/failures/store.py +0 -0
  1197. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/gateway.py +0 -0
  1198. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/gateway_ports.py +0 -0
  1199. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/history.py +0 -0
  1200. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/hooks.py +0 -0
  1201. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/inspectors.py +0 -0
  1202. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/mcp.py +0 -0
  1203. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/memory.py +0 -0
  1204. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/palace.py +0 -0
  1205. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/pending_bus.py +0 -0
  1206. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/provider.py +0 -0
  1207. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/py.typed +0 -0
  1208. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/sandbox.py +0 -0
  1209. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/scrub.py +0 -0
  1210. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/sse.py +0 -0
  1211. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/subagent_worker.py +0 -0
  1212. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/verifier.py +0 -0
  1213. {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/web_search.py +0 -0
  1214. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/__init__.py +0 -0
  1215. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/conftest.py +0 -0
  1216. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/__init__.py +0 -0
  1217. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/conftest.py +0 -0
  1218. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.default.txt +0 -0
  1219. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.emission_terse.txt +0 -0
  1220. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.mcp_catalog.txt +0 -0
  1221. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.memory_off.txt +0 -0
  1222. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.sandbox_on.txt +0 -0
  1223. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.task_terse.txt +0 -0
  1224. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/volatile_tail_parts.json +0 -0
  1225. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/routes.txt +0 -0
  1226. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/span_names.txt +0 -0
  1227. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/sse/schema.json +0 -0
  1228. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/tool_error_codes.txt +0 -0
  1229. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/tables/config_precedence.yaml +0 -0
  1230. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/tables/policy_decisions.yaml +0 -0
  1231. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/tables/provider_error_mapping.yaml +0 -0
  1232. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_config_matrix.py +0 -0
  1233. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_harness_prompt_golden.py +0 -0
  1234. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_migrations_replay.py +0 -0
  1235. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_policy_decision_table.py +0 -0
  1236. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_provider_conformance.py +0 -0
  1237. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_realtime_divergence.py +0 -0
  1238. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_route_table.py +0 -0
  1239. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_scaffold_reexports.py +0 -0
  1240. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_span_names.py +0 -0
  1241. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_sse_schema.py +0 -0
  1242. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_storage_parity.py +0 -0
  1243. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_tool_error_catalog.py +0 -0
  1244. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/__init__.py +0 -0
  1245. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/cli/__init__.py +0 -0
  1246. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/cli/test_gateway_manager.py +0 -0
  1247. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/cli/test_main.py +0 -0
  1248. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/cli/test_push_to_talk.py +0 -0
  1249. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/cli/test_realtime_client.py +0 -0
  1250. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/__init__.py +0 -0
  1251. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_approvals.py +0 -0
  1252. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_computer_tools.py +0 -0
  1253. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_package_init.py +0 -0
  1254. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_path_policy.py +0 -0
  1255. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_permissions.py +0 -0
  1256. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_platform_gate.py +0 -0
  1257. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_subagent_exclusion.py +0 -0
  1258. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_wiring.py +0 -0
  1259. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/conftest.py +0 -0
  1260. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/__init__.py +0 -0
  1261. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/attachments/__init__.py +0 -0
  1262. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/attachments/test_attachment_freeze.py +0 -0
  1263. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/attachments/test_attachment_store.py +0 -0
  1264. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/attachments/test_image_preview.py +0 -0
  1265. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/coding/__init__.py +0 -0
  1266. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/coding/test_verification_gate.py +0 -0
  1267. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/config/__init__.py +0 -0
  1268. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/config/test_config_extensions.py +0 -0
  1269. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/config/test_env_map_grep_gates.py +0 -0
  1270. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/config/test_runtime_config_snapshot.py +0 -0
  1271. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/config/test_runtime_env.py +0 -0
  1272. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/__init__.py +0 -0
  1273. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_context_epoch.py +0 -0
  1274. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_project_context.py +0 -0
  1275. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_secret_egress.py +0 -0
  1276. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_skill_discovery_rules.py +0 -0
  1277. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_slash_skills.py +0 -0
  1278. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_tool_result_ingress.py +0 -0
  1279. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_tool_shapers.py +0 -0
  1280. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/fixtures/__init__.py +0 -0
  1281. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/fixtures/bitbucket_dc_style_pr.diff +0 -0
  1282. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/goals/__init__.py +0 -0
  1283. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/goals/test_goal_persistence.py +0 -0
  1284. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/goals/test_goals.py +0 -0
  1285. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/hooks/__init__.py +0 -0
  1286. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/hooks/test_evidence_guard.py +0 -0
  1287. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/hooks/test_hooks.py +0 -0
  1288. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/hooks/test_settlement.py +0 -0
  1289. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/llm/__init__.py +0 -0
  1290. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/llm/test_pricing.py +0 -0
  1291. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/llm/test_provider_contract.py +0 -0
  1292. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/mcp/__init__.py +0 -0
  1293. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/mcp/test_mcp_client.py +0 -0
  1294. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/mcp/test_mcp_oauth.py +0 -0
  1295. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/mcp/test_mcp_oauth_regressions.py +0 -0
  1296. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/__init__.py +0 -0
  1297. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/test_memory_layout_migrate.py +0 -0
  1298. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/test_memory_scoping.py +0 -0
  1299. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/test_mempalace.py +0 -0
  1300. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/test_migrate_embedding.py +0 -0
  1301. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/test_review_fixes.py +0 -0
  1302. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/messages/__init__.py +0 -0
  1303. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/messages/test_gemini_history_replay.py +0 -0
  1304. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/messages/test_message_pipeline.py +0 -0
  1305. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/messages/test_tool_integrity.py +0 -0
  1306. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/__init__.py +0 -0
  1307. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_branch_store_backends.py +0 -0
  1308. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_durable_runs.py +0 -0
  1309. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_firestore_history.py +0 -0
  1310. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_firestore_scheduled_loops.py +0 -0
  1311. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_firestore_usage.py +0 -0
  1312. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_goal_ledger.py +0 -0
  1313. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_history.py +0 -0
  1314. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_history_branches.py +0 -0
  1315. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_history_row_ids.py +0 -0
  1316. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_runs.py +0 -0
  1317. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_scheduled_loops.py +0 -0
  1318. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_session_branches_migration.py +0 -0
  1319. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_session_turn_locks.py +0 -0
  1320. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_storage_backends.py +0 -0
  1321. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_thread_summary_wire.py +0 -0
  1322. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_transcript.py +0 -0
  1323. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_transcript_reader.py +0 -0
  1324. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_usage.py +0 -0
  1325. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_usage_migration.py +0 -0
  1326. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/prompts/__init__.py +0 -0
  1327. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/prompts/test_harness_prompt.py +0 -0
  1328. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/prompts/test_prompt.py +0 -0
  1329. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/__init__.py +0 -0
  1330. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_background_summary.py +0 -0
  1331. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_chat_title.py +0 -0
  1332. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_context_budget.py +0 -0
  1333. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_doom_loop.py +0 -0
  1334. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_durable_events.py +0 -0
  1335. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_empty_completion.py +0 -0
  1336. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_events.py +0 -0
  1337. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_history_compaction_split.py +0 -0
  1338. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_input_admission.py +0 -0
  1339. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_loop.py +0 -0
  1340. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_loop_hooks.py +0 -0
  1341. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_loop_observability.py +0 -0
  1342. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_loop_transcript.py +0 -0
  1343. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_provider_stream_mapper.py +0 -0
  1344. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_realtime_loop.py +0 -0
  1345. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_truncated_tool_batch.py +0 -0
  1346. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_turn_session_id.py +0 -0
  1347. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_utterance_buffer.py +0 -0
  1348. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/__init__.py +0 -0
  1349. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_child_tool_list.py +0 -0
  1350. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_progress_publish.py +0 -0
  1351. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_subagent_proto.py +0 -0
  1352. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_subagent_trace_propagation.py +0 -0
  1353. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_subagent_transcript.py +0 -0
  1354. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_subagent_worker_paths.py +0 -0
  1355. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_agent_layout.py +0 -0
  1356. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_bootstrap.py +0 -0
  1357. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_layout.py +0 -0
  1358. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_logging_utils.py +0 -0
  1359. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_path_safety.py +0 -0
  1360. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_workspace_layout.py +0 -0
  1361. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/testing/__init__.py +0 -0
  1362. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/testing/test_mocks_realtime_provider.py +0 -0
  1363. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/__init__.py +0 -0
  1364. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_ask_user.py +0 -0
  1365. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_background_jobs.py +0 -0
  1366. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_change_recorder.py +0 -0
  1367. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_fs_isolation.py +0 -0
  1368. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_gitignore.py +0 -0
  1369. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_grant_store.py +0 -0
  1370. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_inspector.py +0 -0
  1371. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_patch.py +0 -0
  1372. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_path_grant_inspector.py +0 -0
  1373. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_permission.py +0 -0
  1374. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_replace_fuzzy.py +0 -0
  1375. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_run_command_parse.py +0 -0
  1376. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_sandbox_executor.py +0 -0
  1377. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_spill_dynamic.py +0 -0
  1378. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_spill_inventory.py +0 -0
  1379. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_terminal.py +0 -0
  1380. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_workspace_extra_read_roots.py +0 -0
  1381. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_workspace_symlinks.py +0 -0
  1382. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_workspace_write_scope.py +0 -0
  1383. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/types/__init__.py +0 -0
  1384. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/types/test_content_blocks.py +0 -0
  1385. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/types/test_tool_def_schema.py +0 -0
  1386. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/__init__.py +0 -0
  1387. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_progress_tracker.py +0 -0
  1388. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_binding.py +0 -0
  1389. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_inspector.py +0 -0
  1390. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_judge.py +0 -0
  1391. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_mailbox_lifecycle.py +0 -0
  1392. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_port.py +0 -0
  1393. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_rewrite_effects.py +0 -0
  1394. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_sticky_nudge.py +0 -0
  1395. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_tracker.py +0 -0
  1396. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/workspace/__init__.py +0 -0
  1397. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/workspace/test_factory.py +0 -0
  1398. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/workspace/test_local_storage.py +0 -0
  1399. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/workspace/test_protocol_contract.py +0 -0
  1400. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/__init__.py +0 -0
  1401. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/__init__.py +0 -0
  1402. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_app.py +0 -0
  1403. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_deps.py +0 -0
  1404. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_guardrails.py +0 -0
  1405. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_manager.py +0 -0
  1406. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_metrics.py +0 -0
  1407. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_routes_client_text.py +0 -0
  1408. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_session.py +0 -0
  1409. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_wire.py +0 -0
  1410. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/__init__.py +0 -0
  1411. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_attachments.py +0 -0
  1412. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_chat_title_route.py +0 -0
  1413. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_config_reload.py +0 -0
  1414. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_create_session_model.py +0 -0
  1415. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_gateway_runtime.py +0 -0
  1416. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_history_routes.py +0 -0
  1417. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_routes.py +0 -0
  1418. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_scheduler_routes.py +0 -0
  1419. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_session_bus.py +0 -0
  1420. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_start_turn_setup_failure.py +0 -0
  1421. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_transcript_wiring.py +0 -0
  1422. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_otel_fastapi.py +0 -0
  1423. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_otel_lifespan.py +0 -0
  1424. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_pending_response_endpoints.py +0 -0
  1425. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_realtime_main.py +0 -0
  1426. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_resolve_provider.py +0 -0
  1427. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_sdk_client_shutdown.py +0 -0
  1428. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_sse_events.py +0 -0
  1429. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_subagent_event_publisher.py +0 -0
  1430. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/conftest.py +0 -0
  1431. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_init.py +0 -0
  1432. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_instrumentation.py +0 -0
  1433. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_loop_hook_spans.py +0 -0
  1434. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_propagation.py +0 -0
  1435. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_span_contract.py +0 -0
  1436. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_spans.py +0 -0
  1437. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_sqlite_exporter.py +0 -0
  1438. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_truncate.py +0 -0
  1439. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_turn_complete_trace.py +0 -0
  1440. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/packaging/__init__.py +0 -0
  1441. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/packaging/test_cold_start.py +0 -0
  1442. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/packaging/test_packaging_config.py +0 -0
  1443. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/packaging/test_release_script.py +0 -0
  1444. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/__init__.py +0 -0
  1445. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/conftest.py +0 -0
  1446. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_anthropic_cache.py +0 -0
  1447. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_anthropic_history.py +0 -0
  1448. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_bedrock_converse.py +0 -0
  1449. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_bedrock_estimate.py +0 -0
  1450. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_connection_warm.py +0 -0
  1451. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_fireworks.py +0 -0
  1452. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_gemini_history.py +0 -0
  1453. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_gemini_live.py +0 -0
  1454. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_gemini_usage.py +0 -0
  1455. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_huggingface.py +0 -0
  1456. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_model_capabilities.py +0 -0
  1457. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_nvidia.py +0 -0
  1458. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_ollama.py +0 -0
  1459. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_openai_byte_budget.py +0 -0
  1460. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_openai_compat_usage.py +0 -0
  1461. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_openai_history.py +0 -0
  1462. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_pricing.py +0 -0
  1463. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_request_budget.py +0 -0
  1464. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_safe_parse_tool_args.py +0 -0
  1465. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_sampling.py +0 -0
  1466. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_sdk_client_reuse.py +0 -0
  1467. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_sonnet5_sampling.py +0 -0
  1468. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_source_grep_gates.py +0 -0
  1469. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_tiktoken_encoding.py +0 -0
  1470. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_vertex_claude_history.py +0 -0
  1471. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/scheduler/__init__.py +0 -0
  1472. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/scheduler/test_engine.py +0 -0
  1473. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/scheduler/test_interval.py +0 -0
  1474. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/skills/__init__.py +0 -0
  1475. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/skills/test_generate_image_script.py +0 -0
  1476. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/__init__.py +0 -0
  1477. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_clock.py +0 -0
  1478. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_failure_ledger.py +0 -0
  1479. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_failures_cli.py +0 -0
  1480. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_fake_history.py +0 -0
  1481. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_scripted_provider.py +0 -0
  1482. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_scrub.py +0 -0
  1483. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_sse_reader.py +0 -0
  1484. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/todo_list/__init__.py +0 -0
  1485. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/todo_list/test_todo_list.py +0 -0
  1486. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/web_search/__init__.py +0 -0
  1487. {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/web_search/test_web_search.py +0 -0
@@ -6,6 +6,27 @@ the project adheres to [Semantic Versioning](https://semver.org/).
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [core v3.14.0] - 2026-11-04
10
+
11
+ ### Added
12
+
13
+ - An MCP server a chat does not use for ten model turns is hidden from that chat. The connection stays up for other chats and for subagents. `enable_mcp` shows that server's tools again. A call to a hidden server is rejected.
14
+
15
+ ### Fixed
16
+
17
+ - A message sent while a background subagent is still running is answered. It is not treated as a request for the child's result. `await_task` runs when the user asks for that result, or when a harness note says the child has finished.
18
+
19
+ ## [cli v0.13.0] - 2026-11-01
20
+
21
+ ### Added
22
+
23
+ - Chat renders a turn the gateway starts while the prompt is idle, including the follow-up when a background subagent finishes. A message sent during that turn reports the session as busy.
24
+
25
+ ### Fixed
26
+
27
+ - `monkeybot doctor` points a config-only tree at the Pillow overrides file shipped with the CLI. A bare `uv tool install` still resolves core 3.10.0.
28
+ - New coding scaffolds tell the image generator to use the `skills` path from `list_skills` instead of an absolute host directory.
29
+
9
30
  ## [core v3.13.0] - 2026-11-01
10
31
 
11
32
  ### Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: monkeybot
3
- Version: 3.13.0
3
+ Version: 3.14.0
4
4
  Summary: monkeybot agent harness — FastAPI SSE gateway, owned loop, SQLite, and MCP.
5
5
  License: MIT
6
6
  License-File: LICENSE
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "monkeybot-cli"
7
- version = "0.12.0"
7
+ version = "0.13.0"
8
8
  description = "CLI to create, configure, validate, and chat with monkeybot agents."
9
9
  requires-python = ">=3.11"
10
10
  dependencies = [
@@ -545,6 +545,21 @@ Existing unit coverage: `tests/unit/core/context`, `tests/unit/core/mcp`.
545
545
  | T2-MCP-09 | Catalog diff reload | Edit `mcp.json`: changed server reconnects; bad JSON keeps existing connections. | T2 | P1 | `core/mcp/mcp_client.py`, `oauth_flow.py`, `_tool_enable_mcp` / `_tool_disable_mcp`, progressive meta-tools, `apply_catalog_diff`. | regression/t2/loop/scenarios/mcp/catalog_diff_reload.yaml |
546
546
  | T2-MCP-10 | Enable unknown server | Not in catalog: error string (pinned; not an envelope). | T2 | P1 | `core/mcp/mcp_client.py`, `oauth_flow.py`, `_tool_enable_mcp` / `_tool_disable_mcp`, progressive meta-tools, `apply_catalog_diff`. | regression/t2/loop/scenarios/mcp/enable_unknown_server.yaml |
547
547
  | T2-MCP-11 | Disabled server not catalogued | `enabled: false`: not offered. | T2 | P1 | `core/mcp/mcp_client.py`, `oauth_flow.py`, `_tool_enable_mcp` / `_tool_disable_mcp`, progressive meta-tools, `apply_catalog_diff`. | regression/t2/loop/scenarios/mcp/disabled_server_not_catalogued.yaml |
548
+ | T2-MCP-12 | Idle hides after ten | Ten inner turns offering `fixture__echo` without calling it hide it. The next request excludes the tool and the tool result contains the idle note. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/loop/scenarios/mcp/idle_hides_after_ten.yaml |
549
+ | T2-MCP-13 | Use resets idle count | Nine idle turns, one `fixture__echo`, nine more idle turns: the tool is still listed. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/loop/scenarios/mcp/use_resets_idle_count.yaml |
550
+ | T2-MCP-14 | Enable restores hidden | After a hide, `enable_mcp fixture` puts `fixture__echo` back on the next request. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/loop/scenarios/mcp/enable_restores_hidden.yaml |
551
+ | T2-MCP-15 | Hidden tool call rejected | A call to a hidden server returns an error naming `enable_mcp`. `list_mcp_resources` with no server skips it. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/loop/scenarios/mcp/hidden_tool_call_rejected.yaml |
552
+ | T2-MCP-16 | Idle count spans user messages | Six idle inner turns in one user message plus four in the next hide the server during the second message. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/loop/scenarios/mcp/idle_count_spans_user_messages.yaml |
553
+ | T2-MCP-17 | Only idle server hidden | Of `fix` and `fix__extra`, calling only `fix` hides `fix__extra__echo`. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/loop/scenarios/mcp/only_idle_server_hidden.yaml |
554
+ | T2-MCP-18 | Enable other keeps hidden | After `fix__extra` is hidden, `enable_mcp fix` leaves `fix__extra__echo` excluded. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/loop/scenarios/mcp/enable_other_keeps_hidden.yaml |
555
+ | T2-MCP-19 | Meta tools drop when all hidden | Once every connected server is hidden, `list_mcp_resources` is excluded. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/loop/scenarios/mcp/meta_tools_drop_when_all_hidden.yaml |
556
+ | T2-MCP-20 | Session isolation | Hiding a server in one session leaves it connected and listed for another session. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/python/test_mcp_idle_hide.py |
557
+ | T2-MCP-21 | Note stays in the tool result | The idle note is inside the tool result. It is not a new user message and does not replace the current request. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/python/test_mcp_idle_hide.py |
558
+ | T2-MCP-22 | No-tool turn does not count | A doom-loop recovery turn sent with no tools does not advance the idle count. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/python/test_mcp_idle_hide.py |
559
+ | T2-MCP-23 | Aborted batch does not hide | Cancelling the tool batch that reaches the idle limit does not hide the server or write the note. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/python/test_mcp_idle_hide.py |
560
+ | T2-MCP-24 | Voice does not hide | A voice turn does not hide a server that has reached the idle limit. A voice call of that server resets the count. | T2 | P1 | `core/mcp/session_visibility.py`, turn loop idle count, tool-batch hide. | regression/t2/python/test_mcp_idle_hide.py |
561
+ | T2-MCP-25 | Second chat still sees the server | After one chat hides a connected server, the next chat's request still includes its tools and a call returns. | T2 | P1 | `core/mcp/session_visibility.py`, per-session tool list, shared MCP client. | regression/t2/loop/scenarios/mcp/second_session_still_sees_server.yaml |
562
+ | T2-MCP-26 | Subagent keeps calling | After the parent hides a server, a subagent's own connection still calls it and the result reaches the parent. | T2 | P1 | `core/mcp/session_visibility.py`, subagent worker MCP client. | regression/t2/loop/scenarios/mcp/child_keeps_calling_hidden_server.yaml |
548
563
  | T3-MCP-01 | Replay tools list call | Recorded `tools/list` + `tools/call` JSON: same prefixed names and normalized result text. | T3 | P1 | `core/mcp/mcp_client.py`, `oauth_flow.py`, `_tool_enable_mcp` / `_tool_disable_mcp`, progressive meta-tools, `apply_catalog_diff`. | regression/t3/test_replay_mcp.py |
549
564
  | T4-MCP-01..03 | Mcp/* | autoConnect path as today. | T4 | P1 | `core/mcp/mcp_client.py`, `oauth_flow.py`, `_tool_enable_mcp` / `_tool_disable_mcp`, progressive meta-tools, `apply_catalog_diff`. | regression/t4/scenarios/mcp/tool_invoke.yaml, regression/t4/scenarios/mcp/list_resources.yaml, regression/t4/scenarios/mcp/get_prompt.yaml |
550
565
  | T4-MCP-04 | Enable then echo live | Progressive config: `required_tools: [enable_mcp, fixture__echo]`, `max_tool_errors: 0`. | T4 | P1 | `core/mcp/mcp_client.py`, `oauth_flow.py`, `_tool_enable_mcp` / `_tool_disable_mcp`, progressive meta-tools, `apply_catalog_diff`. | regression/t4/scenarios/mcp/enable_then_echo_live.yaml |
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "monkeybot"
7
- version = "3.13.0"
7
+ version = "3.14.0"
8
8
  description = "monkeybot agent harness — FastAPI SSE gateway, owned loop, SQLite, and MCP."
9
9
  requires-python = ">=3.11"
10
10
  readme = "README.md"
@@ -91,6 +91,9 @@ class _McpBundle(Bundle):
91
91
  "MCP_CONFIG needs executor: real so the fixture server has a workspace"
92
92
  )
93
93
  ctx.mcp_client, ctx.mcp_path = await _open_mcp(ctx.env, ctx.cfg, ctx.workspace)
94
+ # Subagents read MCP_CONFIG, not the parent client. Point them at the
95
+ # expanded copy this process actually loaded.
96
+ ctx.env["MCP_CONFIG"] = str(ctx.mcp_path)
94
97
  ctx.advertised, ctx.catalog = _advertised_tools(ctx.mcp_client)
95
98
 
96
99
  async def close(self, ctx: RunCtx) -> None:
@@ -36,6 +36,7 @@ class RunCtx:
36
36
  pristine: Path | None = None
37
37
  hook_memory: Any = None
38
38
  read_ledger: Any = None
39
+ mcp_visibility: Any = None
39
40
  mcp_client: Any = None
40
41
  mcp_path: Path | None = None
41
42
  advertised: list[Any] | None = None
@@ -13,6 +13,7 @@ from monkeybot.core.context import TurnContext
13
13
  from monkeybot.core.context.slash_skills import apply_invoked_skill
14
14
  from monkeybot.core.hooks import HookManager
15
15
  from monkeybot.core.layout import resolve_agent_path
16
+ from monkeybot.core.mcp.session_visibility import MCPSessionVisibility
16
17
  from monkeybot.core.memory.subsystem import MemorySubsystem
17
18
  from monkeybot.core.persistence.backends import ScheduledLoopStore
18
19
  from monkeybot.core.persistence.scheduled_loops import KIND_GOAL, KIND_LOOP
@@ -254,6 +255,7 @@ class _SessionBundle(Bundle):
254
255
  if "memory" in ctx.hook_names and not _scenario_memory_disabled(ctx.scenario):
255
256
  root = ctx.workdir / "memory"
256
257
  ctx.hook_memory = _memory_subsystem(root, drawers, db_url=_scenario_sqlite_url(ctx))
258
+ ctx.mcp_visibility = MCPSessionVisibility()
257
259
  if ctx.scenario.executor != "real":
258
260
  if _PATCH_FAIL_ENV in ctx.env:
259
261
  raise LoopDriverError(f"{_PATCH_FAIL_ENV} needs executor: real")
@@ -297,9 +299,9 @@ class _SessionBundle(Bundle):
297
299
  if policy is not None and policy.allowed_commands is not None:
298
300
  policy_kwargs["run_command_allowed_commands"] = policy.allowed_commands
299
301
  policy_kwargs["run_command_allowed_path_prefixes"] = policy.allowed_path_prefixes
302
+ from monkeybot.core.config.settings import get_subagent_settings
300
303
  from monkeybot.core.subagents.supervisor import SubagentSupervisor
301
304
  from monkeybot.core.tools.core_tool_executor import _run_inline_subagent_with_progress
302
- from monkeybot.core.config.settings import get_subagent_settings
303
305
 
304
306
  settings = get_subagent_settings(config=ctx.cfg)
305
307
  supervisor = SubagentSupervisor(
@@ -21,9 +21,11 @@ from monkeybot.core.context import (
21
21
  PendingResponseBusPort,
22
22
  TurnContext,
23
23
  _core_tool_defs,
24
+ refresh_tools_after_mcp_change,
24
25
  )
25
26
  from monkeybot.core.hooks import HookManager
26
27
  from monkeybot.core.llm.provider import ToolCall
28
+ from monkeybot.core.mcp.session_visibility import MCPSessionVisibility
27
29
  from monkeybot.core.runtime.events import Error, TurnComplete, event_from_json
28
30
  from monkeybot.core.runtime.input_admission import InputAdmission
29
31
  from monkeybot.core.runtime.loop import run
@@ -269,6 +271,7 @@ async def _run(scenario: Scenario, workdir: Path) -> LoopRun:
269
271
  project_instructions=ctx.project_instructions,
270
272
  repo_overview=ctx.repo_overview,
271
273
  session_id=ctx.session_id,
274
+ mcp_visibility=ctx.mcp_visibility,
272
275
  attachment_store=ctx.attachment_store,
273
276
  computer_inspector=ctx.computer_inspector,
274
277
  )
@@ -328,6 +331,7 @@ async def _drive(
328
331
  project_instructions: str = "",
329
332
  repo_overview: str = "",
330
333
  session_id: str = _SESSION_ID,
334
+ mcp_visibility: MCPSessionVisibility | None = None,
331
335
  attachment_store: Any = None,
332
336
  computer_inspector: Any = None,
333
337
  ) -> tuple[list[object], list[_SessionSlice] | None]:
@@ -411,6 +415,7 @@ async def _drive(
411
415
  event_publisher=publisher,
412
416
  grants_persist=grants_persist,
413
417
  approvals_persist=approvals_persist,
418
+ mcp_visibility=mcp_visibility,
414
419
  )
415
420
  turn = apply_project_context(
416
421
  turn,
@@ -426,7 +431,18 @@ async def _drive(
426
431
  thread_id = session_id if not multi else f"{session_id}-{session_index}"
427
432
  bindings.history = active_history
428
433
  bindings.thread_id = thread_id
429
- turn = replace(turn, thread_id=thread_id)
434
+ # One tracker per scenario session, kept across that session's user messages.
435
+ session_visibility = (
436
+ mcp_visibility
437
+ if session_index == 1 and mcp_visibility is not None
438
+ else MCPSessionVisibility()
439
+ )
440
+ turn = replace(turn, thread_id=thread_id, mcp_visibility=session_visibility)
441
+ # Production builds each chat's tool list from the shared client. The
442
+ # first session's hide mutates this list in place; the next session
443
+ # has to see the servers that are still connected.
444
+ if session_index > 1 and live.mcp is not None:
445
+ refresh_tools_after_mcp_change(turn, live.mcp)
430
446
  for nth, message in enumerate(session_messages, start=1):
431
447
  start = len(events)
432
448
  if multi:
@@ -503,6 +519,7 @@ def _turn_context(
503
519
  event_publisher: _SubagentPublisher | None = None,
504
520
  grants_persist: Callable[[str, str], bool] | None = None,
505
521
  approvals_persist: Callable[[str, str], bool] | None = None,
522
+ mcp_visibility: MCPSessionVisibility | None = None,
506
523
  ) -> TurnContext:
507
524
  advertised = list(tools) if tools is not None else _core_tool_defs(include_task_tool=True)
508
525
  names = {tool.name for tool in advertised}
@@ -536,6 +553,7 @@ def _turn_context(
536
553
  verdict_mailbox=verdict_mailbox,
537
554
  grants_persist=grants_persist,
538
555
  approvals_persist=approvals_persist,
556
+ mcp_visibility=mcp_visibility,
539
557
  )
540
558
 
541
559
 
@@ -0,0 +1,15 @@
1
+ - - type: tool_call
2
+ call_id: c1
3
+ name: enable_mcp
4
+ args:
5
+ name: fixture
6
+ - type: done
7
+ - - type: tool_call
8
+ call_id: c2
9
+ name: fixture__echo
10
+ args:
11
+ text: ping
12
+ - type: done
13
+ - - type: text
14
+ text: Child echoed ping.
15
+ - type: done
@@ -0,0 +1,114 @@
1
+ id: regression/t2/loop/scenarios/mcp/child_keeps_calling_hidden_server
2
+ case: T2-MCP-26
3
+ description: A subagent keeps calling an MCP server after the parent chat has hidden it.
4
+ mode: scripted
5
+ driver: loop
6
+ executor: real
7
+ config:
8
+ model:
9
+ max_turns: 30
10
+ env:
11
+ MCP_CONFIG: regression/fixtures/configs/mcp.autoconnect.json
12
+ MONKEYBOT_SUBAGENT_SCRIPT: "{repo_root}/src/monkeybot/core/subagents/subagent_worker.py"
13
+ MONKEYBOT_CONFIG: "{repo_root}/regression/fixtures/configs/agent.base.yaml"
14
+ MONKEYBOT_FAKE_PROVIDER_SCRIPT: "{repo_root}/regression/t2/loop/scenarios/mcp/child_calls_fixture.yml"
15
+ AGENT_MD: "{repo_root}/regression/t4/agent/monkeybot_config/AGENT.md"
16
+ DB_URL: "sqlite:///{workspace}/child.db"
17
+ messages:
18
+ - Hide the fixture server, then ask a subagent to echo through it.
19
+ script:
20
+ - - type: tool_call
21
+ call_id: c0
22
+ name: list_dir
23
+ args:
24
+ path: .
25
+ nonce: 0
26
+ - type: done
27
+ - - type: tool_call
28
+ call_id: c1
29
+ name: list_dir
30
+ args:
31
+ path: .
32
+ nonce: 1
33
+ - type: done
34
+ - - type: tool_call
35
+ call_id: c2
36
+ name: list_dir
37
+ args:
38
+ path: .
39
+ nonce: 2
40
+ - type: done
41
+ - - type: tool_call
42
+ call_id: c3
43
+ name: list_dir
44
+ args:
45
+ path: .
46
+ nonce: 3
47
+ - type: done
48
+ - - type: tool_call
49
+ call_id: c4
50
+ name: list_dir
51
+ args:
52
+ path: .
53
+ nonce: 4
54
+ - type: done
55
+ - - type: tool_call
56
+ call_id: c5
57
+ name: list_dir
58
+ args:
59
+ path: .
60
+ nonce: 5
61
+ - type: done
62
+ - - type: tool_call
63
+ call_id: c6
64
+ name: list_dir
65
+ args:
66
+ path: .
67
+ nonce: 6
68
+ - type: done
69
+ - - type: tool_call
70
+ call_id: c7
71
+ name: list_dir
72
+ args:
73
+ path: .
74
+ nonce: 7
75
+ - type: done
76
+ - - type: tool_call
77
+ call_id: c8
78
+ name: list_dir
79
+ args:
80
+ path: .
81
+ nonce: 8
82
+ - type: done
83
+ - - type: tool_call
84
+ call_id: c9
85
+ name: list_dir
86
+ args:
87
+ path: .
88
+ nonce: 9
89
+ - type: done
90
+ - - type: tool_call
91
+ call_id: task1
92
+ name: task
93
+ args:
94
+ task: Echo ping through the fixture server.
95
+ - type: done
96
+ - - type: text
97
+ text: Parent saw the child echo.
98
+ - type: done
99
+ assertions:
100
+ provider_calls: 12
101
+ provider_request:
102
+ - n: 11
103
+ tools_exclude:
104
+ - fixture__echo
105
+ events_sequence:
106
+ - type: ToolCallResult
107
+ tool: task
108
+ result:
109
+ regex: "echo: ping"
110
+ subagent:
111
+ started: true
112
+ completed_ok: true
113
+ turn_completed: true
114
+ no_errors: true
@@ -0,0 +1,93 @@
1
+ id: regression/t2/loop/scenarios/mcp/enable_other_keeps_hidden
2
+ case: T2-MCP-18
3
+ description: Enabling one server does not bring back a different server this chat has hidden.
4
+ mode: scripted
5
+ driver: loop
6
+ executor: real
7
+ messages:
8
+ - Hide the longer prefix, then enable the shorter one again.
9
+ config:
10
+ model:
11
+ max_turns: 30
12
+ env:
13
+ MCP_CONFIG: regression/fixtures/configs/mcp.two_prefix.json
14
+ script:
15
+ - - type: tool_call
16
+ call_id: e0
17
+ name: fix__echo
18
+ args:
19
+ text: n0
20
+ - type: done
21
+ - - type: tool_call
22
+ call_id: e1
23
+ name: fix__echo
24
+ args:
25
+ text: n1
26
+ - type: done
27
+ - - type: tool_call
28
+ call_id: e2
29
+ name: fix__echo
30
+ args:
31
+ text: n2
32
+ - type: done
33
+ - - type: tool_call
34
+ call_id: e3
35
+ name: fix__echo
36
+ args:
37
+ text: n3
38
+ - type: done
39
+ - - type: tool_call
40
+ call_id: e4
41
+ name: fix__echo
42
+ args:
43
+ text: n4
44
+ - type: done
45
+ - - type: tool_call
46
+ call_id: e5
47
+ name: fix__echo
48
+ args:
49
+ text: n5
50
+ - type: done
51
+ - - type: tool_call
52
+ call_id: e6
53
+ name: fix__echo
54
+ args:
55
+ text: n6
56
+ - type: done
57
+ - - type: tool_call
58
+ call_id: e7
59
+ name: fix__echo
60
+ args:
61
+ text: n7
62
+ - type: done
63
+ - - type: tool_call
64
+ call_id: e8
65
+ name: fix__echo
66
+ args:
67
+ text: n8
68
+ - type: done
69
+ - - type: tool_call
70
+ call_id: e9
71
+ name: fix__echo
72
+ args:
73
+ text: n9
74
+ - type: done
75
+ - - type: tool_call
76
+ call_id: again
77
+ name: enable_mcp
78
+ args:
79
+ name: fix
80
+ - type: done
81
+ - - type: text
82
+ text: "The other server stays hidden."
83
+ - type: done
84
+ assertions:
85
+ provider_calls: 12
86
+ provider_request:
87
+ - n: 12
88
+ tools_include:
89
+ - fix__echo
90
+ tools_exclude:
91
+ - fix__extra__echo
92
+ turn_completed: true
93
+ no_errors: true
@@ -0,0 +1,110 @@
1
+ id: regression/t2/loop/scenarios/mcp/enable_restores_hidden
2
+ case: T2-MCP-14
3
+ description: enable_mcp brings a hidden server's tools back on the next request.
4
+ mode: scripted
5
+ driver: loop
6
+ executor: real
7
+ messages:
8
+ - Hide the fixture server, then enable it again.
9
+ config:
10
+ model:
11
+ max_turns: 30
12
+ env:
13
+ MCP_CONFIG: regression/fixtures/configs/mcp.progressive.json
14
+ script:
15
+ - - type: tool_call
16
+ call_id: c0
17
+ name: enable_mcp
18
+ args:
19
+ name: fixture
20
+ - type: done
21
+ - - type: tool_call
22
+ call_id: c1
23
+ name: list_dir
24
+ args:
25
+ path: .
26
+ nonce: 0
27
+ - type: done
28
+ - - type: tool_call
29
+ call_id: c2
30
+ name: list_dir
31
+ args:
32
+ path: .
33
+ nonce: 1
34
+ - type: done
35
+ - - type: tool_call
36
+ call_id: c3
37
+ name: list_dir
38
+ args:
39
+ path: .
40
+ nonce: 2
41
+ - type: done
42
+ - - type: tool_call
43
+ call_id: c4
44
+ name: list_dir
45
+ args:
46
+ path: .
47
+ nonce: 3
48
+ - type: done
49
+ - - type: tool_call
50
+ call_id: c5
51
+ name: list_dir
52
+ args:
53
+ path: .
54
+ nonce: 4
55
+ - type: done
56
+ - - type: tool_call
57
+ call_id: c6
58
+ name: list_dir
59
+ args:
60
+ path: .
61
+ nonce: 5
62
+ - type: done
63
+ - - type: tool_call
64
+ call_id: c7
65
+ name: list_dir
66
+ args:
67
+ path: .
68
+ nonce: 6
69
+ - type: done
70
+ - - type: tool_call
71
+ call_id: c8
72
+ name: list_dir
73
+ args:
74
+ path: .
75
+ nonce: 7
76
+ - type: done
77
+ - - type: tool_call
78
+ call_id: c9
79
+ name: list_dir
80
+ args:
81
+ path: .
82
+ nonce: 8
83
+ - type: done
84
+ - - type: tool_call
85
+ call_id: c10
86
+ name: list_dir
87
+ args:
88
+ path: .
89
+ nonce: 9
90
+ - type: done
91
+ - - type: tool_call
92
+ call_id: c-again
93
+ name: enable_mcp
94
+ args:
95
+ name: fixture
96
+ - type: done
97
+ - - type: text
98
+ text: "Restored."
99
+ - type: done
100
+ assertions:
101
+ provider_calls: 13
102
+ provider_request:
103
+ - n: 12
104
+ tools_exclude:
105
+ - fixture__echo
106
+ - n: 13
107
+ tools_include:
108
+ - fixture__echo
109
+ turn_completed: true
110
+ no_errors: true
@@ -0,0 +1,124 @@
1
+ id: regression/t2/loop/scenarios/mcp/hidden_tool_call_rejected
2
+ case: T2-MCP-15
3
+ description: A remembered call to a hidden server is rejected, and listing resources skips that server.
4
+ mode: scripted
5
+ driver: loop
6
+ executor: real
7
+ messages:
8
+ - After the fixture server is hidden, call it anyway.
9
+ config:
10
+ model:
11
+ max_turns: 30
12
+ env:
13
+ MCP_CONFIG: regression/fixtures/configs/mcp.progressive.json
14
+ script:
15
+ - - type: tool_call
16
+ call_id: c0
17
+ name: enable_mcp
18
+ args:
19
+ name: fixture
20
+ - type: done
21
+ - - type: tool_call
22
+ call_id: c1
23
+ name: list_dir
24
+ args:
25
+ path: .
26
+ nonce: 0
27
+ - type: done
28
+ - - type: tool_call
29
+ call_id: c2
30
+ name: list_dir
31
+ args:
32
+ path: .
33
+ nonce: 1
34
+ - type: done
35
+ - - type: tool_call
36
+ call_id: c3
37
+ name: list_dir
38
+ args:
39
+ path: .
40
+ nonce: 2
41
+ - type: done
42
+ - - type: tool_call
43
+ call_id: c4
44
+ name: list_dir
45
+ args:
46
+ path: .
47
+ nonce: 3
48
+ - type: done
49
+ - - type: tool_call
50
+ call_id: c5
51
+ name: list_dir
52
+ args:
53
+ path: .
54
+ nonce: 4
55
+ - type: done
56
+ - - type: tool_call
57
+ call_id: c6
58
+ name: list_dir
59
+ args:
60
+ path: .
61
+ nonce: 5
62
+ - type: done
63
+ - - type: tool_call
64
+ call_id: c7
65
+ name: list_dir
66
+ args:
67
+ path: .
68
+ nonce: 6
69
+ - type: done
70
+ - - type: tool_call
71
+ call_id: c8
72
+ name: list_dir
73
+ args:
74
+ path: .
75
+ nonce: 7
76
+ - type: done
77
+ - - type: tool_call
78
+ call_id: c9
79
+ name: list_dir
80
+ args:
81
+ path: .
82
+ nonce: 8
83
+ - type: done
84
+ - - type: tool_call
85
+ call_id: c10
86
+ name: list_dir
87
+ args:
88
+ path: .
89
+ nonce: 9
90
+ - type: done
91
+ - - type: tool_call
92
+ call_id: hidden-echo
93
+ name: fixture__echo
94
+ args:
95
+ text: ping
96
+ - type: tool_call
97
+ call_id: hidden-list
98
+ name: list_mcp_resources
99
+ args: {}
100
+ - type: done
101
+ - - type: text
102
+ text: "Rejected."
103
+ - type: done
104
+ assertions:
105
+ provider_calls: 13
106
+ provider_request:
107
+ - n: 12
108
+ tools_exclude:
109
+ - fixture__echo
110
+ - list_mcp_resources
111
+ - n: 13
112
+ messages_contain: "enable_mcp"
113
+ messages_not_contain: "fixture://readme"
114
+ events_sequence:
115
+ - type: ToolCallResult
116
+ tool: fixture__echo
117
+ error:
118
+ regex: "enable_mcp"
119
+ - type: ToolCallResult
120
+ tool: list_mcp_resources
121
+ result:
122
+ regex: '"count": 0'
123
+ turn_completed: true
124
+ no_errors: true