diff --git a/docs/community_growth_20k.md b/docs/community_growth_20k.md index e16c977be..8907b4be1 100644 --- a/docs/community_growth_20k.md +++ b/docs/community_growth_20k.md @@ -176,6 +176,12 @@ Set `GITHUB_TOKEN` when running this from CI or a shared network so GitHub's pub | `crownpku/Awesome-Chinese-NLP#32` Speech Recognition and Audio section | Creates a Chinese-NLP discovery path that can route users to FunASR, SenseVoice, Fun-ASR-Nano, and FunClip together | PR is clean and mergeable; monitor without status bumps unless maintainers request section naming or Chinese wording changes. | | `mahseema/awesome-ai-tools#1403` FunASR tool listing | Complements the FunClip listing in the same AI-tools catalog with the core ASR toolkit | PR is clean and mergeable; keep FunASR and FunClip descriptions distinct so one does not look like a duplicate of the other. | | `INTERMT/Awesome-PyTorch-Chinese#5` FunASR Chinese PyTorch listing | Adds FunASR to a Chinese PyTorch resource list used by developers looking for local speech models and toolkits | PR is clean and mergeable; monitor for maintainer style feedback and keep the link pointed at the GitHub repo rather than a transient model page. | +| `krzjoa/awesome-python-data-science#99` FunASR computer-audition listing | Adds FunASR to a Python data-science discovery list where speech/audio tooling is compared with broader ML stacks | PR is clean and mergeable; maintain a short toolkit-focused description and avoid duplicate comments unless maintainers ask for category changes. | +| `zzw922cn/awesome-speech-recognition-speech-synthesis-papers#27` FunAudioLLM paper listing | Places Paraformer, FunASR, SenseVoice, and Fun-ASR-Nano papers in a speech-recognition/synthesis paper list used by researchers | PR is clean and mergeable; keep paper links stable and be ready to adjust ordering or paper metadata if requested. | +| `Osmantic/ODS#1639` SenseVoice/FunASR STT backend | Adds a direct local STT backend to an app surface where users can choose open speech engines | PR is mergeable but blocked by review/process state; wait for maintainer feedback and keep any follow-up focused on optional dependency and endpoint behavior. | +| `faroit/awesome-python-scientific-audio#85` FunASR scientific-audio listing | Exposes FunASR to Python users browsing scientific audio and speech-processing toolkits | PR is clean and mergeable; monitor for taxonomy or wording feedback without status bumps. | +| `joewongjc/type4me#207` Qwen3-only local ASR mode | Helps a local dictation app use Qwen3-ASR final transcription without keeping SenseVoice/VAD preview models resident | Keep as draft until a full Xcode/XCTest run or real Qwen3-only ASR smoke test validates the runtime path; do not request review yet. | +| `ga642381/speech-trident#31` SenseVoice model-list entry | Adds SenseVoice to a speech/audio language-model catalog that routes model researchers toward FunASR ecosystem components | PR is clean and mergeable; monitor for citation or category feedback. | | `vinta/awesome-python#3246` SenseVoice listing | Places SenseVoice in the largest Python discovery list as a practical local speech-recognition option | PR is blocked by maintainer/review gate rather than a known code failure; watch for category or project-quality feedback before changing scope. | | `RVC-Boss/GPT-SoVITS#2801` Fun-ASR-Nano fallback fix | Improves a high-star voice generation workflow by making Fun-ASR-Nano setup errors fall back cleanly instead of blocking users | PR is clean and mergeable; monitor for maintainer questions and keep the fix narrowly scoped to registration/fallback behavior. | | `jobbole/awesome-python-cn#141` FunASR Chinese Python listing | Adds FunASR to a long-lived Chinese Python resource list used by domestic developers | PR is clean and mergeable; avoid duplicate comments unless maintainers ask for ordering or Chinese wording changes. | diff --git a/scripts/collect_growth_metrics.py b/scripts/collect_growth_metrics.py index 447d6fc50..dbf28ceaf 100755 --- a/scripts/collect_growth_metrics.py +++ b/scripts/collect_growth_metrics.py @@ -57,6 +57,14 @@ DEFAULT_INTEGRATION_PRS = [ "tensorchord/Awesome-LLMOps#533", "rafska/awesome-local-llm#118", "mahseema/awesome-ai-tools#1689", + "mahseema/awesome-ai-tools#1403", + "INTERMT/Awesome-PyTorch-Chinese#5", + "krzjoa/awesome-python-data-science#99", + "zzw922cn/awesome-speech-recognition-speech-synthesis-papers#27", + "Osmantic/ODS#1639", + "faroit/awesome-python-scientific-audio#85", + "joewongjc/type4me#207", + "ga642381/speech-trident#31", "vinta/awesome-python#3246", "fighting41love/funNLP#478", "josephmisiti/awesome-machine-learning#1339", @@ -164,6 +172,30 @@ KNOWN_ASSISTED_REVIEW_REQUESTS = { "mahseema/awesome-ai-tools#1689": { "reason": "review evidence already posted; avoid duplicate pings", }, + "mahseema/awesome-ai-tools#1403": { + "reason": "FunASR discovery-list evidence already posted; avoid duplicate pings", + }, + "INTERMT/Awesome-PyTorch-Chinese#5": { + "reason": "FunASR discovery-list evidence already posted; avoid duplicate pings", + }, + "krzjoa/awesome-python-data-science#99": { + "reason": "FunASR discovery-list evidence already posted; avoid duplicate pings", + }, + "zzw922cn/awesome-speech-recognition-speech-synthesis-papers#27": { + "reason": "FunAudioLLM paper-list evidence already posted; avoid duplicate pings", + }, + "Osmantic/ODS#1639": { + "reason": "SenseVoice/FunASR backend evidence already posted; avoid duplicate pings", + }, + "faroit/awesome-python-scientific-audio#85": { + "reason": "FunASR scientific-audio listing evidence already posted; avoid duplicate pings", + }, + "joewongjc/type4me#207": { + "reason": "draft validation status already posted; keep draft until Qwen3-only ASR smoke test", + }, + "ga642381/speech-trident#31": { + "reason": "SenseVoice model-list evidence already posted; avoid duplicate pings", + }, "ai4s-research/awesome-ai-for-science#69": { "reason": "review evidence already posted; avoid duplicate pings", }, diff --git a/tests/test_collect_growth_metrics.py b/tests/test_collect_growth_metrics.py index 8f76c1567..f07cd0d82 100644 --- a/tests/test_collect_growth_metrics.py +++ b/tests/test_collect_growth_metrics.py @@ -160,6 +160,40 @@ def test_high_star_awesome_discovery_lanes_wait_for_maintainer_review(): assert expected_prs.issubset(set(module.KNOWN_ASSISTED_REVIEW_REQUESTS)) +def test_default_integration_prs_include_missing_validated_discovery_lanes(): + module = load_growth_metrics_module() + + expected_prs = { + "mahseema/awesome-ai-tools#1403", + "INTERMT/Awesome-PyTorch-Chinese#5", + "krzjoa/awesome-python-data-science#99", + "zzw922cn/awesome-speech-recognition-speech-synthesis-papers#27", + "Osmantic/ODS#1639", + "faroit/awesome-python-scientific-audio#85", + "joewongjc/type4me#207", + "ga642381/speech-trident#31", + } + + assert expected_prs.issubset(set(module.DEFAULT_INTEGRATION_PRS)) + + +def test_missing_validated_discovery_lanes_wait_for_maintainer_review(): + module = load_growth_metrics_module() + + expected_prs = { + "mahseema/awesome-ai-tools#1403", + "INTERMT/Awesome-PyTorch-Chinese#5", + "krzjoa/awesome-python-data-science#99", + "zzw922cn/awesome-speech-recognition-speech-synthesis-papers#27", + "Osmantic/ODS#1639", + "faroit/awesome-python-scientific-audio#85", + "joewongjc/type4me#207", + "ga642381/speech-trident#31", + } + + assert expected_prs.issubset(set(module.KNOWN_ASSISTED_REVIEW_REQUESTS)) + + def test_default_integration_prs_include_mcp_discovery_lanes(): module = load_growth_metrics_module()