I think you do a mistake here, Amegnun.
in french ancient 'oc' in itself did not become /yi/(/i/) - only in the group 'ok-t' it evolved like this (/okt/-> /oXt/ -> /ot/ -> /ojt/ -> /yi(t)/
but /yi/ can come from other groups where a /o/ or /u/ followed by some consonnant (fading out later), which was itself followed by a short /i/ or /e/; except in the 'okt' case it is not the /k/ which evolves into /i/ but a subsequent front vowel like /i/ or frontal /e/: let's compare Lat. 'lcor' -> Fr. 'lueur' opposed to 'lucere' -> 'luire' - 'puteus' -> 'puits'