Once you compile a world with world/visibility = 0, changes to world.visibility at runtime appear to have no actual effect on whether the world appears on the hub entry or not. This is counter to the opposite scenario, where world/visibility = 1 and toggling it to 0 does in fact cause the world to become invisible.
This bug appears to be common to all hub entries, as it happens on my test hub entry as well as the Chatters hub entry, and it dates back to at least before 493.
A modified version of my previous demonstration with the same hub entry will be sufficient. I'll post it again for clarity:
world/hub = "Audeuro.TestHub"
world/visibility = 0
mob/verb/ToggleVisibility()
var/old_visibility = world.visibility
var/new_visibility = !old_visibility
world.visibility = new_visibility
world << "Visibility toggled from [old_visibility] to [new_visibility]"
Using this snippet with that hub entry, I've been unable to get my world to become visible once it's been set to world/visibility = 0 at compile-time.