Case study
Receipts Discovery
Work on a trust-first beauty discovery system where search, image evidence, taxonomy policy, and ranking all need to show their working.
Tension
The product problem beneath the work.
Beauty discovery is full of high-stakes personal decisions and weak evidence. A provider can look relevant because their text is good, their tags are broad, or their profile is polished. Receipts needed a ranking model that could prefer proof over performance.
Threads
Three product contracts behind trustworthy discovery.
Owned
What I was responsible for, and what it changed.
| Thread | Work | Signal |
|---|---|---|
| Evidence model | Shaped a trust model where provider capability comes from structured reviews, portfolio media, tag confirmations, and visible evidence. | Discovery can explain why a provider appears instead of relying on empty popularity or self-claimed expertise. |
| Taxonomy policy | Defined taxonomy, tagging policy, and discovery facets so image analysis stays inside visually reliable buckets and user language maps safely at query time. | The product can use AI for visual evidence without pretending to infer traits that belong to profile or behaviour. |
| Deterministic ranking | Built the search model around Postgres projections, full-text search, trigram matching, taxonomy mapping, and deterministic reranking. | Ranking becomes a product contract: structured evidence beats text-heavy matches when trust should matter more. |
Mechanism
The technical layers behind those responsibilities.
| Layer | Detail |
|---|---|
| Feedback loop | Review/portfolio scopes persist accepted, rejected, and manual tag feedback into consensus and training data. |
| Tagging policy | AI outputs visually reliable texture buckets; profile and behaviour signals handle traits that should not be image-inferred. |
| Manual language | Aliases and fuzzy/manual mapping let user language resolve into canonical taxonomy without making AI labels over-specific. |
| Retrieval | Postgres search projection combines structured tags, generated tsvectors, full-text rank, and trigram-style loose matching. |
| Rerank | Deterministic ranker balances taxonomy evidence, trust multipliers, review quality, profile affinity, feedback, and text relevance. |
Shape
How a search result becomes accountable.
- A user or provider contributes review or portfolio evidence.
- AI suggestions are filtered through tagging policy before they can matter.
- Manual language maps into canonical taxonomy when it is reliable enough.
- Search retrieves candidates through structured tags and messy text.
- Ranking balances relevance with trust, feedback, and quality signals.
Reflection
What the project clarified about trust.
The product is strongest when trust is treated as infrastructure, not copy. If the system can say why a provider appears, what evidence supports it, and where the model refused to overclaim, discovery starts to feel useful rather than merely persuasive.