Commit f3586e66b for llama.cpp

commit f3586e66bc916d672773d4a6505513ba91a3595c
Author: aiqubits <aiqubits@hotmail.com>
Date:   Sun Nov 1 02:09:48 2026 +0800

    server: cap shared decision prefixes at the first output (#30710)

    Limit the shared prefix to the first required output position of the parent and each child task.
    This keeps decision output embeddings available in the final batch when questions share option tokens.

    Fixes #30482

    Signed-off-by: aiqubits <aiqubits@hotmail.com>

diff --git a/tools/server/server-decision.cpp b/tools/server/server-decision.cpp
index 8b9911f64..a48786c80 100644
--- a/tools/server/server-decision.cpp
+++ b/tools/server/server-decision.cpp
@@ -1762,7 +1762,7 @@ std::vector<server_task> server_decision_group_tasks(std::vector<server_task> &&
         size_t n_shared = parent.tokens.size() - 1;
         for (size_t j = i + 1; j < end; j++) {
             n_shared = std::min(n_shared, parent.tokens.get_common_prefix(tasks[j].tokens));
-            n_shared = std::min(n_shared, tasks[j].tokens.size() - 1);
+            n_shared = std::min({n_shared, tasks[j].tokens.size() - 1, (size_t) parent.decision.pos_first(), (size_t) tasks[j].decision.pos_first()});
         }

         if (end - i < 2 || n_shared == 0) {