fix forward for https://github.com/bazelbuild/bazel/commit/ceddfb1ece1f8ed7ff81558fa1751e6526df031b. Make sure the use the appropriate check for alias + feature flag so trimming does not get applied

PiperOrigin-RevId: 563185304
Change-Id: I6f1d3f0fb1a5c85c980faa196832f094ac4c9666
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/producers/TargetAndConfigurationProducer.java b/src/main/java/com/google/devtools/build/lib/analysis/producers/TargetAndConfigurationProducer.java
index e3b2e15..3f8bbba 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/producers/TargetAndConfigurationProducer.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/producers/TargetAndConfigurationProducer.java
@@ -466,9 +466,7 @@
         transition = transitionFactory.create(transitionData);
       }
 
-      boolean isAlias = target.getAssociatedRule().getName().equals("alias");
-
-      if (trimmingTransitionFactory != null && !isAlias) {
+      if (trimmingTransitionFactory != null) {
         var trimmingTransition = trimmingTransitionFactory.create(transitionData);
         if (transition != null) {
           transition = ComposingTransition.of(transition, trimmingTransition);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/config/ConfigFeatureFlagTaggedTrimmingTransitionFactory.java b/src/main/java/com/google/devtools/build/lib/rules/config/ConfigFeatureFlagTaggedTrimmingTransitionFactory.java
index 3cdec35..27c190c 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/config/ConfigFeatureFlagTaggedTrimmingTransitionFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/config/ConfigFeatureFlagTaggedTrimmingTransitionFactory.java
@@ -20,10 +20,12 @@
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.ImmutableSortedSet;
 import com.google.common.collect.Ordering;
+import com.google.devtools.build.lib.analysis.AliasProvider;
 import com.google.devtools.build.lib.analysis.config.BuildOptions;
 import com.google.devtools.build.lib.analysis.config.BuildOptionsView;
 import com.google.devtools.build.lib.analysis.config.CoreOptions;
 import com.google.devtools.build.lib.analysis.config.FragmentOptions;
+import com.google.devtools.build.lib.analysis.config.transitions.NoTransition;
 import com.google.devtools.build.lib.analysis.config.transitions.PatchTransition;
 import com.google.devtools.build.lib.analysis.config.transitions.TransitionFactory;
 import com.google.devtools.build.lib.cmdline.Label;
@@ -94,6 +96,12 @@
   public PatchTransition create(RuleTransitionData ruleData) {
     NonconfiguredAttributeMapper attrs = NonconfiguredAttributeMapper.of(ruleData.rule());
     RuleClass ruleClass = ruleData.rule().getRuleClassObject();
+
+    if (AliasProvider.mayBeAlias(ruleData.rule())) {
+      // As a convenience, do not require transitive_config to be set for alias rule.
+      return NoTransition.INSTANCE;
+    }
+
     if (ruleClass.getName().equals(ConfigRuleClasses.ConfigFeatureFlagRule.RULE_NAME)) {
       return new ConfigFeatureFlagTaggedTrimmingTransition(
           ImmutableSortedSet.of(ruleData.rule().getLabel()));