758eb93e20
- Extended shopping_total cache TTL from 1h to 24h - Added inline price fallback: when cache is empty/stale, computes total from shopping_price_cache.json (no AI calls); joins shopping_list with products to get canonical shopping_name; tries both v3 and legacy v0 key formats to maximise cache hit rate; works in both internal and Bring shopping modes (removed isShoppingBringMode guard — table is always populated by sync) - Fixed haInventorySensor + haRefreshPrices: shopping_list has no quantity/unit/checked columns; changed to SELECT name with COALESCE(p.shopping_name, sl.name) join, defaults qty=1/unit=pz