Under normal circumstances, I see no reason to stock up on goods for a long time.
ALWAYS stock on non perishable goods, especially when there is no reason, so that you have it when the reason comes and avoid the rush of everybody else trying to procure the same things at outrageous prices or simply going out of stock.
By the time the reason comes, it will be too late. Never count on disasters to send you an advance notice. Yes, same as keeping your savings in USD rather than BTC, once it falls, you won't have a chance to exchange, you are already poor, thank your politicians.