🎉 MAJOR: Shared libraries architecture complete with Vault integration

COMPLETED:
 Created 3 shared libraries: common, config (foxhunt-config), storage
 Config library: PostgreSQL hot-reload, Vault integration, unified ConfigManager
 Storage library: S3 with Vault credentials, model checkpoints, zero hardcoded keys
 Common library: Shared types, database connections, error handling
 Fixed TLI protobuf compilation issues (duplicate health_check, Aad types)
 Trading Service migrated to use centralized config

SECURITY IMPROVEMENTS:
🔒 ALL AWS credentials now from Vault (no environment variables)
🔒 Circuit breaker patterns for external services
🔒 Secure error messages that don't leak credentials
🔒 Automatic credential refresh with 5-minute TTL

ARCHITECTURE:
- Single source of truth for configuration
- Zero code duplication for common functionality
- Hot-reload capability via PostgreSQL NOTIFY/LISTEN
- Multi-tier storage with compression and lifecycle management
- Type-safe configuration with comprehensive error handling

Next: Complete service migrations to use shared libraries
This commit is contained in:
jgrusewski
2025-09-25 09:23:52 +02:00
parent c83ce132d2
commit 8950831817
34 changed files with 6289 additions and 161 deletions

View File

@@ -34,7 +34,7 @@ chrono = { workspace = true, features = ["serde"] }
rust_decimal = { workspace = true, features = ["serde", "macros"] }
# Database dependencies
sqlx = { workspace = true, features = ["runtime-tokio-rustls", "postgres", "chrono", "uuid"] }
sqlx = { workspace = true, features = ["runtime-tokio-rustls", "postgres", "chrono", "uuid"], optional = true }
redis.workspace = true
# Logging and tracing