Internal change

PiperOrigin-RevId: 417815015
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupFunctionTest.java
index 86b4465..c05f551 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupFunctionTest.java
@@ -251,10 +251,10 @@
     scratch.file("a/b/BUILD");
     ContainingPackageLookupValue value =
         lookupContainingPackage(
-            PackageIdentifier.create(RepositoryName.create("a"), PathFragment.create("b")));
+            PackageIdentifier.create(RepositoryName.create("@a"), PathFragment.create("b")));
     assertThat(value.hasContainingPackage()).isTrue();
     assertThat(value.getContainingPackageName())
-        .isEqualTo(PackageIdentifier.create(RepositoryName.create("a"), PathFragment.create("b")));
+        .isEqualTo(PackageIdentifier.create(RepositoryName.create("@a"), PathFragment.create("b")));
   }
 
   @Test
@@ -268,7 +268,7 @@
     ContainingPackageLookupValue value = lookupContainingPackage("a/b");
     assertThat(value.hasContainingPackage()).isTrue();
     assertThat(value.getContainingPackageName())
-        .isEqualTo(PackageIdentifier.create(RepositoryName.create("a"), PathFragment.create("b")));
+        .isEqualTo(PackageIdentifier.create(RepositoryName.create("@a"), PathFragment.create("b")));
   }
 
   @Test
@@ -300,7 +300,7 @@
   @Test
   public void testNonExistentExternalRepositoryErrorReason() throws Exception {
     PackageIdentifier identifier =
-        PackageIdentifier.create("some_repo", PathFragment.create(":atarget"));
+        PackageIdentifier.create("@some_repo", PathFragment.create(":atarget"));
     ContainingPackageLookupValue value = lookupContainingPackage(identifier);
     assertThat(value.hasContainingPackage()).isFalse();
     assertThat(value.getClass()).isEqualTo(NoContainingPackage.class);
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/GlobDescriptorTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/GlobDescriptorTest.java
index ad10bd4..7eac47f 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/GlobDescriptorTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/GlobDescriptorTest.java
@@ -34,13 +34,13 @@
     SerializationTester serializationTester =
         new SerializationTester(
                 GlobDescriptor.create(
-                    PackageIdentifier.create("foo", PathFragment.create("//bar")),
+                    PackageIdentifier.create("@foo", PathFragment.create("//bar")),
                     Root.fromPath(FsUtils.TEST_FILESYSTEM.getPath("/packageRoot")),
                     PathFragment.create("subdir"),
                     "pattern",
                     /*excludeDirs=*/ false),
                 GlobDescriptor.create(
-                    PackageIdentifier.create("bar", PathFragment.create("//foo")),
+                    PackageIdentifier.create("@bar", PathFragment.create("//foo")),
                     Root.fromPath(FsUtils.TEST_FILESYSTEM.getPath("/anotherPackageRoot")),
                     PathFragment.create("anotherSubdir"),
                     "pattern",
@@ -58,7 +58,7 @@
   public void testCreateReturnsInternedInstances() throws LabelSyntaxException {
     GlobDescriptor original =
         GlobDescriptor.create(
-            PackageIdentifier.create("foo", PathFragment.create("//bar")),
+            PackageIdentifier.create("@foo", PathFragment.create("//bar")),
             Root.fromPath(FsUtils.TEST_FILESYSTEM.getPath("/packageRoot")),
             PathFragment.create("subdir"),
             "pattern",
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/LocalRepositoryLookupFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/LocalRepositoryLookupFunctionTest.java
index 77cc3bb..32a0a51 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/LocalRepositoryLookupFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/LocalRepositoryLookupFunctionTest.java
@@ -193,7 +193,7 @@
             RootedPath.toRootedPath(
                 Root.fromPath(rootDirectory), PathFragment.create("local/repo")));
     assertThat(repositoryLookupValue).isNotNull();
-    assertThat(repositoryLookupValue.getRepository().getNameWithAt()).isEqualTo("@local");
+    assertThat(repositoryLookupValue.getRepository().getName()).isEqualTo("@local");
     assertThat(repositoryLookupValue.getPath()).isEqualTo(PathFragment.create("local/repo"));
   }
 
@@ -209,7 +209,7 @@
                 Root.fromPath(rootDirectory.getRelative("/abs")),
                 PathFragment.create("local/repo")));
     assertThat(repositoryLookupValue).isNotNull();
-    assertThat(repositoryLookupValue.getRepository().getNameWithAt()).isEqualTo("@local");
+    assertThat(repositoryLookupValue.getRepository().getName()).isEqualTo("@local");
     assertThat(repositoryLookupValue.getPath()).isEqualTo(PathFragment.create("/abs/local/repo"));
   }
 
@@ -224,7 +224,7 @@
             RootedPath.toRootedPath(
                 Root.fromPath(rootDirectory), PathFragment.create("local/repo")));
     assertThat(repositoryLookupValue).isNotNull();
-    assertThat(repositoryLookupValue.getRepository().getNameWithAt()).isEqualTo("@local");
+    assertThat(repositoryLookupValue.getRepository().getName()).isEqualTo("@local");
     assertThat(repositoryLookupValue.getPath()).isEqualTo(PathFragment.create("local/repo"));
   }
 
@@ -240,7 +240,7 @@
                 Root.fromPath(rootDirectory.getRelative("/abs")),
                 PathFragment.create("local/repo")));
     assertThat(repositoryLookupValue).isNotNull();
-    assertThat(repositoryLookupValue.getRepository().getNameWithAt()).isEqualTo("@local");
+    assertThat(repositoryLookupValue.getRepository().getName()).isEqualTo("@local");
     assertThat(repositoryLookupValue.getPath()).isEqualTo(PathFragment.create("/abs/local/repo"));
   }
 
@@ -256,7 +256,7 @@
             RootedPath.toRootedPath(
                 Root.fromPath(rootDirectory), PathFragment.create("local/repo/sub/package")));
     assertThat(repositoryLookupValue).isNotNull();
-    assertThat(repositoryLookupValue.getRepository().getNameWithAt()).isEqualTo("@local");
+    assertThat(repositoryLookupValue.getRepository().getName()).isEqualTo("@local");
     assertThat(repositoryLookupValue.getPath()).isEqualTo(PathFragment.create("local/repo"));
   }
 
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
index 24fc055..baca435 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
@@ -382,7 +382,7 @@
 
     // First, use the correct label.
     PackageLookupValue packageLookupValue =
-        lookupPackage(PackageIdentifier.create("local", PathFragment.EMPTY_FRAGMENT));
+        lookupPackage(PackageIdentifier.create("@local", PathFragment.EMPTY_FRAGMENT));
     assertThat(packageLookupValue.packageExists()).isTrue();
 
     // Then, use the incorrect label.
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/RepositoryMappingFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/RepositoryMappingFunctionTest.java
index 5c426d2..b6030c7 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/RepositoryMappingFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/RepositoryMappingFunctionTest.java
@@ -86,7 +86,7 @@
   public static RepositoryMappingValue withMapping(
       ImmutableMap<RepositoryName, RepositoryName> repositoryMapping, RepositoryName ownerRepo) {
     return RepositoryMappingValue.withMapping(
-        RepositoryMapping.create(repositoryMapping, ownerRepo.getName()));
+        RepositoryMapping.create(repositoryMapping, ownerRepo.strippedName()));
   }
 
   public RepositoryMappingValue withMappingForRootModule(
@@ -94,11 +94,11 @@
     ImmutableMap.Builder<RepositoryName, RepositoryName> allMappings = ImmutableMap.builder();
     allMappings.putAll(repositoryMapping);
     for (String name : analysisMock.getWorkspaceRepos()) {
-      RepositoryName repoName = RepositoryName.createUnvalidated(name);
+      RepositoryName repoName = RepositoryName.createFromValidStrippedName(name);
       allMappings.put(repoName, repoName);
     }
     return RepositoryMappingValue.withMapping(
-        RepositoryMapping.create(allMappings.build(), ownerRepo.getName()));
+        RepositoryMapping.create(allMappings.build(), ownerRepo.strippedName()));
   }
 
   @Test
@@ -111,7 +111,7 @@
         "    path = '/a_remote_repo',",
         "    repo_mapping = {'@a' : '@b'},",
         ")");
-    RepositoryName name = RepositoryName.create("a_remote_repo");
+    RepositoryName name = RepositoryName.create("@a_remote_repo");
     SkyKey skyKey = RepositoryMappingValue.key(name);
     EvaluationResult<RepositoryMappingValue> result = eval(skyKey);
 
@@ -121,10 +121,10 @@
         .isEqualTo(
             withMappingAllowingFallback(
                 ImmutableMap.of(
-                    RepositoryName.create("a"),
-                    RepositoryName.create("b"),
-                    RepositoryName.create("good"),
-                    RepositoryName.create(""))));
+                    RepositoryName.create("@a"),
+                    RepositoryName.create("@b"),
+                    RepositoryName.create("@good"),
+                    RepositoryName.create("@"))));
   }
 
   @Test
@@ -145,12 +145,12 @@
         .isEqualTo(
             withMappingForRootModule(
                 ImmutableMap.of(
-                    RepositoryName.create(""),
-                    RepositoryName.create(""),
-                    RepositoryName.create("A"),
-                    RepositoryName.create(""),
-                    RepositoryName.create("com_foo_bar_b"),
-                    RepositoryName.create("B.1.0")),
+                    RepositoryName.create("@"),
+                    RepositoryName.create("@"),
+                    RepositoryName.create("@A"),
+                    RepositoryName.create("@"),
+                    RepositoryName.create("@com_foo_bar_b"),
+                    RepositoryName.create("@B.1.0")),
                 name));
   }
 
@@ -168,7 +168,7 @@
             "module(name='C', version='1.0')",
             "bazel_dep(name='B', version='1.0', repo_name='com_foo_bar_b')");
 
-    RepositoryName name = RepositoryName.create("C.1.0");
+    RepositoryName name = RepositoryName.create("@C.1.0");
     SkyKey skyKey = RepositoryMappingValue.key(name);
     EvaluationResult<RepositoryMappingValue> result = eval(skyKey);
 
@@ -178,10 +178,10 @@
         .isEqualTo(
             withMapping(
                 ImmutableMap.of(
-                    RepositoryName.create("C"),
-                    RepositoryName.create("C.1.0"),
-                    RepositoryName.create("com_foo_bar_b"),
-                    RepositoryName.create("B.1.0")),
+                    RepositoryName.create("@C"),
+                    RepositoryName.create("@C.1.0"),
+                    RepositoryName.create("@com_foo_bar_b"),
+                    RepositoryName.create("@B.1.0")),
                 name));
   }
 
@@ -194,7 +194,7 @@
         "module(name='B', version='1.0')",
         "bazel_dep(name='A',version='3.0')");
 
-    RepositoryName name = RepositoryName.create("B.1.0");
+    RepositoryName name = RepositoryName.create("@B.1.0");
     SkyKey skyKey = RepositoryMappingValue.key(name);
     EvaluationResult<RepositoryMappingValue> result = eval(skyKey);
 
@@ -204,10 +204,10 @@
         .isEqualTo(
             withMapping(
                 ImmutableMap.of(
-                    RepositoryName.create("B"),
-                    RepositoryName.create("B.1.0"),
-                    RepositoryName.create("A"),
-                    RepositoryName.create("")),
+                    RepositoryName.create("@B"),
+                    RepositoryName.create("@B.1.0"),
+                    RepositoryName.create("@A"),
+                    RepositoryName.create("@")),
                 name));
   }
 
@@ -235,14 +235,14 @@
         .isEqualTo(
             withMappingForRootModule(
                 ImmutableMap.of(
-                    RepositoryName.create(""),
-                    RepositoryName.create(""),
-                    RepositoryName.create("A"),
-                    RepositoryName.create(""),
-                    RepositoryName.create("B1"),
-                    RepositoryName.create("B.1.0"),
-                    RepositoryName.create("B2"),
-                    RepositoryName.create("B.2.0")),
+                    RepositoryName.create("@"),
+                    RepositoryName.create("@"),
+                    RepositoryName.create("@A"),
+                    RepositoryName.create("@"),
+                    RepositoryName.create("@B1"),
+                    RepositoryName.create("@B.1.0"),
+                    RepositoryName.create("@B2"),
+                    RepositoryName.create("@B.2.0")),
                 name));
   }
 
@@ -264,7 +264,7 @@
         .addModule(createModuleKey("D", "1.0"), "module(name='D', version='1.0')")
         .addModule(createModuleKey("D", "2.0"), "module(name='D', version='2.0')");
 
-    RepositoryName name = RepositoryName.create("B.1.0");
+    RepositoryName name = RepositoryName.create("@B.1.0");
     SkyKey skyKey = RepositoryMappingValue.key(name);
     EvaluationResult<RepositoryMappingValue> result = eval(skyKey);
 
@@ -276,8 +276,8 @@
         .isEqualTo(
             withMapping(
                 ImmutableMap.of(
-                    RepositoryName.create("B"), RepositoryName.create("B.1.0"),
-                    RepositoryName.create("D"), RepositoryName.create("D.1.0")),
+                    RepositoryName.create("@B"), RepositoryName.create("@B.1.0"),
+                    RepositoryName.create("@D"), RepositoryName.create("@D.1.0")),
                 name));
   }
 
@@ -297,7 +297,7 @@
         .addModule(createModuleKey("B", "2.0"), "module(name='B', version='2.0')")
         .addModule(createModuleKey("C", "1.0"), "module(name='C', version='1.0')");
 
-    RepositoryName name = RepositoryName.create("B.1.0");
+    RepositoryName name = RepositoryName.create("@B.1.0");
     SkyKey skyKey = RepositoryMappingValue.key(name);
     EvaluationResult<RepositoryMappingValue> result = eval(skyKey);
 
@@ -309,8 +309,8 @@
         .isEqualTo(
             withMapping(
                 ImmutableMap.of(
-                    RepositoryName.create("B"), RepositoryName.create("B.1.0"),
-                    RepositoryName.create("com_foo_bar_c"), RepositoryName.create("C.1.0")),
+                    RepositoryName.create("@B"), RepositoryName.create("@B.1.0"),
+                    RepositoryName.create("@com_foo_bar_c"), RepositoryName.create("@C.1.0")),
                 name));
   }
 
@@ -329,9 +329,9 @@
         "    path = '/other_remote_repo',",
         "    repo_mapping = {'@x' : '@y'},",
         ")");
-    RepositoryName name1 = RepositoryName.create("a_remote_repo");
+    RepositoryName name1 = RepositoryName.create("@a_remote_repo");
     SkyKey skyKey1 = RepositoryMappingValue.key(name1);
-    RepositoryName name2 = RepositoryName.create("other_remote_repo");
+    RepositoryName name2 = RepositoryName.create("@other_remote_repo");
     SkyKey skyKey2 = RepositoryMappingValue.key(name2);
 
     assertThatEvaluationResult(eval(skyKey1))
@@ -339,19 +339,19 @@
         .isEqualTo(
             withMappingAllowingFallback(
                 ImmutableMap.of(
-                    RepositoryName.create("a"),
-                    RepositoryName.create("b"),
-                    RepositoryName.create("good"),
-                    RepositoryName.create(""))));
+                    RepositoryName.create("@a"),
+                    RepositoryName.create("@b"),
+                    RepositoryName.create("@good"),
+                    RepositoryName.create("@"))));
     assertThatEvaluationResult(eval(skyKey2))
         .hasEntryThat(skyKey2)
         .isEqualTo(
             withMappingAllowingFallback(
                 ImmutableMap.of(
-                    RepositoryName.create("x"),
-                    RepositoryName.create("y"),
-                    RepositoryName.create("good"),
-                    RepositoryName.create(""))));
+                    RepositoryName.create("@x"),
+                    RepositoryName.create("@y"),
+                    RepositoryName.create("@good"),
+                    RepositoryName.create("@"))));
   }
 
   @Test
@@ -364,7 +364,7 @@
         "    path = '/a_remote_repo',",
         "    repo_mapping = {'@a' : '@b', '@x' : '@y'},",
         ")");
-    RepositoryName name = RepositoryName.create("a_remote_repo");
+    RepositoryName name = RepositoryName.create("@a_remote_repo");
     SkyKey skyKey = RepositoryMappingValue.key(name);
 
     assertThatEvaluationResult(eval(skyKey))
@@ -372,12 +372,12 @@
         .isEqualTo(
             withMappingAllowingFallback(
                 ImmutableMap.of(
-                    RepositoryName.create("a"),
-                    RepositoryName.create("b"),
-                    RepositoryName.create("x"),
-                    RepositoryName.create("y"),
-                    RepositoryName.create("good"),
-                    RepositoryName.create(""))));
+                    RepositoryName.create("@a"),
+                    RepositoryName.create("@b"),
+                    RepositoryName.create("@x"),
+                    RepositoryName.create("@y"),
+                    RepositoryName.create("@good"),
+                    RepositoryName.create("@"))));
   }
 
   @Test
@@ -411,25 +411,25 @@
         .addModule(createModuleKey("D", "1.0"), "module(name='D', version='1.0')")
         .addModule(createModuleKey("D", "2.0"), "module(name='D', version='2.0')");
 
-    RepositoryName name = RepositoryName.create("ws_repo");
+    RepositoryName name = RepositoryName.create("@ws_repo");
     SkyKey skyKey = RepositoryMappingValue.key(name);
     assertThatEvaluationResult(eval(skyKey))
         .hasEntryThat(skyKey)
         .isEqualTo(
             withMappingAllowingFallback(
                 ImmutableMap.<RepositoryName, RepositoryName>builder()
-                    .put(RepositoryName.create("root"), RepositoryName.MAIN)
+                    .put(RepositoryName.create("@root"), RepositoryName.MAIN)
                     // mappings to @B get remapped to @B.1.0 because of module B@1.0
-                    .put(RepositoryName.create("B_alias"), RepositoryName.create("B.1.0"))
-                    .put(RepositoryName.create("B_alias2"), RepositoryName.create("B.1.0"))
+                    .put(RepositoryName.create("@B_alias"), RepositoryName.create("@B.1.0"))
+                    .put(RepositoryName.create("@B_alias2"), RepositoryName.create("@B.1.0"))
                     // mapping from @B to @B.1.0 is also created
-                    .put(RepositoryName.create("B"), RepositoryName.create("B.1.0"))
+                    .put(RepositoryName.create("@B"), RepositoryName.create("@B.1.0"))
                     // mapping from @C to @C.2.0 is created despite not being mentioned
-                    .put(RepositoryName.create("C"), RepositoryName.create("C.2.0"))
+                    .put(RepositoryName.create("@C"), RepositoryName.create("@C.2.0"))
                     // mapping to @D is untouched because D has a multiple-version override
-                    .put(RepositoryName.create("D_alias"), RepositoryName.create("D"))
+                    .put(RepositoryName.create("@D_alias"), RepositoryName.create("@D"))
                     // mapping to @E is untouched because E is not a module
-                    .put(RepositoryName.create("E_alias"), RepositoryName.create("E"))
+                    .put(RepositoryName.create("@E_alias"), RepositoryName.create("@E"))
                     .build()));
   }
 
@@ -444,14 +444,14 @@
         "    path = '/a_remote_repo',",
         "    repo_mapping = {'x' : '@b'},",
         ")");
-    RepositoryName name = RepositoryName.create("a_remote_repo");
+    RepositoryName name = RepositoryName.create("@a_remote_repo");
     SkyKey skyKey = RepositoryMappingValue.key(name);
 
     assertThatEvaluationResult(eval(skyKey))
         .hasErrorEntryForKeyThat(skyKey)
         .hasExceptionThat()
         .isInstanceOf(NoSuchPackageException.class);
-    assertContainsEvent("invalid repository name 'x': repo names must start with '@'");
+    assertContainsEvent("invalid repository name 'x': workspace names must start with '@'");
   }
 
   @Test
@@ -463,7 +463,7 @@
         "    path = '/a_remote_repo',",
         "    repo_mapping = {},",
         ")");
-    RepositoryName name = RepositoryName.create("a_remote_repo");
+    RepositoryName name = RepositoryName.create("@a_remote_repo");
     SkyKey skyKey = RepositoryMappingValue.key(name);
 
     assertThatEvaluationResult(eval(skyKey))
@@ -471,7 +471,7 @@
         .isEqualTo(
             withMappingAllowingFallback(
                 ImmutableMap.of(
-                    RepositoryName.createUnvalidated(TestConstants.WORKSPACE_NAME),
+                    RepositoryName.createFromValidStrippedName(TestConstants.WORKSPACE_NAME),
                     RepositoryName.MAIN)));
   }
 
@@ -484,14 +484,14 @@
         "    name = 'a_remote_repo',",
         "    path = '/a_remote_repo',",
         ")");
-    RepositoryName name = RepositoryName.create("a_remote_repo");
+    RepositoryName name = RepositoryName.create("@a_remote_repo");
     SkyKey skyKey = RepositoryMappingValue.key(name);
 
     assertThatEvaluationResult(eval(skyKey))
         .hasEntryThat(skyKey)
         .isEqualTo(
             withMappingAllowingFallback(
-                ImmutableMap.of(RepositoryName.create("good"), RepositoryName.MAIN)));
+                ImmutableMap.of(RepositoryName.create("@good"), RepositoryName.MAIN)));
   }
 
   @Test
@@ -499,14 +499,14 @@
     new EqualsTester()
         .addEqualityGroup(
             withMappingAllowingFallback(
-                ImmutableMap.of(RepositoryName.create("foo"), RepositoryName.create("bar"))),
+                ImmutableMap.of(RepositoryName.create("@foo"), RepositoryName.create("@bar"))),
             withMappingAllowingFallback(
-                ImmutableMap.of(RepositoryName.create("foo"), RepositoryName.create("bar"))))
+                ImmutableMap.of(RepositoryName.create("@foo"), RepositoryName.create("@bar"))))
         .addEqualityGroup(
             withMappingAllowingFallback(
-                ImmutableMap.of(RepositoryName.create("fizz"), RepositoryName.create("buzz"))),
+                ImmutableMap.of(RepositoryName.create("@fizz"), RepositoryName.create("@buzz"))),
             withMappingAllowingFallback(
-                ImmutableMap.of(RepositoryName.create("fizz"), RepositoryName.create("buzz"))))
+                ImmutableMap.of(RepositoryName.create("@fizz"), RepositoryName.create("@buzz"))))
         .testEquals();
   }
 }
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunctionTest.java
index 95a1acc..0cd0436 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunctionTest.java
@@ -178,12 +178,12 @@
             "local_repository(name = 'a', path = '../a', repo_mapping = {'@x' : '@y'})",
             "load('//:b.bzl', 'b')",
             "local_repository(name = 'b', path = '../b', repo_mapping = {'@x' : '@y'})");
-    RepositoryName a = RepositoryName.create("a");
-    RepositoryName b = RepositoryName.create("b");
-    RepositoryName x = RepositoryName.create("x");
-    RepositoryName y = RepositoryName.create("y");
-    RepositoryName good = RepositoryName.create("good");
-    RepositoryName main = RepositoryName.create("");
+    RepositoryName a = RepositoryName.create("@a");
+    RepositoryName b = RepositoryName.create("@b");
+    RepositoryName x = RepositoryName.create("@x");
+    RepositoryName y = RepositoryName.create("@y");
+    RepositoryName good = RepositoryName.create("@good");
+    RepositoryName main = RepositoryName.create("@");
 
     SkyKey key0 = WorkspaceFileValue.key(workspace, 0);
     EvaluationResult<WorkspaceFileValue> result0 = eval(key0);
@@ -205,9 +205,9 @@
       TestManagedDirectoriesListener listener = new TestManagedDirectoriesListener();
       ManagedDirectoriesKnowledgeImpl knowledge = new ManagedDirectoriesKnowledgeImpl(listener);
 
-      RepositoryName one = RepositoryName.create("repo1");
-      RepositoryName two = RepositoryName.create("repo2");
-      RepositoryName three = RepositoryName.create("repo3");
+      RepositoryName one = RepositoryName.create("@repo1");
+      RepositoryName two = RepositoryName.create("@repo2");
+      RepositoryName three = RepositoryName.create("@repo3");
 
       PathFragment pf1 = PathFragment.create("dir1");
       PathFragment pf2 = PathFragment.create("dir2");
@@ -316,9 +316,9 @@
     assertThat(managedDirectories).hasSize(3);
     assertThat(managedDirectories)
         .containsExactly(
-            PathFragment.create("dir1"), RepositoryName.create("repo1"),
-            PathFragment.create("dir2"), RepositoryName.create("repo1"),
-            PathFragment.create("dir3"), RepositoryName.create("repo2"));
+            PathFragment.create("dir1"), RepositoryName.create("@repo1"),
+            PathFragment.create("dir2"), RepositoryName.create("@repo1"),
+            PathFragment.create("dir3"), RepositoryName.create("@repo2"));
     return workspaceFileValue;
   }
 
@@ -556,9 +556,9 @@
     SkyKey key1 = WorkspaceFileValue.key(workspace, 1);
     EvaluationResult<WorkspaceFileValue> result1 = eval(key1);
     WorkspaceFileValue value1 = result1.get(key1);
-    RepositoryName good = RepositoryName.create("good");
-    RepositoryName main = RepositoryName.create("");
-    RepositoryName secondary = RepositoryName.create("secondary");
+    RepositoryName good = RepositoryName.create("@good");
+    RepositoryName main = RepositoryName.create("@");
+    RepositoryName secondary = RepositoryName.create("@secondary");
     assertThat(value1.getRepositoryMapping()).containsEntry(secondary, ImmutableMap.of(good, main));
     assertNoEvents();
   }
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/packages/BazelPackageLoaderTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/packages/BazelPackageLoaderTest.java
index 1059d30..588f523 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/packages/BazelPackageLoaderTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/packages/BazelPackageLoaderTest.java
@@ -56,7 +56,7 @@
     embeddedBinaries.createDirectoryAndParents();
 
     mockEmbeddedTools(embeddedBinaries);
-    fetchExternalRepo(RepositoryName.create("bazel_tools"));
+    fetchExternalRepo(RepositoryName.create("@bazel_tools"));
   }
 
   private static void mockEmbeddedTools(Path embeddedBinaries) throws IOException {
@@ -132,7 +132,7 @@
     file("WORKSPACE", "local_repository(name = 'r', path='r')");
     file("r/WORKSPACE", "workspace(name = 'r')");
     file("r/good/BUILD", "sh_library(name = 'good')");
-    RepositoryName rRepoName = RepositoryName.create("r");
+    RepositoryName rRepoName = RepositoryName.create("@r");
     fetchExternalRepo(rRepoName);
 
     PackageIdentifier pkgId = PackageIdentifier.create(rRepoName, PathFragment.create("good"));
@@ -153,7 +153,7 @@
         "new_local_repository(name = 'r', path = '/r', "
             + "build_file_content = 'sh_library(name = \"good\")')");
     fs.getPath("/r").createDirectoryAndParents();
-    RepositoryName rRepoName = RepositoryName.create("r");
+    RepositoryName rRepoName = RepositoryName.create("@r");
     fetchExternalRepo(rRepoName);
 
     PackageIdentifier pkgId =
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/serialization/PackageIdentifierCodecTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/serialization/PackageIdentifierCodecTest.java
index 71e4e81..72bf2fe 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/serialization/PackageIdentifierCodecTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/serialization/PackageIdentifierCodecTest.java
@@ -27,7 +27,7 @@
 
   @Test
   public void testCodec() throws Exception {
-    new SerializationTester(PackageIdentifier.create("foo", PathFragment.create("bar/baz")))
+    new SerializationTester(PackageIdentifier.create("@foo", PathFragment.create("bar/baz")))
         .runTests();
   }
 }
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/serialization/RepositoryNameCodecTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/serialization/RepositoryNameCodecTest.java
index 06588d6..aeaeeda 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/serialization/RepositoryNameCodecTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/serialization/RepositoryNameCodecTest.java
@@ -27,7 +27,7 @@
   public void testCodec() throws Exception {
     new SerializationTester(
             RepositoryName.create(RepositoryName.MAIN.getName()),
-            RepositoryName.create("externalandshouldntexistinthisworkspace"))
+            RepositoryName.create("@externalandshouldntexistinthisworkspace"))
         .runTests();
   }
 }