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
83 lines
2.2 KiB
TOML
83 lines
2.2 KiB
TOML
[package]
|
|
name = "adaptive-strategy"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
authors.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
homepage.workspace = true
|
|
documentation.workspace = true
|
|
publish.workspace = true
|
|
keywords.workspace = true
|
|
categories.workspace = true
|
|
description = "Adaptive trading strategy framework with ensemble ML models and regime detection"
|
|
|
|
[dependencies]
|
|
# Core dependencies (using workspace dependencies)
|
|
tokio = { workspace = true }
|
|
tracing = { workspace = true }
|
|
anyhow = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
uuid = { workspace = true }
|
|
|
|
# Numerical and ML dependencies (using workspace dependencies)
|
|
ndarray = { workspace = true }
|
|
candle-core = { workspace = true }
|
|
candle-nn = { workspace = true }
|
|
linfa = { workspace = true }
|
|
linfa-clustering = { workspace = true }
|
|
smartcore = { workspace = true }
|
|
|
|
# Time series and statistics (using workspace dependencies)
|
|
chrono = { workspace = true }
|
|
statrs = { workspace = true }
|
|
ta = { workspace = true }
|
|
|
|
# Configuration (using workspace dependencies)
|
|
foxhunt-config = { workspace = true }
|
|
|
|
# GPU acceleration dependencies (coordinated with workspace)
|
|
cudarc = { workspace = true, optional = true }
|
|
|
|
# Additional dependencies for async traits and serialization (using workspace dependencies)
|
|
async-trait = { workspace = true }
|
|
futures = { workspace = true }
|
|
rand = { workspace = true }
|
|
|
|
# Financial types
|
|
rust_decimal = { workspace = true }
|
|
rust_decimal_macros = { workspace = true }
|
|
|
|
# Internal dependencies
|
|
ml.workspace = true
|
|
foxhunt-core.workspace = true
|
|
risk.workspace = true
|
|
data.workspace = true
|
|
[features]
|
|
default = ["cpu-only"]
|
|
|
|
# GPU acceleration features (coordinated with workspace)
|
|
cuda = ["ml/cuda", "cudarc"]
|
|
cudnn = ["ml/cudnn", "cuda"]
|
|
gpu = ["cuda"]
|
|
cpu-only = []
|
|
|
|
[dev-dependencies]
|
|
tokio-test = { workspace = true }
|
|
proptest = { workspace = true }
|
|
criterion = { workspace = true, features = ["html_reports", "async_tokio"] }
|
|
futures = { workspace = true }
|
|
|
|
[[bench]]
|
|
name = "tlob_performance"
|
|
harness = false
|
|
|
|
[lib]
|
|
name = "adaptive_strategy"
|
|
path = "src/lib.rs"
|
|
|
|
[lints]
|
|
workspace = true |