一款专注于Ai翻译的工具,一键自动翻译RPG SLG游戏,Epub TXT小说,PDF Word MD文档,Srt Vtt Lrc字幕等等复杂长文本。
This report summarizes scanner evidence for NEKOparapa/AiNiee, a Python project with 6,343 GitHub stars. SynthScan examined 56,765 lines of code across 282 source files, recording 867 pattern matches distributed across 15 syntactic categories. The legacy adjusted pattern signal is 21.9 (Elevated 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.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 442 finding(s).
Are imports declared and package/API names verified? 29 finding(s).
Are wrappers, guards, and repeated structures necessary? 656 finding(s).
Which changes need focused human review? 867 finding(s).
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.
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.
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.
The scanner identified 867 distinct pattern matches across 15 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.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | AiNiee.py | 102 | except OSError: | CODE |
| HIGH | ModuleFolders/Config/Config.py | 74 | except OSError: | CODE |
| HIGH | ModuleFolders/Log/Log.py | 31 | except Exception: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 392 | except Exception: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 88 | except OSError: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 415 | except Exception: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 437 | except Exception: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 493 | except Exception: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 579 | except Exception: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 593 | except OSError: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 335 | except Exception: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 350 | except Exception: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 357 | except ValueError: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 532 | except Exception: | CODE |
| HIGH | ModuleFolders/Log/LogSystem.py | 380 | except Exception: | CODE |
| HIGH | ModuleFolders/Service/Cache/CacheManager.py | 240 | except OSError: | CODE |
| HIGH | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 215 | except Exception: | CODE |
| HIGH | ModuleFolders/Service/HttpService/HttpService.py | 386 | except: | CODE |
| HIGH | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 698 | except json.JSONDecodeError: | CODE |
| HIGH | …olders/Infrastructure/LLMRequester/LLMClientFactory.py | 292 | except Exception: | CODE |
| HIGH | ModuleFolders/Infrastructure/TaskConfig/TaskConfig.py | 343 | except Exception: | CODE |
| HIGH | ModuleFolders/Domain/FileOutputer/RenpyWriter.py | 150 | except Exception: | CODE |
| HIGH | ModuleFolders/Domain/FileOutputer/TransWriter.py | 57 | except IndexError: | CODE |
| HIGH | …duleFolders/Domain/FileAccessor/BabeldocPdfAccessor.py | 196 | except FinishReading: | CODE |
| HIGH | ModuleFolders/Domain/FileReader/DirectoryReader.py | 35 | except ValueError: | CODE |
| HIGH | ModuleFolders/Domain/FileReader/ReaderUtil.py | 222 | except UnicodeDecodeError: | CODE |
| HIGH | ModuleFolders/Domain/FileReader/AssReader.py | 64 | except IndexError: | CODE |
| HIGH | ModuleFolders/Base/Base.py | 98 | except ValueError: | CODE |
| HIGH | …rface/EditView/Proofreading/Search/SearchResultPage.py | 44 | except Exception: | CODE |
| HIGH | …rface/EditView/Proofreading/Search/SearchResultPage.py | 48 | except Exception: | CODE |
| HIGH | …EditView/Proofreading/Common/EditableIssueTablePage.py | 58 | except Exception: | CODE |
| HIGH | …EditView/Proofreading/Common/EditableIssueTablePage.py | 63 | except Exception: | CODE |
| HIGH | …nterface/EditView/Proofreading/Table/BasicTablePage.py | 43 | except Exception: | CODE |
| HIGH | …nterface/EditView/Proofreading/Table/BasicTablePage.py | 47 | except Exception: | CODE |
| HIGH | UserInterface/Widget/SegmentedControl.py | 50 | except Exception: | CODE |
| HIGH | UserInterface/Widget/SegmentedControl.py | 56 | except (TypeError, RuntimeError): | CODE |
| HIGH | UserInterface/LogView/LogViewPage.py | 188 | except RuntimeError: | CODE |
| HIGH | UserInterface/LogView/LogViewPage.py | 195 | except Exception: | CODE |
| HIGH | UserInterface/LogView/LogViewPage.py | 199 | except (TypeError, RuntimeError): | CODE |
| HIGH | UserInterface/LogView/LogViewPage.py | 203 | except (TypeError, RuntimeError): | CODE |
| HIGH | UserInterface/LogView/LogViewPage.py | 207 | except (RuntimeError, AttributeError): | CODE |
| HIGH | UserInterface/LogView/LogViewPage.py | 211 | except (RuntimeError, AttributeError): | CODE |
| HIGH | UserInterface/LogView/LogViewPage.py | 217 | except Exception: | CODE |
| HIGH | UserInterface/Platform/AddAPIDialog.py | 36 | except ImportError: | CODE |
| HIGH | UserInterface/Platform/ModelBrowserDialog.py | 121 | except Exception: | CODE |
| HIGH | UserInterface/Platform/ModelBrowserDialog.py | 173 | except Exception: | CODE |
| HIGH | UserInterface/Platform/ModelBrowserDialog.py | 218 | except (TypeError, RuntimeError): | CODE |
| HIGH | UserInterface/Platform/ModelBrowserDialog.py | 363 | except Exception: | CODE |
| HIGH | UserInterface/Platform/ModelBrowserDialog.py | 375 | except Exception: | CODE |
| HIGH | UserInterface/Platform/ModelBrowserDialog.py | 387 | except Exception: | CODE |
| HIGH | UserInterface/Platform/ModelBrowserDialog.py | 401 | except Exception: | CODE |
| HIGH | UserInterface/Platform/APIEditPage.py | 364 | except Exception: | CODE |
| HIGH | UserInterface/VersionManager/VersionManager.py | 973 | except Exception: | CODE |
| HIGH | UserInterface/VersionManager/VersionManager.py | 978 | except Exception: | CODE |
| HIGH | UserInterface/VersionManager/VersionManager.py | 261 | except OSError: | CODE |
| HIGH | UserInterface/VersionManager/VersionManager.py | 672 | except OSError: | CODE |
| HIGH | UserInterface/VersionManager/VersionManager.py | 692 | except OSError: | CODE |
| HIGH | UserInterface/VersionManager/VersionManager.py | 959 | except OSError: | CODE |
| HIGH | UserInterface/VersionManager/VersionManager.py | 971 | except Exception: | CODE |
| HIGH | UserInterface/VersionManager/VersionManager.py | 1019 | except OSError: | CODE |
| 5 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | AiNiee.py | 172 | except Exception as e: | CODE |
| LOW | ModuleFolders/Config/Config.py | 52 | except Exception as error: | CODE |
| LOW | ModuleFolders/Log/Log.py | 31 | except Exception: | CODE |
| LOW | ModuleFolders/Log/Log.py | 40 | except Exception: | CODE |
| LOW | ModuleFolders/Log/Log.py | 70 | except Exception: | CODE |
| LOW | ModuleFolders/Log/Log.py | 110 | except Exception: | CODE |
| MEDIUM | ModuleFolders/Log/Log.py | 37 | def _safe_str(value) -> str: | CODE |
| MEDIUM | ModuleFolders/Log/LogSystem.py | 434 | def flush(self): | CODE |
| MEDIUM | ModuleFolders/Log/LogSystem.py | 455 | def isatty(self): | CODE |
| MEDIUM | ModuleFolders/Log/LogSystem.py | 536 | def _excepthook(exc_type, exc_value, exc_tb) -> None: | CODE |
| LOW⚡ | ModuleFolders/Log/LogSystem.py | 380 | except Exception: | CODE |
| LOW⚡ | ModuleFolders/Log/LogSystem.py | 384 | except Exception: | CODE |
| LOW⚡ | ModuleFolders/Log/LogSystem.py | 392 | except Exception: | CODE |
| LOW⚡ | ModuleFolders/Log/LogSystem.py | 520 | except Exception: | CODE |
| LOW⚡ | ModuleFolders/Log/LogSystem.py | 528 | except Exception: | CODE |
| LOW⚡ | ModuleFolders/Log/LogSystem.py | 532 | except Exception: | CODE |
| LOW⚡ | ModuleFolders/Log/LogSystem.py | 541 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 112 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 278 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 335 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 350 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 415 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 430 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 437 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 452 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 458 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 493 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 554 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 579 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 598 | except Exception: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 633 | except Exception as e: | CODE |
| LOW | ModuleFolders/Log/LogSystem.py | 654 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/Cache/CacheItem.py | 84 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/Cache/CacheItem.py | 118 | except Exception as e: | CODE |
| MEDIUM | ModuleFolders/Service/Cache/CacheManager.py | 656 | print(f"Error: 找不到文件 {storage_path}") | CODE |
| MEDIUM | ModuleFolders/Service/Cache/CacheManager.py | 682 | print(f"Error: 找不到文件 {storage_path}") | CODE |
| LOW | …eFolders/Service/TranslationChecker/LanguageChecker.py | 261 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 215 | except Exception: | CODE |
| LOW | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 239 | except Exception: | CODE |
| LOW | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 254 | except Exception: | CODE |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 269 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 293 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 438 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 570 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/NameExtractor/NameExtractor.py | 242 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/HttpService/HttpService.py | 95 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/HttpService/HttpService.py | 293 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/HttpService/HttpService.py | 337 | except Exception as e: | CODE |
| LOW | ModuleFolders/Service/HttpService/HttpService.py | 374 | except Exception as e: | CODE |
| MEDIUM | ModuleFolders/Service/HttpService/HttpService.py | 199 | def _parse_int(value) -> int: | CODE |
| MEDIUM | ModuleFolders/Service/HttpService/HttpService.py | 350 | def send_request(): | CODE |
| LOW⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 252 | except Exception as error: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 212 | except Exception as error: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 340 | except Exception as error: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 679 | except Exception as error: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 59 | except Exception: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 171 | except Exception as error: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 217 | except Exception as error: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 237 | except Exception as error: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 282 | except Exception as error: | CODE |
| 175 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | AiNiee.py | 142 | def prepare_runtime_environment() -> str: | CODE |
| LOW | ModuleFolders/Config/FilePathConfig.py | 194 | def bundled_tiktoken_cache_dir() -> Path: | CODE |
| LOW | ModuleFolders/Config/FilePathConfig.py | 249 | def default_polish_output_dir() -> Path: | CODE |
| LOW | ModuleFolders/Log/Log.py | 114 | def _gui_rows_from_rich_table(value): | CODE |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 65 | def on_manual_save_cache_requested(self, event: int, data: dict) -> None: | CODE |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 116 | def get_project_statistics_path(cls, project_id: str) -> str: | CODE |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 208 | def _write_project_cache_files(cls, project: CacheProject) -> None: | CODE |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 267 | def _build_history_entry_from_stats( | CODE |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 533 | def _reset_project_status_in_memory(self, task_mode: int) -> int: | CODE |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 671 | def update_generated_translation( | CODE |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 749 | def generate_analysis_source_chunks(self, limit_type: str, limit_count: int) -> List[List[dict]]: | CODE |
| LOW | …eFolders/Service/TranslationChecker/LanguageChecker.py | 80 | def _collect_lang_errors_from_cache(self) -> List[Dict]: | CODE |
| LOW | …eFolders/Service/TranslationChecker/LanguageChecker.py | 109 | def _build_language_issue_rows_from_results(self, results: List[Dict]) -> List[Dict]: | CODE |
| LOW | …eFolders/Service/TranslationChecker/LanguageChecker.py | 151 | def _build_language_report_rows(self, results: List[Dict]) -> List[Dict]: | CODE |
| LOW | …lders/Service/TranslationChecker/TerminologyChecker.py | 39 | def _get_project_analysis_data(self) -> Dict[str, Any]: | CODE |
| LOW | …lders/Service/TranslationChecker/TerminologyChecker.py | 61 | def _collect_merged_term_rows(self) -> List[Dict[str, str]]: | CODE |
| LOW | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 37 | def _build_missing_preserve_error(self, label: str, src_detail: str) -> str: | CODE |
| LOW | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 48 | def _get_project_analysis_data(self) -> Dict[str, Any]: | CODE |
| LOW | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 55 | def _collect_merged_exclusion_data(self) -> List[Dict[str, str]]: | CODE |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 174 | def glossary_translation_start(self, event: int, data: dict): | CODE |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 330 | def handle_table_translation_start(self, event, data: dict): | CODE |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 335 | def process_table_translation(self, data: dict): | CODE |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 472 | def handle_table_polish_start(self, event, data: dict): | CODE |
| LOW | ModuleFolders/Service/NameExtractor/NameExtractor.py | 203 | def extract_names_from_folder(self,folder_path_str: str) -> list: | CODE |
| LOW | ModuleFolders/Service/HttpService/HttpService.py | 18 | class RequestHandler(BaseHTTPRequestHandler): | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TranslatorUtil.py | 58 | def map_language_code_to_name(language_code: str) -> str: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TranslatorUtil.py | 82 | def map_language_name_to_code(language_name: str) -> str: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TranslatorUtil.py | 101 | def get_language_display_names(source_lang, target_lang): | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TranslatorUtil.py | 173 | def get_source_language_for_file(source_language,target_language, language_stats) -> str: | CODE |
| LOW⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 256 | def _get_recommended_translation_language_requirement(self) -> str: | CODE |
| LOW⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 265 | def _build_first_stage_prompt(self, source_text: str) -> tuple[str, list[dict]]: | CODE |
| LOW⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 491 | def _get_candidate_occurrence_count(self, source: str, candidate_type: str) -> int: | CODE |
| LOW⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 595 | def _calculate_progress_percent(self, phase: str, current: int = 0, total: int = 0) -> int: | CODE |
| LOW⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 620 | def _execute_analysis_request( | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 344 | def _prepare_reduction_batches(self, first_stage_results: list) -> list: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 423 | def _build_second_stage_prompt(self, batch: list) -> tuple[str, list[dict]]: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 143 | def _resolve_output_source_language(self, configured_source: str | None) -> str | None: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 155 | def _resolve_output_target_language(configured_target: str | None) -> str | None: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 159 | def _convert_translated_text_with_opencc(self, preset: str | None) -> bool: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 229 | def table_proofread_start_target(self, data: dict) -> None: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/ProofreadTask.py | 250 | def _build_single_proofread_prompt(self, item: dict) -> tuple[list[dict], str]: | CODE |
| LOW | ModuleFolders/Infrastructure/Tokener/TiktokenLoader.py | 26 | def _seed_cache_from_bundled_files(cache_dir: str, required_encodings: dict) -> None: | CODE |
| LOW | ModuleFolders/Infrastructure/Tokener/TiktokenLoader.py | 179 | def copy_cache_from_system_temp(): | CODE |
| LOW | …/Infrastructure/LLMRequester/AmazonbedrockRequester.py | 21 | def request_amazonbedrock_anthropic(self, messages, system_prompt, platform_config) -> tuple[bool, str, str, int, in | CODE |
| LOW | …lders/Infrastructure/LLMRequester/ModelConfigHelper.py | 16 | def get_claude_max_output_tokens(cls, model_name: str) -> int: | CODE |
| LOW | …lders/Infrastructure/LLMRequester/ModelConfigHelper.py | 23 | def is_claude_always_thinking_model(model_name: str) -> bool: | CODE |
| LOW | …lders/Infrastructure/LLMRequester/ModelConfigHelper.py | 40 | def get_google_max_output_tokens(cls, model_name: str) -> int: | CODE |
| LOW | …lders/Infrastructure/LLMRequester/ModelConfigHelper.py | 44 | def get_thinking_level_options(model_name: str) -> list[str]: | CODE |
| LOW | …olders/Infrastructure/LLMRequester/LLMClientFactory.py | 249 | def _create_anthropic_bedrock(self, config): | CODE |
| LOW | …Folders/Infrastructure/LLMRequester/OpenaiRequester.py | 16 | def _apply_volcengine_thinking_params( | CODE |
| LOW | …Folders/Infrastructure/LLMRequester/OpenaiRequester.py | 61 | def apply_platform_thinking_params(self, base_params: dict, platform_config: dict) -> dict: | CODE |
| LOW | ModuleFolders/Infrastructure/Platform/AppMetadata.py | 15 | def configure_application_metadata(app, version: str) -> None: | CODE |
| LOW | ModuleFolders/Infrastructure/Platform/RuntimeSetup.py | 29 | def prepare_working_directory(): | CODE |
| LOW | ModuleFolders/Infrastructure/Platform/RuntimeSetup.py | 71 | def _migrate_legacy_user_data() -> bool: | CODE |
| LOW | ModuleFolders/Infrastructure/Platform/RuntimeSetup.py | 118 | def _looks_like_pending_legacy_config() -> bool: | CODE |
| LOW | ModuleFolders/Infrastructure/TaskConfig/TaskConfig.py | 46 | def _normalize_project_table_rows( | CODE |
| LOW | ModuleFolders/Infrastructure/TaskConfig/TaskConfig.py | 103 | def _normalize_interface_role(self, interface_role: str | None) -> str: | CODE |
| LOW | ModuleFolders/Infrastructure/TaskConfig/TaskConfig.py | 147 | def resolve_platform_tag_for_role(self, interface_role: str | None = None) -> str | None: | CODE |
| LOW | ModuleFolders/Infrastructure/TaskConfig/TaskConfig.py | 252 | def sync_active_platform_settings(self) -> None: | CODE |
| LOW | ModuleFolders/Infrastructure/TaskConfig/TaskConfig.py | 258 | def prepare_for_active_platform(self, interface_role: str | None = None) -> None: | CODE |
| 193 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ModuleFolders/Config/Config.py | 34 | CODE | |
| LOW | ModuleFolders/Config/Config.py | 58 | CODE | |
| LOW | ModuleFolders/Config/Config.py | 126 | CODE | |
| LOW | ModuleFolders/Log/LogSystem.py | 236 | CODE | |
| LOW | ModuleFolders/Log/LogSystem.py | 360 | CODE | |
| LOW | ModuleFolders/Service/Cache/CacheProject.py | 75 | CODE | |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 208 | CODE | |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 443 | CODE | |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 533 | CODE | |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 651 | CODE | |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 692 | CODE | |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 734 | CODE | |
| LOW | ModuleFolders/Service/Cache/BaseCache.py | 25 | CODE | |
| LOW | ModuleFolders/Service/Cache/BaseCache.py | 64 | CODE | |
| LOW | …eFolders/Service/TranslationChecker/LanguageChecker.py | 109 | CODE | |
| LOW | …eFolders/Service/TranslationChecker/LanguageChecker.py | 174 | CODE | |
| LOW | …eFolders/Service/TranslationChecker/LanguageChecker.py | 309 | CODE | |
| LOW | …eFolders/Service/TranslationChecker/LanguageChecker.py | 459 | CODE | |
| LOW | …lders/Service/TranslationChecker/TerminologyChecker.py | 187 | CODE | |
| LOW | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 125 | CODE | |
| LOW | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 226 | CODE | |
| LOW | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 243 | CODE | |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 41 | CODE | |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 179 | CODE | |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 335 | CODE | |
| LOW | ModuleFolders/Service/SimpleExecutor/SimpleExecutor.py | 477 | CODE | |
| LOW | ModuleFolders/Service/NameExtractor/NameExtractor.py | 12 | CODE | |
| LOW | ModuleFolders/Service/NameExtractor/NameExtractor.py | 55 | CODE | |
| LOW | ModuleFolders/Service/NameExtractor/NameExtractor.py | 73 | CODE | |
| LOW | ModuleFolders/Service/NameExtractor/NameExtractor.py | 99 | CODE | |
| LOW | ModuleFolders/Service/NameExtractor/NameExtractor.py | 203 | CODE | |
| LOW | ModuleFolders/Service/HttpService/HttpService.py | 25 | CODE | |
| LOW | ModuleFolders/Service/HttpService/HttpService.py | 109 | CODE | |
| LOW | ModuleFolders/Service/TaskExecutor/TranslatorUtil.py | 136 | CODE | |
| LOW | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 48 | CODE | |
| LOW | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 344 | CODE | |
| LOW | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 503 | CODE | |
| LOW | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 620 | CODE | |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 16 | CODE | |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 352 | CODE | |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 551 | CODE | |
| LOW | ModuleFolders/Service/TaskExecutor/ProofreadTask.py | 24 | CODE | |
| LOW | ModuleFolders/Infrastructure/Tokener/BabeldocPatch.py | 20 | CODE | |
| LOW | ModuleFolders/Infrastructure/Tokener/BabeldocPatch.py | 37 | CODE | |
| LOW | ModuleFolders/Infrastructure/Tokener/TiktokenLoader.py | 72 | CODE | |
| LOW | …/Infrastructure/LLMRequester/AmazonbedrockRequester.py | 21 | CODE | |
| LOW | …/Infrastructure/LLMRequester/AmazonbedrockRequester.py | 97 | CODE | |
| LOW | …lders/Infrastructure/LLMRequester/LocalLLMRequester.py | 12 | CODE | |
| LOW | …Folders/Infrastructure/LLMRequester/GoogleRequester.py | 15 | CODE | |
| LOW | …uleFolders/Infrastructure/LLMRequester/LLMRequester.py | 14 | CODE | |
| LOW | …ders/Infrastructure/LLMRequester/AnthropicRequester.py | 12 | CODE | |
| LOW | …Folders/Infrastructure/LLMRequester/OpenaiRequester.py | 61 | CODE | |
| LOW | …eFolders/Domain/ResponseExtractor/ResponseExtractor.py | 131 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/DirectoryWriter.py | 25 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/PptxWriter.py | 20 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/CsvWriter.py | 19 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/FileOutputer.py | 180 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/RenpyWriter.py | 99 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/AssWriter.py | 39 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/TransWriter.py | 17 | CODE | |
| 94 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | ModuleFolders/Service/Cache/CacheItem.py | 6 | # ============================================================ | COMMENT |
| MEDIUM | ModuleFolders/Service/Cache/CacheItem.py | 8 | # ============================================================ | COMMENT |
| MEDIUM⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 315 | # ======================================================================== | COMMENT |
| MEDIUM⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 317 | # ======================================================================== | COMMENT |
| MEDIUM⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 487 | # ======================================================================== | COMMENT |
| MEDIUM⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 489 | # ======================================================================== | COMMENT |
| MEDIUM⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 591 | # ======================================================================== | COMMENT |
| MEDIUM⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 593 | # ======================================================================== | COMMENT |
| MEDIUM⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 616 | # --------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 618 | # --------------------------------------------------------- | COMMENT |
| MEDIUM | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 44 | # ======================================================================== | COMMENT |
| MEDIUM | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 46 | # ======================================================================== | COMMENT |
| MEDIUM | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 230 | # ======================================================================== | COMMENT |
| MEDIUM | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 232 | # ======================================================================== | COMMENT |
| MEDIUM⚡ | ModuleFolders/Domain/FileOutputer/FileOutputer.py | 13 | # ---------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | ModuleFolders/Domain/FileOutputer/FileOutputer.py | 15 | # ---------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | ModuleFolders/Domain/FileOutputer/FileOutputer.py | 22 | # ---------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | ModuleFolders/Domain/FileReader/FileReader.py | 15 | # ---------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | ModuleFolders/Domain/FileReader/FileReader.py | 17 | # ---------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | ModuleFolders/Domain/FileReader/FileReader.py | 24 | # ---------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | UserInterface/EditView/Analysis/AnalysisPage.py | 2091 | # ========================== | COMMENT |
| MEDIUM⚡ | UserInterface/EditView/Analysis/AnalysisPage.py | 2093 | # ========================== | COMMENT |
| MEDIUM | UserInterface/EditView/Analysis/AnalysisPage.py | 120 | # ========================== | COMMENT |
| MEDIUM | UserInterface/EditView/Analysis/AnalysisPage.py | 122 | # ========================== | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 651 | def update_item_text(self, storage_path: str, text_index: int, field_name: str, new_text: str) -> None: | CODE |
| LOW | ModuleFolders/Service/Cache/CacheManager.py | 787 | def set_analysis_data(self, analysis_data: dict) -> None: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TranslatorTask.py | 58 | def set_items(self, items: list[CacheItem]) -> None: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TranslatorTask.py | 62 | def set_previous_items(self, previous_items: list[CacheItem]) -> None: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/PolisherTask.py | 36 | def set_items(self, items: list[CacheItem]) -> None: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/PolisherTask.py | 39 | def set_previous_items(self, previous_items: list[CacheItem]) -> None: | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/TaskExecutor.py | 122 | def _set_active_executor(self, executor: concurrent.futures.ThreadPoolExecutor) -> None: | CODE |
| LOW | …olders/Infrastructure/RequestLimiter/RequestLimiter.py | 18 | def set_limit(self, rpm_limit: int) -> None: | CODE |
| LOW | UserInterface/EditView/EditViewPage.py | 64 | def set_current_step(self, route_key: str) -> None: | CODE |
| LOW | UserInterface/EditView/Analysis/AnalysisPage.py | 978 | def _set_filter_for_view(self, view_name: str, filter_value) -> None: | CODE |
| LOW | UserInterface/EditView/Analysis/AnalysisPage.py | 1931 | def _update_action_buttons(self, running: bool | None = None) -> None: | CODE |
| LOW | UserInterface/EditView/Translation/MonitoringPage.py | 168 | def update_time(self, event: int, data: dict) -> None: | CODE |
| LOW | UserInterface/EditView/Translation/MonitoringPage.py | 199 | def update_line(self, event: int, data: dict) -> None: | CODE |
| LOW | UserInterface/EditView/Translation/MonitoringPage.py | 237 | def update_task(self, event: int, data: dict) -> None: | CODE |
| LOW | UserInterface/EditView/Translation/MonitoringPage.py | 247 | def update_token(self, event: int, data: dict) -> None: | CODE |
| LOW | UserInterface/EditView/Translation/MonitoringPage.py | 272 | def update_stability(self, event: int, data: dict) -> None: | CODE |
| LOW | UserInterface/EditView/Translation/MonitoringPage.py | 296 | def update_status(self, event: int, data: dict) -> None: | CODE |
| LOW | UserInterface/EditView/Translation/BottomCommandBar.py | 106 | def update_task_action_button(self, mode: str | None) -> None: | CODE |
| LOW | UserInterface/EditView/Translation/BottomCommandBar.py | 257 | def _update_reset_button_state(self) -> None: | CODE |
| LOW | UserInterface/EditView/Proofreading/ProofreadingPage.py | 133 | def update_tree(self, hierarchy: dict) -> None: | CODE |
| LOW | UserInterface/EditView/Proofreading/ProofreadingPage.py | 190 | def _update_action_state(self) -> None: | CODE |
| LOW | …terface/EditView/Proofreading/Layout/NavigationCard.py | 33 | def update_tree(self, hierarchy: dict) -> None: | CODE |
| LOW | …nterface/EditView/Proofreading/Table/BasicTablePage.py | 120 | def _update_status_cell(self, row: int, translation_status: int) -> None: | CODE |
| LOW⚡ | UserInterface/EditView/Startup/StartupPage.py | 182 | def _set_history_controls_enabled(self, enabled: bool) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/PlainTextEditCard.py | 64 | def set_text(self, text: str) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/PlainTextEditCard.py | 68 | def set_fixed_width(self, width: int) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/PlainTextEditCard.py | 72 | def set_placeholder_text(self, text: str) -> None: | CODE |
| LOW | UserInterface/Widget/GroupCard.py | 40 | def set_title(self, title: str) -> None: | CODE |
| LOW | UserInterface/Widget/GroupCard.py | 43 | def set_description(self, description: str) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/SliderCard.py | 50 | def set_text(self, text:str) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/SliderCard.py | 53 | def set_value(self, value: int) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/SliderCard.py | 56 | def set_range(self, min: int, max: int) -> None: | CODE |
| LOW | UserInterface/Widget/SegmentedControl.py | 73 | def set_current_key(self, key: str) -> None: | CODE |
| LOW | UserInterface/Widget/SegmentedControl.py | 118 | def _update_text_colors(self) -> None: | CODE |
| LOW | UserInterface/Widget/FlowCard.py | 61 | def set_title(self, title: str) -> None: | CODE |
| LOW | UserInterface/Widget/FlowCard.py | 64 | def set_description(self, description: str) -> None: | CODE |
| LOW | UserInterface/Widget/EditableComboBoxCard.py | 71 | def set_items(self, items: list) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/EditableComboBoxCard.py | 85 | def set_current_index(self, index) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/EditableComboBoxCard.py | 89 | def set_fixed_width(self, width: int) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/EditableComboBoxCard.py | 93 | def set_placeholder_text(self, text: str) -> None: | CODE |
| LOW | UserInterface/Widget/EmptyCard.py | 36 | def set_title(self, title: str) -> None: | CODE |
| LOW | UserInterface/Widget/EmptyCard.py | 39 | def set_description(self, description: str) -> None: | CODE |
| LOW | UserInterface/Widget/LineEditMessageBox.py | 40 | def set_placeholder_text(self, text: str) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/LineEditCard.py | 63 | def set_text(self, text: str) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/LineEditCard.py | 67 | def set_fixed_width(self, width: int) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/LineEditCard.py | 71 | def set_placeholder_text(self, text: str) -> None: | CODE |
| LOW | UserInterface/Widget/ComboBoxCard.py | 45 | def set_items(self, items: list) -> None: | CODE |
| LOW | UserInterface/Widget/ComboBoxCard.py | 55 | def set_current_index(self, index) -> None: | CODE |
| LOW | UserInterface/Widget/SpinCard.py | 44 | def set_range(self, min, max) -> None: | CODE |
| LOW | UserInterface/Widget/SpinCard.py | 47 | def set_value(self, value) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/PushButtonCard.py | 49 | def set_title(self, title: str) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/PushButtonCard.py | 52 | def set_description(self, description: str) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/PushButtonCard.py | 55 | def set_text(self, text: str) -> None: | CODE |
| LOW⚡ | UserInterface/Widget/PushButtonCard.py | 58 | def set_icon(self, icon: str) -> None: | CODE |
| LOW | UserInterface/Platform/AddAPIDialog.py | 65 | def _set_adaptive_size(self) -> None: | CODE |
| LOW | UserInterface/Platform/AddAPIDialog.py | 258 | def _set_page(self, page_index: int) -> None: | CODE |
| LOW | …gs/TranslationSettings/TranslationExamplePromptPage.py | 59 | def update_table(self) -> None: | CODE |
| LOW⚡ | …ings/TranslationSettings/CharacterizationPromptPage.py | 88 | def update_table(self) -> None: | CODE |
| LOW⚡ | …ings/TranslationSettings/CharacterizationPromptPage.py | 94 | def _update_table_rows(self, rows: list[dict] | None) -> None: | CODE |
| LOW | …ings/TranslationSettings/CharacterizationPromptPage.py | 115 | def _set_row_highlight(self, row_index: int, highlighted: bool) -> None: | CODE |
| 11 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | AiNiee.py | 1 | # | COMMENT |
| LOW | …uleFolders/Domain/TextSymbolRepair/TextSymbolRepair.py | 41 | trailing_whitespace = trailing_whitespace_match.group(1) if trailing_whitespace_match else "" | COMMENT |
| LOW | …uleFolders/Domain/TextSymbolRepair/TextSymbolRepair.py | 61 | #"source_text": "「息子さんが結婚したの。それはおめでとうございます」乾杯。「めでたいものか、ちくしょう」「まあまあ」乾杯。「俺が育てたのに自分で勝手に育ったようなツラをする」「親はなくても子は育つ」「俺は居 | COMMENT |
| LOW | ModuleFolders/Domain/PromptBuilder/PromptBuilder.py | 321 | # 输入字典示例 | COMMENT |
| LOW | ModuleFolders/Domain/FileReader/BaseReader.py | 121 | processed_items = 0 | COMMENT |
| LOW | ModuleFolders/Domain/FileReader/ReaderUtil.py | 401 | # Args: | COMMENT |
| LOW | ModuleFolders/Domain/FileReader/ReaderUtil.py | 421 | # results.append((['no_text'], -1.0, -1.0)) | COMMENT |
| LOW | ModuleFolders/Domain/FileReader/ReaderUtil.py | 441 | # if valid_texts: | COMMENT |
| LOW | ModuleFolders/Domain/FileReader/ReaderUtil.py | 461 | # # 如果有至少两个识别结果,则使用最高置信度减去第二个 | COMMENT |
| LOW | ModuleFolders/Domain/FileReader/ReaderUtil.py | 481 | # items: 当前处理的缓存项列表 | COMMENT |
| LOW | ModuleFolders/Domain/FileReader/ReaderUtil.py | 501 | # if is_symbols_only(cleaned_text): | COMMENT |
| LOW | ModuleFolders/Domain/FileReader/ReaderUtil.py | 521 | # # 计算置信度 - 从percent转换为0-1范围的概率 | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 1 | # # 辅助函数:Softmax | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 21 | # _instance = None | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 41 | # self.onnx_model_path = os.path.join(model_path, "onnx", "model_int8.onnx") | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 61 | # # rich.print(f"[[green]INFO[/]] Tokenizer loaded from {self.tokenizer_path}") | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 81 | # rich.print(f"[[red]ERROR[/]] 加载 ONNX 语言检测器失败: {e}") | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 101 | # cls._instance.tokenizer = None | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 121 | # results = self.predict_batch([text]) | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 141 | # # 检查 _instance 是否还存在,如果 release 后实例被设为 None,直接访问 self 上的属性会出错 | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 161 | # # 2. 准备 ONNX Runtime 输入 (确保 int64 类型) | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 181 | # predicted_class_id = np.argmax(probabilities) | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 201 | # # 排序并过滤 | COMMENT |
| LOW | …lders/Domain/FileReader/unused/LanguageDetectorONNX.py | 221 | # # 对于批处理错误,你可能想返回一个列表,其中每个失败的项都是 None 或错误标记 | COMMENT |
| LOW | StevExtraction/scratchpad.py | 21 | # test.InputFromJson(path=r'res/TrsData.json') | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ModuleFolders/Infrastructure/Tokener/Tokener.py | 2 | CODE | |
| LOW | ModuleFolders/Infrastructure/Tokener/Tokener.py | 3 | CODE | |
| LOW | ModuleFolders/Infrastructure/Platform/PlatformPaths.py | 3 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/DirectoryWriter.py | 4 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/FileOutputer.py | 10 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/AssWriter.py | 3 | CODE | |
| LOW | ModuleFolders/Domain/FileOutputer/PoWriter.py | 5 | CODE | |
| LOW | …Folders/Domain/PromptBuilder/PromptBuilderPolishing.py | 6 | CODE | |
| LOW | ModuleFolders/Domain/FileReader/FileReader.py | 12 | CODE | |
| LOW | Tools/pyinstall.py | 86 | CODE | |
| LOW | OldPlugin/IOPlugins/CustomRegistry.py | 7 | CODE | |
| LOW | OldPlugin/IOPlugins/CustomRegistry.py | 8 | CODE | |
| LOW | UserInterface/EditView/Analysis/AnalysisPage.py | 2 | CODE | |
| LOW | …Interface/EditView/Translation/LanguageSettingsCard.py | 3 | CODE | |
| LOW | UserInterface/Platform/ArgsEditPage.py | 5 | CODE | |
| LOW | StevExtraction/scratchpad.py | 4 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ModuleFolders/Service/TranslationChecker/RuleChecker.py | 183 | if rules_config.get("placeholder"): | CODE |
| LOW⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 270 | fake_user = ( | CODE |
| LOW⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 308 | {"role": "user", "content": fake_user}, | CODE |
| LOW⚡ | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 480 | {"role": "user", "content": fake_user}, | CODE |
| LOW | ModuleFolders/Service/TaskExecutor/AnalysisTask.py | 454 | fake_user = ( | CODE |
| LOW | ModuleFolders/Domain/ResponseChecker/AdvancedChecks.py | 81 | 每个占位符字典包含 "placeholder" (占位符字符串) 键。 | STRING |
| LOW | ModuleFolders/Domain/ResponseChecker/AdvancedChecks.py | 108 | placeholder = placeholder_data.get("placeholder") | CODE |
| LOW | ModuleFolders/Domain/ResponseChecker/AdvancedChecks.py | 110 | # 确保 'placeholder' 键存在且值是字符串 | COMMENT |
| LOW | ModuleFolders/Domain/TextProcessor/TextProcessor.py | 514 | "placeholder": placeholder_val, | CODE |
| LOW | ModuleFolders/Domain/TextProcessor/TextProcessor.py | 547 | placeholder_text = item.get("placeholder") | CODE |
| LOW⚡ | UserInterface/EditView/Analysis/AnalysisPage.py | 2101 | if self._contains_category_hint(combined_hint, self.NON_TRANSLATE_PLACEHOLDER, "占位", "placeholder", "%s", "%d", | CODE |
| LOW | …ace/EditView/Proofreading/RuleCheck/RuleCheckDialog.py | 127 | "placeholder": self.check_placeholder.isChecked(), | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …uleFolders/Domain/TextSymbolRepair/TextSymbolRepair.py | 168 | CODE | |
| LOW | ModuleFolders/Domain/ResponseChecker/AdvancedChecks.py | 286 | CODE | |
| LOW | ModuleFolders/Domain/PromptBuilder/PromptBuilder.py | 276 | CODE | |
| LOW | …uleFolders/Domain/PromptBuilder/PromptBuilderSakura.py | 33 | CODE | |
| LOW | …uleFolders/Domain/PromptBuilder/PromptBuilderSakura.py | 43 | CODE | |
| LOW | UserInterface/Widget/ProgressRingCard.py | 10 | CODE | |
| LOW | UserInterface/Widget/CombinedLineCard.py | 6 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …duleFolders/Domain/PromptBuilder/PromptBuilderLocal.py | 436 | # 保留原签名,当前本地模型链路不使用上文 few-shot。 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | Tools/pyinstall.py | 12 | #"--onefile", # Create a one-file bundled executable. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | ModuleFolders/Domain/FileReader/ParatranzReader.py | 22 | "context": null, | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | ModuleFolders/Domain/ResponseChecker/AdvancedChecks.py | 390 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …olders/Infrastructure/LLMRequester/LLMClientFactory.py | 35 | def handle_request(self, request: httpx.Request) -> httpx.Response: | CODE |