This commit includes: ## Audit & Testing Infrastructure - scripts/audit.sh: 12-section comprehensive codebase audit - scripts/test.sh: 7 test types (unit, integration, race, bench, coverage, contracts, pkg) - scripts/check-compliance.sh: SPEC.md compliance validation - scripts/check-docs.sh: Documentation coverage checker - scripts/dev.sh: Unified development script with all commands ## Documentation - SPEC.md: Authoritative technical specification - docs/AUDIT_AND_TESTING.md: Complete testing guide (600+ lines) - docs/SCRIPTS_REFERENCE.md: All scripts documented (700+ lines) - docs/README.md: Documentation index and navigation - docs/DEVELOPMENT_SETUP.md: Environment setup guide - docs/REFACTORING_PLAN.md: Systematic refactoring plan ## Phase 1 Refactoring (Critical Fixes) - pkg/validation/helpers.go: Validation functions for addresses/amounts - pkg/sequencer/selector_registry.go: Thread-safe selector registry - pkg/sequencer/reader.go: Fixed race conditions with atomic metrics - pkg/sequencer/swap_filter.go: Fixed race conditions, added error logging - pkg/sequencer/decoder.go: Added address validation ## Changes Summary - Fixed race conditions on 13 metric counters (atomic operations) - Added validation at all ingress points - Eliminated silent error handling - Created selector registry for future ABI migration - Reduced SPEC.md violations from 7 to 5 Build Status: ✅ All packages compile Compliance: ✅ No race conditions, no silent failures Documentation: ✅ 1,700+ lines across 5 comprehensive guides 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
36 lines
1.1 KiB
Bash
Executable File
36 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
# Start development environment with all dev tools
|
|
|
|
set -e
|
|
|
|
echo "🚀 Starting MEV Bot Development Environment"
|
|
echo "=========================================="
|
|
echo ""
|
|
|
|
# Start dev containers explicitly (podman-compose doesn't support --profile flag)
|
|
echo "📦 Starting development containers..."
|
|
podman-compose up -d go-dev python-dev foundry
|
|
|
|
echo ""
|
|
echo "✅ Development environment ready!"
|
|
echo ""
|
|
echo "Available containers:"
|
|
echo " - mev-go-dev : Go 1.21 with full toolchain"
|
|
echo " - mev-python-dev : Python 3.11 for scripts"
|
|
echo " - mev-foundry : Foundry tools (cast, forge, anvil)"
|
|
echo ""
|
|
echo "Usage examples:"
|
|
echo " # Run Go commands"
|
|
echo " podman exec mev-go-dev go test ./..."
|
|
echo " podman exec mev-go-dev go build -o bin/mev-bot ./cmd/mev-bot-v2"
|
|
echo ""
|
|
echo " # Run Python scripts"
|
|
echo " podman exec mev-python-dev python scripts/analyze.py"
|
|
echo ""
|
|
echo " # Use Foundry tools"
|
|
echo " podman exec mev-foundry cast block-number --rpc-url https://arb1.arbitrum.io/rpc"
|
|
echo ""
|
|
echo " # Interactive shell"
|
|
echo " podman exec -it mev-go-dev sh"
|
|
echo ""
|