- Archive: 85 agent .txt files → docs/archive/agents/legacy_txt/ - Scripts: Move 110 shell scripts → scripts/ (keep deploy.sh in root) - Models: Move 18 .safetensors → ml/models/checkpoints/training_artifacts/ - Delete: 34 directories (~33GB freed) - target/, coverage_*, test artifacts - Build: Clean 14 build artifacts (.rlib, .o, .pid, binaries) - Tests: Move 14 .rs files → tests/standalone/ - SQL: Move 5 files → sql/ (keep init-db*.sql for Docker) - Wave 153: Archive to docs/archive/historical/wave153/ - Docs: Archive 9 markdown files to wave_d/reports/ and historical/ Total impact: ~34GB freed (both waves), root directory cleaned from 583 to ~40 essential files Directory count reduced from 65 to 31 (52% reduction) All historical data preserved in organized archive structure
136 lines
4.2 KiB
Bash
Executable File
136 lines
4.2 KiB
Bash
Executable File
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
echo "======================================"
|
|
echo "Circuit Breaker Validation Test Suite"
|
|
echo "======================================"
|
|
echo ""
|
|
|
|
# Colors for output
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m' # No Color
|
|
|
|
# Test counters
|
|
TOTAL_TESTS=0
|
|
PASSED_TESTS=0
|
|
FAILED_TESTS=0
|
|
|
|
test_result() {
|
|
TOTAL_TESTS=$((TOTAL_TESTS + 1))
|
|
if [ $1 -eq 0 ]; then
|
|
echo -e "${GREEN}✓ PASS${NC}: $2"
|
|
PASSED_TESTS=$((PASSED_TESTS + 1))
|
|
else
|
|
echo -e "${RED}✗ FAIL${NC}: $2"
|
|
FAILED_TESTS=$((FAILED_TESTS + 1))
|
|
fi
|
|
}
|
|
|
|
echo "Phase 1: Inventory Circuit Breaker Implementations"
|
|
echo "---------------------------------------------------"
|
|
|
|
# Search for circuit breaker implementations
|
|
echo "Searching for circuit breaker code..."
|
|
CB_RISK=$(find risk/src -name "circuit_breaker.rs" 2>/dev/null | wc -l)
|
|
CB_TRADING=$(find trading_engine/src/types -name "circuit_breaker.rs" 2>/dev/null | wc -l)
|
|
|
|
test_result $([ $CB_RISK -gt 0 ] && echo 0 || echo 1) "Risk circuit breaker implementation exists"
|
|
test_result $([ $CB_TRADING -gt 0 ] && echo 0 || echo 1) "Trading engine circuit breaker implementation exists"
|
|
|
|
echo ""
|
|
echo "Phase 2: Check Configuration"
|
|
echo "----------------------------"
|
|
|
|
# Check for circuit breaker configuration
|
|
echo "Checking circuit breaker configuration..."
|
|
|
|
# Check risk circuit breaker config
|
|
if grep -r "CircuitBreakerConfig" risk/src/ >/dev/null 2>&1; then
|
|
test_result 0 "Circuit breaker configuration structure exists"
|
|
else
|
|
test_result 1 "Circuit breaker configuration structure exists"
|
|
fi
|
|
|
|
# Check for failure thresholds
|
|
if grep -r "failure_threshold\|daily_loss_percentage" risk/src/ >/dev/null 2>&1; then
|
|
test_result 0 "Failure threshold configuration"
|
|
else
|
|
test_result 1 "Failure threshold configuration"
|
|
fi
|
|
|
|
# Check for state management
|
|
if grep -r "CircuitState\|CircuitBreakerState" risk/src/ trading_engine/src/ >/dev/null 2>&1; then
|
|
test_result 0 "Circuit breaker state management"
|
|
else
|
|
test_result 1 "Circuit breaker state management"
|
|
fi
|
|
|
|
echo ""
|
|
echo "Phase 3: Check State Transitions"
|
|
echo "---------------------------------"
|
|
|
|
# Check for state transition logic
|
|
if grep -r "Closed\|Open\|HalfOpen" trading_engine/src/types/circuit_breaker.rs risk/src/circuit_breaker.rs 2>/dev/null; then
|
|
test_result 0 "State transition logic (Closed/Open/HalfOpen)"
|
|
else
|
|
test_result 1 "State transition logic (Closed/Open/HalfOpen)"
|
|
fi
|
|
|
|
# Check for transition methods
|
|
if grep -r "transition_to_open\|transition_to_closed\|transition_to_half_open" trading_engine/src/types/circuit_breaker.rs 2>/dev/null; then
|
|
test_result 0 "State transition methods"
|
|
else
|
|
test_result 1 "State transition methods"
|
|
fi
|
|
|
|
echo ""
|
|
echo "Phase 4: Check Monitoring Integration"
|
|
echo "--------------------------------------"
|
|
|
|
# Check for metrics
|
|
if grep -r "CircuitBreakerMetrics\|get_metrics" risk/src/circuit_breaker.rs trading_engine/src/types/circuit_breaker.rs 2>/dev/null; then
|
|
test_result 0 "Circuit breaker metrics"
|
|
else
|
|
test_result 1 "Circuit breaker metrics"
|
|
fi
|
|
|
|
# Check for health check
|
|
if grep -r "health_check" risk/src/circuit_breaker.rs 2>/dev/null; then
|
|
test_result 0 "Health check integration"
|
|
else
|
|
test_result 1 "Health check integration"
|
|
fi
|
|
|
|
echo ""
|
|
echo "Phase 5: Check API Gateway Integration"
|
|
echo "---------------------------------------"
|
|
|
|
# Check API Gateway health router
|
|
if grep -r "circuit.*breaker\|circuit_breaker_status" services/api_gateway/src/health_router.rs 2>/dev/null; then
|
|
test_result 0 "API Gateway circuit breaker endpoint"
|
|
else
|
|
test_result 1 "API Gateway circuit breaker endpoint"
|
|
fi
|
|
|
|
echo ""
|
|
echo "Phase 6: Check Redis Coordination"
|
|
echo "----------------------------------"
|
|
|
|
# Check for Redis integration
|
|
if grep -r "redis_client\|RedisResult\|persist_state_to_redis" risk/src/circuit_breaker.rs 2>/dev/null; then
|
|
test_result 0 "Redis state coordination"
|
|
else
|
|
test_result 1 "Redis state coordination"
|
|
fi
|
|
|
|
echo ""
|
|
echo "========================================"
|
|
echo " INITIAL SUMMARY"
|
|
echo "========================================"
|
|
echo "Total Tests: $TOTAL_TESTS"
|
|
echo -e "${GREEN}Passed: $PASSED_TESTS${NC}"
|
|
echo -e "${RED}Failed: $FAILED_TESTS${NC}"
|
|
echo ""
|