I'm not so sure this is correct.
John's Bitcoincore full node will likely see the transaction, even in an unconfirmed state, because the transaction will be propagated from other nodes' mempools. This is exactly how you can see incoming transactions in your wallet even before they are confirmed.
Apologies for the confusion. I recently remembered a similar scenario and decided to test if both wallets would show the unconfirmed transaction. Initially, the transaction didn't appear on the second wallet, but now I understand why. When I initiated the transaction, the first wallet broadcasted it, expecting the second wallet to synchronize and update accordingly. However, this synchronization didn't happen immediately. Only after I received one confirmation did I check again and noticed the transaction displayed on the second wallet.
This experience taught me that the second wallet may not show unconfirmed transactions until they're added to a block or confirmed, which I now know was wrong. Thank you for the correction, I've also learned from this and corrected a wrong experience or idea.