GRUB should follow the UEFI's BootCurrent to find the root instead of checking the existence of /.disk/info or /.disk/mini-info.
It looks like the followings. (pseudocode)
if ! search --disk --set=root UEFI:BootCurrent; then
if ! search --file --set=root /.disk/info; then search --file --set=root /.disk/mini-info
fi
fi
set prefix=($root)/boot/grub
Or you can put UEFI's BootCurrent device or partition in the first order to check when running `search --file --set=root`.
In short, if GRUB never checks UEFI BootCurrent, the issue is impossible to fix.
GRUB should follow the UEFI's BootCurrent to find the root instead of checking the existence of /.disk/info or /.disk/mini-info.
It looks like the followings. (pseudocode)
if ! search --disk --set=root UEFI:BootCurrent; then
search --file --set=root /.disk/mini-info ($root) /boot/grub
if ! search --file --set=root /.disk/info; then
fi
fi
set prefix=
Or you can put UEFI's BootCurrent device or partition in the first order to check when running `search --file --set=root`.
In short, if GRUB never checks UEFI BootCurrent, the issue is impossible to fix.