bbsbot 2026-02-07
Swarm manager, intervention system, and 90-bot stress testing infrastructure added with login reliability improvements
289 files · 14,235+ · 1,539-

Swarm manager

4 files changed
  • cli_swarm.py Swarm CLI with commands for spawn, status, kill, and batch operations
  • swarm_routes.py API routes for swarm management
  • mcp_swarm_tools.py MCP tools for remote swarm control
  • defaults.py Defaults module for centralized configuration
  • Implemented central swarm manager (manager.py) with worker spawning, lifecycle management, and state persistence instantiate behavioral
    1 file
    • cli_swarm.py
  • Added swarm CLI (cli_swarm.py) with commands for spawn, status, kill, and batch operations instantiate behavioral
    1 file
    • cli_swarm.py
  • Created swarm shell for interactive swarm management instantiate internal
    1 file
    • cli_swarm.py
  • Added 82+ bot configs (bot_01 through bot_82) for stress testing qualify internal
    1 file
    • defaults.py
  • Added API routes for swarm management (api/swarm_routes.py) interface behavioral
    1 file
    • swarm_routes.py
  • Created swarm MCP tools for remote swarm control interface internal
    1 file
    • mcp_swarm_tools.py

Intervention system

7 files changed
  • detector.py Intervention detector with anomaly detection patterns
  • anomaly_detectors.py Stagnation, loop, and error pattern detectors
  • opportunity_detectors.py Proactive opportunity detection for strategy adjustments
  • advisor.py Intervention advisor for suggesting corrective actions
  • trigger.py Automatic recovery trigger system
  • types.py Intervention types with severity levels
  • mcp_tools_intervention.py MCP tools for intervention system control
  • Built intervention detector with anomaly detection (stagnation, loop, error patterns) instantiate internal
    2 files
    • detector.py
    • anomaly_detectors.py
  • Added opportunity detectors for proactive strategy adjustments instantiate internal
    1 file
    • opportunity_detectors.py
  • Implemented intervention advisor for suggesting corrective actions instantiate internal
    1 file
    • advisor.py
  • Created intervention trigger system for automatic recovery instantiate internal
    1 file
    • trigger.py
  • Added intervention types module with severity levels instantiate internal
    1 file
    • types.py
  • Created MCP tools for intervention system control interface internal
    1 file
    • mcp_tools_intervention.py
  • Added comprehensive documentation (INTERVENTION_SYSTEM.md, TESTING_GUIDE.md, SWARM_ARCHITECTURE.md) specify internal
    1 file
    • mcp_tools_intervention.py

Login reliability

3 files changed
  • login.py Critical login fixes: credit tracking, prompt detection fallbacks
  • connection.py Connection-level login improvements
  • io.py Keepalive and semantic data preservation through login phases
  • Fixed critical credit tracking bug - use semantic data when D command fails remediate behavioral
    1 file
    • io.py
  • Added content-based prompt detection fallbacks for login harden behavioral
    1 file
    • login.py
  • Fixed login prompt detection with content-based fallback remediate behavioral
    1 file
    • login.py
  • Preserve kv_data through all login phases harden internal
    1 file
    • login.py
  • Added immediate escape from home planet for opportunistic strategy instantiate internal
    1 file
    • opportunistic.py
  • Use semantic fallback when credits=0 (not just None) harden internal
    1 file
    • connection.py

Stress testing infrastructure

4 files changed
  • generate_test_matrix.py Test matrix generator script for 108 config combinations
  • launch_stress_test.py Stress test launcher
  • launch_stress_test_waves.py Wave-based stress test launcher
  • monitor_completion.py Stress test completion monitor
  • Generated 108 test matrix configs varying game, strategy, turns, and intervention parameters qualify internal
    1 file
    • generate_test_matrix.py
  • Added launch_stress_test.py and wave-based stress test launcher qualify internal
    2 files
    • launch_stress_test.py
    • launch_stress_test_waves.py
  • Created monitor scripts (monitor_completion.py, monitor_stress_test.sh, quick_status.sh) qualify internal
    1 file
    • monitor_completion.py
  • Generated test matrix generator script qualify internal
    1 file
    • generate_test_matrix.py

Login improvements

2 files changed
  • config.py Config-based username and character_password support
  • login.py Login sequence updated for first-login new-character flow
  • Added config-based username and character_password support instantiate internal
    1 file
    • config.py
  • Updated login sequence to attempt ’new’ on first login prompt instantiate behavioral
    1 file
    • login.py
  • Improved login timing with configurable spawn intervals harden internal
    1 file
    • login.py
  • Increased loop detection threshold and menu retry tolerance for multi-bot harden internal
    1 file
    • login.py

Web dashboard and TUI

2 files changed
  • log_routes.py Log service for centralized log management
  • __init__.py Dashboard and API initialization

Code quality

3 files changed
  • mcp_tools.py mcp_tools.py split to meet 500 LOC limit
  • detector.py Intervention detector split to meet 500 LOC limit
  • types.py Intervention types extracted into separate module
  • Split mcp_tools.py to meet 500 LOC limit decouple internal
    1 file
    • mcp_tools.py
  • Refactored intervention detector to meet 500 LOC limit decouple internal
    1 file
    • detector.py
  • Extracted intervention types into separate module decouple internal
    1 file
    • types.py

Infrastructure

2 files changed
  • defaults.py Defaults module for centralized configuration
  • base.py Updated addon base with test configs
  • Merged PR #1 (002-game-mcp-helpers) and PR #2 (goal-viz-summary-watch-mcp) interface internal
    1 file
    • base.py
  • Added test configs for AI intervention and opportunistic stuck recovery qualify internal
    1 file
    • base.py
  • Added defaults module for centralized configuration baseline internal
    1 file
    • defaults.py