feat: discovery filters + split enrich pipeline

Merged Phạm Thúc Trường Sơn requested to merge feat/discovery-filters into main

FE changes: sales-it-fe!35 (merged)

  • Add structured discovery filters (taxonomy → intent) and persist filters_json on search history
  • Split LITE into search/validation vs enrichment/scoring streams
  • Harden enrichment concurrency: stable handoff IDs, degraded-lead SSE, CAS history merges, progress-queue isolation

New Endpoints

/lead-finder/filter-options JSON → FilterOptionsResponse (countries, cities + country_id, industries, funding, employee_bands, technologies) Curated taxonomies for the Lead Finder filter bar (aligned with ICP matching).

/lead-finder/enrich/stream Body LeadEnrichmentRequest (companies[] required, max 25; optional ask/query, filters, intent, intent_schema, enrichment_context, locale, limit, history_id) → SSE Enrich + score selected ICP-validated companies. On completed, merges visible leads into Mongo search history when history_id is set (CAS / identity merge).

Edited by Phạm Thúc Trường Sơn

Merge request reports