I agree with you. And it would even be fine to allow shadowing but require an explicit declaration to allow it to happen in a particular case. e.g.
import "foo"
func other() {
shadow var foo string = "bar";
}