palette_ y sub_palette_ son std::array de tamaño fijo, así que el check en runtime nunca podía fallar. Movido a static_assert sobre tuple_size_v. El throw asociado era código muerto. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>