1fb00d48a9
- cleanupObsoleteBringItems now protects items the user explicitly added from the suggestions panel via a '_userPinnedBring' localStorage set (30-day TTL, cleared on force-sync) - cleanup now protects ALL smart-predicted items (any urgency), not only critical/high — if the algorithm still flags it, it should stay in list - autoAddCriticalItems: bypass purchased-blocklist for depleted items (current_qty=0) so products that ran out are always re-added to Bring - forceSyncBring also clears _userPinnedBring for a full reset