Files
foxhunt/tli/build.rs
jgrusewski c10705b02c 🎯 Wave 153: ML Hyperparameter Tuning - Production Ready & Validated
**Status**:  PRODUCTION READY (21 agents, 100% success, ~12,741 lines)
**GPU**: RTX 3050 Ti validated, 100 epochs, 5.9min, 96% cost savings

Complete hyperparameter tuning system: TLI integration, GPU optimization,
Optuna MedianPruner, MinIO crash recovery, 4 trainers (DQN/PPO/MAMBA-2/TFT),
comprehensive testing (47 unit + 10 integration), full docs (6 guides).

Ready for full 3-month dataset training (8-12h for 50 trials)!

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-13 16:10:55 +02:00

35 lines
1.3 KiB
Rust

// use prost_build as _; // Not directly used
fn main() -> Result<(), Box<dyn std::error::Error>> {
// Configure tonic-prost-build for proto compilation (Tonic 0.14+)
tonic_prost_build::configure()
.build_server(false) // TLI is client-only
.build_client(true)
// Force correct protobuf attributes for all messages
.type_attribute(".", "#[derive(serde::Serialize, serde::Deserialize)]")
// Suppress warnings in generated code
.server_mod_attribute(".", "#[allow(unused_qualifications)]")
.client_mod_attribute(".", "#[allow(unused_qualifications)]")
// Enable proper protobuf derives
.protoc_arg("--experimental_allow_proto3_optional")
.compile_protos(
&[
"proto/trading.proto",
"proto/health.proto",
"proto/ml.proto",
"proto/config.proto",
"proto/ml_training.proto",
],
&["proto"],
)?;
// Tell cargo to recompile if proto files change
println!("cargo:rerun-if-changed=proto/trading.proto");
println!("cargo:rerun-if-changed=proto/health.proto");
println!("cargo:rerun-if-changed=proto/ml.proto");
println!("cargo:rerun-if-changed=proto/config.proto");
println!("cargo:rerun-if-changed=proto/ml_training.proto");
Ok(())
}