Tests 15-16: from_checkpoint now correctly rejects invalid safetensors data instead of silently using random weights. Tests 17-20: construct untrained models directly via ::new() instead of broken from_checkpoint path — tests inference refusal, not checkpoint loading. test-gpu job: add kapsule+gpu tags for GPU runner targeting, remove TODO. CI build pool: GP1-M → GP1-XL (48 vCPU, 256GB) — request quota increase. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>