_augment_tracks gated the object-coverage + low-rank-weighted + uniform draw on `0 < max_points < N`, so with the default WANTRACK_MAX_POINTS=2500 and the full 2500-track grid (max_points == N) the entire subsample block was skipped -- the model saw all 2500 tracks every step and only chunk-masking ran. Gate on `min_points < N` instead so K~U[1000,2500] actually samples (verified: kept 1179/1437/1573 across steps, was a constant 2500). Also: TrackValidation now applies the same sampler (loads object_ids/track_weights, runs _augment_tracks deterministically) so validation is conditioned on -- and overlays -- the sampled subset, not the full grid. Env-gated WANTRACK_DEBUG=1 logs per-step sampling stats (kept count, object coverage, coord ranges). Adds a single-video (golf) overfit config for debugging.
Training Scenarios
End-to-end multi-step training pipelines. Each scenario directory contains all configs, scripts, and data needed to run a complete workflow.
scenario/
└── ode_init_self_forcing_wan_causal/ # KD → export → Self-Forcing
See the usage.md inside each scenario for step-by-step instructions.
For single-step configs, see examples/train/configs/.