- gpu_replay_buffer: allocate states/next_states with training_dtype(),
cast incoming batches at ingestion boundary
- gpu_weights: cast BF16 model weights to F32 before extraction for
CUDA f32 kernels in both extract_one() and sync_one()
- mod.rs: cast DqnGpuData, GpuBufferPool, PpoGpuData uploads to
training_dtype(); cast portfolio tensors to match features dtype;
cast bar_target_values readback to F32
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>