Override TopLevelAspectsKey.toString() to show aspect details.

Previously `TopLevelAspectsKey` inherited the default `toString()` implementation, so crash messages and debug logs only showed an identity hash instead of the aspect classes, target, and parameters.

PiperOrigin-RevId: 1006309156
Change-Id: Ie9a52c2b83d56b01d7d99ec028ab715a133dd476
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/AspectKeyCreator.java b/src/main/java/com/google/devtools/build/lib/skyframe/AspectKeyCreator.java
index 493e132..810960d 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/AspectKeyCreator.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/AspectKeyCreator.java
@@ -423,6 +423,16 @@
     }
 
     @Override
+    public String toString() {
+      return MoreObjects.toStringHelper(this)
+          .add("topLevelAspectsClasses", topLevelAspectsClasses)
+          .add("targetLabel", targetLabel)
+          .add("baseConfiguredTargetKey", getBaseConfiguredTargetKey())
+          .add("topLevelAspectsParameters", topLevelAspectsParameters)
+          .toString();
+    }
+
+    @Override
     public boolean equals(Object o) {
       if (o == this) {
         return true;