Improve error messages for ActionTemplateExpansionFunction preconditions checks.

PiperOrigin-RevId: 421064197
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionFunction.java
index 259e9f4..5ce5967 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionFunction.java
@@ -168,18 +168,23 @@
       for (Artifact output : action.getOutputs()) {
         Preconditions.checkState(
             output.getArtifactOwner().equals(key),
-            "%s generated an action with an output owned by the wrong owner: %s",
+            "%s generated an action with an output owned by the wrong owner %s not %s (%s)",
             actionTemplate,
+            output.getArtifactOwner(),
+            key,
             action);
         Preconditions.checkState(
             output.hasParent(),
-            "%s generated an action which outputs a non-TreeFileArtifact: %s",
+            "%s generated an action which outputs a non-TreeFileArtifact %s (%s)",
             actionTemplate,
+            output,
             action);
         Preconditions.checkState(
             outputs.contains(output.getParent()),
-            "%s generated an action with an output under an undeclared tree: %s",
+            "%s generated an action with an output %s under an undeclared tree not in %s (%s)",
             actionTemplate,
+            output,
+            outputs,
             action);
       }
     }
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionFunctionTest.java
index c196841..bf7c240 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/ActionTemplateExpansionFunctionTest.java
@@ -324,7 +324,10 @@
     assertThat(e)
         .hasCauseThat()
         .hasMessageThat()
-        .contains(template + " generated an action with an output under an undeclared tree");
+        .contains(
+            template
+                + " generated an action with an output File:[[<execution_root>]out]undeclared/child"
+                + " under an undeclared tree not in [File:[[<execution_root>]out]output]");
   }
 
   @Test