Repository Analysis

mvanhorn/last30days-skill

AI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymarket, and the web - then synthesizes a grounded summary

40.6 Strong AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of mvanhorn/last30days-skill, a Python project with 52,058 GitHub stars. SynthScan v2.0 examined 101,586 lines of code across 341 source files, recording 3371 pattern matches distributed across 20 syntactic categories. The overall adjusted score of 40.6 places this repository in the Strong AI signal 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).

40.6
Adjusted Score
40.6
Raw Score
100%
Time Factor
2026-07-13
Last Push
52.1K
Stars
Python
Language
101.6K
Lines of Code
341
Files
3.4K
Pattern Hits
2026-07-14
Scan Date
0.07
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 0HIGH 23MEDIUM 216LOW 3132

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 3371 distinct pattern matches across 20 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.

Hyper-Verbose Identifiers2600 hits · 2692 pts
SeverityFileLineSnippetContext
LOWtests/test_secret_hygiene.py28 def test_written_config_is_loadable(self, tmp_path):CODE
LOWtests/test_secret_hygiene.py37 def test_plain_token_unchanged(self):CODE
LOWtests/test_secret_hygiene.py40 def test_value_with_spaces_roundtrips(self, tmp_path):CODE
LOWtests/test_github_unauth.py9 def test_github_available_without_token_or_gh(self):CODE
LOWtests/test_github_unauth.py18 def test_unauth_caps_result_count(self):CODE
LOWtests/test_github_unauth.py26 def test_authed_keeps_full_depth(self):CODE
LOWtests/test_env_v3.py17 def test_x_source_prefers_xai_without_bird_probe(self):CODE
LOWtests/test_env_v3.py22 def test_x_source_uses_bird_with_explicit_cookies(self):CODE
LOWtests/test_env_v3.py29 def test_bird_auth_never_checks_browser_cookies(self):CODE
LOWtests/test_env_v3.py41 def test_file_permission_check_skips_windows_posix_mode_bits(self):CODE
LOWtests/test_env_v3.py49 def test_get_config_includes_perplexity_knobs(self):CODE
LOWtests/test_env_v3.py102 def test_probe_false_uses_local_evidence_only(self):CODE
LOWtests/test_env_v3.py110 def test_probe_false_without_stored_auth_reports_unavailable(self):CODE
LOWtests/test_env_v3.py118 def test_probe_true_keeps_the_live_check(self):CODE
LOWtests/test_env_v3.py126 def test_x_backend_chain_local_only_never_calls_live_check(self):CODE
LOWtests/test_env_v3.py134 def test_x_backend_chain_default_stays_live(self):CODE
LOWtests/test_env_v3.py149 def test_threads_available_with_sc_key_only(self):CODE
LOWtests/test_env_v3.py152 def test_threads_unavailable_without_sc_key(self):CODE
LOWtests/test_env_v3.py156 def test_threads_availability_predicate_is_key_only(self):CODE
LOWtests/test_fun_vote_weighting.py70 def test_cross_platform_comparable(self):CODE
LOWtests/test_fun_vote_weighting.py82 def test_zero_or_missing_votes(self):CODE
LOWtests/test_fun_vote_weighting.py87 def test_monotonic_within_platform(self):CODE
LOWtests/test_fun_vote_weighting.py103 def test_scored_extract_prefixes_vote_count(self):CODE
LOWtests/test_fun_vote_weighting.py109 def test_scored_extract_no_score_no_prefix(self):CODE
LOWtests/test_fun_vote_weighting.py115 def test_scored_extract_negative_score_no_malformed_prefix(self):CODE
LOWtests/test_fun_vote_weighting.py123 def test_prompt_contains_traction_guidance(self):CODE
LOWtests/test_fun_vote_weighting.py134 def test_high_vote_top_comment_scores_higher(self):CODE
LOWtests/test_fun_vote_weighting.py146 def test_fallback_without_votes_still_scores(self):CODE
LOWtests/test_fun_vote_weighting.py165 def test_relevance_gate_excludes_entity_miss(self):CODE
LOWtests/test_fun_vote_weighting.py181 def test_zero_final_score_excluded(self):CODE
LOWtests/test_fun_vote_weighting.py189 def test_funny_floor_blocks_high_vote_unfunny(self):CODE
LOWtests/test_fun_vote_weighting.py198 def test_votes_promote_funnyish_over_threshold(self):CODE
LOWtests/test_fun_vote_weighting.py215 def test_bounded_amplification_does_not_overturn_humor_gap(self):CODE
LOWtests/test_fun_vote_weighting.py224 def test_meaningful_at_medium_orders_by_votes(self):CODE
LOWtests/test_fun_vote_weighting.py237 def test_level_scaling_high_more_than_low(self):CODE
LOWtests/test_fun_vote_weighting.py253 def test_crowd_boost_tag_when_votes_lift_ranking(self):CODE
LOWtests/test_fun_vote_weighting.py266 def test_no_votes_preserves_pure_fun_ordering(self):CODE
LOWtests/test_env_include_sources_default.py4def test_include_sources_defaults_to_empty_string(monkeypatch, tmp_path):CODE
LOWtests/test_security_boundaries.py17def test_importing_cli_does_not_load_config_or_propagate_endpoints(monkeypatch):CODE
LOWtests/test_security_boundaries.py26def test_diagnose_uses_plan_only_cookie_policy_and_safe_pipeline(monkeypatch):CODE
LOWtests/test_security_boundaries.py50def test_setup_without_cookie_flag_disables_browser_cookie_setup(monkeypatch):CODE
LOWtests/test_security_boundaries.py64def test_setup_cookie_flag_allows_browser_cookie_setup(monkeypatch):CODE
LOWtests/test_security_boundaries.py78def test_no_browser_cookies_overrides_setup_cookie_flag(monkeypatch):CODE
LOWtests/test_security_boundaries.py103def test_diagnose_overrides_setup_cookie_flag(monkeypatch):CODE
LOWtests/test_security_boundaries.py128def test_research_run_defaults_to_browser_cookie_read():CODE
LOWtests/test_security_boundaries.py136def test_no_browser_cookies_flag_disables_research_run_cookie_read():CODE
LOWtests/test_security_boundaries.py144def test_watchlist_subprocess_disables_browser_cookies():CODE
LOWtests/test_security_boundaries.py158def test_project_config_ignored_by_default_and_cannot_self_trust(tmp_path, monkeypatch):CODE
LOWtests/test_security_boundaries.py178def test_project_config_loads_with_process_trust_signal(tmp_path, monkeypatch):CODE
LOWtests/test_dedupe_v3.py28 def test_collapses_whitespace(self):CODE
LOWtests/test_dedupe_v3.py45 def test_short_text_returns_whole(self):CODE
LOWtests/test_dedupe_v3.py49 def test_empty_returns_empty_set(self):CODE
LOWtests/test_dedupe_v3.py52 def test_normalizes_before_ngrams(self):CODE
LOWtests/test_dedupe_v3.py90 def test_completely_different(self):CODE
LOWtests/test_dedupe_v3.py98 def test_filters_single_char_tokens(self):CODE
LOWtests/test_dedupe_v3.py114 def test_completely_different(self):CODE
LOWtests/test_dedupe_v3.py118 def test_takes_max_of_both_methods(self):CODE
LOWtests/test_dedupe_v3.py150 def test_includes_author_and_container(self):CODE
LOWtests/test_dedupe_v3.py174 def test_removes_near_duplicates(self):CODE
LOWtests/test_dedupe_v3.py183 def test_keeps_first_of_duplicates(self):CODE
2540 more matches not shown…
Decorative Section Separators198 hits · 752 pts
SeverityFileLineSnippetContext
MEDIUMtests/test_dedupe_v3.py34# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py36# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py57# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py59# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py80# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py82# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py104# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py106# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py158# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py160# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py15# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py17# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py130# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_dedupe_v3.py132# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_diagnose_compat.py50# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_diagnose_compat.py52# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_env_pass.py27# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_env_pass.py29# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_env_pass.py222# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_env_pass.py226# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_env_pass.py122# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_env_pass.py124# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py60# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py62# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py104# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py106# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py201# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py203# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py222# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py224# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py308# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py310# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py129# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_prescriptions.py131# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py33# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py35# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py57# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py59# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py119# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py121# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py137# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py139# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py190# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py192# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py205# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py207# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py230# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py232# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py245# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py247# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py269# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py271# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py284# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py286# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py317# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py319# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py344# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py346# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py368# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_internals_v3.py370# ---------------------------------------------------------------------------COMMENT
138 more matches not shown…
Unused Imports176 hits · 161 pts
SeverityFileLineSnippetContext
LOWtests/test_fun_vote_weighting.py10CODE
LOWtests/test_security_boundaries.py3CODE
LOWtests/test_setup_wizard_pp_sources.py4CODE
LOWtests/test_planner_quiet_mode.py3CODE
LOWtests/test_library_search.py3CODE
LOWtests/test_safari_cookies.py3CODE
LOWtests/test_techmeme_source.py8CODE
LOWtests/test_env_pass.py14CODE
LOWtests/test_save_raw_per_entity.py7CODE
LOWtests/test_save_dir_env_fallback.py14CODE
LOWtests/test_cookie_extract.py3CODE
LOWtests/test_cookie_extract.py8CODE
LOWtests/test_cookie_extract.py8CODE
LOWtests/test_cookie_extract.py8CODE
LOWtests/test_cookie_extract.py8CODE
LOWtests/test_cookie_extract.py14CODE
LOWtests/test_cookie_extract.py14CODE
LOWtests/test_arxiv_source.py8CODE
LOWtests/test_chrome_cookies.py3CODE
LOWtests/test_chrome_cookies.py8CODE
LOWtests/test_chrome_cookies.py16CODE
LOWtests/test_chrome_cookies.py16CODE
LOWtests/test_chrome_cookies.py16CODE
LOWtests/test_chrome_cookies.py16CODE
LOWtests/test_footer_nudge_suppression.py3CODE
LOWtests/test_rerank_fun.py3CODE
LOWtests/test_competitors_plan_threading.py3CODE
LOWtests/test_competitors_plan_threading.py11CODE
LOWtests/test_env_doc_contract.py1CODE
LOWtests/test_library_feed.py3CODE
LOWtests/test_github.py3CODE
LOWtests/test_truthsocial.py3CODE
LOWtests/test_relevance.py8CODE
LOWtests/test_relevance.py8CODE
LOWtests/test_doc_security_contract.py3CODE
LOWtests/test_polymarket_disambiguation.py3CODE
LOWtests/test_doc_flag_contract.py3CODE
LOWtests/test_check_config_ytdlp_detection.py14CODE
LOWtests/test_codex_host_contract.py3CODE
LOWtests/test_competitors_resolve_integration.py3CODE
LOWtests/test_check_config_memory_dir.py17CODE
LOWtests/test_check_config_memory_dir.py22CODE
LOWtests/test_setup_openclaw.py9CODE
LOWtests/test_setup_openclaw.py11CODE
LOWtests/test_quality_nudge.py8CODE
LOWtests/test_env_cookies.py6CODE
LOWtests/test_env_cookies.py8CODE
LOWtests/test_no_bare_open_read.py3CODE
LOWtests/test_instagram_sc.py5CODE
LOWtests/test_categories.py12CODE
LOWtests/test_dripstack.py3CODE
LOWtests/test_polymarket.py3CODE
LOWtests/test_polymarket.py4CODE
LOWtests/test_html_publish.py3CODE
LOWtests/test_trustpilot_source.py7CODE
LOWtests/test_setup_wizard.py8CODE
LOWtests/test_competitors.py3CODE
LOWtests/test_registers.py1CODE
LOWtests/test_corpus_source.py1CODE
LOWtests/test_env_keychain.py11CODE
116 more matches not shown…
Excessive Try-Catch Wrapping140 hits · 140 pts
SeverityFileLineSnippetContext
LOWtests/test_competitors_resolve_integration.py292 except Exception as exc:CODE
LOWtests/e2e_comparison.py110 except Exception as exc:CODE
LOWtests/test_freshness.py748 except Exception:CODE
LOWtests/test_freshness.py759 except Exception:CODE
LOWtests/test_competitor_subrun_isolation.py85 except Exception:CODE
LOW…on-daemon-executor-threads-defeat-wall-clock-budget.md82 except Exception as exc: # noqa: BLE001 - containment is the contractCODE
LOWhooks/scripts/check-config.sh169except Exception:CODE
LOWskills/last30days/scripts/evaluate_search_quality.py574 except Exception as exc:CODE
MEDIUMskills/last30days/scripts/last30days.py2360 print("Error: --deep-research requires PERPLEXITY_API_KEY or OPENROUTER_API_KEY", file=sys.stderr)CODE
LOWskills/last30days/scripts/last30days.py459 except Exception as exc:CODE
LOWskills/last30days/scripts/last30days.py947 except Exception as exc:CODE
LOWskills/last30days/scripts/last30days.py1204 except Exception:CODE
LOWskills/last30days/scripts/last30days.py1591 except Exception as exc:CODE
LOWskills/last30days/scripts/last30days.py2518 except Exception as exc:CODE
LOWskills/last30days/scripts/last30days.py2593 except Exception as exc:CODE
LOWskills/last30days/scripts/last30days.py2665 except Exception:CODE
LOWskills/last30days/scripts/watchlist.py49 except Exception as e:CODE
LOWskills/last30days/scripts/lib/freshness.py505 except Exception as exc: # verifier failures degrade to a typed verdictCODE
LOWskills/last30days/scripts/lib/freshness.py560 except Exception as exc: # verifier failures degrade to a typed verdictCODE
LOWskills/last30days/scripts/lib/xurl_x.py186 except Exception as exc:CODE
MEDIUMskills/last30days/scripts/lib/xurl_x.py64def _is_available_uncached() -> bool:CODE
LOWskills/last30days/scripts/lib/truthsocial.py108 except Exception as e:CODE
LOWskills/last30days/scripts/lib/hackernews.py131 except Exception as e:CODE
LOWskills/last30days/scripts/lib/hackernews.py175 except Exception as exc:CODE
LOWskills/last30days/scripts/lib/hackernews.py321 except Exception as e:CODE
LOWskills/last30days/scripts/lib/reddit_keyless.py176 except Exception:CODE
LOWskills/last30days/scripts/lib/reddit_keyless.py201 except Exception:CODE
LOWskills/last30days/scripts/lib/reddit_keyless.py208 except Exception:CODE
LOWskills/last30days/scripts/lib/reddit_keyless.py251 except Exception:CODE
LOWskills/last30days/scripts/lib/dripstack.py47 except Exception:CODE
LOWskills/last30days/scripts/lib/dripstack.py84 except Exception as e:CODE
LOWskills/last30days/scripts/lib/resolve.py42 except Exception as exc:CODE
LOWskills/last30days/scripts/lib/resolve.py365 except Exception as exc:CODE
LOWskills/last30days/scripts/lib/env.py700 except Exception:CODE
LOWskills/last30days/scripts/lib/env.py1127 except Exception as exc:CODE
LOWskills/last30days/scripts/lib/polymarket.py334 except Exception as e:CODE
LOWskills/last30days/scripts/lib/polymarket.py366 except Exception as e:CODE
LOWskills/last30days/scripts/lib/subproc.py77 except Exception:CODE
LOWskills/last30days/scripts/lib/bird_x.py249 except Exception as e:CODE
LOWskills/last30days/scripts/lib/bird_x.py256 except Exception:CODE
LOWskills/last30days/scripts/lib/perplexity.py672 except Exception as e:CODE
LOWskills/last30days/scripts/lib/perplexity.py679 except Exception as e:CODE
LOWskills/last30days/scripts/lib/perplexity.py743 except Exception as e:CODE
LOWskills/last30days/scripts/lib/cjk.py65except Exception:CODE
LOWskills/last30days/scripts/lib/pinterest.py137 except Exception as e:CODE
LOWskills/last30days/scripts/lib/stocktwits.py75 except Exception: # standalone / outside packageCODE
LOWskills/last30days/scripts/lib/stocktwits.py143 except Exception as e: # noqa: BLE001 — network/parse, degrade gracefullyCODE
LOWskills/last30days/scripts/lib/stocktwits.py197 except Exception as e: # noqa: BLE001CODE
MEDIUMskills/last30days/scripts/lib/setup_wizard.py1042def _cleanup() -> None:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py108 except Exception as exc:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py135 except Exception as exc:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py257 except Exception as exc:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py338 except Exception as exc:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py713 except Exception as exc: # never let a config-read failure block authCODE
LOWskills/last30days/scripts/lib/setup_wizard.py871 except Exception:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py943 except Exception:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py971 except Exception:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py1003 except Exception as exc:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py1023 except Exception:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py1045 except Exception:CODE
80 more matches not shown…
Deep Nesting86 hits · 71 pts
SeverityFileLineSnippetContext
LOWtests/test_briefing_v3.py32CODE
LOWtests/test_subproc.py17CODE
LOWtests/test_pipeline_v3.py199CODE
LOWtests/hermes/test_no_critical_scan_findings.py58CODE
LOWskills/last30days/scripts/last30days.py152CODE
LOWskills/last30days/scripts/last30days.py1443CODE
LOWskills/last30days/scripts/last30days.py1942CODE
LOWskills/last30days/scripts/lib/freshness.py96CODE
LOWskills/last30days/scripts/lib/freshness.py419CODE
LOWskills/last30days/scripts/lib/rerank.py728CODE
LOWskills/last30days/scripts/lib/truthsocial.py51CODE
LOWskills/last30days/scripts/lib/planner.py215CODE
LOWskills/last30days/scripts/lib/planner.py523CODE
LOWskills/last30days/scripts/lib/planner.py735CODE
LOWskills/last30days/scripts/lib/planner.py929CODE
LOWskills/last30days/scripts/lib/techmeme.py146CODE
LOWskills/last30days/scripts/lib/reddit_keyless.py181CODE
LOWskills/last30days/scripts/lib/resolve.py154CODE
LOWskills/last30days/scripts/lib/resolve.py183CODE
LOWskills/last30days/scripts/lib/env.py208CODE
LOWskills/last30days/scripts/lib/env.py256CODE
LOWskills/last30days/scripts/lib/env.py398CODE
LOWskills/last30days/scripts/lib/env.py679CODE
LOWskills/last30days/scripts/lib/env.py1140CODE
LOWskills/last30days/scripts/lib/arxiv.py193CODE
LOWskills/last30days/scripts/lib/arxiv.py209CODE
LOWskills/last30days/scripts/lib/render.py1286CODE
LOWskills/last30days/scripts/lib/render.py1501CODE
LOWskills/last30days/scripts/lib/render.py2228CODE
LOWskills/last30days/scripts/lib/render.py2624CODE
LOWskills/last30days/scripts/lib/render.py2675CODE
LOWskills/last30days/scripts/lib/polymarket.py339CODE
LOWskills/last30days/scripts/lib/polymarket.py566CODE
LOWskills/last30days/scripts/lib/hiring_signals.py186CODE
LOWskills/last30days/scripts/lib/subproc.py30CODE
LOWskills/last30days/scripts/lib/bird_x.py559CODE
LOWskills/last30days/scripts/lib/setup_wizard.py62CODE
LOWskills/last30days/scripts/lib/setup_wizard.py418CODE
LOWskills/last30days/scripts/lib/setup_wizard.py474CODE
LOWskills/last30days/scripts/lib/setup_wizard.py531CODE
LOWskills/last30days/scripts/lib/digg.py69CODE
LOWskills/last30days/scripts/lib/jobs.py199CODE
LOWskills/last30days/scripts/lib/jobs.py454CODE
LOWskills/last30days/scripts/lib/providers.py238CODE
LOWskills/last30days/scripts/lib/providers.py358CODE
LOWskills/last30days/scripts/lib/pipeline.py280CODE
LOWskills/last30days/scripts/lib/pipeline.py367CODE
LOWskills/last30days/scripts/lib/pipeline.py524CODE
LOWskills/last30days/scripts/lib/pipeline.py1044CODE
LOWskills/last30days/scripts/lib/pipeline.py1230CODE
LOWskills/last30days/scripts/lib/pipeline.py1844CODE
LOWskills/last30days/scripts/lib/pipeline.py2279CODE
LOWskills/last30days/scripts/lib/pipeline.py2379CODE
LOWskills/last30days/scripts/lib/pipeline.py2419CODE
LOWskills/last30days/scripts/lib/pipeline.py2624CODE
LOWskills/last30days/scripts/lib/pipeline.py2748CODE
LOWskills/last30days/scripts/lib/pipeline.py2850CODE
LOWskills/last30days/scripts/lib/http.py520CODE
LOWskills/last30days/scripts/lib/fusion.py110CODE
LOWskills/last30days/scripts/lib/instagram.py87CODE
26 more matches not shown…
Cross-File Repetition12 hits · 60 pts
SeverityFileLineSnippetContext
HIGHskills/last30days/scripts/lib/pinterest.py0parse youtube search response to normalized format. returns: list of item dicts ready for normalization.STRING
HIGHskills/last30days/scripts/lib/threads.py0parse youtube search response to normalized format. returns: list of item dicts ready for normalization.STRING
HIGHskills/last30days/scripts/lib/instagram.py0parse youtube search response to normalized format. returns: list of item dicts ready for normalization.STRING
HIGHskills/last30days/scripts/lib/tiktok.py0parse youtube search response to normalized format. returns: list of item dicts ready for normalization.STRING
HIGHskills/last30days/scripts/lib/youtube_yt.py0parse youtube search response to normalized format. returns: list of item dicts ready for normalization.STRING
HIGHskills/last30days/scripts/lib/pinterest.py0search tiktok via scrapecreators api. args: topic: search topic from_date: start date (yyyy-mm-dd) to_date: end date (yySTRING
HIGHskills/last30days/scripts/lib/threads.py0search tiktok via scrapecreators api. args: topic: search topic from_date: start date (yyyy-mm-dd) to_date: end date (yySTRING
HIGHskills/last30days/scripts/lib/instagram.py0search tiktok via scrapecreators api. args: topic: search topic from_date: start date (yyyy-mm-dd) to_date: end date (yySTRING
HIGHskills/last30days/scripts/lib/tiktok.py0search tiktok via scrapecreators api. args: topic: search topic from_date: start date (yyyy-mm-dd) to_date: end date (yySTRING
HIGHskills/last30days/scripts/lib/instagram.py0generate multiple youtube search queries from a topic. mirrors reddit.py's expand_reddit_queries() pattern: 1. extract cSTRING
HIGHskills/last30days/scripts/lib/tiktok.py0generate multiple youtube search queries from a topic. mirrors reddit.py's expand_reddit_queries() pattern: 1. extract cSTRING
HIGHskills/last30days/scripts/lib/youtube_yt.py0generate multiple youtube search queries from a topic. mirrors reddit.py's expand_reddit_queries() pattern: 1. extract cSTRING
Fake / Example Data49 hits · 47 pts
SeverityFileLineSnippetContext
LOWtests/test_planner_quiet_mode.py17 topic="Acme Corp",CODE
LOWtests/test_reddit.py225 result = enrich_with_comments(items, "fake-token", depth="quick", budget_seconds=60)CODE
LOWtests/test_reddit.py242 result = enrich_with_comments(items, "fake-token", depth="quick", budget_seconds=0)CODE
LOWtests/test_reddit.py248 result = enrich_with_comments([], "fake-token", depth="default", budget_seconds=60)CODE
LOWtests/test_reddit.py257 result = enrich_with_comments(items, "fake-token", depth="quick", budget_seconds=60)CODE
LOWtests/test_source_outcomes.py133 token="dummy-token",CODE
LOWtests/test_instagram_sc.py120 depth="default", token="fake-token",CODE
LOWtests/test_instagram_sc.py138 depth="default", token="fake-token",CODE
LOWtests/test_instagram_sc.py152 depth="default", token="fake-token",CODE
LOWtests/test_instagram_sc.py202 instagram.fetch_captions(items, token="fake-token")CODE
LOWtests/test_instagram_sc.py213 instagram.fetch_captions(items, token="fake-token")CODE
LOWtests/test_instagram_sc.py224 instagram.fetch_captions(items, token="fake-token", timeout=10)CODE
LOWtests/test_instagram_sc.py236 token="fake-token",CODE
LOWtests/test_instagram_sc.py249 instagram.fetch_captions(items, token="fake-token")CODE
LOWtests/test_backend_descriptors.py156 config = {"AUTH_TOKEN": "dummy-token", "CT0": "dummy-ct0"}CODE
LOWtests/test_backend_descriptors.py169 "AUTH_TOKEN": "dummy-token",CODE
LOWtests/test_backend_descriptors.py171 "XQUIK_API_KEY": "dummy-key",CODE
LOWtests/test_backend_descriptors.py184 config = {"XQUIK_API_KEY": "dummy-key"}CODE
LOWtests/test_backend_descriptors.py214 "AUTH_TOKEN": "dummy-token",CODE
LOWtests/test_backend_descriptors.py216 "XQUIK_API_KEY": "dummy-key",CODE
LOWtests/test_backend_descriptors.py242 config = {"AUTH_TOKEN": "dummy-token", "CT0": "dummy-ct0"}CODE
LOWtests/test_backend_descriptors.py289 present = spec.probe({key: "dummy-key"})CODE
LOWtests/test_backend_descriptors.py398 res = backends.resolve("reddit", {"SCRAPECREATORS_API_KEY": "dummy-key"})CODE
LOWtests/test_backend_descriptors.py411 {"SCRAPECREATORS_API_KEY": "dummy-key", "LAST30DAYS_REDDIT_SC_MIN_ITEMS": "5"},CODE
LOWtests/test_backend_descriptors.py417 res = backends.resolve("reddit", {"SCRAPECREATORS_API_KEY": "dummy-key"})CODE
LOWtests/test_backend_descriptors.py423 {"SCRAPECREATORS_API_KEY": "dummy-key", "LAST30DAYS_REDDIT_SC_MIN_ITEMS": "lots"},CODE
LOWtests/test_backend_descriptors.py431 "SCRAPECREATORS_API_KEY": "dummy-key",CODE
LOWtests/test_backend_descriptors.py484 self._assert_parity({"XAI_API_KEY": "dummy-key"})CODE
LOWtests/test_backend_descriptors.py488 {"AUTH_TOKEN": "dummy-token", "CT0": "dummy-ct0"},CODE
LOWtests/test_backend_descriptors.py494 {"XQUIK_API_KEY": "dummy-key", "LAST30DAYS_X_BACKEND": "xquik"},CODE
LOWtests/test_backend_descriptors.py508 res = backends.resolve("youtube", {"SCRAPECREATORS_API_KEY": "dummy-key"})CODE
LOWtests/test_backend_descriptors.py516 res = backends.resolve("youtube", {"SCRAPECREATORS_API_KEY": "dummy-key"})CODE
LOWtests/test_backend_descriptors.py537 "web", {"BRAVE_API_KEY": "dummy-key", "EXA_API_KEY": "dummy-key"},CODE
LOWtests/test_backend_descriptors.py555 "web", {"BRAVE_API_KEY": "dummy-key", "EXA_API_KEY": "dummy-key"}, pin="exa",CODE
LOWtests/test_backend_descriptors.py587 {"BRAVE_API_KEY": "dummy-key"},CODE
LOWtests/test_backend_descriptors.py588 {"SERPER_API_KEY": "dummy-key"},CODE
LOWtests/test_backend_descriptors.py600 res = backends.resolve("web", {"BRAVE_API_KEY": "dummy-key"})CODE
LOWtests/test_backend_descriptors.py613 res = backends.resolve("reddit", {"SCRAPECREATORS_API_KEY": "dummy-key"})CODE
LOWtests/test_backend_descriptors.py360 config = {"AUTH_TOKEN": "dummy-token", "CT0": "dummy-ct0"}CODE
LOWtests/test_pinterest.py24 depth="default", token="fake-token",CODE
LOWtests/test_pinterest.py62 depth="default", token="fake-token",CODE
LOWtests/test_linkedin.py43 self.assertEqual("Jane Doe", item["author"])CODE
LOWtests/test_linkedin.py79 raw = self._make_post(author={"name": "Jane Doe", "full_name": "Jane M Doe"})CODE
LOWtests/test_linkedin.py81 self.assertEqual("Jane Doe", items[0]["author"])CODE
LOWtests/test_linkedin.py197 "AI agents", "2026-05-27", "2026-06-26", depth="quick", token="fake-token"CODE
LOWtests/test_linkedin.py210 "AI agents", "2026-05-27", "2026-06-26", token="fake-token"CODE
LOWtests/test_linkedin.py26 "name": "Jane Doe",CODE
LOWtests/test_grounding_v3.py33 items, artifact = grounding.brave_search("test", ("2026-02-25", "2026-03-27"), "fake-key")CODE
LOWtests/test_grounding_v3.py67 items, artifact = grounding.serper_search("test", ("2026-02-25", "2026-03-27"), "fake-key")CODE
Structural Annotation Overuse24 hits · 38 pts
SeverityFileLineSnippetContext
LOWtests/test_onboarding_contract.py30 start = self.text.index("## Step 0: First-Run Setup Wizard")CODE
LOWdocs/reference/old-nux-wizard-v3.0.0.md10## Step 0: First-Run Setup WizardCOMMENT
LOWskills/last30days/SKILL.md282- Output is `FIRST_RUN_DETECTED` → this is a first run. Jump immediately to `## Step 0: First-Run Setup Wizard` and compCODE
LOWskills/last30days/SKILL.md284**Named failure mode (2026-06-22, first-run setup skip - Fredy Montero run):** Model read "proceed to Step 0.5" in the bCODE
LOWskills/last30days/SKILL.md297- **If the user provided a topic** (e.g. `/last30days Kanye West`, `/last30days nvidia earnings`): confirm the first-runCODE
LOWskills/last30days/SKILL.md430## Step 0: First-Run Setup WizardCOMMENT
LOWskills/last30days/scripts/test_device_auth.py40 # Step 1: Start device flowCOMMENT
LOWskills/last30days/scripts/test_device_auth.py67 # Step 2: Poll for tokenCOMMENT
LOWskills/last30days/scripts/test_device_auth.py106 # Step 3: Fetch profileCOMMENT
LOWskills/last30days/scripts/lib/instagram.py502 # Step 2: Fetch captions for top NCOMMENT
LOWskills/last30days/scripts/lib/instagram.py505 # Step 3: Attach captions to itemsCOMMENT
LOWskills/last30days/scripts/lib/instagram.py473 # Step 0: Creator reels (high-signal, runs first)COMMENT
LOWskills/last30days/scripts/lib/instagram.py484 # Step 1: Multi-query keyword search — run ScrapeCreators for each expanded queryCOMMENT
LOWskills/last30days/scripts/lib/tiktok.py436 # Step 1: Multi-query keyword search — run ScrapeCreators for each expanded queryCOMMENT
LOWskills/last30days/scripts/lib/tiktok.py454 # Step 2: Fetch captions for top NCOMMENT
LOWskills/last30days/scripts/lib/tiktok.py457 # Step 3: Attach captions to itemsCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py465 # Step 1: Fetch the watch page HTMLCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py474 # Step 2: Extract captions URL from ytInitialPlayerResponseCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py527 # Step 3: Fetch the VTT subtitle fileCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py965 # Step 1: Multi-query search — run yt-dlp for each expanded queryCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py983 # Step 2: Fetch transcripts for top videos.COMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py1014 # Step 3: Attach transcripts and extract highlights. Mark captions_disabledCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py1203 # Step 1: SearchCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py1261 # Step 2: Fetch transcripts for top videosCOMMENT
Verbosity Indicators19 hits · 32 pts
SeverityFileLineSnippetContext
LOWtests/test_onboarding_contract.py30 start = self.text.index("## Step 0: First-Run Setup Wizard")CODE
LOWskills/last30days/scripts/test_device_auth.py40 # Step 1: Start device flowCOMMENT
LOWskills/last30days/scripts/test_device_auth.py67 # Step 2: Poll for tokenCOMMENT
LOWskills/last30days/scripts/test_device_auth.py106 # Step 3: Fetch profileCOMMENT
LOWskills/last30days/scripts/lib/instagram.py502 # Step 2: Fetch captions for top NCOMMENT
LOWskills/last30days/scripts/lib/instagram.py505 # Step 3: Attach captions to itemsCOMMENT
LOWskills/last30days/scripts/lib/instagram.py473 # Step 0: Creator reels (high-signal, runs first)COMMENT
LOWskills/last30days/scripts/lib/instagram.py484 # Step 1: Multi-query keyword search — run ScrapeCreators for each expanded queryCOMMENT
LOWskills/last30days/scripts/lib/tiktok.py436 # Step 1: Multi-query keyword search — run ScrapeCreators for each expanded queryCOMMENT
LOWskills/last30days/scripts/lib/tiktok.py454 # Step 2: Fetch captions for top NCOMMENT
LOWskills/last30days/scripts/lib/tiktok.py457 # Step 3: Attach captions to itemsCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py465 # Step 1: Fetch the watch page HTMLCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py474 # Step 2: Extract captions URL from ytInitialPlayerResponseCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py527 # Step 3: Fetch the VTT subtitle fileCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py965 # Step 1: Multi-query search — run yt-dlp for each expanded queryCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py983 # Step 2: Fetch transcripts for top videos.COMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py1014 # Step 3: Attach transcripts and extract highlights. Mark captions_disabledCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py1203 # Step 1: SearchCOMMENT
LOWskills/last30days/scripts/lib/youtube_yt.py1261 # Step 2: Fetch transcripts for top videosCOMMENT
Docstring Block Structure6 hits · 30 pts
SeverityFileLineSnippetContext
HIGHskills/last30days/scripts/lib/subproc.py37Run a subprocess with process-group cleanup on timeout. Spawns ``cmd`` inside its own process group via ``os.setsidSTRING
HIGHskills/last30days/scripts/lib/http.py531Make an HTTP request and return JSON response. Args: method: HTTP method (GET, POST, etc.) url: ReqSTRING
HIGHskills/last30days/scripts/lib/http.py743Fetch a URL and return decoded text, or None on any failure. Keyless helper for Reddit RSS and shreddit HTML endpoiSTRING
HIGHskills/last30days/scripts/lib/dates.py8Validate and normalize an --as-of date. Args: as_of_date: Date string in YYYY-MM-DD format. Returns: STRING
HIGHskills/last30days/scripts/lib/reddit_enrich.py41Fetch Reddit thread JSON data. Args: url: Reddit thread URL mock_data: Mock data for testing STRING
HIGHskills/last30days/scripts/lib/reddit_enrich.py203Enrich a Reddit item with real engagement data. Args: item: Reddit item dict mock_thread_data: MockSTRING
Cross-Language Confusion5 hits · 25 pts
SeverityFileLineSnippetContext
HIGHtests/test_techmeme_source.py128 """Non-string date values (int/null) are treated as undated and kept;STRING
HIGHtests/test_check_config_memory_dir.py97 # Either mkdir silently failed (2>/dev/null) or it succeeded under a permissiveCOMMENT
HIGHskills/last30days/scripts/lib/health.py154 "nvm": ("nvm install --lts", "reinstall node via nvm: nvm install --lts && nvm use --lts"),CODE
HIGHskills/last30days/scripts/lib/backends.py272 prescription="npm install -g xurl && xurl auth oauth2 login",CODE
HIGHskills/last30days/scripts/lib/youtube_yt.py557 f'-o "$TMPD/%(id)s" {quoted_url} >/dev/null 2>&1 || true; 'CODE
Modern AI Meta-Vocabulary8 hits · 24 pts
SeverityFileLineSnippetContext
MEDIUMCHANGELOG.md525- **`--competitors` flag for auto-discovered comparison fan-out.** Pass `--competitors` on a single-entity topic and theCODE
MEDIUMtests/test_trustpilot_source.py165# ---- shared scaffolding for domain-resolution and warm-up tests ----COMMENT
MEDIUMtests/test_render_comparison_multi.py109 # Envelope scaffolding presentCOMMENT
MEDIUMdocs/releases/v3.0.9.md23- **Offline quality evaluation.** @j-sperling's PR ([#233](https://github.com/mvanhorn/last30days-skill/pull/233)) addedCODE
MEDIUMskills/last30days/SKILL.md957- Stdout shows a merged comparison with the `## Head-to-Head` scaffold + per-entity Resolved Entities block.CODE
MEDIUMskills/last30days/scripts/lib/render.py1127 # Reuse the existing comparison scaffold by feeding it the synthesizedCOMMENT
MEDIUMskills/last30days/scripts/lib/render.py1128 # topic. _parse_comparison_entities splits on " vs " so the scaffoldCOMMENT
MEDIUMskills/last30days/scripts/lib/bird_x.py372 # Build OR-group query: ("multi-agent" OR "agent simulation") since:DATECOMMENT
Over-Commented Block24 hits · 24 pts
SeverityFileLineSnippetContext
LOWCONFIGURATION.md161**Example `.env` skeleton** (placeholders only - replace with your own values):COMMENT
LOWCONFIGURATION.md181COMMENT
LOWmcp/internal/engine/embed.go1// Package engine wraps the vendored Python last30days engine. The engineCOMMENT
LOWmcp/internal/engine/run.go21// MinPythonVersion mirrors the engine's MIN_PYTHON constant inCOMMENT
LOWmcp/internal/engine/extract.go21COMMENT
LOW.github/workflows/osv-scanner.yml1name: OSV-ScannerCOMMENT
LOWskills/last30days/SKILL.md961# SKILL_DIR = absolute path of the directory containing THIS SKILL.md you just Read.COMMENT
LOWskills/last30days/references/save-html-brief.md21# "What I learned:" prose label, the bold-lead-in paragraphs with theirCOMMENT
LOWskills/last30days/references/save-html-brief.md41**{Third headline}** - {body}COMMENT
LOWskills/last30days/scripts/last30days.py2641 "x_error": report.errors_by_source.get("x"),COMMENT
LOWskills/last30days/scripts/setup-pass.sh1#!/usr/bin/env bashCOMMENT
LOWskills/last30days/scripts/setup-keychain.sh1#!/bin/bashCOMMENT
LOWskills/last30days/scripts/lib/xurl_x.py81# Local auth evidence (doctor / safe-diagnose path — no subprocess, noCOMMENT
LOWskills/last30days/scripts/lib/rerank.py121# function of the post's engagement percentile *within the run's X pool* (so itCOMMENT
LOWskills/last30days/scripts/lib/rerank.py581 + (candidate.freshness * 0.2)COMMENT
LOWskills/last30days/scripts/lib/hackernews.py101COMMENT
LOWskills/last30days/scripts/lib/env.py41COMMENT
LOWskills/last30days/scripts/lib/env.py421 if ignored_project_env_path:COMMENT
LOWskills/last30days/scripts/lib/env.py741 return 'scrapecreators'COMMENT
LOWskills/last30days/scripts/lib/health.py101 if proc.returncode in (126, 127):COMMENT
LOWskills/last30days/scripts/lib/cjk.py41 "没有", "看", "好", "自己", "这", "那", "这个", "那个", "什么", "怎么",COMMENT
LOWskills/last30days/scripts/lib/quality_nudge.py201 # Active means yt-dlp is installed and search did not error at the topCOMMENT
LOWskills/last30days/scripts/lib/trustpilot.py61# runner-up's review volume to win automatically. Lookalike/squatter pages haveCOMMENT
LOWskills/last30days/scripts/lib/doctor.py761# absent, or corrupt — corruption is treated as absence, never a crash.COMMENT
AI Slop Vocabulary5 hits · 12 pts
SeverityFileLineSnippetContext
LOWtests/test_polymarket.py101 # Single word, should just return that wordCOMMENT
MEDIUMskills/last30days/scripts/lib/planner.py596 # Hebrew-language topics: elevate web search (grounding) to the front ofSTRING
MEDIUMskills/last30days/scripts/lib/bird_x.py198 """Get comprehensive Bird search status.STRING
MEDIUMskills/last30days/scripts/lib/pipeline.py1769 # eval harness stays fully offline: this path calls the GitHub API (and theCOMMENT
MEDIUMskills/last30days/scripts/lib/github.py841# Project-mode search: fetch comprehensive data for specific reposCOMMENT
Redundant / Tautological Comments4 hits · 6 pts
SeverityFileLineSnippetContext
LOWskills/last30days/scripts/lib/env.py163 # Check if group or other can read (bits 0o044)COMMENT
LOWskills/last30days/scripts/lib/ui.py11# Check if we're in a real terminal (not captured by Claude Code)COMMENT
LOWskills/last30days/scripts/lib/bird_x.py363 # Check if we got resultsCOMMENT
LOWskills/last30days/scripts/lib/quality_nudge.py219 # Check if configured but errored (yt-dlp installed but failed this run)COMMENT
AI Structural Patterns6 hits · 4 pts
SeverityFileLineSnippetContext
LOWtests/test_fun_vote_weighting.py21CODE
LOWskills/last30days/scripts/lib/ui.py400CODE
LOWskills/last30days/scripts/lib/pipeline.py856CODE
LOWskills/last30days/scripts/lib/pipeline.py1230CODE
LOWskills/last30days/scripts/lib/pipeline.py2850CODE
LOWskills/last30days/scripts/lib/doctor.py138CODE
Modern Structural Boilerplate4 hits · 4 pts
SeverityFileLineSnippetContext
LOWtests/test_corpus_source.py19def _set_mtime(path: Path, value: str) -> None:CODE
LOWskills/last30days/scripts/lib/setup_wizard.py20logger = logging.getLogger(__name__)CODE
LOWskills/last30days/scripts/lib/cookie_extract.py22logger = logging.getLogger(__name__)CODE
LOWskills/last30days/scripts/lib/chrome_cookies.py24logger = logging.getLogger(__name__)CODE
Example Usage Blocks2 hits · 3 pts
SeverityFileLineSnippetContext
LOWskills/last30days/scripts/setup-pass.sh10# Usage:COMMENT
LOWskills/last30days/scripts/setup-keychain.sh8# Usage:COMMENT
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMskills/last30days/scripts/lib/pipeline.py2676 # Create a retry subquery with the simplified core subjectCOMMENT
Slop Phrases2 hits · 1 pts
SeverityFileLineSnippetContext
LOWtests/test_youtube_yt.py235 "Don't forget to subscribe and hit the bell. "CODE
LOWskills/last30days/scripts/lib/youtube_yt.py108 r"^(hey |hi |what's up|welcome back|in today's video|don't forget to)",CODE