Okay, just found a stupid behavior of the VS Code go extension. I had the following three lines in the import block:
"github.com/authzed/authzed-go/proto/authzed/api/v1"
"github.com/authzed/authzed-go/v1"
"github.com/authzed/grpcutil"
Somehow, the go extension thinks that the first v1 import is redundant and useless, and it just deletes it every time when I save the file, without alerting me anything.
After I disabled the go extension, the first error "undefined: v1" is gone.