Title, also, they can't reach the surface when they spawns in nearby caves or on the top of houses/funnel.
Seed of the world I went in is -3936638527974204674 ,
and the village is at -240 ~ 272 .
Title, also, they can't reach the surface when they spawns in nearby caves or on the top of houses/funnel.
Seed of the world I went in is -3936638527974204674 ,
and the village is at -240 ~ 272 .
I am unable to reproduce this issue in 20w51a. Upon generating the world, I ran this command
to freeze the villagers in place upon them being generating. (Reproduction step from MC-146770). Doing this showed that no villager spawned on top of any buildings / in any caves when the village was first generated and when the villagers were first spawned. I believe the reason as to why you are experiencing this problem, is because the villagers are able to naturally wander in to caves, and / or on top of buildings, if there is a way for them to do so.
For the villagers supposedly stuck in caves, they aren't able to reach the surface because in this specific seed, once they fall into the cave, there is no possible way for them to get out of it. As for the villager on the roof, the village generated in a way which allowed them do so. There is a cobblestone structure placed right next to the house, which allows them to gain access to the roof and is the reason as to why you are experiencing this issue. I assure you that there is no problem here.