Repository Analysis

tisfeng/Easydict

一个简洁优雅的词典翻译 macOS App。开箱即用,支持离线 OCR 识别,支持有道词典,🍎 苹果系统词典,🍎 苹果系统翻译,OpenAI,Gemini,DeepL,Google,Bing,腾讯,百度,阿里,小牛,彩云和火山翻译。A concise and elegant Dictionary and Translator macOS App for looking up words and translating text.

4.9 Likely human-written View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of tisfeng/Easydict, a Swift project with 14,390 GitHub stars. SynthScan v2.0 examined 162,726 lines of code across 1086 source files, recording 740 pattern matches distributed across 15 syntactic categories. The overall adjusted score of 4.9 places this repository in the Likely human-written band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

4.9
Adjusted Score
4.9
Raw Score
100%
Time Factor
2026-08-27
Last Push
14.4K
Stars
Swift
Language
162.7K
Lines of Code
1.1K
Files
740
Pattern Hits
2026-08-29
Scan Date
0.00
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 1HIGH 2MEDIUM 8LOW 729

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 740 distinct pattern matches across 15 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Over-Commented Block583 hits · 576 pts
SeverityFileLineSnippetContext
LOW.swiftlint.yml1#COMMENT
LOWEasydict/App/AppDelegate.h1//COMMENT
LOWEasydict/App/entry.h1//COMMENT
LOWEasydict/App/AppDelegate+EZURLScheme.m1//COMMENT
LOWEasydict/App/Easydict-Bridging-Header.h1//COMMENT
LOWEasydict/App/Easydict-Bridging-Header.h21#import "EZOCRResult.h"COMMENT
LOWEasydict/App/entry.m1//COMMENT
LOWEasydict/Swift/Model/AppTriggerConfig.swift1//COMMENT
LOWEasydict/Swift/Model/DetectManager.swift1//COMMENT
LOWEasydict/Swift/View/TapHandlerView.swift1//COMMENT
LOW…nfigurationView/CodexCLIServiceConfigurationView.swift1//COMMENT
LOW…ingView/Tabs/ServiceConfigurationView/SliderCell.swift1//COMMENT
LOW…igurationView/ClaudeCodeServiceConfigurationView.swift1//COMMENT
LOW…t/View/SettingView/Tabs/Model/QueryRecordManager.swift1//COMMENT
LOWEasydict/Swift/View/Window/HostWindowManager.swift1//COMMENT
LOW…ature/Shortcut/Model/ShortcutConfictAlertMessage.swift1//COMMENT
LOW…Feature/Screenshot/Screenshot/NSScreen+Extention.swift1//COMMENT
LOW…t/Feature/Screenshot/Screencapture/Screencapture.swift1//COMMENT
LOWEasydict/Swift/Feature/Markdown/MarkdownLabel.swift1//COMMENT
LOW…dict/Swift/Feature/Markdown/MarkdownToggleButton.swift1//COMMENT
LOWEasydict/Swift/Feature/Markdown/MarkdownRenderer.swift1//COMMENT
LOWEasydict/Swift/Feature/HTTPServer/Vapor/configure.swift1//COMMENT
LOW…t/Swift/Feature/HTTPServer/Vapor/DictionaryEntry.swift1//COMMENT
LOWEasydict/Swift/Service/Apple/AppleLanguageMapper.swift61 return languageCOMMENT
LOW…pple/AppleLanguageDetector/AppleLanguageDetector.swift1//COMMENT
LOW…pple/AppleLanguageDetector/AppleLanguageDetector.swift21/// - Hierarchical post-processing: Chinese/English verification → Mixed content → Short text correctionsCOMMENT
LOW…pple/AppleLanguageDetector/AppleLanguageDetector.swift41///COMMENT
LOW…pple/AppleLanguageDetector/AppleLanguageDetector.swift81 /// - Note: These probabilities may be an empty dictionary for certain edge casesCOMMENT
LOW…pple/AppleLanguageDetector/AppleLanguageDetector.swift341 if text.trimmingCharacters(in: .whitespacesAndNewlines).isNumeric {COMMENT
LOW…pple/AppleLanguageDetector/AppleLanguageDetector.swift401 /// - Non-Latin scripts (Chinese, Japanese, Korean, Arabic, Cyrillic, etc.)COMMENT
LOW…pple/AppleLanguageDetector/AppleLanguageDetector.swift481 /// Handle corrections for short text and obvious misdetectionsCOMMENT
LOW…ift/Service/Apple/AppleOCREngine/OCRLineAnalyzer.swift1//COMMENT
LOW…ift/Service/Apple/AppleOCREngine/OCRLineAnalyzer.swift21 // MARK: LifecycleCOMMENT
LOW…eOCREngine/VNRecognizedTextObservation+Extension.swift1//COMMENT
LOW…eOCREngine/VNRecognizedTextObservation+Extension.swift161COMMENT
LOW…wift/Service/Apple/AppleOCREngine/AppleOCREngine.swift1//COMMENT
LOW…wift/Service/Apple/AppleOCREngine/AppleOCREngine.swift21/// the initial image to delegating the final text processing to `OCRTextProcessor`.COMMENT
LOW…wift/Service/Apple/AppleOCREngine/AppleOCREngine.swift181COMMENT
LOW…wift/Service/Apple/AppleOCREngine/AppleOCREngine.swift421 }COMMENT
LOW…t/Service/Apple/AppleOCREngine/OCRTextNormalizer.swift1//COMMENT
LOW…t/Service/Apple/AppleOCREngine/OCRTextNormalizer.swift41COMMENT
LOW…t/Service/Apple/AppleOCREngine/OCRTextNormalizer.swift101 // Update metrics language when setCOMMENT
LOW…t/Service/Apple/AppleOCREngine/OCRTextNormalizer.swift121 /// - **Code patterns**: `array.map()` → `〈PROTECTED_4〉`COMMENT
LOW…t/Service/Apple/AppleOCREngine/OCRTextNormalizer.swift141 /// "〈PROTECTED_1〉": "test@example.com",COMMENT
LOW…t/Service/Apple/AppleOCREngine/OCRTextNormalizer.swift241 /// Input text: "访问 〈PROTECTED_0〉,邮箱 〈PROTECTED_1〉。价格 $〈PROTECTED_2〉,代码 〈PROTECTED_3〉。"COMMENT
LOW…t/Service/Apple/AppleOCREngine/OCRTextNormalizer.swift321 ///COMMENT
LOW…t/Service/Apple/AppleOCREngine/OCRTextNormalizer.swift461 result.replace(western, with: chinese)COMMENT
LOW…t/Service/Apple/AppleOCREngine/OCRTextNormalizer.swift481 /// 6..<21 (test@example.com - email pattern)COMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRSectionMerger.swift1//COMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRSectionMerger.swift21class OCRSectionMerger {COMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRSectionMerger.swift181 /// a new paragraph, or handle hyphenated words.COMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRSectionMerger.swift201 paragraphObservations: paragraphObservations,COMMENT
LOW…wift/Service/Apple/AppleOCREngine/OCRDashHandler.swift1//COMMENT
LOW…wift/Service/Apple/AppleOCREngine/OCRDashHandler.swift21///COMMENT
LOW…t/Service/Apple/AppleOCREngine/OCRPoetryDetector.swift181 if let last = text.last, let scalar = last.unicodeScalars.first {COMMENT
LOW…Swift/Service/Apple/AppleOCREngine/OCRBandMerger.swift1//COMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift1//COMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift21/// 1. **Language Detection**: Determines the language of the recognized text.COMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRMergeAnalyzer.swift1//COMMENT
LOW…vice/Apple/AppleOCREngine/Model/OCRMergeStrategy.swift1//COMMENT
523 more matches not shown…
Hyper-Verbose Identifiers89 hits · 83 pts
SeverityFileLineSnippetContext
LOW…ict/Swift/Service/Dictionary/MDict/MDictEntryScript.js101function changeWebViewBodyFontSize(fontSizeRatio) {CODE
LOW…ict/Swift/Service/Dictionary/MDict/MDictEntryScript.js105function updateWebViewContentStyle() {CODE
LOW…/Dictionary/DictionaryRendering/dictionary-result.html109 function calculateSummaryTextWidth(summary) {CODE
LOW…/Dictionary/DictionaryRendering/dictionary-result.html115 function updateDetailsSummaryLineWidth() {CODE
LOW…/Dictionary/DictionaryRendering/dictionary-result.html187 function isNotCustomBackgroundColor(color) {CODE
LOW…/Dictionary/DictionaryRendering/dictionary-result.html255 function updateAllIframeAppleSystemLabelBorderBottomColor(isDark) {CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py101 def test_accepts_english_and_bilingual_messages(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py105 def test_accepts_multiline_body_crlf_and_trailing_newlines(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py112 def test_rejects_two_or_four_body_paragraphs(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py122 def test_reports_both_blocks_from_the_historical_bad_message(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py133 def test_rejects_missing_duplicate_and_malformed_separators(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py144 def test_rejects_incorrect_separator_spacing(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py154 def test_rejects_malformed_or_overlong_subjects(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py172 def test_requires_matching_bilingual_header_signatures(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py178 def test_accepts_only_a_final_breaking_change_footer(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py204 def test_rejects_footer_like_paragraphs_and_malformed_breaking_footer(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py226 def test_requires_matching_breaking_footer_presence(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py238 def test_commit_validation_matches_expected_file(self) -> None:CODE
LOW…kills/git-commit/tests/test_validate_commit_message.py289 def test_file_failure_does_not_change_git_state(self) -> None:CODE
LOW…ts/skills/git-commit/tests/test_commit_change_stats.py100 def test_mixed_commit_ignores_binary_files(self) -> None:CODE
LOW…ts/skills/git-commit/tests/test_commit_change_stats.py114 def test_classifies_document_names_and_directories(self) -> None:CODE
LOW…ts/skills/git-commit/tests/test_commit_change_stats.py129 def test_handles_rename_unicode_space_and_deletion(self) -> None:CODE
LOW…ts/skills/git-commit/tests/test_commit_change_stats.py152 def test_aggregates_a_three_dot_range(self) -> None:CODE
LOW…ts/skills/git-commit/tests/test_commit_change_stats.py168 def test_reports_zero_for_an_empty_commit(self) -> None:CODE
LOW…ts/skills/git-commit/tests/test_commit_change_stats.py177 def test_rejects_an_invalid_revision(self) -> None:CODE
LOW…fireworks-tech-graph/scripts/generate-from-template.py569def render_blueprint_title_block(CODE
LOW…fireworks-tech-graph/scripts/generate-from-template.py1023def label_position_candidates(points: Sequence[Point]) -> List[Point]:CODE
LOW…fireworks-tech-graph/scripts/generate-from-template.py1048def choose_label_position_avoiding(points: Sequence[Point], text: str, occupied: Sequence[Bounds]) -> Point:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py59 def test_local_template_still_renders_canonical_sections(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py71 def test_english_template_is_canonicalized_and_preserves_requirements(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py99 def test_missing_template_sections_use_fixed_four_section_contract(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py110 def test_ui_change_requests_screenshots_without_stopping(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py115 def test_issue_policy_forbid_rejects_auto_close_but_neutral_allows_it(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py128 def test_extra_body_cannot_repeat_canonical_section(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py135 def test_non_angular_title_is_rejected(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py142 def test_template_discovery_requires_selection_when_multiple_exist(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py154 def test_status_parser_preserves_staging_boundaries(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py396 def test_plan_discovers_non_origin_default_branch_and_is_read_only(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py421 def test_apply_pushes_same_repo_branch_and_reuses_pr(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py458 def test_apply_discovers_fork_push_remote(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py487 def test_apply_uses_fork_pushurl_on_base_remote(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py520 def test_apply_rejects_dirty_worktree_before_remote_writes(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py536 def test_forbid_policy_rejects_auto_closing_commit_message(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py564 def test_draft_and_existing_body_are_verified(self) -> None:CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py586 def test_ambiguous_base_remotes_require_explicit_selection(self) -> None:CODE
LOW.agents/skills/submit-pr/scripts/submit_pr.py160def normalize_repository_from_remote(remote_url: str) -> str | None:CODE
LOW.agents/skills/submit-pr/scripts/submit_pr.py244def resolve_repository_context(CODE
LOW…/skills/release-easydict/tests/test_release_content.py43 def test_capture_extracts_generated_pr_entries(self) -> None:CODE
LOW…/skills/release-easydict/tests/test_release_content.py50 def test_render_only_replaces_human_pr_titles(self) -> None:CODE
LOW…/skills/release-easydict/tests/test_release_content.py65 def test_render_rejects_missing_or_extra_pr_entries(self) -> None:CODE
LOW…/skills/release-easydict/tests/test_release_content.py75 def test_render_rejects_non_english_content(self) -> None:CODE
LOW…/skills/release-easydict/tests/test_release_content.py86 def test_render_rejects_highlight_outside_release(self) -> None:CODE
LOW…/skills/release-easydict/tests/test_release_content.py96 def test_render_rejects_title_with_mismatched_emoji(self) -> None:CODE
LOW…/skills/release-easydict/tests/test_release_content.py108 def test_render_rejects_tampered_capture(self) -> None:CODE
LOW…s/skills/release-easydict/tests/test_release_issues.py130 def test_extracts_existing_weak_reference_forms(self) -> None:CODE
LOW…s/skills/release-easydict/tests/test_release_issues.py147 def test_linked_issue_section_marks_supported_reference_forms(self) -> None:STRING
LOW…s/skills/release-easydict/tests/test_release_issues.py189 def test_linked_issue_template_placeholder_is_not_a_reference(self) -> None:STRING
LOW…s/skills/release-easydict/tests/test_release_issues.py205 def test_repository_pr_template_contains_no_issue_candidate(self) -> None:STRING
LOW…s/skills/release-easydict/tests/test_release_issues.py217 def test_linked_issue_formats_share_one_candidate(self) -> None:STRING
LOW…s/skills/release-easydict/tests/test_release_issues.py252 def test_build_candidates_aggregates_prs_and_skips_pr_entities(self) -> None:STRING
29 more matches not shown…
Verbosity Indicators13 hits · 28 pts
SeverityFileLineSnippetContext
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift82 // Step 1: Detect and process bandsCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift89 // Step 2: Process all bands and sectionsCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift97 // Step 3: Store results and calculate confidenceCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift104 // Step 4: Merge bands and finalize resultCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift332 // Step 1: Group observations into horizontal bandsCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift336 // Step 2: Analyze each band group to determine its column structureCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift345 // Step 3: Sort each section's observations for reading orderCOMMENT
LOWEasydict/Swift/Service/Volcano/VolcanoSigning.swift42 // Step 1: Create a canonical requestCOMMENT
LOWEasydict/Swift/Service/Volcano/VolcanoSigning.swift54 // Step 2: Create string to signCOMMENT
LOWEasydict/Swift/Service/Volcano/VolcanoSigning.swift66 // Step 3: Calculate the signatureCOMMENT
LOWEasydict/Swift/Service/Volcano/VolcanoSigning.swift73 // Step 4: Add the signature to the requestCOMMENT
LOW…ict/Swift/Utility/ChineseGenre/MetadataExtractor.swift50 // Step 1: Extract formatted text with markersCOMMENT
LOW…ict/Swift/Utility/ChineseGenre/MetadataExtractor.swift53 // Step 2: Extract clean contentCOMMENT
Structural Annotation Overuse13 hits · 28 pts
SeverityFileLineSnippetContext
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift82 // Step 1: Detect and process bandsCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift89 // Step 2: Process all bands and sectionsCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift97 // Step 3: Store results and calculate confidenceCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift104 // Step 4: Merge bands and finalize resultCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift332 // Step 1: Group observations into horizontal bandsCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift336 // Step 2: Analyze each band group to determine its column structureCOMMENT
LOW…ft/Service/Apple/AppleOCREngine/OCRTextProcessor.swift345 // Step 3: Sort each section's observations for reading orderCOMMENT
LOWEasydict/Swift/Service/Volcano/VolcanoSigning.swift42 // Step 1: Create a canonical requestCOMMENT
LOWEasydict/Swift/Service/Volcano/VolcanoSigning.swift54 // Step 2: Create string to signCOMMENT
LOWEasydict/Swift/Service/Volcano/VolcanoSigning.swift66 // Step 3: Calculate the signatureCOMMENT
LOWEasydict/Swift/Service/Volcano/VolcanoSigning.swift73 // Step 4: Add the signature to the requestCOMMENT
LOW…ict/Swift/Utility/ChineseGenre/MetadataExtractor.swift50 // Step 1: Extract formatted text with markersCOMMENT
LOW…ict/Swift/Utility/ChineseGenre/MetadataExtractor.swift53 // Step 2: Extract clean contentCOMMENT
Unused Imports19 hits · 19 pts
SeverityFileLineSnippetContext
LOW…kills/git-commit/tests/test_validate_commit_message.py4CODE
LOW…ts/skills/git-commit/tests/test_commit_change_stats.py4CODE
LOW…gents/skills/git-commit/scripts/commit-change-stats.py4CODE
LOW…s/skills/git-commit/scripts/validate-commit-message.py4CODE
LOW…fireworks-tech-graph/scripts/generate-from-template.py13CODE
LOW…fireworks-tech-graph/scripts/generate-from-template.py17CODE
LOW…fireworks-tech-graph/scripts/generate-from-template.py22CODE
LOW.agents/skills/submit-pr/tests/test_submit_pr.py1CODE
LOW.agents/skills/submit-pr/scripts/submit_pr.py4CODE
LOW…/skills/release-easydict/tests/test_release_content.py1CODE
LOW…s/skills/release-easydict/tests/test_release_issues.py1CODE
LOW…ents/skills/release-easydict/scripts/release_issues.py4CODE
LOW…nts/skills/release-easydict/scripts/release_content.py4CODE
LOWscripts/release/release-appcast.py9CODE
LOWscripts/release/tests/test_release_appcast.py4CODE
LOWscripts/star-history/render_chart.py4CODE
LOWscripts/star-history/update_history.py4CODE
LOWscripts/star-history/test_history.py4CODE
LOWscripts/star-history/history.py4CODE
Excessive Try-Catch Wrapping6 hits · 12 pts
SeverityFileLineSnippetContext
MEDIUM…fireworks-tech-graph/scripts/generate-from-template.py1542 print(f"Error: {exc}")CODE
MEDIUM…fireworks-tech-graph/scripts/generate-from-template.py1545 print(f"Error: Invalid JSON: {exc}")CODE
MEDIUM…fireworks-tech-graph/scripts/generate-from-template.py1548 print(f"Error: {exc}")CODE
LOW…fireworks-tech-graph/scripts/generate-from-template.py1550 except Exception as exc: # pragma: no coverCODE
LOW…ents/skills/release-easydict/scripts/release_issues.py135 except Exception:CODE
LOW…nts/skills/release-easydict/scripts/release_content.py83 except Exception:CODE
Modern AI Meta-Vocabulary4 hits · 10 pts
SeverityFileLineSnippetContext
MEDIUM.agents/skills/fireworks-tech-graph/SKILL.md303| Async / event | gray `#6b7280` | 1.5px | `4,2` | Non-blocking, event-driven |CODE
MEDIUM.agents/skills/fireworks-tech-graph/references/icons.md161### AI Memory & RAG ProductsCOMMENT
MEDIUM…s/fireworks-tech-graph/references/style-1-flat-icon.md84 <text x="36" y="28" fill="#6b7280" font-size="12">RAG flow</text>CODE
MEDIUMPods/ReactiveObjC/README.md250### Handling asynchronous or event-driven data sourcesCOMMENT
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippetContext
CRITICALPods/Masonry/README.md223make.left.right.and.bottom.equalTo(superview);CODE
Cross-Language Confusion2 hits · 10 pts
SeverityFileLineSnippetContext
HIGHscripts/star-history/render_chart.py255 const xSpan = maxX - minX || 1;CODE
HIGHscripts/star-history/render_chart.py279 history.replaceState(null, "", `#${{repo}}&${{mode}}`);CODE
Fake / Example Data3 hits · 4 pts
SeverityFileLineSnippetContext
LOW…ler/Window/BaseQueryWindow/EZBaseQueryViewController.m1486 NSString *placeholderText = NSLocalizedString(@"placeholder", nil);CODE
LOWEasydict/objc/ViewController/View/TextView/EZTextView.m84 _placeholderText = @"placeholder";CODE
LOWEasydictTests/Utility/Regex/RegexTests.swift78 #expect("user@example.com".contains(regex))COMMENT
AI Slop Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM…ct/Swift/Utility/Extensions/String/String+Detect.swift20 /// This approach is robust against mixed content with a few Traditional characters.COMMENT
Redundant / Tautological Comments2 hits · 3 pts
SeverityFileLineSnippetContext
LOW…skills/fireworks-tech-graph/scripts/test-all-styles.sh46 # Check if style reference existsCOMMENT
LOW.github/workflows/star_fork_notification.yml179 # Output resultCOMMENT
Deep Nesting2 hits · 2 pts
SeverityFileLineSnippetContext
LOW…fireworks-tech-graph/scripts/generate-from-template.py1111CODE
LOW…ents/skills/release-easydict/scripts/release_issues.py825CODE
Modern Structural Boilerplate1 hit · 1 pts
SeverityFileLineSnippetContext
LOWscripts/release/release-appcast.py95def set_release_notes_link(args: argparse.Namespace) -> None:CODE
AI Structural Patterns1 hit · 1 pts
SeverityFileLineSnippetContext
LOWscripts/release/tests/test_release_redraft.py27CODE