From 75e144838dfc9a22b061fc3d170b95f81b0ea915 Mon Sep 17 00:00:00 2001 From: bong-water-water-bong Date: Tue, 10 Nov 2026 20:23:40 -0400 Subject: [PATCH] tests: fa_prefill_full_cache.512 appends each projection match once (engine #2079) match_dispatch_at_index() already appends the match to the plan. The case appended it a second time, from the moved-from match: the f16 copy of the projection input was offered again with an empty name and the plan refused it as a conflict. The conflict message now names the recorded and the offered alternate, which is how the empty name showed. Co-Authored-By: Claude Fable 5.2 --- ggml/src/ggml-hrx/dispatch/command-plan-metadata.cpp | 6 ++++-- tests/test-hrx-ops.cpp | 1 - 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/ggml/src/ggml-hrx/dispatch/command-plan-metadata.cpp b/ggml/src/ggml-hrx/dispatch/command-plan-metadata.cpp index 89d9572d66f8..0f9144ca1e0f 100644 --- a/ggml/src/ggml-hrx/dispatch/command-plan-metadata.cpp +++ b/ggml/src/ggml-hrx/dispatch/command-plan-metadata.cpp @@ -81,8 +81,10 @@ bool CommandPlanMetadata::append_alternate_value(CommandPlanAlternateValue alter if (alternate_value_matches(existing, alternate)) { return true; } - status.log("conflicting alternate value for graph value %d type %d byte_count %zu", - alternate.graph_value.value, static_cast(alternate.type), alternate.byte_count); + status.log("conflicting alternate value for graph value %d type %d byte_count %zu: '%s' (value %d) is recorded, '%s' (value %d) was offered", + alternate.graph_value.value, static_cast(alternate.type), alternate.byte_count, + existing.name.c_str(), existing.alternate_value.value, alternate.name.c_str(), + alternate.alternate_value.value); return false; } } diff --git a/tests/test-hrx-ops.cpp b/tests/test-hrx-ops.cpp index be17e1e2fff4..4bb72cd7698f 100644 --- a/tests/test-hrx-ops.cpp +++ b/tests/test-hrx-ops.cpp @@ -2289,7 +2289,6 @@ static void run_qwen_full_cache_prefill_flash_attention_scheduling_case(int64_t } ggml::hrx::DispatchMatch projection_match; match_dispatch_at_index(imported.graph, *registry, plan, covered_nodes, index, projection_match); - append_match_to_plan(plan, projection_match, covered_nodes); } ggml::hrx::DispatchMatch postprocess_match; match_dispatch_at_index(imported.graph, *registry, plan, covered_nodes, postprocess_index, postprocess_match);