The following diff should fix this bug, could you please test it?

diff --git a/lisp/completion-preview.el b/lisp/completion-preview.el
index 4928d9a8824..eb4b9111b30 100644
--- a/lisp/completion-preview.el
+++ b/lisp/completion-preview.el
@@ -520,6 +520,7 @@ completion-preview-complete
             ;; hook update the completion preview in case the candidate
             ;; can be completed further.
             (when (functionp efn)
+              (completion-preview-active-mode -1)
               (funcall efn (concat base com) (if (cdr all) 'exact 'finished)))
           ;; Otherwise, remove the common prefix from the preview.
           (completion-preview--inhibit-update)



Regards,

Eshel

Hi Eshel,

 I applied this patch to my emacs-30.1 source tree and I can confirm that
it fixes the issue. Thank you for addressing this so quickly!

Vincent