- sparse_conv_metal: fused gather-GEMM kernel, parity 8e-4 vs stock;
honest verdict: stock chunking already bounds memory at decoder scale
(1.97GB synthetic peak) and beats the scalar kernel on speed — kept as
TRELLIS2_METAL_SPCONV=1 opt-in + upstream reference, NOT default.
- _attempt_schedule: preferred=vertex now runs the vertex baker (was
silently falling through to the 5h+ pure-python kdtree grind).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>