Oh hapless me!
https://drive.google.com/file/d/1epf1lAj3OXZgvnYzfx7hgRLoKuTeCuvn/view?usp=sharing
There is the save. Library is near the bamboo, barrel is near the water. I think what is happening is that villagers wander too far from their job block, which then get claimed by an unemployed, then they just find a different job block without caring what job it is. I have ended up with more farmers and leatherworkers than their specific job blocks.
Save is too big to upload, but this is still a problem in 1.14 pre 1
This appears to be fixed in pre 5!