Владимир, вы разгадали
Развитие самое обычное: кластеры из двух согласных, из которых один обязан быть взрывным упрощались, меняя первый согласный на йот: ct > jt, ps > js и т.д. Это - общая черта с окс: fructu > fruit, capsa > окс. caissa.
Уже позднее, только в кат. -js- > -jš- (граф. -ix-) и так осталось в зап. диалекте, а в восточном (барселонском) ака литературном йот был поглощен «ш», так как у него нулевая смысловая нагрузка, все «ш» внутри слова только такого происхождения. Поэтому пишем caixa, а говорим caxa.