| name | review-provider |
| description | Review a Merino suggest provider implementation against codebase patterns and best practices |
Review a Suggest Provider
Review the provider specified in $ARGUMENTS against Merino's patterns and best practices. If no provider is specified, ask which provider to review.
Step 1: Read the provider implementation
Read all files in merino/providers/suggest/{provider_name}/ including:
provider.py
backends/protocol.py (if exists)
- All backend implementations
- Any other files in the directory
Also read the provider's registration in merino/providers/suggest/manager.py (find the matching ProviderType and case block).
Read the provider's config section in merino/configs/default.toml.
Read tests in tests/unit/providers/suggest/{provider_name}/ and tests/integration/providers/suggest/{provider_name}/.
Step 2: Check against patterns
Review each of these areas and report findings. For each area, state PASS, WARN, or FAIL with an explanation.
Provider Class Structure
Error Handling
Query Normalization
Metrics
Caching (if applicable)
Configuration
Custom Details
Backend Protocol (if applicable)
Testing
Data Refresh (if applicable)
Step 3: Report
Present findings as a checklist with PASS/WARN/FAIL for each area. Include:
- A summary of the provider's health (good / needs attention / significant issues)
- Specific actionable recommendations for any WARN or FAIL items
- Code snippets showing exactly what to fix, referencing existing providers as examples