#!/bin/bash set -euo pipefail echo "=== Fixing final unwrap_used violations in services (Agent W17 Phase 5 - Final 2) ===" # Count before BEFORE=$(grep -r "\.unwrap()" services/api_gateway/src services/trading_service/src services/backtesting_service/src services/ml_training_service/src 2>/dev/null | wc -l) echo "Found $BEFORE .unwrap() calls in services" # Pattern 25: unwrap_or_default().unwrap() → expect() echo "Fixing Pattern 25: Builder pattern unwrap() → expect()" find services/ -name "*.rs" -type f -exec sed -i \ 's/\.build()\.unwrap()/\.build().expect("INVARIANT: Builder should have all required fields")/g' {} + # Pattern 26: into_inner().unwrap() echo "Fixing Pattern 26: into_inner().unwrap() → expect()" find services/ -name "*.rs" -type f -exec sed -i \ 's/\.into_inner()\.unwrap()/\.into_inner().expect("INVARIANT: Should successfully extract inner value")/g' {} + # Count after AFTER=$(grep -r "\.unwrap()" services/api_gateway/src services/trading_service/src services/backtesting_service/src services/ml_training_service/src 2>/dev/null | wc -l) FIXED=$((BEFORE - AFTER)) echo "" echo "Fixed $FIXED violations in this phase" echo "Remaining: $AFTER .unwrap() calls" echo "" echo "✓ Fix complete"