Every deploy was green, every page worked, and one file returned 404 in production. The cause was a Hugo module mount behaviour that is documented but easy to miss.
A short guide to getting Hugo running on Windows Subsystem for Linux, and why you want the extended build.