AI Slop Code Risk Monitor

tw93/MiaoYan

SlopCodeMonitor badge for tw93/MiaoYan Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

⛷ A quiet, local-first Markdown writing app for Mac, to help you write great sentences.

1.4 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for tw93/MiaoYan, a Swift project with 8,719 GitHub stars. SynthScan examined 61,816 lines of code across 268 source files, recording 50 pattern matches distributed across 10 syntactic categories. The legacy adjusted pattern signal is 1.4 (Low 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.

1.4
Adjusted Signal
1.4
Raw Pattern Score
100%
Time Factor
2026-10-30
Last Push
8.7K
Stars
Swift
Language
61.8K
Lines of Code
268
Files
50
Pattern Hits
2026-10-31
Scan Date
0.01
HC Hit Rate

Risk Review · Payload v1

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

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 4.7/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 2.0/100 · LOW

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

Agent Over-Engineering Ratio 1.9/100 · LOW

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

PR Review Velocity Impact 6.3/100 · LOW

Which changes need focused human review? 50 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 2HIGH 1MEDIUM 4LOW 43

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 50 distinct pattern matches across 10 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.

Hyper-Verbose Identifiers18 hits · 22 pts
SeverityFileLineSnippetContext
LOWResources/DownView.bundle/js/common.js57 function getSelectionAndSendMessage() {CODE
LOWscripts/test_source_gates.py56 def test_the_editor_key_monitor_passes_every_key_on_but_return_from_the_list(self):CODE
LOWscripts/test_source_gates.py75 def test_the_preview_is_sized_against_the_preview_pane_first(self):CODE
LOWscripts/test_source_gates.py94 def test_single_mode_is_cleared_before_launch_loads_the_library_and_on_quit(self):CODE
LOWscripts/test_review_gates.py42 def test_a_complete_row_passes(self):CODE
LOWscripts/test_review_gates.py45 def test_each_broken_cell_is_named(self):CODE
LOW⚡scripts/test_review_gates.py62 def test_a_commit_that_does_not_resolve_fails_in_a_full_clone(self):CODE
LOW⚡scripts/test_review_gates.py69 def test_rows_outside_the_incidents_section_are_not_read(self):CODE
LOW⚡scripts/test_review_gates.py74 def test_every_catcher_kind_is_found_in_the_code(self):CODE
LOWscripts/test_review_gates.py90 def test_the_real_ledger_passes(self):CODE
LOWscripts/test_review_gates.py101 def test_a_change_takes_every_tier_it_reaches_highest_first(self):CODE
LOWscripts/test_review_gates.py107 def test_the_sensitive_surfaces_are_never_default(self):CODE
LOWscripts/test_review_gates.py123 def test_docs_tests_and_ui_need_only_the_default_checks(self):CODE
LOWscripts/test_review_gates.py132 def test_every_tier_pattern_matches_a_tracked_file(self):CODE
LOW⚡scripts/test_review_gates.py162 def test_only_rows_reported_in_the_last_seven_days_count(self):CODE
LOW⚡scripts/test_review_gates.py168 def test_it_trips_at_five_rows_and_names_the_layers_by_count(self):CODE
LOW⚡scripts/test_review_gates.py175 def test_a_missing_ledger_never_trips_it(self):CODE
LOW⚡scripts/test_review_gates.py178 def test_it_is_printed_only_beside_a_tier(self):CODE
Hallucination Indicators2 hits · 20 pts
SeverityFileLineSnippetContext
CRITICAL…ources/DownView.bundle/ppt/plugin/markdown/markdown.js1!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&defineCODE
CRITICALResources/DownView.bundle/ppt/plugin/notes/notes.js1!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&defineCODE
Over-Commented Block17 hits · 17 pts
SeverityFileLineSnippetContext
LOWMiaoYanTests/ClipboardManagerUTF16Tests.swift1import XCTestCOMMENT
LOWBusiness/FontConfiguration.swift1import CocoaCOMMENT
LOWBusiness/Note.swift601 /// Use from app/window lifecycle hooks (terminate, will-close, resign-key)COMMENT
LOWBusiness/FontCatalog.swift1import AppKitCOMMENT
LOWBusiness/FontCatalog.swift41 /// hanzi are enough to separate a CJK face from a Latin-only one withoutCOMMENT
LOWBusiness/FontCatalog.swift101COMMENT
LOWPackages/MiaoYanCore/Sources/MiaoYanCore/NoteText.swift1import FoundationCOMMENT
LOWControllers/MainWindowController.swift241 //COMMENT
LOWViews/MPreviewView.swift21 /// True between `load()` calling `loadFileURL` and `webView(_:didFinish:)`COMMENT
LOWViews/NotesTableView.swift521 /// Two highlight flashes in two frames.COMMENT
LOWViews/EditTextView.swift501 // Snapshot the outgoing note so its last-known-good state is in versionCOMMENT
LOWHelpers/PdfExportController.swift1import AppKitCOMMENT
LOWHelpers/PdfExportController.swift181 // The selectors we probe must match the markers DiagramHandlerCOMMENT
LOWHelpers/Theme.swift41 /// Shared layout metrics for the list / sidebar surfaces. Seeded with theCOMMENT
LOWHelpers/Theme.swift61 /// Note-list snap point when dragging toward the closed state.COMMENT
LOWHelpers/Diagnostics.swift1import FoundationCOMMENT
LOWHelpers/UIDelay.swift1import FoundationCOMMENT
AI Slop Vocabulary3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUM⚡…rces/DownView.bundle/ppt/plugin/highlight/highlight.js1!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&defineCODE
MEDIUM⚡…rces/DownView.bundle/ppt/plugin/highlight/highlight.js1!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&defineCODE
MEDIUM⚡…rces/DownView.bundle/ppt/plugin/highlight/highlight.js1!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&defineCODE
Synthetic Comment Markers1 hit · 8 pts
SeverityFileLineSnippetContext
HIGHControllers/ViewController.swift930 // Gap = 8 (Increased from 6 as requested)COMMENT
Example Usage Blocks2 hits · 3 pts
SeverityFileLineSnippetContext
LOWscripts/install.sh6# Usage:COMMENT
LOWscripts/add_tests_target.rb7# Usage:COMMENT
Fake / Example Data2 hits · 2 pts
SeverityFileLineSnippetContext
LOWResources/DownView.bundle/js/highlight.min.js311}),ae=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code",CODE
LOW⚡…rces/DownView.bundle/ppt/plugin/highlight/highlight.js1!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&defineCODE
Deep Nesting2 hits · 2 pts
SeverityFileLineSnippetContext
LOWscripts/test_source_gates.py21CODE
LOWscripts/check_incidents.py85CODE
Unused Imports2 hits · 2 pts
SeverityFileLineSnippetContext
LOWscripts/risk_tier.py13CODE
LOWscripts/check_incidents.py15CODE
Excessive Try-Catch Wrapping1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUMControllers/AppDelegate.swift203 print("Error in \(context): \(error)")CODE