So you've concluded that the shells do not function differently, but it's the different
user that causes
find to produce the different output.
I could account for this if in the current directory there was a file whose permissions did not allow spot to list it. User root would see it, but user spot would not. For my hunch to be borne out as correct, though, your finding would need to be the exact opposite to what you show.
Run as root,
find ......... .wh* would see some local file matching .wh* and likely be unsuccessful in finding an identically-named one in /initrd/pup_rw
If I switch to sh shell with user "spot", it's the same as it was with bash.
But the block of code you provide in confirmation isn't the block that would confirm it.
I think you have in haste simply duplicated the last part of the first example?
Any idea why the behaviour is as you found it? The mystery has merely shifted focus.