feat(curation): auto-curation after crawl + quality messaging

Automate curation:
- Add runPostCrawlCuration() to DB queries — runs after every
  full and incremental crawl (classify, dedup, category counts)
- No more need for manual curate.mjs runs after each crawl

Quality messaging:
- Homepage stats label: "Skills" → "Curated Skills" (en/fa)
- Add curation note: "deduplicated and quality-filtered from X+ repos"
- Update fallback counts from 172K to 16K across all touchpoints
  (BetaBanner, getting-started prompts, email templates)
- getting-started skill count query now uses browse-ready filter

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
airano
2026-02-19 15:06:18 +03:30
parent caca09fbe7
commit c8216dfcd2
8 changed files with 123 additions and 11 deletions

View File

@@ -47,10 +47,11 @@
"ctaSecondary": "Getting Started"
},
"stats": {
"skills": "Skills",
"skills": "Curated Skills",
"downloads": "Downloads",
"contributors": "Contributors",
"categories": "Categories"
"categories": "Categories",
"curationNote": "Every skill is deduplicated and quality-filtered from {totalIndexed}+ indexed repositories"
},
"featured": {
"title": "Featured Skills",

View File

@@ -47,10 +47,11 @@
"ctaSecondary": "راهنمای شروع"
},
"stats": {
"skills": "مهارت",
"skills": "مهارت برگزیده",
"downloads": "دانلود",
"contributors": "مشارکت‌کننده",
"categories": "دسته‌بندی"
"categories": "دسته‌بندی",
"curationNote": "هر مهارت از میان {totalIndexed}+ مخزن ایندکس‌شده، حذف تکراری و فیلتر کیفیت شده است"
},
"featured": {
"title": "مهارت‌های ویژه",