Currently placing a river port checks for the biome, but it decides how to check based on the "check by block" config, which is quite messy.
In addition, it always looks in the middle of the chunk, which is not super clever, because the river might not be there
To fix these issues:
First, maybe check all the surface blocks for a river... Or check where the player is standing. We'd have to do the same thing for ocean port placements.
As for the biome, perhaps just remove that config entirely, and always try to use the block biome. If that doesn't work in the wild, we may have to re-add the config back for placement scanning. I saw that valoria were getting incorrect biome info at one point but......I suspect that is actually because they had not switched the config to the right settings. I think getting it by block might work all round
As for the land validation job, let that always use the material check anyway, as its entirely reliable.