Add explicit assertion (that will occasionally fail) that output of an action is not a source artifact. Hopefully additional output will help debug why this is happening.

PiperOrigin-RevId: 294558280
diff --git a/src/main/java/com/google/devtools/build/lib/actions/Actions.java b/src/main/java/com/google/devtools/build/lib/actions/Actions.java
index 35d4670..359df27 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/Actions.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/Actions.java
@@ -226,6 +226,12 @@
     for (ActionAnalysisMetadata action : actions) {
       ActionLookupData generatingActionKey = ActionLookupData.create(actionLookupKey, actionIndex);
       for (Artifact artifact : action.getOutputs()) {
+        Preconditions.checkState(
+            !artifact.isSourceArtifact(),
+            "Source in outputs: %s %s %s",
+            artifact,
+            generatingActionKey,
+            action);
         Artifact.DerivedArtifact output = (Artifact.DerivedArtifact) artifact;
         // Has an artifact with this execPath been seen before?
         Artifact.DerivedArtifact equalOutput =