Dobrý den, děkuji za nabídnutou pomoc, již jsem si udělal ošklivý hack na opravu problému, který popíšu níže pro případ, že by to někdo někdy v budoucnosti řešil také. Problém jsem vysledoval až na tyto řádky (982-984) v souboru /themes/default-bootstrap/js/product.js:
$('#attributes select, #attributes input[type=hidden], ' + radio_inputs).each(function(){
tab_attributes.push($(this).val());
});
Což je samozřejmě divné, protože se jedná o obyčejný selektor DOMů, nicméně před uložením prvků do pole je proměnná tab_attributes prázdná a poté má duplicity. Výpisem hodnot jsem došel k závěru, že v první polovině pole jsou chybné hodnoty, v druhé pak ty správné. Například pokud má produkt tři atributy, tak první tři hodnoty jsou chybné, druhé tři jsou správné a pole má vždy dvojnásobnou velikost než je očekáváno. Můj workaround pak spočívá ve vymazání první poloviny pole řádkém kódu který následuje po předchozích řádcích:
tab_attributes = tab_attributes.slice(tab_attributes.length / 2);
Funguje to spolehlivě, ale nemyslím si, že by to bylo úplně korektní řešení problému, nedoporučuji ho a pokračuji v hledání příčiny.