AI Slop Code RIsk Monitor

zedeus/nitter

Alternative Twitter front-end

22.1 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for zedeus/nitter, a Nim project with 14,478 GitHub stars. SynthScan examined 8,551 lines of code across 75 source files, recording 135 pattern matches distributed across 7 syntactic categories. The legacy adjusted pattern signal is 22.1 (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.

22.1
Adjusted Signal
22.1
Raw Pattern Score
100%
Time Factor
2026-10-09
Last Push
14.5K
Stars
Nim
Language
8.6K
Lines of Code
75
Files
135
Pattern Hits
2026-10-12
Scan Date
0.09
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 55.2/100 · HIGH

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

Hallucinated Dependency & Supply Chain Risk 13.8/100 · LOW

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

Agent Over-Engineering Ratio 60.1/100 · HIGH

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

PR Review Velocity Impact 63.0/100 · HIGH

Which changes need focused human review? 135 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 7MEDIUM 0LOW 128

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 135 distinct pattern matches across 7 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 Identifiers105 hits · 131 pts
SeverityFileLineSnippetContext
LOWtools/create_session_curl.py200def submit_js_instrumentation(session, flow_token, headers, guest_token):CODE
LOWtests/test_security.py50 def test_server_survives_malformed_requests(self):CODE
LOWtests/test_community.py93 def test_about_moderators_have_avatars(self):CODE
LOWtests/test_community.py98 def test_about_moderators_link_to_profiles(self):CODE
LOW⚡tests/test_community.py118 def test_members_has_member_tabs(self):CODE
LOW⚡tests/test_community.py124 def test_members_all_tab_active(self):CODE
LOW⚡tests/test_community.py128 def test_members_count_is_link(self):CODE
LOWtests/test_community.py140 def test_moderators_tab_active(self):CODE
LOWtests/test_community.py144 def test_moderators_has_member_tabs(self):CODE
LOW⚡tests/test_community.py173 def test_hashtag_shows_header(self):CODE
LOW⚡tests/test_community.py178 def test_hashtag_shows_tag_title(self):CODE
LOW⚡tests/test_community.py183 def test_hashtag_no_main_tabs(self):CODE
LOWtests/test_community.py198 def test_about_visibility_note(self):CODE
LOW⚡tests/test_search.py46 def test_tab_links_carry_kind(self):CODE
LOW⚡tests/test_search.py54 def test_show_more_preserves_kind(self):CODE
LOW⚡tests/test_search.py59 def test_search_form_preserves_kind(self):CODE
LOW⚡tests/test_search.py63 def test_media_operators_compose(self):CODE
LOW⚡tests/test_search.py68 def test_garbage_cursor_no_crash(self, cursor):CODE
LOWtests/test_search.py83 def test_list_card_links_to_list(self):CODE
LOWtests/test_search.py93 def test_list_avatar_links_to_user(self):CODE
LOW⚡tests/test_search.py104 def test_list_pagination_preserves_kind(self):CODE
LOW⚡tests/test_search.py109 def test_list_garbage_cursor_no_crash(self):CODE
LOW⚡tests/test_search.py113 def test_media_view_tabs_present(self):CODE
LOWtests/test_search.py127 def test_media_view_tabs_only_on_media(self):CODE
LOWtests/test_space.py49 def test_space_participant_avatars(self):CODE
LOWtests/test_space.py62 def test_space_player_hls_disabled(self):CODE
LOWtests/test_space.py73 def test_space_player_hls_enabled(self):CODE
LOWtests/test_space.py86 def test_space_stream_endpoint(self):CODE
LOWtests/test_timeline.py71 def test_media_view_gallery_tab(self):CODE
LOWtests/test_timeline.py76 def test_media_view_tabs_not_on_posts(self):CODE
LOW⚡tests/test_timeline.py90 def test_articles_tab_on_profile(self):CODE
LOW⚡tests/test_timeline.py100 def test_articles_card_cover_and_no_raw_link(self):CODE
LOW⚡tests/test_timeline.py110 def test_articles_multi_user_unsupported(self):CODE
LOWtests/test_profile.py121 def test_intent_user_redirect(self, user_id, username):CODE
LOW⚡tests/test_reply_sort.py23 def test_all_three_options_present(self):CODE
LOW⚡tests/test_reply_sort.py29 def test_option_links_carry_sort_param(self):CODE
LOW⚡tests/test_reply_sort.py34 def test_load_more_preserves_sort(self):CODE
LOW⚡tests/test_followers.py8 def test_followers_page_loads(self):CODE
LOW⚡tests/test_followers.py15 def test_following_page_loads(self):CODE
LOW⚡tests/test_followers.py22 def test_followers_has_navigation_tabs(self):CODE
LOW⚡tests/test_followers.py30 def test_following_pagination(self):CODE
LOW⚡tests/test_followers.py39 def test_nonexistent_user_followers(self):CODE
LOWtests/test_about_account.py34 def test_about_page_has_labels(self, username, expected_labels):CODE
LOWtests/test_about_account.py72 def test_joindate_links_to_about(self):CODE
LOW⚡tests/test_embed.py89 def test_embed_with_quote_shows_quote(self):CODE
LOW⚡tests/test_embed.py94 def test_embed_quote_has_content(self):CODE
LOW⚡tests/test_embed.py103 def test_nonexistent_tweet_shows_error(self):CODE
LOW⚡tests/test_embed.py108 def test_protected_account_embed_shows_error(self):CODE
LOW⚡tests/test_embed.py112 def test_invalid_tweet_id_shows_error(self):CODE
LOW⚡tests/test_embed.py127 def test_oembed_has_required_fields(self):CODE
LOW⚡tests/test_embed.py136 def test_oembed_html_contains_iframe(self):CODE
LOW⚡tests/test_embed.py142 def test_oembed_has_cors_header(self):CODE
LOW⚡tests/test_embed.py154 def test_oembed_supports_x_com_url(self):CODE
LOW⚡tests/test_embed.py159 def test_oembed_strips_query_params(self):CODE
LOW⚡tests/test_embed.py166 def test_oembed_handles_trailing_slash(self):CODE
LOW⚡tests/test_embed.py171 def test_oembed_handles_mobile_url(self):CODE
LOW⚡tests/test_embed.py176 def test_oembed_rejects_malformed_tweet_id(self):CODE
LOW⚡tests/test_embed.py181 def test_oembed_maxwidth_param_accepted(self):CODE
LOW⚡tests/test_embed.py185 def test_oembed_maxwidth_clamps_to_range(self):CODE
LOW⚡tests/test_embed.py196 def test_oembed_maxwidth_invalid_uses_default(self):CODE
45 more matches not shown…
Cross-Language Confusion4 hits · 20 pts
SeverityFileLineSnippetContext
HIGHtools/create_session_browser.py80 if (t.length > 0 && t.length < 200) return t;CODE
HIGHtools/create_session_browser.py85 if (t.length > 5 && t.length < 150CODE
HIGHtools/create_session_browser.py131 if (r.width > 0 && r.height > 0) return true;CODE
HIGHtools/create_session_browser.py159 if (el && el.tagName === 'INPUT') {CODE
Empty Error Handlers3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHtools/create_session_browser.py165except Exception:CODE
HIGHtools/create_session_browser.py137except Exception:CODE
HIGHtools/create_session_browser.py362except Exception:CODE
Excessive Try-Catch Wrapping11 hits · 11 pts
SeverityFileLineSnippetContext
LOWtools/create_session_curl.py326 except Exception as error:CODE
LOWtools/create_session_browser.py99 except Exception:CODE
LOWtools/create_session_browser.py120 except Exception:CODE
LOWtools/create_session_browser.py137 except Exception:CODE
LOWtools/create_session_browser.py165 except Exception:CODE
LOWtools/create_session_browser.py182 except Exception:CODE
LOWtools/create_session_browser.py202 except Exception:CODE
LOWtools/create_session_browser.py362 except Exception:CODE
LOWtools/create_session_browser.py417 except Exception as error:CODE
LOWtools/get_session.py163 except Exception as e:CODE
LOWtools/create_sessions_browser.py105 except Exception as error:CODE
Unused Imports6 hits · 6 pts
SeverityFileLineSnippetContext
LOWtests/test_space.py3CODE
LOWtests/test_followers.py2CODE
LOWtests/test_card.py2CODE
LOWtests/test_embed.py5CODE
LOWtests/test_tweet_media.py2CODE
LOWtests/test_tweet_media.py6CODE
Deep Nesting5 hits · 5 pts
SeverityFileLineSnippetContext
LOWtools/create_session_curl.py275CODE
LOWtools/create_session_browser.py243CODE
LOWtools/create_session_browser.py368CODE
LOWtools/get_session.py14CODE
LOWtools/create_sessions_browser.py39CODE
Over-Commented Block1 hit · 1 pts
SeverityFileLineSnippetContext
LOWpublic/js/hls.min.js1// @license http://www.apache.org/licenses/LICENSE-2.0 Apache-2.0COMMENT