Repository Analysis

yzhao062/pyod

A Python library for anomaly detection across tabular, time series, graph, text, image, and audio data. 60+ detectors, benchmark-backed ADEngine orchestration, and an agentic workflow for AI agents.

27.5 Moderate AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of yzhao062/pyod, a Python project with 9,949 GitHub stars. SynthScan v2.0 examined 91,663 lines of code across 329 source files, recording 1647 pattern matches distributed across 17 syntactic categories. The overall adjusted score of 27.5 places this repository in the Moderate 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).

27.5
Adjusted Score
27.5
Raw Score
100%
Time Factor
2026-08-02
Last Push
9.9K
Stars
Python
Language
91.7K
Lines of Code
329
Files
1.6K
Pattern Hits
2026-08-02
Scan Date
0.38
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

Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.

No multi-scan history yet — run the scanner again to build trend data.

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 124MEDIUM 95LOW 1428

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 1647 distinct pattern matches across 17 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 Identifiers1041 hits · 1221 pts
SeverityFileLineSnippetContext
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md85 def test_encode_not_callable_raises(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md374 def test_prediction_proba_linear(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md379 def test_prediction_proba_unify(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md384 def test_prediction_proba_parameter(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md388 def test_prediction_labels_confidence(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md396 def test_prediction_with_rejection(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md401 def test_detector_string_resolution(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md415 def test_invalid_detector_raises(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md450 def test_default_detector_is_lunar(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md456 def test_for_text_returns_instance(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md477 def test_for_text_invalid_quality(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md481 def test_for_image_returns_instance(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md1468 def test_resolve_base_encoder_instance(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md1473 def test_resolve_invalid_string_raises(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md1477 def test_resolve_invalid_type_raises(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md1491 def test_resolve_registry_shortcut(self):CODE
LOWdocs/superpowers/plans/2026-04-04-embedding-od.md1498 def test_resolve_auto_sentence_transformer(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md129 def test_stability_is_deterministic(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md139 def test_stability_zero_for_no_anomalies(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md145 def test_stability_zero_for_all_anomalies(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md151 def test_stability_zero_for_constant_scores(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md158 def test_stability_zero_for_nonfinite_scores(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md168 def test_stability_k_equals_one(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md176 def test_stability_k_equals_n_minus_one(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md184 def test_stability_ties_at_boundary(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md191 def test_stability_scale_invariant(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md201 def test_stability_in_unit_interval(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1275def apply_structured_feedback(state, feedback, kb, plan_detection_fn, make_plan_fn):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1284 def test_missing_action_raises(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1289 def test_unknown_action_raises(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1294 def test_missing_required_field_raises(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1304 def test_valid_input_does_not_raise(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1411 def test_exclude_pattern_matches(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1419 def test_too_many_pattern_decreases_contamination(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1422 def test_missed_pattern_increases_contamination(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1425 def test_rerun_pattern_matches(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1428 def test_no_match_returns_low_confidence(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1431 def test_word_boundary_no_match_for_partial(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md106 def test_stability_responds_to_data(self):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md761def compute_feature_importance(result, X):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1000def apply_structured_feedback(state, feedback, kb, plan_detection_fn,CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1233def validate_structured_feedback(feedback: dict) -> None:CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1345def compute_feature_importance(result, X):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1391 def test_run_logs_warning_on_detector_error(self, caplog):CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1450def adjust_contamination_down(current: float) -> float:CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md50 def test_returns_required_keys(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md70 def test_score_summary_has_stats(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md76 def test_anomaly_ratio_is_fraction(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md190 def test_returns_required_keys(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md197 def test_top_anomalies_sorted_by_score(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md204 def test_top_anomalies_have_index_and_score(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md210 def test_score_distribution_has_stats(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md307 def _compute_feature_importance(result, X):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md385 def test_entry_has_required_fields(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md524 def test_returns_required_keys(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md530 def test_too_many_false_positives(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md537 def test_try_different_detector(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md544 def test_no_feedback_suggests_done_or_alternative(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md719 def test_report_contains_key_info(self):CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md725 def test_unknown_format_raises(self):CODE
981 more matches not shown…
Cross-File Repetition124 hits · 620 pts
SeverityFileLineSnippetContext
HIGH…superpowers/plans/2026-05-07-adengine-refactor-plan.md0regression tests for the stability metric (issue #667).STRING
HIGH…perpowers/specs/2026-05-07-adengine-refactor-design.md0regression tests for the stability metric (issue #667).STRING
HIGHpyod/test/test_ad_engine_v3.py0regression tests for the stability metric (issue #667).STRING
HIGH…superpowers/plans/2026-05-07-adengine-refactor-plan.md0call the quality function via whichever path is available. during pr 1 the helper module does not yet exist; we use the STRING
HIGH…perpowers/specs/2026-05-07-adengine-refactor-design.md0call the quality function via whichever path is available. during pr 1 the helper module does not yet exist; we use the STRING
HIGHpyod/test/test_ad_engine_v3.py0call the quality function via whichever path is available. during pr 1 the helper module does not yet exist; we use the STRING
HIGH…superpowers/plans/2026-05-07-adengine-refactor-plan.md0large cutoff gaps score higher than nearly tied boundaries.STRING
HIGH…perpowers/specs/2026-05-07-adengine-refactor-design.md0large cutoff gaps score higher than nearly tied boundaries.STRING
HIGHpyod/test/test_ad_engine_v3.py0large cutoff gaps score higher than nearly tied boundaries.STRING
HIGH…superpowers/plans/2026-05-07-adengine-refactor-plan.md0k=1 is well-defined: gap between highest score and second-highest.STRING
HIGH…perpowers/specs/2026-05-07-adengine-refactor-design.md0k=1 is well-defined: gap between highest score and second-highest.STRING
HIGHpyod/test/test_ad_engine_v3.py0k=1 is well-defined: gap between highest score and second-highest.STRING
HIGH…superpowers/plans/2026-05-07-adengine-refactor-plan.md0tied scores at the cutoff produce gap=0 -> stability=0.STRING
HIGH…perpowers/specs/2026-05-07-adengine-refactor-design.md0tied scores at the cutoff produce gap=0 -> stability=0.STRING
HIGHpyod/test/test_ad_engine_v3.py0tied scores at the cutoff produce gap=0 -> stability=0.STRING
HIGH…superpowers/plans/2026-05-07-adengine-refactor-plan.md0multiplying scores by a positive constant leaves stability unchanged.STRING
HIGH…perpowers/specs/2026-05-07-adengine-refactor-design.md0multiplying scores by a positive constant leaves stability unchanged.STRING
HIGHpyod/test/test_ad_engine_v3.py0multiplying scores by a positive constant leaves stability unchanged.STRING
HIGH…superpowers/plans/2026-05-07-adengine-refactor-plan.md0stability is always in [0, 1] across random inputs.STRING
HIGH…perpowers/specs/2026-05-07-adengine-refactor-design.md0stability is always in [0, 1] across random inputs.STRING
HIGHpyod/test/test_ad_engine_v3.py0stability is always in [0, 1] across random inputs.STRING
HIGH…superpowers/plans/2026-05-07-adengine-refactor-plan.md0overall quality at or above this is reported as 'high'.STRING
HIGH…perpowers/specs/2026-05-07-adengine-refactor-design.md0overall quality at or above this is reported as 'high'.STRING
HIGHpyod/utils/_quality_metrics.py0overall quality at or above this is reported as 'high'.STRING
HIGH…superpowers/plans/2026-05-07-adengine-refactor-plan.md0overall quality at or above this (but below high) is 'medium'.STRING
HIGH…perpowers/specs/2026-05-07-adengine-refactor-design.md0overall quality at or above this (but below high) is 'medium'.STRING
HIGHpyod/utils/_quality_metrics.py0overall quality at or above this (but below high) is 'medium'.STRING
HIGH…superpowers/plans/2026-05-07-adengine-refactor-plan.md0nl feedback parsed with confidence above this is auto-applied.STRING
HIGH…perpowers/specs/2026-05-07-adengine-refactor-design.md0nl feedback parsed with confidence above this is auto-applied.STRING
HIGHpyod/utils/_nl_feedback.py0nl feedback parsed with confidence above this is auto-applied.STRING
HIGH…uperpowers/plans/2026-04-11-graph-od-implementation.md0fit the detector on graph data. parameters ---------- x : data or array-like y : ignored edge_index : array-like or noneSTRING
HIGHpyod/models/pyg_anomalous.py0fit the detector on graph data. parameters ---------- x : data or array-like y : ignored edge_index : array-like or noneSTRING
HIGHpyod/models/pyg_conad.py0fit the detector on graph data. parameters ---------- x : data or array-like y : ignored edge_index : array-like or noneSTRING
HIGHpyod/models/pyg_guide.py0fit the detector on graph data. parameters ---------- x : data or array-like y : ignored edge_index : array-like or noneSTRING
HIGHpyod/models/pyg_cola.py0fit the detector on graph data. parameters ---------- x : data or array-like y : ignored edge_index : array-like or noneSTRING
HIGHpyod/models/pyg_anomalydae.py0fit the detector on graph data. parameters ---------- x : data or array-like y : ignored edge_index : array-like or noneSTRING
HIGHdocs/superpowers/plans/2026-04-07-ad-engine-tier-a.md0explain a pyod detector: how it works, strengths, weaknesses, benchmark performance, and recommended use cases.STRING
HIGH…/superpowers/specs/2026-04-07-pyod-expansion-design.md0explain a pyod detector: how it works, strengths, weaknesses, benchmark performance, and recommended use cases.STRING
HIGHpyod/mcp_server.py0explain a pyod detector: how it works, strengths, weaknesses, benchmark performance, and recommended use cases.STRING
HIGHpyod/test/test_qmcd.py0notes: gan may yield unstable results, so the test is design for running models only, without any performance check.STRING
HIGHpyod/test/test_mo_gaal.py0notes: gan may yield unstable results, so the test is design for running models only, without any performance check.STRING
HIGHpyod/test/test_so_gaal.py0notes: gan may yield unstable results, so the test is design for running models only, without any performance check.STRING
HIGHpyod/test/test_cd.py0notes: gan may yield unstable results, so the test is design for running models only, without any performance check.STRING
HIGHpyod/test/test_so_gaal_new.py0notes: gan may yield unstable results, so the test is design for running models only, without any performance check.STRING
HIGHpyod/models/cblof.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/lof.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/mcd.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/rgraph.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/lmdd.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/hbos.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/inne.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/deep_svdd.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/so_gaal.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/kde.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/mo_gaal.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/alad.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/sod.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/dif.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/sampling.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
HIGHpyod/models/rod.py0"fit detector. y is ignored in unsupervised methods. parameters ---------- x : numpy array of shape (n_samples, n_featurSTRING
64 more matches not shown…
Decorative Section Separators74 hits · 240 pts
SeverityFileLineSnippetContext
MEDIUM…erpowers/plans/2026-04-12-v3-agentic-implementation.md245 # ------------------------------------------------------------------COMMENT
MEDIUM…erpowers/plans/2026-04-12-v3-agentic-implementation.md247 # ------------------------------------------------------------------COMMENT
MEDIUM…/superpowers/specs/2026-04-07-pyod-expansion-design.md763# ============================================================COMMENT
MEDIUM…/superpowers/specs/2026-04-07-pyod-expansion-design.md766# ============================================================COMMENT
MEDIUM…/superpowers/specs/2026-04-07-pyod-expansion-design.md850# ============================================================COMMENT
MEDIUM…/superpowers/specs/2026-04-07-pyod-expansion-design.md855# ============================================================COMMENT
MEDIUMpyod/test/test_persistence.py231# ---------------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py233# ---------------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py273 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py275 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py345 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py347 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py364 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py366 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py379 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py381 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py413 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py415 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py511 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py513 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py534# =====================================================================COMMENT
MEDIUMpyod/test/test_persistence.py536# =====================================================================COMMENT
MEDIUMpyod/test/test_persistence.py649# ---------------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py651# ---------------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py76# ---------------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py78# ---------------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py259# =====================================================================COMMENT
MEDIUMpyod/test/test_persistence.py261# =====================================================================COMMENT
MEDIUMpyod/test/test_persistence.py289 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_persistence.py291 # ------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_mcp_server_import.py147# ----------------------------------------------------------------------COMMENT
MEDIUMpyod/test/test_mcp_server_import.py154# ----------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1591 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1593 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py342 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py344 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py621 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py623 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py640 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py642 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py673 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py675 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py738 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py740 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py805 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py807 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py888 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py890 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1014 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1016 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1087 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1089 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1452 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1454 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1493 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1495 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1695 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1697 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1826 # ------------------------------------------------------------------COMMENT
MEDIUMpyod/utils/ad_engine.py1828 # ------------------------------------------------------------------COMMENT
14 more matches not shown…
Unused Imports227 hits · 226 pts
SeverityFileLineSnippetContext
LOWexamples/ecod_example.py7CODE
LOWexamples/ecod_example.py8CODE
LOWexamples/xgbod_example.py7CODE
LOWexamples/xgbod_example.py8CODE
LOWexamples/pyg_radar_example.py12CODE
LOWexamples/pyg_radar_example.py13CODE
LOWexamples/pyg_anomalous_example.py12CODE
LOWexamples/pyg_anomalous_example.py13CODE
LOWexamples/pyg_cola_example.py12CODE
LOWexamples/pyg_cola_example.py13CODE
LOWexamples/ts_sand_example.py9CODE
LOWexamples/ts_sand_example.py10CODE
LOWexamples/kpca_example.py7CODE
LOWexamples/kpca_example.py7CODE
LOWexamples/cof_example.py8CODE
LOWexamples/cof_example.py9CODE
LOWexamples/perf_check.py8CODE
LOWexamples/perf_check.py9CODE
LOWexamples/abod_example.py7CODE
LOWexamples/abod_example.py8CODE
LOWexamples/knn_example.py7CODE
LOWexamples/knn_example.py8CODE
LOWexamples/copod_parallel_example.py8CODE
LOWexamples/copod_parallel_example.py9CODE
LOWexamples/copod_parallel_example.py22CODE
LOWexamples/loci_example.py7CODE
LOWexamples/loci_example.py8CODE
LOWexamples/lmdd_example.py7CODE
LOWexamples/lmdd_example.py8CODE
LOWexamples/copod_example.py7CODE
LOWexamples/copod_example.py8CODE
LOWexamples/mad_example.py7CODE
LOWexamples/mad_example.py8CODE
LOWexamples/save_load_model_example.py19CODE
LOWexamples/save_load_model_example.py20CODE
LOWexamples/pca_example.py7CODE
LOWexamples/pca_example.py8CODE
LOWexamples/pca_example.py21CODE
LOWexamples/vae_example.py7CODE
LOWexamples/vae_example.py8CODE
LOWexamples/agentic_hindsight_real_data.py17CODE
LOWexamples/agentic_hindsight_real_data.py18CODE
LOWexamples/lunar_example.py7CODE
LOWexamples/lunar_example.py8CODE
LOWexamples/hdbscan_example.py7CODE
LOWexamples/hdbscan_example.py8CODE
LOWexamples/cd_example.py7CODE
LOWexamples/cd_example.py8CODE
LOWexamples/cd_example.py21CODE
LOWexamples/pyg_anomalydae_example.py12CODE
LOWexamples/pyg_anomalydae_example.py13CODE
LOWexamples/generate_data_cluster_example.py8CODE
LOWexamples/generate_data_cluster_example.py9CODE
LOWexamples/qmcd_example.py7CODE
LOWexamples/qmcd_example.py8CODE
LOWexamples/qmcd_example.py18CODE
LOWexamples/pyg_dominant_example.py12CODE
LOWexamples/pyg_dominant_example.py13CODE
LOWexamples/sos_example.py4CODE
LOWexamples/sos_example.py5CODE
167 more matches not shown…
AI Structural Patterns44 hits · 44 pts
SeverityFileLineSnippetContext
LOWpyod/test/test_base_dl.py43CODE
LOWpyod/test/test_base_dl.py74CODE
LOWpyod/utils/torch_utility.py311CODE
LOWpyod/utils/torch_utility.py115CODE
LOWpyod/utils/auto_model_selector.py162CODE
LOWpyod/utils/data.py113CODE
LOWpyod/utils/data.py305CODE
LOWpyod/utils/data.py512CODE
LOWpyod/utils/data.py655CODE
LOWpyod/models/cblof.py140CODE
LOWpyod/models/auto_encoder.py120CODE
LOWpyod/models/pyg_conad.py70CODE
LOWpyod/models/audio_ae.py123CODE
LOWpyod/models/lof.py142CODE
LOWpyod/models/rgraph.py126CODE
LOWpyod/models/rgraph.py261CODE
LOWpyod/models/gmm.py117CODE
LOWpyod/models/deep_svdd.py264CODE
LOWpyod/models/ocsvm.py114CODE
LOWpyod/models/alad.py142CODE
LOWpyod/models/ae1svm.py231CODE
LOWpyod/models/sod.py111CODE
LOWpyod/models/so_gaal_new.py101CODE
LOWpyod/models/ts_anomaly_transformer.py468CODE
LOWpyod/models/dif.py110CODE
LOWpyod/models/devnet.py210CODE
LOWpyod/models/pca.py185CODE
LOWpyod/models/feature_bagging.py184CODE
LOWpyod/models/abod.py164CODE
LOWpyod/models/xgbod.py147CODE
LOWpyod/models/anogan.py194CODE
LOWpyod/models/kpca.py19CODE
LOWpyod/models/kpca.py204CODE
LOWpyod/models/base_dl.py104CODE
LOWpyod/models/hdbscan.py88CODE
LOWpyod/models/vae.py219CODE
LOWpyod/models/vae.py302CODE
LOWpyod/models/suod.py128CODE
LOWpyod/models/ts_sand.py94CODE
LOWpyod/models/iforest.py165CODE
LOWpyod/models/knn.py141CODE
LOWpyod/models/lunar.py80CODE
LOWpyod/models/lunar.py108CODE
LOWpyod/models/lunar.py213CODE
Self-Referential Comments12 hits · 32 pts
SeverityFileLineSnippetContext
MEDIUMexamples/compare_all_models.py56# Define the number of inliers and outliersCOMMENT
MEDIUMpyod/test/test_regen_skill.py91 # Create a file, regenerate it once, then run --check on a directoryCOMMENT
MEDIUMpyod/utils/auto_model_selector.py124 # Initialize class variablesCOMMENT
MEDIUMpyod/models/mo_gaal.py132 # Define the optimizer for the generatorCOMMENT
MEDIUMpyod/models/alad.py212 # Create the decoderCOMMENT
MEDIUMpyod/models/alad.py225 # Create the encoderCOMMENT
MEDIUMpyod/models/alad.py238 # Create the discriminatorsCOMMENT
MEDIUMpyod/models/sod.py187 """This function is called internally to calculate the shared nearestSTRING
MEDIUMpyod/models/sod.py209 """This function is called internally to perform subspace outlierSTRING
MEDIUMpyod/models/devnet.py11# Import necessary librariesCOMMENT
MEDIUMpyod/models/devnet.py30# Define the network architecturesCOMMENT
MEDIUMpyod/models/devnet.py85# Define the training and testing processCOMMENT
Over-Commented Block29 hits · 28 pts
SeverityFileLineSnippetContext
LOWpypi_build_commands.txt1# This is a command list for building and releasing pyod to PyPI (Windows-friendly).COMMENT
LOWpypi_build_commands.txt21# v<X.Y.Z>, <MM/DD/YYYY> -- <short description of what changed>.COMMENT
LOWpypi_build_commands.txt41################################################################################COMMENT
LOWpypi_build_commands.txt101COMMENT
LOWdocs/conf.py1# -*- coding: utf-8 -*-COMMENT
LOWdocs/conf.py61# The suffix(es) of source filenames.COMMENT
LOWdocs/conf.py101}COMMENT
LOWdocs/conf.py121# -- Options for HTMLHelp output ---------------------------------------------COMMENT
LOW…erpowers/plans/2026-04-13-v3.2-od-expert-deep-skill.md1081COMMENT
LOWdocs/superpowers/specs/2026-04-12-v3-agentic-design.md361 'explanation': str, # human-readable quality summaryCOMMENT
LOW.github/workflows/codeql.yml1# For most projects, this workflow file will not need changing; you simply needCOMMENT
LOW.github/workflows/codeql.yml61 # ℹ️ Command-line programs to run using the OS shell.COMMENT
LOWpyod/version.py1"""COMMENT
LOWpyod/test/test_xgbod.py101 #COMMENT
LOWpyod/test/test_xgbod.py121 # assert_equal(confidence.shape, self.y_test.shape)COMMENT
LOWpyod/test/test_anogan.py61 def test_prediction_labels(self):COMMENT
LOWpyod/test/test_anogan.py81 # def test_prediction_proba_parameter(self):COMMENT
LOWpyod/test/test_anogan.py101 # assert_equal(confidence.shape, self.y_test.shape)COMMENT
LOWpyod/test/test_persistence.py381 # ------------------------------------------------------------COMMENT
LOWpyod/test/test_skill_kb_consistency.py21REPO_ROOT = Path(__file__).resolve().parents[2]COMMENT
LOWpyod/test/test_suod.py161 # assert_array_less(-0.1, pred_ranks)COMMENT
LOWpyod/utils/utility.py441 sklearn_version = str(sklearn.__version__)COMMENT
LOWpyod/models/__init__.py1# -*- coding: utf-8 -*-COMMENT
LOWpyod/models/__init__.py21# 'AutoEncoder',COMMENT
LOWpyod/models/feature_bagging.py61 if to_set:COMMENT
LOWpyod/models/feature_bagging.py321COMMENT
LOWpyod/models/base_dl.py381 The loss.item of the model, or a tuple of loss.item COMMENT
LOWpyod/models/iforest.py21# in 0.22, scikit learn will start adjust decision_function values byCOMMENT
LOWpyod/skills/od_expert/references/time_series.md81# state.profile: {'data_type': 'time_series', 'n_samples': 10080,COMMENT
Excessive Try-Catch Wrapping31 hits · 28 pts
SeverityFileLineSnippetContext
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1361except Exception as e:CODE
LOW…superpowers/plans/2026-05-07-adengine-refactor-plan.md1373except Exception as exc:CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md334 except Exception:CODE
LOWdocs/superpowers/plans/2026-04-08-ad-engine-tier-b.md487 except Exception:CODE
LOW…/superpowers/plans/2026-04-13-v3.1-skill-install-ux.md721 except Exception:CODE
LOW…/superpowers/plans/2026-04-13-v3.1-skill-install-ux.md730 except Exception:CODE
LOW…erpowers/plans/2026-04-12-v3-agentic-implementation.md436 except Exception as e:CODE
LOW…erpowers/plans/2026-04-12-v3-agentic-implementation.md670 except Exception:CODE
LOWpyod/cli.py60 except Exception:CODE
LOWpyod/cli.py69 except Exception:CODE
LOWpyod/mcp_server.py295 except Exception as e:CODE
LOWpyod/mcp_server.py337 except Exception as e:CODE
LOWpyod/mcp_server.py384 except Exception as e:CODE
LOWpyod/test/test_skill_api_refs.py117 except Exception:CODE
LOWpyod/test/test_skill_api_refs.py139 except Exception:CODE
LOWpyod/test/test_skill_api_refs.py152 except Exception:CODE
LOWpyod/test/test_skill_api_refs.py180 except Exception:CODE
LOWpyod/test/test_persistence.py527 except Exception as exc:CODE
LOWpyod/test/test_hdbscan.py21except Exception:CODE
LOWpyod/test/test_thresholds.py63 except Exception:CODE
LOWpyod/test/test_hbos_auto_bins_fix.py166 except Exception as e:CODE
LOWpyod/test/test_hbos_auto_bins_fix.py179 except Exception as e:CODE
LOWpyod/utils/ad_engine.py259 except Exception as ex: # noqa: BLE001CODE
LOWpyod/utils/ad_engine.py1219 except Exception as exc:CODE
LOWpyod/utils/ad_engine.py1304 except Exception as exc:CODE
LOWpyod/utils/ad_engine.py1366 except Exception as exc:CODE
LOWpyod/utils/persistence.py333 except Exception as compat_exc:CODE
LOWpyod/utils/persistence.py373 except Exception:CODE
LOWpyod/utils/persistence.py552 except Exception:CODE
LOWpyod/utils/_nl_feedback.py241 except Exception as exc:CODE
LOWpyod/models/hdbscan.py121 except Exception as e:CODE
Deep Nesting28 hits · 27 pts
SeverityFileLineSnippetContext
LOWpyod/cli.py38CODE
LOWpyod/mcp_server.py391CODE
LOWpyod/test/test_skill_api_refs.py266CODE
LOWpyod/test/test_skill_kb_consistency.py139CODE
LOWpyod/utils/ad_engine.py76CODE
LOWpyod/utils/ad_engine.py210CODE
LOWpyod/utils/persistence.py251CODE
LOWpyod/utils/torch_utility.py311CODE
LOWpyod/utils/_quality_metrics.py151CODE
LOWpyod/utils/utility.py27CODE
LOWpyod/utils/_detector_factory.py94CODE
LOWpyod/utils/auto_model_selector.py58CODE
LOWpyod/utils/auto_model_selector.py248CODE
LOWpyod/utils/_nl_feedback.py92CODE
LOWpyod/utils/encoders/__init__.py161CODE
LOWpyod/utils/encoders/huggingface.py81CODE
LOWpyod/models/rgraph.py261CODE
LOWpyod/models/rgraph.py444CODE
LOWpyod/models/hbos.py184CODE
LOWpyod/models/hbos.py270CODE
LOWpyod/models/mo_gaal.py95CODE
LOWpyod/models/loci.py180CODE
LOWpyod/models/pyg_scan.py113CODE
LOWpyod/models/ts_kshape.py150CODE
LOWpyod/models/base_dl.py104CODE
LOWpyod/models/base_dl.py221CODE
LOWpyod/models/sos.py167CODE
LOWpyod/models/_ts_utils.py50CODE
Modern Structural Boilerplate12 hits · 12 pts
SeverityFileLineSnippetContext
LOWpyod/__init__.py7__all__ = ['models', 'utils', '__version__']CODE
LOWpyod/utils/ad_engine.py46logger = logging.getLogger(__name__)CODE
LOWpyod/utils/persistence.py52__all__ = ["save", "load", "compat_load"]CODE
LOWpyod/utils/_quality_metrics.py16logger = logging.getLogger(__name__)CODE
LOWpyod/utils/_kb_router.py16logger = logging.getLogger(__name__)CODE
LOWpyod/utils/__init__.py16__all__ = ['check_parameter',CODE
LOWpyod/utils/_detector_factory.py19logger = logging.getLogger(__name__)CODE
LOWpyod/utils/_llm.py27logger = logging.getLogger(__name__)CODE
LOWpyod/utils/_nl_feedback.py20logger = logging.getLogger(__name__)CODE
LOWpyod/models/cblof.py22__all__ = ['CBLOF']CODE
LOWpyod/models/mcd.py14__all__ = ['MCD']CODE
LOWpyod/skills/__init__.py45__all__ = ["get_skill_path", "install", "install_cli", "_run_install"]CODE
Verbosity Indicators5 hits · 10 pts
SeverityFileLineSnippetContext
LOWpyod/utils/auto_model_selector.py180 # Step 1: Capture dataset statisticsCOMMENT
LOWpyod/utils/auto_model_selector.py212 # Step 2: Build the promptCOMMENT
LOWpyod/models/ts_lstm.py252 # Step 1: Create sliding (input, target) pairsCOMMENT
LOWpyod/models/ts_lstm.py255 # Step 2: Build and train LSTMCOMMENT
LOWpyod/models/ts_lstm.py258 # Step 3: Compute prediction errors on training dataCOMMENT
Structural Annotation Overuse5 hits · 10 pts
SeverityFileLineSnippetContext
LOWpyod/utils/auto_model_selector.py180 # Step 1: Capture dataset statisticsCOMMENT
LOWpyod/utils/auto_model_selector.py212 # Step 2: Build the promptCOMMENT
LOWpyod/models/ts_lstm.py252 # Step 1: Create sliding (input, target) pairsCOMMENT
LOWpyod/models/ts_lstm.py255 # Step 2: Build and train LSTMCOMMENT
LOWpyod/models/ts_lstm.py258 # Step 3: Compute prediction errors on training dataCOMMENT
AI Slop Vocabulary7 hits · 7 pts
SeverityFileLineSnippetContext
MEDIUMpyod/models/mad.py149 """This overrides PyOD base class function in order to use theSTRING
MEDIUMpyod/models/mcd.py178 """The raw robust estimated location before correction andSTRING
MEDIUMpyod/models/mcd.py187 """The raw robust estimated location before correction andSTRING
MEDIUMpyod/models/mcd.py206 """Estimated robust location.STRING
MEDIUMpyod/models/mcd.py214 """Estimated robust covariance matrix.STRING
MEDIUMpyod/models/rod.py22 """Apply the robust median absolute deviation (MAD)STRING
MEDIUMpyod/models/rod.py330 """Rotation-based Outlier Detection (ROD), is a robust and parameter-freeSTRING
Modern AI Meta-Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUM…cs/superpowers/specs/2026-04-04-embedding-od-design.md58### 2.3 LLM-based zero-shot detectionCOMMENT
MEDIUMpyod/test/test_skill_kb_consistency.py36 # are orchestration objects, not KB-registered detectors.COMMENT
Fake / Example Data4 hits · 4 pts
SeverityFileLineSnippetContext
LOWpyod/models/mo_gaal.py223 fake_data = names['sub_generator' + str(i)](CODE
LOWpyod/models/mo_gaal.py225 fake_outputs = self.discriminator(fake_data)CODE
LOWpyod/models/mo_gaal.py237 fake_data = names['sub_generator' + str(i)](CODE
LOWpyod/models/mo_gaal.py239 fake_outputs = self.discriminator(fake_data)CODE
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWdocs/build.sh4# Usage:COMMENT
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOWpyod/models/ts_matrix_profile.py156 # Set distance to inf for constant subsequencesCOMMENT