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.
- {monkeybot-3.13.0 → monkeybot-3.14.0}/CHANGELOG.md +21 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/PKG-INFO +1 -1
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/pyproject.toml +1 -1
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/testing.md +15 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/pyproject.toml +1 -1
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/mcp.py +3 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/protocol.py +1 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/session.py +3 -1
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/loop.py +19 -1
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/child_calls_fixture.yml +15 -0
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/child_keeps_calling_hidden_server.yaml +114 -0
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/enable_other_keeps_hidden.yaml +93 -0
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/enable_restores_hidden.yaml +110 -0
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/hidden_tool_call_rejected.yaml +124 -0
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/idle_count_spans_user_messages.yaml +103 -0
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/idle_hides_after_ten.yaml +111 -0
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/meta_tools_drop_when_all_hidden.yaml +109 -0
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/only_idle_server_hidden.yaml +92 -0
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/second_session_still_sees_server.yaml +116 -0
- monkeybot-3.14.0/regression/t2/loop/scenarios/mcp/use_resets_idle_count.yaml +168 -0
- monkeybot-3.14.0/regression/t2/python/test_mcp_idle_hide.py +245 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/__init__.py +51 -15
- monkeybot-3.14.0/src/monkeybot/core/mcp/session_visibility.py +155 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/realtime_loop.py +19 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/tool_dispatch.py +58 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/turn_loop.py +30 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subagents/subagent_worker.py +2 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subagents/supervisor.py +10 -4
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/core_tool_executor.py +109 -23
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/routes.py +9 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/app.py +1 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/session_bus.py +4 -1
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_catalog_pairing.py +3 -3
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_context.py +85 -0
- monkeybot-3.14.0/tests/unit/core/mcp/test_session_visibility.py +95 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_supervisor.py +36 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_core_tool_executor.py +121 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/uv.lock +2 -2
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.cursor/hooks/pre-pr.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.cursor/hooks/test-failure-notice.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.cursor/hooks.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.cursor/rules/test-failures.mdc +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.cursor/skills/mb-retro/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.dockerignore +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.github/CODEOWNERS +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.github/workflows/ci.yml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.github/workflows/live-eval-smoke.yml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.github/workflows/prepare-release.yml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.github/workflows/publish-release.yml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.gitignore +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/.pre-commit-config.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/BACKLOG.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/CONTRIBUTING.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/LICENSE +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/README.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/skills/monkeybot/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/skills/monkeybot/references/config-sections.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_file_index.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_local_shell.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_renderer.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_session.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_status_bar.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_theme.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_tool_display.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_tui.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/chat_tui_widgets.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/chat.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/doctor.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/loop.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/mcp_login.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/new.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/refresh.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/run_cmd.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/talk.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/trace.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/commands/validate.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/compat.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/config_resolve.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/exit_commands.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/extras_catalog.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/gateway_health.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/main.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/opensandbox_lifecycle.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/output.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/overrides.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/process_tree.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/providers.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/audio_io.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/client.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/gateway_manager.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/push_to_talk.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/session.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/session_controller.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/talk_ui.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/realtime/wire_encode.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/runtime_python.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/AGENT.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/Dockerfile +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/browser/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/command_allowlist.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/dockerignore +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/env.example +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/goal/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/image-generator/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/image-generator/generate_image.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/loop/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/mcp.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/monkeybot.example.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/opensandbox.docker.toml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/otel-collector.example.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/permissions.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/templates/coding/AGENT.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/templates/coding/command_allowlist.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/templates/coding/monkeybot.overrides.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/scaffold_defaults/templates/coding/permissions.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/session_controller.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/src/monkeybot_cli/terminal_markdown.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_continue.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_e2e.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_errors.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_file_index.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_grounding.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_local_shell.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_renderer_parity.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_session.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_status_bar.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_theme.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_tool_display.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_chat_tui.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_cli.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_config_resolve.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_doctor.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_extras_catalog.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_gateway_health.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_opensandbox_lifecycle.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_realtime_session_controller.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_run_cmd.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_runtime_python.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_scaffold.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_terminal_markdown.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/tests/test_trace_cmd.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/cli/uv.lock +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/Dockerfile +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/demo-model.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/demo.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/docker-compose.sandbox.yml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/opensandbox.docker.toml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docker/sandbox.Dockerfile +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docker-compose.yml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/agent-layout.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/assets/logo.png +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/browser-mcp-perf-baseline.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/browser-mcp-performance-plan.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/browser-mcp.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/cloud-deployment-design.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/deploy-aws-agentcore.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/deploy-pattern-a-container.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/deploy-pattern-b-serverless.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/deploy-pattern-c-agent-platform.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/deploy-pattern-d-realtime.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/features.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/getting-started.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/live-evals.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/mcp.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/migrations/agent-scope-namespacing.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/migrations/history-row-id.sql +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/migrations/memory-outbox.sql +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/migrations/session-branches.sql +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/observability-runbook.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/ollama-local.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/otel-collector.example.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/progressive-loop-tools.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/progressive-mcp-tools.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/skills.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/spill-dynamic-design.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/sse-gateway-ui.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/docs/verifier-agent-design.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/README.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/agentcore/handler.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/agentcore/runtime_app.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/agentengine/handler.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/cloud-functions/main.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/lambda/handler.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/ollama/PrefixStable.Modelfile +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/browser/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/browser/playbooks/.gitkeep +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/diagnostics/README.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/diagnostics/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/diagnostics/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/diagnostics/diagnostics.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/image-generator/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/examples/skills/image-generator/generate_image.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/pyproject.toml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/scripts/agentcore_smoke.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/scripts/dump_tool_surface.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/scripts/perf_bench.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/actions.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/agentcore.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/app.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/assets/NOTICE.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/assets/dom_tree.js +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/assets/pa_driver.js +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/backend.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/chat_context.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/chat_scope.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/dom_indexing.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/in_app_cdp.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/login.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/observe.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/perf.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/playbooks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/playwright_helpers.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/results.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/screenshots.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/server.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tab_ops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tabs.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/batch.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/capture.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/interact.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/navigate.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/playbook.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/read.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/src/browser_mcp/tools/tab_control.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/api.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/article.html +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/cards.html +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/form.html +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/long_list.html +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/spa.html +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/fixtures/tool_surface.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_act_observe.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_driver_persist.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_intent_tools.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_multi_tab.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_observation.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_run_playbook.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/integration/test_wait_for.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_act.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_agentcore.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_chat_isolation.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_chat_scope.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_dom_indexing.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_fill_form.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_in_app_cdp.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_indexed_tools.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_observe.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_observe_after.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_perf.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_playbook_flows.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_playbooks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_playwright_helpers.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_screenshots.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_server_shutdown.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_tabs.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_tool_surface.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/tests/test_wait_tools.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/integrations/browser-mcp/uv.lock +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/pytest.ini +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/git.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/hooks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/host_tools.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/memory.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/policy.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/prompt_context.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/store.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/subagents.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/verifier.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/bundles/workspace.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/gateway.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/realtime.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/record.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/replay.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/config.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/env.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/executor.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/paths.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/drivers/support/tokens.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/build.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/agent.base.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/command_allowlist.default.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/command_allowlist.empty.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/command_allowlist.no_deny_patterns.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/command_allowlist.strict.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/grants.corrupt.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/grants.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/mcp.autoconnect.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/mcp.broken.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/mcp.progressive.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/mcp.two_prefix.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/permissions.ask.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/permissions.default.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/permissions.overlap.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/verifier.block.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/verifier.judge.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/verifier.replan.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/verifier.tracker.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/configs/{workspace}/child.db +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/mcp/fixture_mcp_server.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/scripts/one_turn.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/skills/a/nested/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/skills/diagnostics/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/skills/plain/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/.gitkeep +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/absent_file.ndjson +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/child_error.ndjson +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/echo.ndjson +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/hold.ndjson +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/large_line.ndjson +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/nested_task.ndjson +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/present_file.ndjson +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/roundtrip.ndjson +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/subagent_tapes/system_prompt.ndjson +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_secret.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/.monkeybot/attachments/loop-scenario/att-link +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/.monkeybot/attachments/loop-scenario/att-link.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/.monkeybot/attachments/loop-scenario/att-pdf +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/.monkeybot/attachments/loop-scenario/att-pdf.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i1.png +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i2.png +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i3.png +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i4.png +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i5.png +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/i6.png +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/att_ws/tiny.png +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/.gitignore +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/AGENTS.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/build/calc/ops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/calc/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/calc/ops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/node_modules/left-pad/index.js +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/node_modules/left-pad/package.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/pyproject.toml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo/tests/test_ops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/.gitignore +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/AGENTS.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/build/calc/ops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/calc/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/calc/ops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/node_modules/left-pad/index.js +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/node_modules/left-pad/package.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/pyproject.toml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/calc_repo_green/tests/test_ops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/drift_ws/DONE.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/drift_ws/db/migrations/001_init.sql +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/drift_ws/src/models.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/grants_ws/granted/.env +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/grants_ws/granted/notes.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/grants_ws/workspace/src/app.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/.gitignore +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/AGENTS.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/node_modules/left.js +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/notes.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/pkg/.gitignore +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/pkg/hidden.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/pkg/visible.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/secret.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/src/app.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/hostile_ws/wide.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/overlays/bug_discount/shop/pricing.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/overlays/noisy_tests/shop/taxes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/overlays/noisy_tests/tests/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/overlays/offline_gateway/tests/test_gateway.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/.gitignore +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/AGENTS.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/CHANGELOG.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/README.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/build/shop/shipping.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/pyproject.toml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/cart.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/coupons.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/gateway.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/inventory.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/legacy/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/legacy/pricing_v1.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/legacy/shipping_v1.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/models.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/orders.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/pricing.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/reports.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/shipping.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/taxes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/utils/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/utils/money.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/shop/utils/text.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_cart.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_coupons.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_inventory.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_money.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_orders.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_pricing.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_reports.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_shipping.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/tests/test_taxes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/fixtures/workspaces/shop_repo/vendor/pricekit/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/AGENT_GUIDE.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/README.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-0a-tier1-reorg.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-0b-foundations.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-1-t2-harness-logic.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-2-contracts-and-gateway.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-3-record-replay.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-4-live.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-5-trials.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/phases/phase-6-cutover.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/01-goals-and-principles.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/03-tiers.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/04-file-structure.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.1-doubles.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.10-testing-doc.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.11-live-provider.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.2-scenario-schema.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.3-assertions-and-invariants.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.4-fixtures.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.5-cassettes.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.6-pytest-reporting-trials.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/05.9-failure-ledger.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/00-index.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6A-loop.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6B-ctx.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6C-hook.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6D-file.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6E-shell.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6F-pol.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6G-code.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6H-att.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6I-comp.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6J-sub.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6K-ver.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6L-sched.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6M-skill.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6N-mcp.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6O-web.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6P-mem.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6Q-store.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6R-cfg.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6S-todo.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6T-prov.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6U-gw.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6V-rt.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/06-coverage/6W-ops.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/07-migration-map.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/09-ci.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/10-policies.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/11-known-issues.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/12-decisions.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/reference/appendices.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/status.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plan/tasks.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/plugin.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/assertions.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/events.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/invariants.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/scenario.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/sse_norm.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/schema/steps.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/recorded/t4_run_smoke_sample.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_agent_project.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_assertions.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_bundle_order.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_coding_hard_oracle.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_diff.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_fixtures.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_from_transcript.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_gateway_driver.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_invariants.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_judge.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_live_engine.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_live_ledger.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_live_scenarios.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_preflight.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_report.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_runner_sse.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_scenario_schema.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_scorer.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_steps.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/selftest/test_trials_stats.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/gateway/harness.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/gateway/scenarios/gw/reconnect_last_event_id.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/gateway/scenarios/gw/scripted_turn_golden_sse.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/gateway/scenarios/gw/tool_turn_golden_sse.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/gateway/test_cases.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/attachment_symlink_leaf_rejected.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/freeze_descriptors_in_history.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/load_both_args.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/load_image_preview.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/load_pdf.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/load_per_reply_cap.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/attachments/load_text_rejected.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/compaction_forgets_reads.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/fix_failing_test.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_background_verify_not_counted.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_cap_then_accept.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_custom_verify_commands.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_masked_exit.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_non_executing_wrapper.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_open_todos_reject.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_passes_when_verified.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_question_not_gated.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_rejected_answer_not_persisted.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_rejects_unverified.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/gate_write_after_verify.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/git_context_absent.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/git_context_note.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/git_env_isolation.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/read_before_write.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/subagent_has_ledger_no_gate.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/coding/subagent_ledger_child.yml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/clipboard_cap.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/denied_apps_and_schemes.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/denied_dirs_and_globs.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/move_trash_not_always_scoped.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/open_exec_suffix_denied.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/trash_huge_tree_refused.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/computer/x.sh +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/background_summary_applied.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/background_summary_stale_fallback.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/base64_sanitized.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_at_trigger.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_does_not_persist_repairs.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_fallback.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_keep_tail_ratio.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_pins_verdict_attachment_thinking.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/compact_trailer_from_goal_ledger.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/context_usage_current_not_peak.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/epoch_after_compaction.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/epoch_stable_change.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/epoch_volatile_update.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/memory_wake_up_large.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/project_instructions_spoof_heading.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/slash_skill_turn_scoped.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/stable_prefix_byte_stable.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/summarizer_model_override.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/ctx/tool_result_shaping_under_pressure.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/file_change_absent_on_error.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/file_change_binary.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/file_change_patch.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/file_change_review.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/glob_cap_incomplete.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/glob_skips_noise.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/grep_gitignore_default.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/grep_incomplete_scan.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/grep_invalid_regex.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/grep_pagination.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/list_dir_truncate.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/overwrite_unread_rejected.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/patch_add_existing.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/patch_fail_closed.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/patch_move_dest_exists.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/patch_rollback.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/patch_update_requires_read.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_absolute_needs_grant.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_escape_dotdot.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_escape_symlink.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_huge_single_line.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_offset_past_eof.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/read_paging_no_gap.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/replace_error_codes.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/replace_fuzzy_unicode.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/skills_read_only.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/spill_large_tool_output.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/spill_session_id_sanitized.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/stale_read_rejected.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/tool_glob_grep.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/tool_read.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/tool_replace_apply_patch.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/tool_write.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/virtual_mounts.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/write_new_without_read_ok.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/write_outside_scope.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/file/write_payload_too_large.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/evidence_grep_only_not_accepted.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/evidence_missing_path.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/evidence_thread_isolation.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/evidence_unread_then_read.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/secret_ends_routine_turn.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/secret_in_tool_args.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/secret_redacted_interactive.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/hook/secret_scanner_failure_fails_closed.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/all_parse_error_batch_rejected.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/ask_user_non_interactive.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/ask_user_roundtrip.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/background_check_raises_fails_closed.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/background_nudge_then_release.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/background_nudges_exhausted.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/cancel_after_tool_call_before_execute.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/cancel_mid_stream.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/confirm_always_remembered.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/confirm_approve.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/confirm_deny.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/confirm_timeout.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/doom_disabled.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/doom_exempt_poll.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/doom_identical_read.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/doom_path_reset_on_success.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/doom_path_retry_spelling.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/empty_exhausted.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/empty_then_text.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/grounding_event_passthrough.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/max_turns_cap.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/max_turns_not_on_clean_finish.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/mixed_parse_error_batch_runs_valid.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/parallel_concurrency_cap.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/parallel_results_in_submission_order.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/post_tool_empty_retry.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/promote_follow_up_provenance.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/provider_raises.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/registry_refresh_same_turn.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/repair_missing_tool_result.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/repair_orphan_tool_response.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/resume_thinking_budget_routine.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/steer_mid_turn.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/thinking_block_order.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/thinking_only_is_empty.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/thought_signature_preserved.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/tool_input_delta_passthrough.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/truncated_batch_rejected.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/turn_completion.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/ui_row_between_tool_pair.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/ui_row_splits_a_batch.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/loop/usage_totals.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/autoconnect_failure_is_status.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/catalog_diff_reload.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/disable_removes_tools.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/disabled_server_not_catalogued.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/enable_then_call.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/enable_unknown_server.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/env_interpolation_missing.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/meta_tools_only_when_connected.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/name_prefix_split.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/resources_and_prompts.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/mcp/strict_load_rolls_back.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/ephemeral_palace_shared_outbox_rejected.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/memory_off.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/memory_write_inject.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/mempalace_search_real.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/outbox_failure_does_not_fail_turn.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/outbox_ingest_then_inject.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/outbox_thread_isolation.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/memory/subagent_no_ingest.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/command_grant_from_store.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/default_deny_patterns.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/grant_revocation_clears.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/granted_folder_credential_denied.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/path_grant_read.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/permissions_last_match_wins.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/permissions_missing_file_fail_open.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/start_loop_always_confirms.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/symlink_in_grant_does_not_widen.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/unknown_binary_confirm_approve.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/policy/unknown_binary_confirm_deny.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/create_goal_requires_slash_goal.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/create_goal_with_slash_goal.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/enable_loops_progressive.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/loop_goal_isolation.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/loop_lifecycle_real_store.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/one_open_goal_per_session.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/start_loop_requires_stop_guard.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/scheduler/tool_loops.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/allowlist_deny.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/argv_forms.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/bg_job_cap.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/bg_kill_command.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/bg_killed_at_turn_end.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/bg_start_await_cursor.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/cwd_escape.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/home_escape.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/large_stdout_spill_keeps_exit.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/mempalace_refused_memory_off.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/mempalace_search_only.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/nonzero_exit.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/run_command.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/shell_wrapper_bypass.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/timeout_partial_output.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/shell/unscreenable_script_fails_closed.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/list_then_read_skill.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/skill_symlink_escape.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/skill_write_denied.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/skills_in_prompt.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/skills_path_hot_reload.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/skills/slash_unknown_skill.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/store/compaction_reset_row_ids.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/store/transcript_convertible.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/store/usage_recorded_on_turn_complete.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/child_errors_record_failed.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/child_memory_read_only.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/expect_files_absent.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/expect_files_escape.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/expect_files_present.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/large_ndjson_line.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/ledger_context_forwarded.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/nested_task_refused.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/parallel_task_cap.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/parent_cancel.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/persona_applied.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/queue_pending_not_success.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/subagent_roundtrip.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/subagent_timeout.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/system_prompt_redacted_on_pipe.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/subagents/unknown_subagent_type.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/caps.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/ids_stable.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/mirror_hydrate.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/reminder_once.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/single_in_progress.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/todo_list.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/todo/todo_list_steps.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/block_denies_mutating_tools.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/constraint_touch_negative.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/constraint_touch_positive.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/done_unmet_positive.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/error_streak_negative.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/error_streak_positive.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/free_text_constraint_never_matches.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/judge_malformed_fails_open.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/judge_rate_limits.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/judge_replay_valid.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/judge_spend_ratio.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/mailbox_stale_checkpoint_dropped.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/min_turn_before_verdict.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/no_progress_budget_burn_not_mailboxed.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/preempt_negative.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/repeat_correction_positive.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/replan_one_turn.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/rewrite_churn_positive.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/rewrite_effects_branch_copy.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/severity_cap_nudge.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/sticky_nudge.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/supersession_negative.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/verdict_in_history_stripped_for_provider.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/verifier_off_no_effect.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/write_without_read_negative.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/verifier/write_without_read_positive.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/backend_none_not_advertised.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/browser_mcp.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/browser_stop_on_disconnect.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/browser_stop_server.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/empty_query.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/max_results.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/loop/scenarios/web/web_search.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_change_parent_session.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_drift_confusion_matrix.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_e2e_simple_reply.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_grep_parity.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_hooks_lifecycle.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_jail.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_memory_commit.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_observability_acceptance.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_observability_integration.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_ops_cli.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_ops_observability.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_prompt_caching_integration.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_scheduler_engine.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/python/test_sse_stream_pressure.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_blocks_history_rewrite.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_guardrail_budget.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_interrupt.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_slot_limit.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_text_turn.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_tool_confirmation.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t2/realtime/scenarios/ws_tool_turn.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/mcp/tools_list_call.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/memory/wake_up_snapshot.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/sse/basic_turn.sse +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/sse/cassette_turn.sse +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/sse/tool_turn.sse +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/subagents/child_tape.ndjson +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_golden_sse.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_replay_mcp.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_replay_subagent_tape.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_replay_trajectories.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_replay_wake_up.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/test_replay_wire.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/tools/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/tools/cassette.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/tools/check_staleness.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/tools/from_transcript.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/tools/record_wire.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/ctx/replay_live_compaction.cassette.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/ctx/replay_live_compaction.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/loop/replay_live_doom_loop.cassette.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/loop/replay_live_doom_loop.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/loop/replay_live_truncation.cassette.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/loop/replay_live_truncation.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/shell/replay_live_pytest_run.cassette.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/shell/replay_live_pytest_run.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/verifier/replay_drift_tape.cassette.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/trajectories/verifier/replay_drift_tape.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/wire/ollama_cloud/glm_tool_turn.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t3/wire/ollama_cloud/thinking_only_completion.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/__main__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/.gitignore +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.blob_seq_ids_migrated +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.collection_type_fixed +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.embedder_identity +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.embedding-migrate.lock +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.palace_id +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/.palace_write.lock +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/2d1891d4-34d0-43bd-8eea-2fb73026046b/data_level0.bin +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/2d1891d4-34d0-43bd-8eea-2fb73026046b/header.bin +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/2d1891d4-34d0-43bd-8eea-2fb73026046b/length.bin +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/2d1891d4-34d0-43bd-8eea-2fb73026046b/link_lists.bin +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/identity.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/memory/mempalace_embedder.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/.t4-gateway-993b836fb2a9.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/AGENT.coding.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/AGENT.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/AGENT.researcher.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/command_allowlist.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/grants.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/mcp.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/mcp.progressive.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/monkeybot.coding.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/monkeybot.verifier-judge.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/monkeybot.verifier-tracker.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/monkeybot.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/monkeybot_config/permissions.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/pyproject.toml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/skills/browser/SKILL.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/agent/uv.lock +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/assertions.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/baselines/smoke.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/baselines/smoke.md +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/diff.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/eval_config.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/gateway.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/models.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/persistence.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/preflight.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/python/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/python/test_docker_image_health.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/python/test_provider_live_matrix.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/report.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/runner.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenario_loader.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/attachments/describe_image_live.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding/add_feature_with_tests.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding/fix_failing_test.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding/navigate_repo.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/add_bulk_discount.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/fix_discount_rounding.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/honest_unfixable_failure.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/multi_feature_long.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/navigate_intl_rate.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/noisy_test_failure.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/coding_hard/rename_calc_tax.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/config/reload_memory_off_live.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/context/post_compaction_continuity.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/context/summarization_trigger.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/drift/declares_done.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/drift/path_constraint.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/drift/preempt.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/drift/repeat_correction.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/drift/supersession.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/file/core_read.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/file/core_read_error.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/file/core_write.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/file/grep_absence_honesty.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/gateway/live_resume.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/hooks/evidence_citation_live.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/mcp/enable_then_echo_live.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/mcp/get_prompt.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/mcp/list_resources.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/mcp/tool_invoke.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/memory/recall_cross_session.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/memory/recall_single_session.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/memory/search_past_session.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/multi_turn/task_tracking.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/scheduler/http_one_tick_live.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/scheduler/model_starts_loop.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/shell/core_run_command.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/shell/core_run_command_sandbox.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/skills/skill_invocation.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/subagents/dispatch_complete.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/scenarios/subagents/persona_dispatch.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/score.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/coding.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/coding_hard.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/context.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/drift.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/mcp.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/memory.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/nightly.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/scheduler.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/smoke.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t4/suites/subagents.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/__main__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/baselines/subagents__ollama-cloud__glm-5.3-flash.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/compare.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/parallel.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/python/test_cancel_storm.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/python/test_reconnect_storm.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/runs/coding.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/runs/mcp.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/runs/smoke.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/runs/subagents.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/stats.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/suites/capability.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/suites/drift.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/suites/reliability.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/regression/t5/trials.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/scripts/ci-local.sh +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/scripts/create_schema.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/scripts/precommit-pytest.sh +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/scripts/release.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/scripts/smoke_global_cli.sh +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/__main__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/audio_io.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/gateway_manager.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/main.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/push_to_talk.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/cli/realtime_client.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/computer/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/computer/approvals.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/computer/permissions.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/computer/safety.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/computer/tools.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/catalog.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/config.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/freeze.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/image_preview.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/resolve.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/store.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/text.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/attachments/tools.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/bootstrap.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/coding/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/coding/git_context_hook.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/coding/read_ledger_hook.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/coding/verification_gate.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/realtime_config.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/runtime_env.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/settings.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/snapshot.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/validation.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/config/yaml_loader.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/campaign_context.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/common.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/epoch.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/project_context.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/secret_egress.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/slash_skills.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/tool_output_policy.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/tool_result_ingress.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/context/tool_shapers.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/goals/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/goals/service.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/hooks/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/hooks/evidence_guard.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/layout.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/llm/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/llm/provider.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/llm/realtime_provider.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/llm/usage.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/lockfile_names.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/logging_utils.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/mcp/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/mcp/mcp_client.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/mcp/oauth_flow.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/mcp/ports_mcp.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/config.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/hook.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/ids.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/ingest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/migrate_embedding.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/migrate_layout.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/observability.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/outbox.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/palace.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/subsystem.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/uri.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/memory/writer.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/messages/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/messages/convert_provider.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/messages/tool_integrity.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/messages/transform_context.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/path_safety.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/backends.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/branches.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/db.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/durable_runs.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/errors.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/firestore.indexes.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/firestore.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/firestore_scheduled_loops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/goal_ledger.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/history.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/postgres.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/row_ids.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/runs.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/scheduled_loops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/session_turn_locks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/sqlite.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/sqlite_backend.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/thread_summary.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/transcript.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/transcript_reader.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/usage.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/persistence/usage_buckets.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/prompts/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/prompts/harness_prompt.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/prompts/headings.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/prompts/prompt.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/background_summary.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/chat_title.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/context_budget.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/doom_loop.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/events.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/history_compaction.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/history_rewrite.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/input_admission.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/loop.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/loop_hooks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/loop_messages.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/loop_ports.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/loop_usage.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/provider_stream_mapper.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/tool_batch.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/runtime/utterance_buffer.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subagents/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subagents/progress_publish.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subagents/subagent_proto.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/subprocess_groups.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/testing/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/testing/mocks_provider.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/testing/mocks_realtime_provider.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/ask_user.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/background_jobs.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/change_recorder.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/command_executor.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/fs_isolation.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/gitignore.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/grant_store.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/inspector.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/loop_inspector.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/patch.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/path_grant_inspector.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/permission.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/read_ledger.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/sandbox_executor.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/spill_inventory.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/terminal.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/text_normalize.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/tool_hint.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/tool_kind.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/types.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/tools/workspace_service.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/types/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/types/content_blocks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/types/interfaces.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/types/types_tools.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/actuator.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/binding.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/classify.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/inspector.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/intervention.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/judge.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/ledger.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/mailbox.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/match.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/port.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/rewrite_effects.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/severity.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/verifier/tracker.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/factory.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/gcs.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/local.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/protocol.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace/s3.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/core/workspace_layout.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/bootstrap.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/main.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/pending_response_bus.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/app.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/deps.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/errors.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/guardrails.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/manager.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/metrics.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/session.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime/wire.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/realtime_main.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/goal_routes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/history_routes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/loop_port.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/models.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/reload.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/reply_body.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/request_storage.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/routes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/scheduler_routes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/scheduler_wiring.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/sse.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/gateway/sse/workspace_layout.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/_state.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/instrumentation.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/propagation.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/spans.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/observability/sqlite_exporter.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/_bedrock_converse.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/_openai_compat.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/_sdk_client.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/_stream_marks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/_utils.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/bedrock.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/claude.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/fireworks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/gemini.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/gemini_live.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/huggingface.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/model_capabilities.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/nvidia.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/ollama.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/openai.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/openrouter.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/pricing.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/rejected_sampling.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/request_budget.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/sampling.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/providers/vertex_claude.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scaffold/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/__main__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/engine.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/http_invoker.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/interval.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/tick_result.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/scheduler/worker.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/todo_list/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/todo_list/hook.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/todo_list/store.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/todo_list/tool.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/backends/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/backends/duckduckgo.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/backends/firecrawl.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/backends/tavily.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/protocol.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/src/monkeybot/web_search/tool.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/backends.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/clock.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/context.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/conversations.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/data/attachments/tiny.jpg +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/data/attachments/tiny.png +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/data/attachments/with-text.pdf +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/data/attachments/without-text.pdf +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/executors.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/failure_ledger.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/failures/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/failures/__main__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/failures/catalog.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/failures/store.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/gateway.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/gateway_ports.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/history.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/hooks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/inspectors.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/mcp.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/memory.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/palace.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/pending_bus.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/provider.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/py.typed +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/sandbox.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/scrub.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/sse.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/subagent_worker.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/verifier.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/testkit/web_search.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.default.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.emission_terse.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.mcp_catalog.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.memory_off.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.sandbox_on.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/harness_prompt.task_terse.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/prompts/volatile_tail_parts.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/routes.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/span_names.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/sse/schema.json +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/goldens/tool_error_codes.txt +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/tables/config_precedence.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/tables/policy_decisions.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/tables/provider_error_mapping.yaml +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_config_matrix.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_harness_prompt_golden.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_migrations_replay.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_policy_decision_table.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_provider_conformance.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_realtime_divergence.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_route_table.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_scaffold_reexports.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_span_names.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_sse_schema.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_storage_parity.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/contracts/test_tool_error_catalog.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/cli/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/cli/test_gateway_manager.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/cli/test_main.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/cli/test_push_to_talk.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/cli/test_realtime_client.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_approvals.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_computer_tools.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_package_init.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_path_policy.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_permissions.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_platform_gate.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_subagent_exclusion.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/computer/test_wiring.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/attachments/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/attachments/test_attachment_freeze.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/attachments/test_attachment_store.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/attachments/test_image_preview.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/coding/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/coding/test_verification_gate.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/config/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/config/test_config_extensions.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/config/test_env_map_grep_gates.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/config/test_runtime_config_snapshot.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/config/test_runtime_env.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_context_epoch.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_project_context.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_secret_egress.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_skill_discovery_rules.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_slash_skills.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_tool_result_ingress.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/context/test_tool_shapers.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/fixtures/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/fixtures/bitbucket_dc_style_pr.diff +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/goals/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/goals/test_goal_persistence.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/goals/test_goals.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/hooks/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/hooks/test_evidence_guard.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/hooks/test_hooks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/hooks/test_settlement.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/llm/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/llm/test_pricing.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/llm/test_provider_contract.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/mcp/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/mcp/test_mcp_client.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/mcp/test_mcp_oauth.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/mcp/test_mcp_oauth_regressions.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/test_memory_layout_migrate.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/test_memory_scoping.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/test_mempalace.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/test_migrate_embedding.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/memory/test_review_fixes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/messages/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/messages/test_gemini_history_replay.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/messages/test_message_pipeline.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/messages/test_tool_integrity.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_branch_store_backends.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_durable_runs.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_firestore_history.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_firestore_scheduled_loops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_firestore_usage.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_goal_ledger.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_history.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_history_branches.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_history_row_ids.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_runs.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_scheduled_loops.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_session_branches_migration.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_session_turn_locks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_storage_backends.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_thread_summary_wire.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_transcript.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_transcript_reader.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_usage.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/persistence/test_usage_migration.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/prompts/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/prompts/test_harness_prompt.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/prompts/test_prompt.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_background_summary.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_chat_title.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_context_budget.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_doom_loop.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_durable_events.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_empty_completion.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_events.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_history_compaction_split.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_input_admission.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_loop.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_loop_hooks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_loop_observability.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_loop_transcript.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_provider_stream_mapper.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_realtime_loop.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_truncated_tool_batch.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_turn_session_id.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/runtime/test_utterance_buffer.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_child_tool_list.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_progress_publish.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_subagent_proto.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_subagent_trace_propagation.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_subagent_transcript.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/subagents/test_subagent_worker_paths.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_agent_layout.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_bootstrap.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_layout.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_logging_utils.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_path_safety.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/test_workspace_layout.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/testing/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/testing/test_mocks_realtime_provider.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_ask_user.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_background_jobs.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_change_recorder.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_fs_isolation.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_gitignore.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_grant_store.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_inspector.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_patch.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_path_grant_inspector.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_permission.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_replace_fuzzy.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_run_command_parse.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_sandbox_executor.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_spill_dynamic.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_spill_inventory.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_terminal.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_workspace_extra_read_roots.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_workspace_symlinks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/tools/test_workspace_write_scope.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/types/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/types/test_content_blocks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/types/test_tool_def_schema.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_progress_tracker.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_binding.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_inspector.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_judge.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_mailbox_lifecycle.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_port.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_rewrite_effects.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_sticky_nudge.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/verifier/test_verifier_tracker.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/workspace/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/workspace/test_factory.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/workspace/test_local_storage.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/core/workspace/test_protocol_contract.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_app.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_deps.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_guardrails.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_manager.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_metrics.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_routes_client_text.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_session.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/realtime/test_wire.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_attachments.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_chat_title_route.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_config_reload.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_create_session_model.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_gateway_runtime.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_history_routes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_routes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_scheduler_routes.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_session_bus.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_start_turn_setup_failure.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/sse/test_transcript_wiring.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_otel_fastapi.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_otel_lifespan.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_pending_response_endpoints.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_realtime_main.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_resolve_provider.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_sdk_client_shutdown.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_sse_events.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/gateway/test_subagent_event_publisher.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_init.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_instrumentation.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_loop_hook_spans.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_propagation.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_span_contract.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_spans.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_sqlite_exporter.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_truncate.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/observability/test_turn_complete_trace.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/packaging/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/packaging/test_cold_start.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/packaging/test_packaging_config.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/packaging/test_release_script.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/conftest.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_anthropic_cache.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_anthropic_history.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_bedrock_converse.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_bedrock_estimate.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_connection_warm.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_fireworks.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_gemini_history.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_gemini_live.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_gemini_usage.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_huggingface.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_model_capabilities.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_nvidia.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_ollama.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_openai_byte_budget.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_openai_compat_usage.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_openai_history.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_pricing.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_request_budget.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_safe_parse_tool_args.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_sampling.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_sdk_client_reuse.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_sonnet5_sampling.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_source_grep_gates.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_tiktoken_encoding.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/providers/test_vertex_claude_history.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/scheduler/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/scheduler/test_engine.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/scheduler/test_interval.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/skills/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/skills/test_generate_image_script.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_clock.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_failure_ledger.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_failures_cli.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_fake_history.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_scripted_provider.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_scrub.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/testkit/test_sse_reader.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/todo_list/__init__.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/todo_list/test_todo_list.py +0 -0
- {monkeybot-3.13.0 → monkeybot-3.14.0}/tests/unit/web_search/__init__.py +0 -0
- {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
|
|
@@ -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 |
|
|
@@ -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:
|
|
@@ -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
|
-
|
|
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,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
|