AI Slop Code RIsk Monitor

blue-yonder/tsfresh

Automatic extraction of relevant features from time series:

17.5 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for blue-yonder/tsfresh, a Jupyter Notebook project with 9,471 GitHub stars. SynthScan examined 18,643 lines of code across 87 source files, recording 296 pattern matches distributed across 10 syntactic categories. The legacy adjusted pattern signal is 17.5 (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.

17.5
Adjusted Signal
17.5
Raw Pattern Score
100%
Time Factor
2026-07-06
Last Push
9.5K
Stars
Jupyter Notebook
Language
18.6K
Lines of Code
87
Files
296
Pattern Hits
2026-10-12
Scan Date
0.06
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 50.1/100 · HIGH

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

Hallucinated Dependency & Supply Chain Risk 14.1/100 · LOW

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

Agent Over-Engineering Ratio 48.0/100 · MEDIUM

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

PR Review Velocity Impact 58.4/100 · HIGH

Which changes need focused human review? 296 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 5MEDIUM 3LOW 288

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 296 distinct pattern matches across 10 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Hyper-Verbose Identifiers220 hits · 224 pts
SeverityFileLineSnippetContext
LOWtests/benchmark.py32def test_benchmark_small_data(benchmark):CODE
LOWtests/benchmark.py45def test_benchmark_large_data(benchmark):CODE
LOWtests/benchmark.py58def test_benchmark_with_selection(benchmark):CODE
LOWtests/fixtures.py200 def create_test_data_sample_wide(self):CODE
LOWtests/fixtures.py256 def create_test_data_sample_with_time_index(self):CODE
LOWtests/fixtures.py431 def create_test_data_nearly_numerical_indices(self):CODE
LOWtests/fixtures.py603 def create_one_valued_time_series(self):CODE
LOWtests/fixtures.py611 def create_test_data_sample_with_target(self):CODE
LOWtests/fixtures.py624 def create_test_data_sample_with_multiclass_target(self):CODE
LOWtests/units/feature_extraction/test_extraction.py78 def test_extract_features_uses_only_kind_to_fc_settings(self):CODE
LOWtests/units/feature_extraction/test_extraction.py91 def test_extract_features_for_one_time_series(self):CODE
LOWtests/units/feature_extraction/test_extraction.py137 def test_extract_features_for_index_based_functions(self):CODE
LOWtests/units/feature_extraction/test_extraction.py172 def test_extract_features_custom_function(self):CODE
LOWtests/units/feature_extraction/test_extraction.py207 def test_extract_features_after_randomisation(self):CODE
LOWtests/units/feature_extraction/test_extraction.py239 def test_profiling_file_written_out(self):CODE
LOWtests/units/feature_extraction/test_extraction.py257 def test_profiling_cumulative_file_written_out(self):CODE
LOWtests/units/feature_extraction/test_extraction.py280 def test_extract_features_without_settings(self):CODE
LOWtests/units/feature_extraction/test_extraction.py292 def test_extract_features_with_and_without_parallelization(self):CODE
LOWtests/units/feature_extraction/test_extraction.py320 def test_extract_index_preservation(self):CODE
LOWtests/units/feature_extraction/test_extraction.py334 def test_extract_features_alphabetically_sorted(self):CODE
LOWtests/units/feature_extraction/test_extraction.py404 def test_distributor_map_reduce_is_called(self):CODE
LOWtests/units/feature_extraction/test_extraction.py423 def test_distributor_close_is_called(self):CODE
LOWtests/units/feature_extraction/test_data.py265 def test_long_tsframe_no_value_column(self):CODE
LOWtests/units/feature_extraction/test_data.py277 def test_wide_tsframe_without_sort(self):CODE
LOWtests/units/feature_extraction/test_data.py295 def assert_data_chunk_object_equal(self, result, expected):CODE
LOWtests/units/feature_extraction/test_data.py303 def test_simple_data_sample_two_timeseries(self):CODE
LOWtests/units/feature_extraction/test_data.py317 def test_simple_data_sample_four_timeseries(self):CODE
LOWtests/units/feature_extraction/test_data.py327 def test_with_dictionaries_two_rows(self):CODE
LOWtests/units/feature_extraction/test_data.py345 def test_with_dictionaries_two_rows(self):CODE
LOWtests/units/feature_extraction/test_data.py356 def test_wide_dataframe_order_preserved_with_sort_column(self):CODE
LOWtests/units/feature_extraction/test_data.py377 def test_dask_dataframe_with_kind(self):CODE
LOWtests/units/feature_extraction/test_data.py401 def test_dask_dataframe_without_kind(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py150 def test___get_length_sequences_where(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py177 def test_variance_larger_than_standard_deviation(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py185 def test_large_standard_deviation(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py238 def test_agg_autocorrelation_returns_correct_values(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py268 def test_agg_autocorrelation_returns_max_lag_does_not_affect_other_results(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py282 def test_partial_autocorrelation(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py346 def test_augmented_dickey_fuller(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py432 def test_lempel_ziv_complexity(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py534 def test_ratio_beyond_r_sigma(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py553 def test_mean_second_derivate_central(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py588 def test_variation_coefficient(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py651 def test_absolute_sum_of_changes(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py657 def test_longest_strike_below_mean(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py668 def test_longest_strike_above_mean(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py691 def test_last_location_maximum(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py707 def test_first_location_of_maximum(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py723 def test_last_location_of_minimum(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py739 def test_first_location_of_minimum(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py755 def test_percentage_of_doubled_datapoints(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py774 def test_ratio_of_doubled_values(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py793 def test_sum_of_reoccurring_values(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py806 def test_sum_of_reoccurring_data_points(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py1129 def test_time_reversal_asymmetry_statistic(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py1361 def test_mean_abs_change_quantiles(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py1567 def test_max_langevin_fixed_point(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py1634 def test__aggregate_on_chunks(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py1757 def test_energy_ratio_by_chunks(self):CODE
LOW…/units/feature_extraction/test_feature_calculations.py1796 def test_linear_trend_timewise_hours(self):CODE
160 more matches not shown…
Unused Imports42 hits · 42 pts
SeverityFileLineSnippetContext
LOWtests/benchmark.py4CODE
LOWtests/benchmark.py7CODE
LOWtests/benchmark.py7CODE
LOWtests/units/feature_extraction/test_data.py1CODE
LOWtests/units/feature_extraction/test_data.py17CODE
LOW…/units/feature_extraction/test_feature_calculations.py11CODE
LOWtests/units/feature_selection/test_relevance.py5CODE
LOWtests/units/feature_selection/test_checks.py9CODE
LOWtests/units/transformers/test_feature_augmenter.py9CODE
LOWtests/integrations/test_relevant_feature_extraction.py13CODE
LOWtests/integrations/test_feature_extraction.py9CODE
LOWtests/integrations/examples/test_driftbif_simulation.py7CODE
LOWtests/integrations/examples/test_driftbif_simulation.py9CODE
LOWtests/integrations/examples/test_driftbif_simulation.py11CODE
LOWtests/integrations/examples/test_driftbif_simulation.py13CODE
LOW…integrations/examples/test_robot_execution_failures.py10CODE
LOWdocs/conf.py12CODE
LOWtsfresh/__init__.py27CODE
LOWtsfresh/__init__.py30CODE
LOWtsfresh/__init__.py31CODE
LOWtsfresh/feature_extraction/__init__.py5CODE
LOWtsfresh/feature_extraction/__init__.py6CODE
LOWtsfresh/feature_extraction/__init__.py6CODE
LOWtsfresh/feature_extraction/__init__.py6CODE
LOWtsfresh/feature_extraction/extraction.py12CODE
LOWtsfresh/feature_extraction/data.py1CODE
LOWtsfresh/feature_selection/__init__.py10CODE
LOWtsfresh/utilities/distribution.py14CODE
LOWtsfresh/utilities/distribution.py21CODE
LOWtsfresh/transformers/__init__.py6CODE
LOWtsfresh/transformers/__init__.py7CODE
LOWtsfresh/transformers/__init__.py8CODE
LOWtsfresh/transformers/__init__.py9CODE
LOWtsfresh/examples/__init__.py6CODE
LOWtsfresh/examples/__init__.py7CODE
LOWtsfresh/examples/__init__.py7CODE
LOWtsfresh/examples/__init__.py7CODE
LOWtsfresh/examples/__init__.py8CODE
LOWtsfresh/examples/__init__.py8CODE
LOWtsfresh/examples/har_dataset.py23CODE
LOWtsfresh/scripts/run_tsfresh.py25CODE
LOWtsfresh/scripts/measure_execution_time.py15CODE
Cross-Language Confusion3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHtests/units/utilities/test_dataframe_functions.py1271 self.assertTrue(df_restricted2.equals(df))CODE
HIGHtests/integrations/test_relevant_feature_extraction.py61 relevant_features.equals(CODE
HIGHtsfresh/feature_selection/significance_tests.py210 if not y.index.equals(x.index):CODE
Deep Nesting11 hits · 11 pts
SeverityFileLineSnippetContext
LOWtsfresh/feature_extraction/feature_calculators.py499CODE
LOWtsfresh/feature_extraction/feature_calculators.py1067CODE
LOWtsfresh/feature_extraction/feature_calculators.py1100CODE
LOWtsfresh/feature_extraction/extraction.py308CODE
LOWtsfresh/feature_extraction/extraction.py338CODE
LOWtsfresh/feature_extraction/data.py447CODE
LOWtsfresh/feature_selection/relevance.py31CODE
LOWtsfresh/utilities/string_manipulation.py10CODE
LOWtsfresh/transformers/feature_selector.py152CODE
LOWtsfresh/examples/robot_execution_failures.py84CODE
LOWtsfresh/scripts/measure_execution_time.py141CODE
Empty Error Handlers2 hits · 10 pts
SeverityFileLineSnippetContext
HIGHtests/integrations/test_notebooks.py32except BaseException:CODE
HIGHdocs/conf.py115except ImportError:CODE
Self-Referential Comments3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUMsetup.cfg1# This file is used to configure your project.COMMENT
MEDIUMtests/units/scripts/test_run_tsfresh.py21 # Create a temporary directoryCOMMENT
MEDIUMdocs/conf.py3# This file is execfile()d with the current directory set to its containing dir.COMMENT
AI Structural Patterns8 hits · 8 pts
SeverityFileLineSnippetContext
LOWtsfresh/feature_extraction/extraction.py30CODE
LOWtsfresh/feature_selection/selection.py17CODE
LOWtsfresh/feature_selection/relevance.py31CODE
LOWtsfresh/utilities/dataframe_functions.py376CODE
LOWtsfresh/transformers/feature_selector.py61CODE
LOWtsfresh/transformers/feature_augmenter.py64CODE
LOWtsfresh/transformers/relevant_feature_augmenter.py92CODE
LOWtsfresh/convenience/relevant_extraction.py17CODE
Over-Commented Block4 hits · 4 pts
SeverityFileLineSnippetContext
LOWdocs/conf.py1# -*- coding: utf-8 -*-COMMENT
LOWdocs/conf.py81COMMENT
LOWtsfresh/feature_extraction/feature_calculators.py1721COMMENT
LOWtsfresh/feature_extraction/data.py101 for chunk_id, variable, value in results:COMMENT
Redundant / Tautological Comments2 hits · 3 pts
SeverityFileLineSnippetContext
LOW…/units/feature_extraction/test_feature_calculations.py397 # Check if LinAlgError and ValueError are catchedCOMMENT
LOWtsfresh/feature_extraction/feature_calculators.py479 # Check if list is too short to make calculationsCOMMENT
Excessive Try-Catch Wrapping1 hit · 1 pts
SeverityFileLineSnippetContext
LOWtsfresh/__init__.py16except Exception:CODE