Refactors CutListPackingService to: - Pack parts grouped by material type - Distinguish between in-stock and to-be-purchased bins - Use material stock lengths for finite inventory - Use supplier stock for unlimited purchase options Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>