From 0837a5190501466d3b4545c72f26ef4e8dbbedef Mon Sep 17 00:00:00 2001 From: Sokwhan Huh Date: Thu, 14 May 2026 18:21:01 -0700 Subject: [PATCH] Fix double qualification in NamespacedAttribute PiperOrigin-RevId: 915718942 --- .../cel/runtime/planner/NamespacedAttribute.java | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/runtime/src/main/java/dev/cel/runtime/planner/NamespacedAttribute.java b/runtime/src/main/java/dev/cel/runtime/planner/NamespacedAttribute.java index 561e25f7f..95a4489fd 100644 --- a/runtime/src/main/java/dev/cel/runtime/planner/NamespacedAttribute.java +++ b/runtime/src/main/java/dev/cel/runtime/planner/NamespacedAttribute.java @@ -171,19 +171,15 @@ private GlobalResolver unwrapToNonLocal(GlobalResolver resolver) { @Override public NamespacedAttribute addQualifier(Qualifier qualifier) { - ImmutableMap.Builder attributesBuilder = ImmutableMap.builder(); - CelAttribute.Qualifier celQualifier = CelAttribute.Qualifier.fromGeneric(qualifier.value()); - - for (Map.Entry entry : candidateAttributes.entrySet()) { - attributesBuilder.put(entry.getKey(), entry.getValue().qualify(celQualifier)); - } - return new NamespacedAttribute( typeProvider, celValueConverter, - attributesBuilder.buildOrThrow(), + candidateAttributes, disambiguateNames, - ImmutableList.builder().addAll(qualifiers).add(qualifier).build()); + ImmutableList.builderWithExpectedSize(qualifiers.size() + 1) + .addAll(qualifiers) + .add(qualifier) + .build()); } private static Object applyQualifiers(