meshcode 2.11.100__tar.gz → 2.11.101__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.
- {meshcode-2.11.100 → meshcode-2.11.101}/PKG-INFO +1 -1
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/__init__.py +1 -1
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/hostd.py +12 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/PKG-INFO +1 -1
- {meshcode-2.11.100 → meshcode-2.11.101}/pyproject.toml +1 -1
- {meshcode-2.11.100 → meshcode-2.11.101}/README.md +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/__main__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/_session_handoff_template 2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/_session_handoff_template.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/_stop_hook_template.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/ascii_art.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/atomic_push.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/claude_update 2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/claude_update.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/cli.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/comms_v4.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/compat.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/daemon.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/date_parse.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/doctor.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/error_hints.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/exceptions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/hostd 2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/invites.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/launcher.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/launcher_install.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/__init__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/__main__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/backend.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/realtime.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/server.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/sleep_signals.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/test_backend.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/test_boot_timing.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/test_install_guard.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/test_prefs_claude_version.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/test_realtime.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/meshcode_mcp/test_server_wrapper.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/preferences.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/protocol_handler.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/protocol_v2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/quickstart.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/rpc_allowlist.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/run_agent.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/scripts/check_secrets.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/scripts/race_rate_harness.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/secrets.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/self_update.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/setup_clients.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/supervisor.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/up 2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/up.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode/upload.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/comms_v4.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/__init__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/ascii_art.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/cli.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/comms_v4.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/compat.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/error_hints.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/exceptions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/invites.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/launcher.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/launcher_install.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/__init__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/__main__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/backend.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/realtime.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/server.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/test_backend.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/test_realtime.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/test_server_wrapper.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/preferences.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/protocol_v2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/quickstart.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/run_agent.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/secrets.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/self_update.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/setup_clients.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/supervisor.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/upload.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/scripts/sentinel.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_core.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_cross_agent_messaging.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_esc_deaf_state.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_exceptions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_mark_read_batch.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_migration_integrity.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_realtime_event_freshness.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_rls_cross_tenant.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_rpc_migrations.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_security_regressions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_sentinel.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_status_enum_coverage.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/__init__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/ascii_art.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/cli.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/comms_v4.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/compat.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/error_hints.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/exceptions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/invites.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/launcher.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/launcher_install.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/__init__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/__main__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/backend.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/realtime.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/server.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/test_backend.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/test_realtime.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/test_server_wrapper.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/preferences.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/protocol_v2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/quickstart.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/run_agent.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/secrets.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/self_update.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/setup_clients.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/supervisor.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/upload.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/comms_v4.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/__init__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/ascii_art.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/cli.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/comms_v4.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/compat.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/error_hints.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/exceptions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/invites.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/launcher.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/launcher_install.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/meshcode_mcp/__init__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/meshcode_mcp/__main__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/meshcode_mcp/backend.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/meshcode_mcp/realtime.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/meshcode_mcp/server.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/meshcode_mcp/test_backend.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/meshcode_mcp/test_realtime.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/meshcode_mcp/test_server_wrapper.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/preferences.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/protocol_v2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/quickstart.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/run_agent.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/secrets.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/self_update.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/setup_clients.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/supervisor.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/upload.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/scripts/sentinel.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_core.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_cross_agent_messaging.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_esc_deaf_state.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_exceptions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_mark_read_batch.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_migration_integrity.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_realtime_event_freshness.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_rls_cross_tenant.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_rpc_migrations.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_security_regressions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_sentinel.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_status_enum_coverage.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/comms_v4.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/__init__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/ascii_art.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/cli.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/comms_v4.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/compat.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/error_hints.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/exceptions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/invites.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/launcher.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/launcher_install.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/meshcode_mcp/__init__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/meshcode_mcp/__main__.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/meshcode_mcp/backend.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/meshcode_mcp/realtime.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/meshcode_mcp/server.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/meshcode_mcp/test_backend.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/meshcode_mcp/test_realtime.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/meshcode_mcp/test_server_wrapper.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/preferences.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/protocol_v2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/quickstart.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/run_agent.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/secrets.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/self_update.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/setup_clients.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/supervisor.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/upload.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/scripts/sentinel.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_core.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_cross_agent_messaging.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_esc_deaf_state.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_exceptions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_mark_read_batch.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_migration_integrity.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_realtime_event_freshness.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_rls_cross_tenant.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_rpc_migrations.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_security_regressions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_sentinel.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_status_enum_coverage.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/PKG-INFO 2 +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/SOURCES 2.txt +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/SOURCES.txt +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/dependency_links 2.txt +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/dependency_links.txt +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/entry_points 2.txt +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/entry_points.txt +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/requires 2.txt +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/requires.txt +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/top_level 2.txt +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/meshcode.egg-info/top_level.txt +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/setup.cfg +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_auto_update_hardening.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_autonomous_closegap_1.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_autonomous_closegap_2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_autonomous_closegap_3.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_autonomous_prompt_inject 2.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_autonomous_prompt_inject.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_boot_bug_regression.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_color_truecolor.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_core.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_cross_agent_messaging.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_date_parse.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_doctor.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_epistemic_v1_python_sdk.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_epistemic_v1_stop_conditions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_esc_deaf_state.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_exceptions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_file_upload.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_init_device_code.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_install_guard.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_lease_sigterm_release.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_mark_read_batch.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_marketplace_ratings.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_migration_integrity.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_realtime_event_freshness.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_rls_cross_tenant.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_rpc_grants.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_rpc_migrations.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_run_agent_dry_run.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_run_agent_no_server_import.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_security_regressions.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_self_update_user_site.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_sentinel.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_setup_path.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_sleep_signals.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_status_enum_coverage.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_stay_on_loop_hook.py +0 -0
- {meshcode-2.11.100 → meshcode-2.11.101}/tests/test_wait_open_tasks_contradiction.py +0 -0
|
@@ -458,6 +458,10 @@ def _spawn_agent(project: str, agent: str, headless: bool = False) -> bool:
|
|
|
458
458
|
return False
|
|
459
459
|
|
|
460
460
|
|
|
461
|
+
# 38523a98: max terminals opened per host per sweep (anti boot-storm; excess defers to next sweep).
|
|
462
|
+
_MAX_SPAWNS_PER_SWEEP = 3
|
|
463
|
+
|
|
464
|
+
|
|
461
465
|
def _do_respawns(api_key: str, host_id: str) -> int:
|
|
462
466
|
"""One respawn sweep. Returns number relaunched."""
|
|
463
467
|
res = _rpc("mc_agents_needing_respawn",
|
|
@@ -466,6 +470,14 @@ def _do_respawns(api_key: str, host_id: str) -> int:
|
|
|
466
470
|
return 0
|
|
467
471
|
n = 0
|
|
468
472
|
for c in res.get("candidates", []):
|
|
473
|
+
# 38523a98 GLOBAL spawn cap: never open more than _MAX_SPAWNS_PER_SWEEP terminals in one ~10s
|
|
474
|
+
# sweep (canonical model: 2-3, not 7-at-once). Excess agents respawn on the NEXT sweep — smooths
|
|
475
|
+
# the boot-storm Samuel hit (a fresh host with the whole fleet stale spawned every agent at once).
|
|
476
|
+
# Per-target rate-limit + circuit-breaker still apply below; this is the cross-agent backstop.
|
|
477
|
+
if n >= _MAX_SPAWNS_PER_SWEEP:
|
|
478
|
+
_log(f"GLOBAL spawn cap {_MAX_SPAWNS_PER_SWEEP}/sweep hit — deferring remaining respawn(s) "
|
|
479
|
+
f"to next sweep (anti boot-storm)")
|
|
480
|
+
break
|
|
469
481
|
proj, agent = c.get("project_name"), c.get("agent")
|
|
470
482
|
if not proj or not agent:
|
|
471
483
|
continue
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/__init__.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/__main__.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/backend.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/realtime.py
RENAMED
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/test_backend.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/meshcode/meshcode_mcp/test_realtime.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_cross_agent_messaging.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_migration_integrity.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_realtime_event_freshness.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_security_regressions.py
RENAMED
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-backend-wt/tests/test_status_enum_coverage.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/launcher_install.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/__init__.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/__main__.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/backend.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/realtime.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/meshcode_mcp/server.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/build/lib/meshcode/setup_clients.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/meshcode_mcp/test_backend.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/meshcode/meshcode_mcp/test_realtime.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_cross_agent_messaging.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-noun-wt/tests/test_realtime_event_freshness.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/meshcode_mcp/test_backend.py
RENAMED
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/meshcode/meshcode_mcp/test_realtime.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_cross_agent_messaging.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_realtime_event_freshness.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_security_regressions.py
RENAMED
|
File without changes
|
|
File without changes
|
{meshcode-2.11.100 → meshcode-2.11.101}/meshcode-tasks-wt/tests/test_status_enum_coverage.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|