Shopping List and Scan History

This phase introduced Shopping List as its own bounded context and Go service, plus the client-orchestrated re-buy and re-stock interactions between Shopping List and Fridge.

Current boundaries

  • Shopping List and Fridge never write each other's schema and do not call each other directly.
  • Each may request trusted product data from Passport through its internal API.
  • The consumer application turns an explicit user confirmation into separate Gateway calls.
  • Shopping List follows the single core package and directional adapter layout, not the older domain/application/adapters Go structure.

Scan History is a device-local recent-product cache, capped at 100 entries and deduplicated by product. It is searchable but is not a complete audit record, cross-device history, or server-owned ScanRecord view.

Raw SQL resets and destructive bootstrap commands belong in an environment-specific runbook, not this historical record. The four-locale translation set retains the native-review gap recorded in Product Passport Polish.