Files
foxhunt/services/backtesting_service/Cargo.toml
jgrusewski 8950831817 🎉 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
2025-09-25 09:23:52 +02:00

67 lines
1.5 KiB
TOML

[package]
name = "backtesting_service"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
authors.workspace = true
license.workspace = true
description = "Standalone backtesting service for Foxhunt HFT trading system"
[[bin]]
name = "backtesting_service"
path = "src/main.rs"
[dependencies]
# Core dependencies
tokio.workspace = true
tonic.workspace = true
prost.workspace = true
serde.workspace = true
serde_json.workspace = true
anyhow.workspace = true
thiserror.workspace = true
tracing.workspace = true
tracing-subscriber.workspace = true
uuid.workspace = true
chrono.workspace = true
# Database and storage
sqlx.workspace = true
influxdb2.workspace = true
# Config and environment
config.workspace = true
dotenvy = "0.15"
# Strategy and trading components
adaptive-strategy = { path = "../../adaptive-strategy" }
foxhunt-core = { path = "../../core" }
risk = { path = "../../risk" }
data = { path = "../../data" }
common = { path = "../../common" }
storage = { path = "../../storage" }
foxhunt-config = { path = "../../crates/config" }
# Performance and utilities
num_cpus.workspace = true
rand.workspace = true
tokio-stream.workspace = true
async-stream = "0.3"
rayon.workspace = true
crossbeam.workspace = true
dashmap.workspace = true
[dev-dependencies]
tokio-test.workspace = true
tempfile.workspace = true
serial_test.workspace = true
[build-dependencies]
tonic-build.workspace = true
[features]
default = ["postgres", "influxdb"]
postgres = ["sqlx/postgres"]
influxdb = []
standalone = []