cmd/gopherbot: fix bug causing infinite reviewer assignments

And reenable auto-assignment. This issue was introduced in CL 236438 -
the gerritInstanceID variable already includes the @, so the GetPerson
lookup was failing due to the incorrect formatting.

Fixes golang/go#40468

Change-Id: I5a8d884a7526ee53e04da673c542ed4097c55a2e
Reviewed-on: https://go-review.googlesource.com/c/build/+/247239
Reviewed-by: Andrew Bonventre <andybons@golang.org>
diff --git a/cmd/gopherbot/gopherbot.go b/cmd/gopherbot/gopherbot.go
index 608bb3b..041de03 100644
--- a/cmd/gopherbot/gopherbot.go
+++ b/cmd/gopherbot/gopherbot.go
@@ -333,9 +333,7 @@
 
 	// Gerrit tasks are applied to all projects by default.
 	{"abandon scratch reviews", (*gopherbot).abandonScratchReviews},
-
-	// Disabled temporarily due to https://golang.org/issue/40147
-	//	{"assign reviewers to CLs", (*gopherbot).assignReviewersToCLs},
+	{"assign reviewers to CLs", (*gopherbot).assignReviewersToCLs},
 
 	{"access", (*gopherbot).whoNeedsAccess},
 	{"cl2issue", (*gopherbot).cl2issue},
@@ -1931,7 +1929,7 @@
 	sort.Strings(reviewers)
 	var people []*gophers.Person
 	for _, id := range reviewers {
-		p := gophers.GetPerson(fmt.Sprintf("%s@%s", id, gerritInstanceID))
+		p := gophers.GetPerson(fmt.Sprintf("%s%s", id, gerritInstanceID))
 		// If an existing reviewer is not known to us, we have no way of
 		// checking if these reviewer lists are identical.
 		if p == nil {