Improve error message when a node with a hermetic function is marked changed.

PiperOrigin-RevId: 644354056
Change-Id: Ia5cc843b75d781b248ac708e7200fcd810e18e5c
diff --git a/src/main/java/com/google/devtools/build/skyframe/InvalidatingNodeVisitor.java b/src/main/java/com/google/devtools/build/skyframe/InvalidatingNodeVisitor.java
index 51aa4e7..78bbcb9 100644
--- a/src/main/java/com/google/devtools/build/skyframe/InvalidatingNodeVisitor.java
+++ b/src/main/java/com/google/devtools/build/skyframe/InvalidatingNodeVisitor.java
@@ -482,7 +482,9 @@
         if (setToCheck.add(key)) {
           Preconditions.checkState(
               !isChanged || key.functionName().getHermeticity() != FunctionHermeticity.HERMETIC,
-              key);
+              "Nodes with hermetic functions cannot be marked 'changed': "
+                  + "%s function:%s hermeticity:%s"
+                      .formatted(key, key.functionName(), key.functionName().getHermeticity()));
           keysToGet.add(key);
         }
       }