- Never touch the user's documented dataset: preprocess roots are now
env-overridable (KANDINSKY5_OVERFIT_DATA_DIR/_OUTPUT_DIR) and the
nightly keeps every artifact under a single test-owned
data/kandinsky5_e2e/ root, cleaning only that
- Override method.generator_update_interval to 1 in the E2E stage-2 run:
with the recipe's 5, a 3-step run performed zero student updates and the
exported "student" was stage-1 weights
- Harden the media oracle: exact frame count/geometry (closes the SSIM
shorter-clip truncation hole), per-frame luma spatial std (solid clip at
reference mean scored 15.4 on the old global RGB std), consecutive-frame
temporal diff (frozen clips), and MS-SSIM floor recalibrated to 0.95
against measured known-bads (solid 0.9189, frozen 0.8597, good 1.0000);
known-bad clips are permanent self-calibrating regressions in
fastvideo/tests/workflow/test_kandinsky5_e2e_media_oracle.py
- Capability-gate ATTN_QAT_INFER: is_attn_qat_infer_available() now
requires an sm_120/sm_121 device in addition to the extension import
(CUDA 13 wheels can bundle the extension on H100/GB200, where the first
kernel call failed instead of falling back); the real platform resolver
is covered in fastvideo/tests/api/test_attn_qat_infer_capability_gate.py
- Remove the now-stale golden reference: the generator-update fix changes
what stage 2 trains, so the reference must be re-recorded from the
corrected run (KANDINSKY5_E2E_WRITE_REFERENCE=1 bootstrap + review)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>