Munchable limits product search results to only items its engine can fully evaluate
Munchable, a barcode-scanning food app, expanded its functionality by adding a name-based product search for users planning meals away from a shop. Developers found that returning unservable rows — such as products with withheld status or missing ingredient lists — caused a poor user experience where tapping a search result yielded a 'not found' response. To fix this, the team defined a single 'servable set' filter ensuring only products the rules engine can produce a real verdict for ever appear in search results. A partial expression index in PostgreSQL was built to match this exact filter, with shared code constants preventing the query and index from silently drifting out of sync. Additional safeguards include per-word query matching and escaping of special ILIKE characters to avoid subtly incorrect search results.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)
Log in to join the discussion and vote.
Log in