As duas formas – cozido e cosido – existem na Língua Portuguesa.

Ou seja, ambas as expressões estão corretas, devendo, no entanto, serem usadas em diferentes situações.

Cozido como adjetivo significa preparado pela cozedura; como substantivo significa prato composto de carnes, arroz, batatas e hortaliças, tudo cozido.

Ex: Cozido à Portuguesa :: substantivo

Como forma verbal, que é aonde habitualmente surge a dúvida, é o particípio do verbo cozer.

Foi cozido durante 20 minutos.
No dia anterior foi amassado e descansou, e só foi cozido depois.

Cosido como adjetivo significa que se coseu, muito junto; como substantivo significa costura.

Ex: Está bem cosido :: adjetivo

Como forma verbal é o particípio do verbo coser.

Este véu foi cosido à mão.
Neste caso, é cosido do lado avesso para a peça ficar perfeita.