fix: smart routing in Browse — enrichment filters use /api/enriched, discovery uses /api/domains
Root cause: loadDomains() always hit /api/domains (DuckDB 72M rows) and filtered niche/site_type/prescreen_status client-side on a random page of 100 domains — virtually none had been classified, so Live+Beauty+Ecommerce always returned 0. - loadDomains() now routes to /api/enriched when any enrichment filter is active (prescreen_status, niche, site_type, country) — all filters are server-side SQLite - Falls back to /api/domains only when no enrichment filters are set (discovery mode) - alpha_only and no_sld supported in both modes: - DuckDB: existing regex support - SQLite: LIKE patterns (no hyphens/digits) + dot-count (no SLD) - Add alpha_only/no_sld params to /api/enriched endpoint and get_enriched() - Fix stale d.classified reference in prescreenOne toast Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -155,6 +155,8 @@ async def enriched(
|
||||
site_type: str = Query(None),
|
||||
keyword: str = Query(None),
|
||||
tld: str = Query(None),
|
||||
alpha_only: bool = Query(False),
|
||||
no_sld: bool = Query(False),
|
||||
page: int = Query(1, ge=1),
|
||||
limit: int = Query(100, ge=1, le=1000),
|
||||
):
|
||||
@@ -162,6 +164,7 @@ async def enriched(
|
||||
min_score=min_score, country=country,
|
||||
prescreen_status=prescreen_status, niche=niche, site_type=site_type,
|
||||
keyword=keyword, tld=tld,
|
||||
alpha_only=alpha_only, no_sld=no_sld,
|
||||
page=page, limit=limit,
|
||||
)
|
||||
return {"page": page, "limit": limit, "total": total, "results": rows}
|
||||
|
||||
Reference in New Issue
Block a user