AI Slop Code RIsk Monitor

Huanshere/VideoLingo

Netflix-level subtitle cutting, translation, alignment, and even dubbing - one-click fully automated AI video subtitle team | Netflix级字幕切割、翻译、对齐、甚至加上配音,一键全自动视频搬运AI字幕组

40.4 High pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for Huanshere/VideoLingo, a Python project with 18,750 GitHub stars. SynthScan examined 27,347 lines of code across 164 source files, recording 713 pattern matches distributed across 16 syntactic categories. The legacy adjusted pattern signal is 40.4 (High pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

40.4
Adjusted Signal
40.4
Raw Pattern Score
100%
Time Factor
2026-09-30
Last Push
18.8K
Stars
Python
Language
27.3K
Lines of Code
164
Files
713
Pattern Hits
2026-10-12
Scan Date
0.10
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 50.7/100 · HIGH

Can maintainers explain intent, assumptions, and trade-offs? 415 finding(s).

Hallucinated Dependency & Supply Chain Risk 15.6/100 · LOW

Are imports declared and package/API names verified? 79 finding(s).

Agent Over-Engineering Ratio 81.8/100 · CRITICAL

Are wrappers, guards, and repeated structures necessary? 567 finding(s).

PR Review Velocity Impact 87.1/100 · CRITICAL

Which changes need focused human review? 713 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 0HIGH 17MEDIUM 162LOW 534

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 713 distinct pattern matches across 16 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Decorative Section Separators148 hits · 480 pts
SeverityFileLineSnippetContext
MEDIUM⚡config.yaml3# -------------------COMMENT
MEDIUM⚡config.yaml6# -------------------COMMENT
MEDIUMcore/prompts.py4## ================================================================COMMENT
MEDIUMcore/prompts.py51## ================================================================COMMENT
MEDIUMcore/prompts.py126## ================================================================STRING
MEDIUMcore/prompts.py266## ================================================================STRING
MEDIUMcore/prompts.py316## ================================================================STRING
MEDIUMcore/prompts.py357## ================================================================STRING
MEDIUMcore/spacy_utils/load_nlp_model.py57# --------------------COMMENT
MEDIUMcore/spacy_utils/load_nlp_model.py59# --------------------COMMENT
MEDIUMcore/utils/models.py1# ------------------------------------------COMMENT
MEDIUMcore/utils/models.py3# ------------------------------------------COMMENT
MEDIUM⚡core/utils/models.py17# ------------------------------------------COMMENT
MEDIUM⚡core/utils/models.py19# ------------------------------------------COMMENT
MEDIUM⚡core/utils/models.py29# ------------------------------------------COMMENT
MEDIUM⚡core/utils/models.py32# ------------------------------------------COMMENT
MEDIUM⚡core/utils/models.py36# ------------------------------------------COMMENT
MEDIUM⚡core/utils/models.py38# ------------------------------------------COMMENT
MEDIUMcore/utils/decorator.py8# ------------------------------COMMENT
MEDIUMcore/utils/decorator.py10# ------------------------------COMMENT
MEDIUMcore/utils/decorator.py34# ------------------------------COMMENT
MEDIUMcore/utils/decorator.py36# ------------------------------COMMENT
MEDIUMcore/utils/ask_gpt.py13# ------------COMMENT
MEDIUMcore/utils/ask_gpt.py15# ------------COMMENT
MEDIUMcore/utils/ask_gpt.py42# ------------COMMENT
MEDIUMcore/utils/ask_gpt.py44# ------------COMMENT
MEDIUMcore/utils/ask_gpt.py67# ------------COMMENT
MEDIUMcore/utils/ask_gpt.py69# ------------COMMENT
MEDIUMcore/utils/ask_gpt.py81# ------------COMMENT
MEDIUMcore/utils/ask_gpt.py83# ------------COMMENT
MEDIUMcore/utils/ask_gpt.py101# ------------COMMENT
MEDIUMcore/utils/ask_gpt.py103# ------------COMMENT
MEDIUMcore/utils/config_utils.py11# -----------------------COMMENT
MEDIUMcore/utils/config_utils.py13# -----------------------COMMENT
MEDIUMcore/st_utils/tts_settings.py19# ------------COMMENT
MEDIUMcore/st_utils/tts_settings.py21# ------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py109# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py111# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py181# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py183# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py226# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py228# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py480# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py482# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py550# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py552# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py644# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/qwen_asr_local.py646# ------------------------------------------------------------------COMMENT
MEDIUMcore/asr_backend/elevenlabs_asr.py10# ----------------------------------------COMMENT
MEDIUMcore/asr_backend/elevenlabs_asr.py12# ----------------------------------------COMMENT
MEDIUMcore/asr_backend/elevenlabs_asr.py27# ----------------------------COMMENT
MEDIUMcore/asr_backend/elevenlabs_asr.py29# ----------------------------COMMENT
MEDIUMcore/asr_backend/whisperX_local.py14# =============================================================================COMMENT
MEDIUMcore/asr_backend/whisperX_local.py16# =============================================================================COMMENT
MEDIUM⚡core/asr_backend/whisperX_local.py32# =============================================================================COMMENT
MEDIUM⚡core/asr_backend/whisperX_local.py34# =============================================================================COMMENT
MEDIUMcore/asr_backend/whisperX_local.py138 # -------------------------COMMENT
MEDIUMcore/asr_backend/whisperX_local.py140 # -------------------------COMMENT
MEDIUMcore/asr_backend/whisperX_local.py157 # -------------------------COMMENT
MEDIUMcore/asr_backend/whisperX_local.py159 # -------------------------COMMENT
88 more matches not shown…
Hyper-Verbose Identifiers348 hits · 307 pts
SeverityFileLineSnippetContext
LOWst.py134def _subtitle_length_controls():CODE
LOWinstaller.py224def required_by_other_packages(names: list[str]) -> set[str]:CODE
LOW⚡installer.py282def detect_cuda_version_from_smi() -> tuple[int, int] | None:CODE
LOWinstaller.py349def install_base_requirements(force: bool = False, upgrade: bool = False) -> None:CODE
LOWcore/prompts.py144def get_translation_style_prompt():STRING
LOWcore/prompts.py205def get_prompt_expressiveness(faithfulness_result, lines, shared_prompt):STRING
LOWcore/_3_2_split_meaning.py144def split_sentences_by_meaning():CODE
LOWcore/_8_2_dub_chunks.py64def analyze_subtitle_timing_and_speed(df):CODE
LOWcore/_4_1_summarize.py17def search_things_to_note_in_prompt(sentence):CODE
LOWcore/spacy_utils/split_long_by_root.py43def split_extremely_long_sentence(doc):CODE
LOWcore/tts_backend/sf_cosyvoice2.py30def cosyvoice_tts_for_videolingo(text, save_as, number, task_df):CODE
LOWcore/tts_backend/sf_fishtts.py181def siliconflow_fish_tts_for_videolingo(text, save_as, number, task_df):CODE
LOWcore/tts_backend/gpt_sovits_tts.py54def gpt_sovits_tts_for_videolingo(text, save_as, number, task_df):CODE
LOWcore/tts_backend/gpt_sovits_tts.py110def find_and_check_config_path(dubbing_character):CODE
LOWcore/st_utils/imports_and_utils.py8def download_subtitle_zip_button(text: str):CODE
LOWcore/st_utils/sidebar_setting.py18def burned_subtitles_settings():CODE
LOWcore/asr_backend/elevenlabs_asr.py66def transcribe_audio_elevenlabs(raw_audio_path, vocal_audio_path, start = None, end = None):CODE
LOW⚡core/asr_backend/whisperX_local.py42def _complete_model_directory(path):CODE
LOWtests/test_runtime_compatibility.py43def test_arbitrary_expressions_rejected(parse, text):CODE
LOWtests/test_runtime_compatibility.py48def test_old_workbook_readers(tmp_path, parse):CODE
LOWtests/test_runtime_compatibility.py60def test_sovits_network_failure_is_not_ready(monkeypatch):CODE
LOWtests/test_runtime_compatibility.py71def test_cache_resolution_offline_first(tmp_path, monkeypatch, mode):CODE
LOWtests/test_runtime_compatibility.py122def test_sovits_exited_child_and_cwd(tmp_path, monkeypatch):CODE
LOWtests/test_runtime_compatibility.py153def test_windows_log_roundtrip(tmp_path):CODE
LOW⚡tests/test_dubbing_loudness.py38def test_silence_does_not_drive_speech_gain(tmp_path, normalize):CODE
LOW⚡tests/test_dubbing_loudness.py47def test_gain_preserves_sentence_dynamics_and_peak_headroom(tmp_path, normalize):CODE
LOW⚡tests/test_dubbing_loudness.py55def test_transient_peak_limits_gain(tmp_path, normalize):CODE
LOW⚡tests/test_dubbing_loudness.py63def test_silent_audio_remains_silent(tmp_path, normalize):CODE
LOW⚡tests/test_dubbing_loudness.py68def test_short_stereo_clip_is_preserved(tmp_path, normalize):CODE
LOW⚡tests/test_dubbing_loudness.py75def test_ffmpeg_failure_is_reported(tmp_path, normalize):CODE
LOW⚡tests/test_dubbing_loudness.py81def test_final_video_merge_with_real_ffmpeg(tmp_path, monkeypatch, has_background):CODE
LOWtests/test_dubbing_loudness.py117def test_reference_audio_uses_raw_track_without_demucs(tmp_path, monkeypatch):CODE
LOWtests/test_ffmpeg_runtime.py26def test_whisperx_audio_probe_without_torchcodec():CODE
LOW⚡tests/test_ffmpeg_runtime.py55def test_override_is_process_local_and_idempotent(tmp_path, monkeypatch):STRING
LOW⚡tests/test_ffmpeg_runtime.py64def test_incomplete_override_is_not_silently_replaced(tmp_path, monkeypatch):STRING
LOW⚡tests/test_ffmpeg_runtime.py70def test_offline_check_never_downloads(tmp_path, monkeypatch):STRING
LOWtests/test_ffmpeg_runtime.py83def test_setup_repairs_incomplete_download(tmp_path, monkeypatch, surviving_name, readonly_marker):STRING
LOWtests/test_ffmpeg_runtime.py111def test_real_tools_work_without_system_ffmpeg(tmp_path):STRING
LOWtests/test_ffmpeg_runtime.py161def test_validation_rejects_build_without_subtitle_filter(tmp_path, monkeypatch):STRING
LOWtests/test_ffmpeg_runtime.py171def test_managed_cli_does_not_hide_whisperx_dlls(tmp_path, monkeypatch):STRING
LOW⚡tests/test_audio_timeline.py33def test_all_extraction_paths_preserve_timeline(tmp_path, monkeypatch, function, encoder):CODE
LOW⚡tests/test_audio_timeline.py43def test_existing_audio_is_not_overwritten(tmp_path, monkeypatch):CODE
LOW⚡tests/test_audio_timeline.py53def test_decoded_duration_follows_source_clock(tmp_path, shift):CODE
LOWtests/test_transcription_cache.py30 def test_identity_uses_content_and_settings_not_path_or_key(self):CODE
LOWtests/test_transcription_cache.py41 def test_identity_separates_local_backends_and_qwen_options(self):CODE
LOWtests/test_transcription_cache.py48 def test_mai_cache_ignores_credentials_and_local_model_settings(self):CODE
LOWtests/test_transcription_cache.py78 def test_identity_tracks_asr_package_versions(self):CODE
LOWtests/test_transcription_cache.py90 def test_corrupt_and_invalid_results_are_misses(self):CODE
LOWtests/test_transcription_cache.py101 def test_failed_atomic_write_does_not_publish_partial_result(self):CODE
LOWtests/test_transcription_cache.py120 def test_complete_hit_recreates_workbook_without_asr_and_keeps_downstream_audio(self):CODE
LOW⚡tests/test_transcription_cache.py131 def test_partial_failure_reuses_successful_segment(self):CODE
LOW⚡tests/test_transcription_cache.py141 def test_disabled_cache_calls_backend_again(self):CODE
LOW⚡tests/test_transcription_cache.py150 def test_cancelled_result_is_not_cached(self):CODE
LOWtests/test_pipeline_integration.py42def test_video_translation_and_dubbing(configured_workdir):CODE
LOWtests/test_pipeline_integration.py57def test_audio_only_translation(configured_workdir):CODE
LOW⚡tests/test_mai_asr.py28 def test_word_timestamps_and_language_survive_conversion(self):CODE
LOW⚡tests/test_mai_asr.py37 def test_definition_requests_clean_word_timestamps(self):CODE
LOW⚡tests/test_mai_asr.py47 def test_resource_endpoint_cannot_send_audio_and_key_to_another_host(self):CODE
LOW⚡tests/test_mai_asr.py57 def test_legacy_config_detects_region_and_retries_transient_errors(self):CODE
LOWtests/test_mai_asr.py88 def test_openrouter_key_uses_its_endpoint_and_preserves_word_timing(self):CODE
288 more matches not shown…
Unused Imports76 hits · 76 pts
SeverityFileLineSnippetContext
LOWsetup_env.py8CODE
LOWst.py17CODE
LOWstart.py7CODE
LOWinstaller.py22CODE
LOWruntime_libraries.py108CODE
LOWinstall.py8CODE
LOWcore/_3_1_split_nlp.py1CODE
LOWcore/_11_merge_audio.py7CODE
LOWcore/_11_merge_audio.py8CODE
LOWcore/translate_lines.py7CODE
LOWcore/_9_refer_audio.py6CODE
LOWcore/_9_refer_audio.py7CODE
LOWcore/_9_refer_audio.py11CODE
LOWcore/_8_1_audio_task.py8CODE
LOWcore/_8_1_audio_task.py9CODE
LOWcore/task_runner.py3CODE
LOWcore/_7_sub_into_vid.py5CODE
LOWcore/_6_gen_sub.py7CODE
LOWcore/_6_gen_sub.py8CODE
LOWcore/_4_2_translate.py8CODE
LOWcore/_4_2_translate.py12CODE
LOWcore/_1_ytdlp.py6CODE
LOWcore/prompts.py2CODE
LOWcore/_5_split_sub.py12CODE
LOWcore/_5_split_sub.py14CODE
LOWcore/_3_2_split_meaning.py8CODE
LOWcore/_10_gen_audio.py15CODE
LOWcore/_10_gen_audio.py16CODE
LOWcore/_2_asr.py1CODE
LOWcore/_2_asr.py4CODE
LOWcore/_8_2_dub_chunks.py7CODE
LOWcore/_8_2_dub_chunks.py8CODE
LOWcore/_4_1_summarize.py4CODE
LOWcore/_12_dub_to_vid.py10CODE
LOWcore/_12_dub_to_vid.py11CODE
LOWcore/spacy_utils/__init__.py1CODE
LOWcore/spacy_utils/__init__.py2CODE
LOWcore/spacy_utils/__init__.py3CODE
LOWcore/spacy_utils/__init__.py4CODE
LOWcore/spacy_utils/__init__.py5CODE
LOWcore/spacy_utils/split_by_comma.py4CODE
LOWcore/spacy_utils/split_long_by_root.py5CODE
LOWcore/utils/__init__.py4CODE
LOWcore/utils/__init__.py5CODE
LOWcore/utils/__init__.py5CODE
LOWcore/utils/__init__.py6CODE
LOWcore/utils/__init__.py6CODE
LOWcore/utils/__init__.py6CODE
LOWcore/utils/__init__.py6CODE
LOWcore/utils/__init__.py6CODE
LOWcore/utils/__init__.py6CODE
LOWcore/utils/__init__.py7CODE
LOWcore/tts_backend/sf_cosyvoice2.py6CODE
LOWcore/tts_backend/fish_audio_tts.py11CODE
LOWcore/tts_backend/tts_main.py15CODE
LOWcore/tts_backend/sf_fishtts.py13CODE
LOWcore/tts_backend/sf_fishtts.py14CODE
LOWcore/tts_backend/edge_tts.py3CODE
LOWcore/tts_backend/gpt_sovits_tts.py3CODE
LOWcore/tts_backend/gpt_sovits_tts.py7CODE
16 more matches not shown…
Excessive Try-Catch Wrapping53 hits · 72 pts
SeverityFileLineSnippetContext
LOWinstaller.py90 except Exception as exc:CODE
LOWinstaller.py113 except Exception:CODE
LOWinstaller.py131 except Exception:CODE
LOW⚡installer.py278 except Exception:CODE
LOW⚡installer.py288 except Exception:CODE
LOWinstaller.py324 except Exception as exc:CODE
LOWinstaller.py414 except Exception as exc:CODE
LOWinstaller.py478 except Exception as exc:CODE
MEDIUMinstaller.py282def detect_cuda_version_from_smi() -> tuple[int, int] | None:CODE
LOW⚡core/translate_lines.py76 except Exception as e:CODE
LOWcore/_8_1_audio_task.py38 except Exception:CODE
LOWcore/task_runner.py160 except Exception as e:CODE
LOWcore/_7_sub_into_vid.py77 except Exception as e:CODE
MEDIUMcore/_7_sub_into_vid.py13def check_gpu_available():CODE
LOWcore/_1_ytdlp.py167 except Exception:CODE
MEDIUMcore/_1_ytdlp.py21def update_ytdlp():CODE
LOWcore/_3_2_split_meaning.py90 except Exception as e:CODE
LOWcore/_10_gen_audio.py108 except Exception as e:CODE
LOWcore/_10_gen_audio.py130 except Exception as e:CODE
LOWcore/pipeline.py89 except Exception as e: # locked by the spreadsheet program, no longer a spreadsheet, a missing columnCODE
LOW⚡core/utils/delete_retry_dubbing.py16 except Exception as e:CODE
MEDIUM⚡core/utils/delete_retry_dubbing.py17 print(f"Error deleting {file_path}: {str(e)}")CODE
LOW⚡core/utils/delete_retry_dubbing.py26 except Exception as e:CODE
MEDIUM⚡core/utils/delete_retry_dubbing.py27 print(f"Error deleting folder {segs_folder}: {str(e)}")CODE
LOWcore/utils/decorator.py22 except Exception as e:CODE
LOWcore/utils/pypi_autochoose.py81 except Exception as exc:CODE
LOW⚡core/utils/onekeycleanup.py65 except Exception as e:CODE
MEDIUM⚡core/utils/onekeycleanup.py67 print(f"Error message: {str(e)}")CODE
LOW⚡core/utils/onekeycleanup.py68 except Exception as e:CODE
MEDIUM⚡core/utils/onekeycleanup.py70 print(f"Error message: {str(e)}")CODE
MEDIUMcore/utils/onekeycleanup.py42def move_file(src, dst):CODE
LOWcore/tts_backend/sf_cosyvoice2.py45 except Exception as e:CODE
LOWcore/tts_backend/tts_main.py79 except Exception as e:CODE
LOWcore/tts_backend/estimate_duration.py55 except Exception:CODE
LOWcore/tts_backend/estimate_duration.py62 except Exception:CODE
LOWcore/tts_backend/gpt_sovits_tts.py94 except Exception as e:CODE
LOWcore/tts_backend/_302_f5tts.py72 except Exception as e:CODE
LOWcore/tts_backend/custom_tts.py29 except Exception as e:CODE
MEDIUMcore/tts_backend/custom_tts.py30 print(f"Error occurred during TTS conversion: {str(e)}")CODE
LOWcore/st_utils/download_video_section.py131 except Exception:CODE
LOWcore/st_utils/download_video_section.py162 except Exception as e:CODE
LOWcore/st_utils/download_video_section.py178 except Exception:CODE
LOWcore/st_utils/sidebar_setting.py103 except Exception:CODE
LOWcore/st_utils/sidebar_setting.py502 except Exception as e:CODE
LOWcore/asr_backend/audio_preprocess.py37 except Exception:CODE
LOWcore/asr_backend/audio_preprocess.py121 except Exception as e:CODE
LOWtranslations/translations.py45 except Exception:CODE
LOWtranslations/translations.py64 except Exception:CODE
LOWtranslations/translations.py78 except Exception:CODE
LOWtranslations/translations.py90 except Exception:CODE
LOWtranslations/translations.py96 except Exception:CODE
MEDIUMtranslations/translations.py40def _config_language():CODE
MEDIUMtranslations/translations.py49def _streamlit_language():CODE
Empty Error Handlers14 hits · 70 pts
SeverityFileLineSnippetContext
HIGHst.py130except OSError:CODE
HIGHinstaller.py288except Exception:CODE
HIGHinstaller.py607except (ImportError, RuntimeError, OSError):CODE
HIGHcore/utils/onekeycleanup.py39except OSError:CODE
HIGHcore/utils/subtitle_style.py85except KeyError:CODE
HIGHcore/st_utils/download_video_section.py131except Exception:CODE
HIGHcore/asr_backend/qwen_asr_local.py564except ImportError:CODE
HIGHcore/asr_backend/transcription_cache.py97except (OSError, ValueError, TypeError, AttributeError):CODE
HIGHcore/asr_backend/transcription_cache.py113except (OSError, TypeError, ValueError):CODE
HIGHcore/asr_backend/transcription_cache.py120except OSError:CODE
HIGHtests/test_dependencies.py698except requests.RequestException:CODE
HIGHtranslations/translations.py78except Exception:CODE
HIGHtranslations/translations.py90except Exception:CODE
HIGHtranslations/translations.py96except Exception:CODE
Deep Nesting48 hits · 47 pts
SeverityFileLineSnippetContext
LOWst.py41CODE
LOWst.py202CODE
LOWst.py267CODE
LOWinstaller.py448CODE
LOWinstaller.py578CODE
LOWapi.py102CODE
LOWruntime_libraries.py17CODE
LOWlaunch.py25CODE
LOWcore/_11_merge_audio.py56CODE
LOWcore/_8_1_audio_task.py52CODE
LOWcore/_4_2_translate.py56CODE
LOWcore/_5_split_sub.py19CODE
LOWcore/_5_split_sub.py21CODE
LOWcore/_10_gen_audio.py33CODE
LOWcore/_10_gen_audio.py91CODE
LOWcore/_10_gen_audio.py173CODE
LOWcore/_2_asr.py38CODE
LOWcore/spacy_utils/split_by_connector.py8CODE
LOWcore/spacy_utils/split_by_connector.py84CODE
LOWcore/spacy_utils/split_long_by_root.py10CODE
LOWcore/spacy_utils/split_long_by_root.py64CODE
LOWcore/utils/decorator.py12CODE
LOWcore/utils/decorator.py13CODE
LOWcore/utils/decorator.py15CODE
LOWcore/utils/ask_gpt.py32CODE
LOWcore/utils/pypi_autochoose.py60CODE
LOWcore/tts_backend/tts_main.py24CODE
LOWcore/tts_backend/sf_fishtts.py26CODE
LOWcore/tts_backend/sf_fishtts.py181CODE
LOWcore/tts_backend/estimate_duration.py25CODE
LOWcore/tts_backend/estimate_duration.py50CODE
LOWcore/tts_backend/estimate_duration.py75CODE
LOWcore/tts_backend/gpt_sovits_tts.py54CODE
LOWcore/tts_backend/gpt_sovits_tts.py126CODE
LOWcore/tts_backend/gpt_sovits_tts.py143CODE
LOWcore/st_utils/imports_and_utils.py8CODE
LOWcore/st_utils/download_video_section.py88CODE
LOWcore/st_utils/download_video_section.py104CODE
LOWcore/st_utils/sidebar_setting.py120CODE
LOWcore/asr_backend/qwen_asr_local.py649CODE
LOWcore/asr_backend/transcription_cache.py65CODE
LOWcore/asr_backend/elevenlabs_asr.py66CODE
LOWcore/asr_backend/audio_preprocess.py164CODE
LOWcore/asr_backend/demucs_vl.py92CODE
LOWtests/test_dependencies.py450CODE
LOWtests/test_dependencies.py676CODE
LOWtests/test_asr_runtime.py85CODE
LOWtests/test_ytdlp.py12CODE
Magic Placeholder Names2 hits · 12 pts
SeverityFileLineSnippetContext
HIGH⚡config.yaml14 key: 'YOUR_API_KEY'CODE
HIGHconfig.yaml119 api_key: 'YOUR_API_KEY'CODE
Self-Referential Comments3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUMcore/_7_sub_into_vid.py33 # Create a black frameCOMMENT
MEDIUMcore/tts_backend/sf_fishtts.py104 # Create an empty audio segmentCOMMENT
MEDIUMcore/tts_backend/_302_f5tts.py54 # Create an empty audio segmentCOMMENT
Verbosity Indicators3 hits · 6 pts
SeverityFileLineSnippetContext
LOWcore/translate_lines.py46 ## Step 1: Faithful to the Original TextCOMMENT
LOW⚡core/translate_lines.py70 ## Step 2: Express SmoothlyCOMMENT
LOW⚡tests/test_audio_extract_quality.py41# Step 2: raw extraction quality (v2.2.1 parity, configurable)COMMENT
Structural Annotation Overuse3 hits · 6 pts
SeverityFileLineSnippetContext
LOWcore/translate_lines.py46 ## Step 1: Faithful to the Original TextCOMMENT
LOW⚡core/translate_lines.py70 ## Step 2: Express SmoothlyCOMMENT
LOW⚡tests/test_audio_extract_quality.py41# Step 2: raw extraction quality (v2.2.1 parity, configurable)COMMENT
Cross-Language Confusion1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHcore/_1_ytdlp.py54 raise ValueError('youtube.proxy must be null, an empty string, or a proxy URL')CODE
Over-Commented Block5 hits · 5 pts
SeverityFileLineSnippetContext
LOWcore/spacy_utils/split_long_by_root.py101 # nlp = init_nlp()COMMENT
LOWcore/tts_backend/sf_fishtts.py221 # siliconflow_fish_tts("使用客制化音色测试", "custom_test.wav", mode="custom", voice_id="speech:your-voice-name:cm04pf7az0006COMMENT
LOWcore/tts_backend/edge_tts.py1from pathlib import PathCOMMENT
LOWcore/asr_backend/qwen_asr_local.py41# 1.6x that, and a 180 s window gets 2372 tokens (the old flat cap was 2048).COMMENT
LOWdocs/next-env.d.ts1/// <reference types="next" />COMMENT
Modern Structural Boilerplate4 hits · 4 pts
SeverityFileLineSnippetContext
LOWcore/__init__.py23__all__ = [CODE
LOWcore/spacy_utils/__init__.py7__all__ = [CODE
LOW⚡core/utils/models.py40__all__ = [CODE
LOWcore/utils/__init__.py31__all__ = [CODE
Redundant / Tautological Comments3 hits · 4 pts
SeverityFileLineSnippetContext
LOWcore/tts_backend/tts_main.py26 # Check if text is empty or single character, single character voiceovers are prone to bugsCOMMENT
LOWcore/tts_backend/gpt_sovits_tts.py86 # Check if the reference audio file existsCOMMENT
LOWcore/tts_backend/gpt_sovits_tts.py144 # Check if port 9880 is already in useCOMMENT
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWcore/_1_ytdlp.py171 # Example usageCOMMENT
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippetContext
LOWcore/utils/decorator.py51 def test_function():CODE