Kats, a kit to analyze time series data, a lightweight, easy-to-use, generalizable, and extendable framework to perform time series analysis, from understanding the key statistics and characteristics, detecting change points and anomalies, to forecasting future trends.
This report summarizes scanner evidence for facebookresearch/Kats, a Python project with 6,496 GitHub stars. SynthScan examined 100,664 lines of code across 186 source files, recording 848 pattern matches distributed across 20 syntactic categories. The legacy adjusted pattern signal is 12.2 (Moderate 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.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 607 finding(s).
Are imports declared and package/API names verified? 144 finding(s).
Are wrappers, guards, and repeated structures necessary? 538 finding(s).
Which changes need focused human review? 848 finding(s).
Run additional scans to build a history of the legacy pattern signal. Score changes are not a measure of AI adoption or code quality.
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.
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.
The scanner identified 848 distinct pattern matches across 20 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.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kats/consts.py | 560 | def _set_univariate_values_to_series(self) -> None: | CODE |
| LOW | kats/metrics/metrics.py | 283 | def absolute_percentage_error( | CODE |
| LOW | kats/metrics/metrics.py | 304 | def continuous_rank_probability_score(y_true: ArrayLike, y_pred: ArrayLike) -> float: | CODE |
| LOW | kats/metrics/metrics.py | 334 | def frequency_exceeds_relative_threshold( | CODE |
| LOW | kats/metrics/metrics.py | 351 | def linear_error_in_probability_space(y_true: ArrayLike, y_pred: ArrayLike) -> float: | CODE |
| LOW | kats/metrics/metrics.py | 392 | def median_absolute_percentage_error(y_true: ArrayLike, y_pred: ArrayLike) -> float: | CODE |
| LOW | kats/metrics/metrics.py | 446 | def mean_absolute_percentage_error(y_true: ArrayLike, y_pred: ArrayLike) -> float: | CODE |
| LOW | kats/metrics/metrics.py | 464 | def mean_absolute_scaled_error(y_true: ArrayLike, y_pred: ArrayLike) -> float: | CODE |
| LOW | kats/metrics/metrics.py | 566 | def root_mean_squared_log_error( | CODE |
| LOW | kats/metrics/metrics.py | 588 | def root_mean_squared_percentage_error( | CODE |
| LOW | kats/metrics/metrics.py | 612 | def scaled_symmetric_mean_absolute_percentage_error( | CODE |
| LOW | kats/metrics/metrics.py | 647 | def symmetric_mean_absolute_percentage_error( | CODE |
| LOW | kats/tests/test_ensemble.py | 194 | def test_valid_params_base_params(self) -> None: | CODE |
| LOW | kats/tests/test_ensemble.py | 200 | def test_invalid_params_in_ensemble_params(self) -> None: | CODE |
| LOW | kats/tests/test_ensemble.py | 476 | def test_invalid_params_ensemble_params( | CODE |
| LOW | kats/tests/test_ensemble.py | 585 | def test_fit_weightedavg_forecast( | CODE |
| LOW | kats/tests/test_ensemble.py | 650 | def test_invalid_decomposition_method(self) -> None: | CODE |
| LOW | kats/tests/test_ensemble.py | 660 | def test_invalid_seasonality_length(self) -> None: | CODE |
| LOW | kats/tests/test_ensemble.py | 675 | def test_logging_default_executors(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 366 | def test_init_from_series_univar(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 408 | def test_init_from_series_multivar(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 420 | def test_init_from_index_univar(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 431 | def test_init_from_index_multivar(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 496 | def test_incorrect_init_types(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 538 | def test_incorrect_init_lengths(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1547 | def test_exclude_starting_range(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1567 | def test_exclude_ending_range(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1586 | def test_exclude_middle_range(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1731 | def test_basic_creation_without_confidence(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1741 | def test_creation_with_valid_confidence_values(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1752 | def test_creation_with_confidence_boundary_values(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1763 | def test_creation_with_invalid_confidence_negative(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1775 | def test_creation_with_invalid_confidence_above_one(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1787 | def test_invalid_time_range_raises_error(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1807 | def test_str_without_confidence(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1854 | def test_ts_iterator_univariate_next(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1883 | def test_ts_iterator_multivariate_next(self) -> None: | CODE |
| LOW | kats/tests/test_consts.py | 1919 | def test_ts_iterator_comprehension(self) -> None: | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 163 | def test_absolute_percentage_error( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 184 | def test_continuous_rank_probability_score( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 201 | def test_frequency_exceeds_relative_threshold( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 222 | def test_linear_error_in_probability_space( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 240 | def test_median_absolute_error( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 258 | def test_median_absolute_percent_error( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 313 | def test_invalid_mean_absolute_error_multioutput(self) -> None: | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 326 | def test_mean_absolute_scaled_error( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 344 | def test_mean_absolute_percent_error( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 380 | def test_mean_percentage_error( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 419 | def test_root_mean_squared_error( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 439 | def test_root_mean_squared_log_error( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 459 | def test_root_mean_squared_percentage_error( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 478 | def test_scaled_symmetric_mean_absolute_percentage_error( | CODE |
| LOW | kats/tests/metrics/test_metrics.py | 521 | def test_symmetric_mean_absolute_percentage_error( | CODE |
| LOW | kats/tests/compat/test_sklearn.py | 43 | def test_root_mean_squared_error(self, sklearn_mse: Any) -> None: | CODE |
| LOW | kats/tests/compat/test_sklearn.py | 56 | def test_mean_squared_log_error(self, sklearn_msle: Any) -> None: | CODE |
| LOW | kats/tests/compat/test_sklearn.py | 81 | def test_root_mean_squared_log_error(self, sklearn_msle: Any) -> None: | CODE |
| LOW | kats/tests/utils/test_dataframe_utils.py | 36 | def test_time_column_preserved(self) -> None: | CODE |
| LOW | kats/tests/utils/test_dataframe_utils.py | 50 | def test_custom_time_column_preserved(self) -> None: | CODE |
| LOW | kats/tests/utils/test_dataframe_utils.py | 65 | def test_error_when_prefix_matches_zero_columns(self) -> None: | CODE |
| LOW | kats/tests/utils/test_dataframe_utils.py | 79 | def test_error_when_prefix_matches_multiple_columns(self) -> None: | CODE |
| 341 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | kats/models/ml_ar.py | 0 | get default arima parameter search space. args: none returns: a dictionary with the default arima parameter search space | STRING |
| HIGH | kats/models/holtwinters.py | 0 | get default arima parameter search space. args: none returns: a dictionary with the default arima parameter search space | STRING |
| HIGH | kats/models/arima.py | 0 | get default arima parameter search space. args: none returns: a dictionary with the default arima parameter search space | STRING |
| HIGH | kats/models/stlf.py | 0 | model class for theta this class provides fit, predict, and plot methods for theta model attributes: data: the input tim | STRING |
| HIGH | kats/models/var.py | 0 | model class for theta this class provides fit, predict, and plot methods for theta model attributes: data: the input tim | STRING |
| HIGH | kats/models/theta.py | 0 | model class for theta this class provides fit, predict, and plot methods for theta model attributes: data: the input tim | STRING |
| HIGH | kats/models/simple_heuristic_model.py | 0 | predict with fitted quadratic model. args: steps: the steps or length of the prediction horizon include_history: whether | STRING |
| HIGH | kats/models/linear_model.py | 0 | predict with fitted quadratic model. args: steps: the steps or length of the prediction horizon include_history: whether | STRING |
| HIGH | kats/models/quadratic_model.py | 0 | predict with fitted quadratic model. args: steps: the steps or length of the prediction horizon include_history: whether | STRING |
| HIGH | kats/models/nowcasting/nowcasting.py | 0 | the class for nowcasting parameters. takes parameters for class nowcastingmodel. attributes: step: an integer indicating | STRING |
| HIGH | kats/models/nowcasting/dynamic_nowcasting.py | 0 | the class for nowcasting parameters. takes parameters for class nowcastingmodel. attributes: step: an integer indicating | STRING |
| HIGH | kats/models/nowcasting/nowcastingplus.py | 0 | the class for nowcasting parameters. takes parameters for class nowcastingmodel. attributes: step: an integer indicating | STRING |
| HIGH | kats/models/nowcasting/nowcasting.py | 0 | raises: notimplementederror("subclasses should implement this!"). | STRING |
| HIGH | kats/models/nowcasting/dynamic_nowcasting.py | 0 | raises: notimplementederror("subclasses should implement this!"). | STRING |
| HIGH | kats/models/nowcasting/nowcastingplus.py | 0 | raises: notimplementederror("subclasses should implement this!"). | STRING |
| HIGH | kats/models/nowcasting/nowcasting.py | 0 | the class for nowcastingplus model. this class performs data processing and short term prediction, for time series based | STRING |
| HIGH | kats/models/nowcasting/dynamic_nowcasting.py | 0 | the class for nowcastingplus model. this class performs data processing and short term prediction, for time series based | STRING |
| HIGH | kats/models/nowcasting/nowcastingplus.py | 0 | the class for nowcastingplus model. this class performs data processing and short term prediction, for time series based | STRING |
| HIGH | kats/models/nowcasting/nowcasting.py | 0 | loads model_as_str and decodes into the class nowcastingmodel. args: model_as_bytes: a binary variable, indicating wheth | STRING |
| HIGH | kats/models/nowcasting/dynamic_nowcasting.py | 0 | loads model_as_str and decodes into the class nowcastingmodel. args: model_as_bytes: a binary variable, indicating wheth | STRING |
| HIGH | kats/models/nowcasting/nowcastingplus.py | 0 | loads model_as_str and decodes into the class nowcastingmodel. args: model_as_bytes: a binary variable, indicating wheth | STRING |
| HIGH | kats/models/nowcasting/nowcasting.py | 0 | raises: notimplementederror("subclasses should implement this!")。 | STRING |
| HIGH | kats/models/nowcasting/dynamic_nowcasting.py | 0 | raises: notimplementederror("subclasses should implement this!")。 | STRING |
| HIGH | kats/models/nowcasting/nowcastingplus.py | 0 | raises: notimplementederror("subclasses should implement this!")。 | STRING |
| HIGH | kats/detectors/threshold_detector.py | 0 | serialize the model into a json. serialize the model into a json so it can be loaded later. returns: json containing inf | STRING |
| HIGH | kats/detectors/bocpd_model.py | 0 | serialize the model into a json. serialize the model into a json so it can be loaded later. returns: json containing inf | STRING |
| HIGH | kats/detectors/prophet_detector.py | 0 | serialize the model into a json. serialize the model into a json so it can be loaded later. returns: json containing inf | STRING |
| HIGH | kats/detectors/outlier_detector.py | 0 | serialize the model into a json. serialize the model into a json so it can be loaded later. returns: json containing inf | STRING |
| HIGH | kats/detectors/multivariate_detector.py | 0 | serialize the model into a json. serialize the model into a json so it can be loaded later. returns: json containing inf | STRING |
| HIGH | kats/detectors/outlier_detector.py | 0 | trains a model, and returns the anomaly scores. returns the anomalyresponse, when data is passed to it. args: data: time | STRING |
| HIGH | kats/detectors/multivariate_detector.py | 0 | trains a model, and returns the anomaly scores. returns the anomalyresponse, when data is passed to it. args: data: time | STRING |
| HIGH | kats/detectors/prophet_detector.py | 0 | trains a model, and returns the anomaly scores. returns the anomalyresponse, when data is passed to it. args: data: time | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | kats/metrics/metrics.py | 110 | Ensure all arguments are arrays of matching size. Args: args: zero or more array-like values. Yields: | STRING |
| HIGH | kats/metrics/metadata.py | 131 | Get metadata about a metric, by name. Args: name: the metric name Returns: Metadata about that | STRING |
| HIGH | kats/utils/time_series_parameter_tuning.py | 91 | Checks if child class is instantiated. Throws an error if so. Args: metacls: To be used by metaclas | STRING |
| HIGH | kats/utils/time_series_parameter_tuning.py | 372 | Check parameters objects structure. parameters object needs to be in a specific format. It needs to be | STRING |
| HIGH | kats/utils/time_series_parameter_tuning.py | 667 | The static method of factory class that creates the search method object. It does not require the class to be in | STRING |
| HIGH | kats/utils/backtesters.py | 640 | Gets requested error value. Args: error_name: A string of the error whose value should be returned. | STRING |
| HIGH | kats/utils/backtesters.py | 1311 | Gets requested error value. Args: error_name: A string of the error whose value should be returned. | STRING |
| HIGH | kats/utils/simulator.py | 90 | Simulate data from ARIMA model. Data generation includes two steps: (1). Simulate data from ARMA(p', q) | STRING |
| HIGH | kats/utils/parameter_tuning_utils.py | 26 | Generates default search space as a list of dictionaries and returns it for prophet model. Each dictionary in the l | STRING |
| HIGH | kats/utils/parameter_tuning_utils.py | 94 | Generates default search space as a list of dictionaries and returns it for arnet. Each dictionary in the list corr | STRING |
| HIGH | kats/utils/parameter_tuning_utils.py | 136 | Generates default search space as a list of dictionaries and returns it for stfl. Each dictionary in the list corre | STRING |
| HIGH | kats/utils/parameter_tuning_utils.py | 172 | Generates default search space as a list of dictionaries and returns it for arima. Each dictionary in the list corr | STRING |
| HIGH | kats/utils/parameter_tuning_utils.py | 214 | Generates default search space as a list of dictionaries and returns it for holtwinters. Each dictionary in the lis | STRING |
| HIGH | kats/utils/parameter_tuning_utils.py | 262 | Generates default search space as a list of dictionaries and returns it for sarima. Each dictionary in the list cor | STRING |
| HIGH | kats/utils/parameter_tuning_utils.py | 326 | Generates default search space as a list of dictionaries and returns it for theta. Each dictionary in the list corr | STRING |
| HIGH | kats/utils/parameter_tuning_utils.py | 356 | Generates default search space as a list of dictionaries and returns it for var. Each dictionary in the list corres | STRING |
| HIGH | kats/utils/parameter_tuning_utils.py | 381 | Generates default search space as a list of dictionaries and returns it for lightgbm model. Each dictionary in the | STRING |
| HIGH | kats/utils/dataframe_utils.py | 19 | Renames columns in the dataframe based on provided prefix mappings. Each prefix in prefix_map must match exactl | STRING |
| HIGH | kats/detectors/interval_detector.py | 572 | Fit and predict on a Interval based AB test on time series data. Notes: - All entries of data and h | STRING |
| HIGH | kats/detectors/interval_detector.py | 684 | Determine a critical value for a statistical test. Notes: If the user has passed a duration, then t | STRING |
| HIGH | kats/detectors/interval_detector.py | 798 | Finds lowest m such that the corrected probability is still less than p in n trials. Notes: This me | STRING |
| HIGH | kats/detectors/interval_detector.py | 844 | Finds a p so that the corrected p is with `r_tol` of `p_global` with n trials and m run size. Notes: | STRING |
| HIGH | kats/detectors/interval_detector.py | 1071 | P(at least 1 run of m consecutive rejections) in a vectorized formulation. Notes: - Passing cov=Non | STRING |
| HIGH | kats/detectors/interval_detector.py | 1274 | Plot the ABTestResult. Warnings: This method can only be ran after `fit_predict`. Notes: | STRING |
| HIGH | kats/detectors/bocpd.py | 316 | The main detector method. This function runs the BOCPD detector and returns the list of changepoints. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kats/__init__.py | 6 | CODE | |
| LOW | kats/__init__.py | 7 | CODE | |
| LOW | kats/__init__.py | 8 | CODE | |
| LOW | kats/__init__.py | 9 | CODE | |
| LOW | kats/__init__.py | 10 | CODE | |
| LOW | kats/__init__.py | 11 | CODE | |
| LOW | kats/__init__.py | 12 | CODE | |
| LOW | kats/__init__.py | 13 | CODE | |
| LOW | kats/__init__.py | 14 | CODE | |
| LOW | kats/consts.py | 21 | CODE | |
| LOW | kats/metrics/__init__.py | 6 | CODE | |
| LOW | kats/metrics/__init__.py | 7 | CODE | |
| LOW | kats/metrics/__init__.py | 8 | CODE | |
| LOW | kats/compat/compat.py | 8 | CODE | |
| LOW | kats/compat/__init__.py | 6 | CODE | |
| LOW | kats/compat/__init__.py | 7 | CODE | |
| LOW | kats/compat/__init__.py | 8 | CODE | |
| LOW | kats/compat/__init__.py | 9 | CODE | |
| LOW | kats/tests/utils/test_cupik.py | 11 | CODE | |
| LOW | kats/tests/utils/test_emp_confidence_int.py | 13 | CODE | |
| LOW | kats/tests/tsfeatures/test_tsfeatures.py | 8 | CODE | |
| LOW | kats/tests/tsfeatures/test_tsfeatures.py | 12 | CODE | |
| LOW | kats/tests/tsfeatures/test_tsfeatures.py | 14 | CODE | |
| LOW | kats/tests/detectors/test_prophet_detector.py | 11 | CODE | |
| LOW | kats/tests/detectors/test_prophet_detector.py | 30 | CODE | |
| LOW | kats/utils/backtesters.py | 59 | CODE | |
| LOW | kats/utils/__init__.py | 6 | CODE | |
| LOW | kats/utils/__init__.py | 6 | CODE | |
| LOW | kats/utils/__init__.py | 6 | CODE | |
| LOW | kats/utils/__init__.py | 6 | CODE | |
| LOW | kats/utils/__init__.py | 6 | CODE | |
| LOW | kats/utils/__init__.py | 6 | CODE | |
| LOW | kats/utils/__init__.py | 16 | CODE | |
| LOW | kats/utils/simulator.py | 12 | CODE | |
| LOW | kats/utils/cupik.py | 17 | CODE | |
| LOW | kats/models/stlf.py | 16 | CODE | |
| LOW | kats/models/stlf.py | 16 | CODE | |
| LOW | kats/models/stlf.py | 16 | CODE | |
| LOW | kats/models/stlf.py | 16 | CODE | |
| LOW | kats/models/stlf.py | 16 | CODE | |
| LOW | kats/models/__init__.py | 6 | CODE | |
| LOW | kats/models/__init__.py | 6 | CODE | |
| LOW | kats/models/__init__.py | 6 | CODE | |
| LOW | kats/models/__init__.py | 6 | CODE | |
| LOW | kats/models/__init__.py | 6 | CODE | |
| LOW | kats/models/__init__.py | 6 | CODE | |
| LOW | kats/models/__init__.py | 6 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 22 | CODE | |
| LOW | kats/models/__init__.py | 17 | CODE | |
| LOW | kats/models/linear_model.py | 14 | CODE | |
| 64 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | kats/consts.py | 886 | if not self.time.equals(other.time): | CODE |
| HIGH⚡ | kats/tests/test_consts.py | 1140 | ts_from_df_multi_new.min.equals(pd.DataFrame(new_val_multi).min()), | CODE |
| HIGH⚡ | kats/tests/test_consts.py | 1146 | ts_from_df_multi_new.max.equals(pd.DataFrame(new_val_multi).max()), | CODE |
| HIGH⚡ | kats/tests/test_consts.py | 1156 | ts_from_df_multi_new.min.equals( | CODE |
| HIGH⚡ | kats/tests/test_consts.py | 1164 | ts_from_df_multi_new.max.equals( | CODE |
| HIGH | kats/tests/test_consts.py | 1097 | self.ts_from_df_multi.min.equals( | CODE |
| HIGH | kats/tests/test_consts.py | 1105 | self.ts_from_df_multi.max.equals( | CODE |
| HIGH | kats/tests/models/test_var_model.py | 41 | self.assertTrue(all(x.equals(index[0]) for x in index)) | CODE |
| HIGH | kats/tests/models/test_metalearner.py | 200 | return v1.equals(v2) | CODE |
| HIGH | kats/tests/models/test_theta_model.py | 243 | self.assertFalse(ts.value.equals(deseas_data.value)) | CODE |
| HIGH | kats/tests/tsfeatures/test_tsfeatures.py | 535 | # pyre-fixme[61]: `df` is undefined, or not always defined. | COMMENT |
| HIGH | kats/tests/tsfeatures/test_tsfeatures.py | 755 | f1.equals(f2), | CODE |
| HIGH | kats/tests/detectors/test_prophet_detector.py | 137 | # pyre-fixme[61]: `rest_days` is undefined, or not always defined. | COMMENT |
| HIGH | kats/models/ml_ar.py | 1208 | # pyre-fixme[61]: `fc_wide` is undefined, or not always defined. | COMMENT |
| HIGH | kats/models/prophet.py | 1034 | # pyre-fixme[61]: `possion_sample` is undefined, or not always defined. | COMMENT |
| HIGH | kats/models/globalmodel/model.py | 564 | # pyre-fixme[61]: `actual` is undefined, or not always defined. | COMMENT |
| HIGH | kats/detectors/cusum_model.py | 352 | # pyre-fixme[61]: `check_decrease` is undefined, or not always defined. | COMMENT |
| HIGH | kats/detectors/cusum_model.py | 355 | # pyre-fixme[61]: `check_increase` is undefined, or not always defined. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kats/consts.py | 237 | CODE | |
| LOW | kats/consts.py | 890 | CODE | |
| LOW | kats/consts.py | 984 | CODE | |
| LOW | kats/compat/pandas.py | 91 | CODE | |
| LOW | kats/tests/test_ensemble.py | 382 | CODE | |
| LOW | kats/tests/models/test_stlf_model.py | 121 | CODE | |
| LOW | kats/tests/models/test_metalearner.py | 196 | CODE | |
| LOW | kats/utils/time_series_parameter_tuning.py | 1223 | CODE | |
| LOW | kats/utils/time_series_parameter_tuning.py | 214 | CODE | |
| LOW | kats/utils/time_series_parameter_tuning.py | 546 | CODE | |
| LOW | kats/utils/time_series_parameter_tuning.py | 652 | CODE | |
| LOW | kats/utils/ensemble_predict_interval.py | 85 | CODE | |
| LOW | kats/utils/datapartition.py | 59 | CODE | |
| LOW | kats/models/ml_ar.py | 416 | CODE | |
| LOW | kats/models/ml_ar.py | 507 | CODE | |
| LOW | kats/models/ml_ar.py | 711 | CODE | |
| LOW | kats/models/ml_ar.py | 744 | CODE | |
| LOW | kats/models/ml_ar.py | 859 | CODE | |
| LOW | kats/models/ml_ar.py | 1143 | CODE | |
| LOW | kats/models/stlf.py | 124 | CODE | |
| LOW | kats/models/stlf.py | 262 | CODE | |
| LOW | kats/models/prophet.py | 633 | CODE | |
| LOW | kats/models/prophet.py | 828 | CODE | |
| LOW | kats/models/neuralprophet.py | 442 | CODE | |
| LOW | kats/models/reconciliation/thm.py | 195 | CODE | |
| LOW | kats/models/reconciliation/thm.py | 250 | CODE | |
| LOW | kats/models/reconciliation/thm.py | 306 | CODE | |
| LOW | kats/models/reconciliation/thm.py | 362 | CODE | |
| LOW | kats/models/ensemble/kats_ensemble.py | 192 | CODE | |
| LOW | kats/models/ensemble/kats_ensemble.py | 461 | CODE | |
| LOW | kats/models/metalearner/metalearner_hpt.py | 347 | CODE | |
| LOW | kats/models/metalearner/metalearner_modelselect.py | 263 | CODE | |
| LOW | kats/models/globalmodel/model.py | 111 | CODE | |
| LOW | kats/models/globalmodel/model.py | 206 | CODE | |
| LOW | kats/models/globalmodel/model.py | 266 | CODE | |
| LOW | kats/models/globalmodel/model.py | 1054 | CODE | |
| LOW | kats/models/globalmodel/model.py | 1207 | CODE | |
| LOW | kats/models/globalmodel/model.py | 220 | CODE | |
| LOW | kats/models/globalmodel/utils.py | 85 | CODE | |
| LOW | kats/models/globalmodel/utils.py | 385 | CODE | |
| LOW | kats/models/globalmodel/utils.py | 557 | CODE | |
| LOW | kats/models/globalmodel/utils.py | 1183 | CODE | |
| LOW | kats/models/globalmodel/utils.py | 1387 | CODE | |
| LOW | kats/models/globalmodel/utils.py | 1428 | CODE | |
| LOW | kats/models/globalmodel/utils.py | 1471 | CODE | |
| LOW | kats/models/globalmodel/backtester.py | 196 | CODE | |
| LOW | kats/models/globalmodel/backtester.py | 303 | CODE | |
| LOW | kats/tsfeatures/tsfeatures.py | 378 | CODE | |
| LOW | kats/tsfeatures/tsfeatures.py | 486 | CODE | |
| LOW | kats/tsfeatures/tsfeatures.py | 1519 | CODE | |
| LOW | kats/tsfeatures/tsfeatures.py | 1656 | CODE | |
| LOW | kats/tsfeatures/tsfeatures.py | 2146 | CODE | |
| LOW | kats/detectors/interval_detector.py | 836 | CODE | |
| LOW | kats/detectors/anomaly_postprocessing.py | 160 | CODE | |
| LOW | kats/detectors/cusum_detection.py | 977 | CODE | |
| LOW | kats/detectors/cusum_detection.py | 1144 | CODE | |
| LOW | kats/detectors/dtwcpd.py | 275 | CODE | |
| LOW | kats/detectors/prophet_detector.py | 232 | CODE | |
| LOW | kats/detectors/trend_mk.py | 477 | CODE | |
| LOW | kats/detectors/cusum_model.py | 180 | CODE | |
| 3 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kats/tests/models/test_metalearner.py | 208 | except Exception as e: | CODE |
| LOW | kats/tests/models/test_globalmodel.py | 774 | except Exception as e: | CODE |
| LOW | kats/tests/models/test_globalmodel.py | 1000 | except Exception as e: | CODE |
| LOW | kats/tests/detectors/test_bocpd.py | 403 | except Exception: | CODE |
| LOW | kats/utils/time_series_parameter_tuning.py | 237 | except Exception as e: | CODE |
| LOW | kats/utils/time_series_parameter_tuning.py | 251 | except Exception as e: | CODE |
| LOW | kats/utils/backtesters.py | 125 | except Exception as e: | CODE |
| LOW | kats/utils/backtesters.py | 162 | except Exception as e: | CODE |
| LOW | kats/utils/backtesters.py | 247 | except Exception as e: | CODE |
| LOW | kats/utils/backtesters.py | 625 | except Exception as e: | CODE |
| LOW | kats/models/var.py | 213 | except Exception as e: | CODE |
| LOW | kats/models/prophet.py | 451 | except Exception as e: | CODE |
| LOW | kats/models/arima.py | 308 | except Exception as e: | CODE |
| LOW | kats/models/reconciliation/thm.py | 185 | except Exception: | CODE |
| LOW | kats/models/reconciliation/thm.py | 216 | except Exception as e: | CODE |
| LOW | kats/models/reconciliation/thm.py | 524 | except Exception: | CODE |
| LOW | kats/models/metalearner/metalearner_hpt.py | 769 | except Exception as e: | CODE |
| LOW | kats/models/metalearner/metalearner_predictability.py | 124 | except Exception as e: | CODE |
| LOW | kats/models/metalearner/metalearner_predictability.py | 246 | except Exception as e: | CODE |
| LOW | kats/models/metalearner/metalearner_predictability.py | 364 | except Exception as e: | CODE |
| LOW | kats/models/metalearner/metalearner_modelselect.py | 379 | except Exception: | CODE |
| LOW⚡ | kats/models/metalearner/get_metadata.py | 142 | except Exception: | CODE |
| LOW | kats/models/metalearner/get_metadata.py | 248 | except Exception as e: | CODE |
| LOW | kats/models/globalmodel/model.py | 1285 | except Exception as e: | CODE |
| LOW | kats/models/globalmodel/utils.py | 109 | except Exception as e: | CODE |
| LOW | kats/models/globalmodel/utils.py | 1483 | except Exception as e: | CODE |
| LOW | kats/models/globalmodel/stdmodel.py | 124 | except Exception as e: | CODE |
| LOW | kats/models/globalmodel/backtester.py | 227 | except Exception as e: | CODE |
| LOW | kats/models/globalmodel/ensemble.py | 376 | except Exception as e: | CODE |
| LOW | kats/models/globalmodel/ensemble.py | 436 | except Exception as e: | CODE |
| LOW | kats/models/globalmodel/ensemble.py | 561 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 1390 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 1434 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 1513 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 1558 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 1612 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 1650 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 1710 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 1897 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 1984 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 2116 | except Exception as e: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 2234 | except Exception: | CODE |
| LOW | …etectors/meta_learning/metalearning_detection_model.py | 57 | except Exception as e: | CODE |
| LOW | kats/detectors/meta_learning/hpt_tuning.py | 180 | except Exception as e: | STRING |
| LOW | kats/detectors/meta_learning/hpt_tuning.py | 290 | except Exception as e: | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kats/consts.py | 237 | CODE | |
| LOW | kats/compat/pandas.py | 32 | CODE | |
| LOW | kats/compat/pandas.py | 91 | CODE | |
| LOW | kats/compat/pandas.py | 175 | CODE | |
| LOW | kats/compat/statsmodels.py | 57 | CODE | |
| LOW | kats/utils/time_series_parameter_tuning.py | 652 | CODE | |
| LOW | kats/utils/time_series_parameter_tuning.py | 961 | CODE | |
| LOW | kats/utils/emp_confidence_int.py | 268 | CODE | |
| LOW | kats/utils/ensemble_predict_interval.py | 352 | CODE | |
| LOW | kats/utils/decomposition.py | 235 | CODE | |
| LOW | kats/utils/simulator.py | 329 | CODE | |
| LOW | kats/utils/simulator.py | 410 | CODE | |
| LOW | kats/utils/simulator.py | 486 | CODE | |
| LOW | kats/utils/simulator.py | 556 | CODE | |
| LOW | kats/models/ml_ar.py | 187 | CODE | |
| LOW | kats/models/ml_ar.py | 1052 | CODE | |
| LOW | kats/models/stlf.py | 89 | CODE | |
| LOW | kats/models/var.py | 225 | CODE | |
| LOW | kats/models/sarima.py | 73 | CODE | |
| LOW | kats/models/sarima.py | 169 | CODE | |
| LOW | kats/models/prophet.py | 116 | CODE | |
| LOW | kats/models/neuralprophet.py | 160 | CODE | |
| LOW | kats/models/arima.py | 143 | CODE | |
| LOW | kats/models/metalearner/metalearner_hpt.py | 521 | CODE | |
| LOW | kats/models/metalearner/metalearner_hpt.py | 774 | CODE | |
| LOW | kats/models/metalearner/get_metadata.py | 94 | CODE | |
| LOW | kats/models/globalmodel/utils.py | 1183 | CODE | |
| LOW | kats/models/globalmodel/stdmodel.py | 51 | CODE | |
| LOW | kats/tsfeatures/tsfeatures.py | 311 | CODE | |
| LOW | kats/detectors/outlier_detector.py | 150 | CODE | |
| LOW | kats/detectors/rolling_stats_model.py | 218 | CODE | |
| LOW | kats/detectors/multivariate_detector.py | 186 | CODE | |
| LOW | kats/detectors/stat_sig_detector.py | 92 | CODE | |
| LOW | kats/detectors/stat_sig_detector.py | 605 | CODE | |
| LOW | kats/detectors/stat_sig_detector.py | 997 | CODE | |
| LOW | kats/detectors/prophet_detector.py | 353 | CODE | |
| LOW | kats/detectors/prophet_detector.py | 684 | CODE | |
| LOW | kats/detectors/bocpd.py | 305 | CODE | |
| LOW | kats/detectors/cusum_model.py | 180 | CODE | |
| LOW | kats/detectors/cusum_model.py | 1106 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | sphinx/source/conf.py | 10 | # This file is execfile()d with the current directory set to its | COMMENT |
| MEDIUM | kats/tests/test_backtester_dummy_data.py | 8 | # This file contains dummy data for the Backtester unit tests | COMMENT |
| MEDIUM | kats/tests/utils/test_backtest.py | 8 | # This file defines tests for the Backtester classes | COMMENT |
| MEDIUM | kats/tests/utils/test_decomposition.py | 630 | # Create a STL-based simulated object | COMMENT |
| MEDIUM | kats/tests/utils/test_decomposition.py | 650 | # Create a STL-based simulated object | COMMENT |
| MEDIUM | kats/tests/models/test_models_dummy_data.py | 8 | # This file contains dummy data for the model unit tests | COMMENT |
| MEDIUM | kats/tests/evaluation/test_evaluator.py | 8 | # This file defines tests for the abstract Evaluator class | COMMENT |
| MEDIUM | kats/tests/detectors/test_interval_detector.py | 587 | # Create a covariance matrix with positive correlations (rho=0.5 between all pairs) | COMMENT |
| MEDIUM | kats/utils/backtesters.py | 185 | >>> # Define the forecaster | STRING |
| MEDIUM | kats/models/metalearner/metalearner_predictability.py | 52 | >>> mlp2 = MetaLearnPredictability(load_model=True) # Create a new object to load the trained model | STRING |
| MEDIUM | kats/models/metalearner/metalearner_modelselect.py | 58 | >>> mlms2 = MetaLearnModelSelect(metadata=None, load_model=True) # Create a new object and then load a pre-train | STRING |
| MEDIUM | kats/tsfeatures/tsfeatures.py | 914 | # Create the range of lag values | COMMENT |
| MEDIUM | kats/detectors/detector.py | 52 | # Create the new class object (callable) | COMMENT |
| MEDIUM | kats/detectors/seasonality.py | 8 | """This module is for seasonality detection. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sphinx/source/conf.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | sphinx/source/conf.py | 61 | copyright = u"2021, Facebook Inc." | COMMENT |
| LOW | sphinx/source/conf.py | 81 | # non-false value, then it is used: | COMMENT |
| LOW | sphinx/source/conf.py | 101 | # If true, sectionauthor and moduleauthor directives will be shown in the | COMMENT |
| LOW | sphinx/source/conf.py | 121 | # a list of builtin themes. | COMMENT |
| LOW | sphinx/source/conf.py | 141 | # html_logo = None | COMMENT |
| LOW | sphinx/source/conf.py | 161 | # .htaccess) here, relative to this directory. These files are copied | COMMENT |
| LOW | sphinx/source/conf.py | 181 | # html_domain_indices = True | COMMENT |
| LOW | kats/metrics/metrics.py | 21 | with warnings.catch_warnings(): | COMMENT |
| LOW | kats/tests/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | kats/tests/utils/test_time_series_parameter_tuning.py | 301 | COMMENT | |
| LOW | kats/tests/utils/test_time_series_parameter_tuning.py | 321 | # parameters=prophet_small_grid, | COMMENT |
| LOW | kats/tests/utils/test_time_series_parameter_tuning.py | 601 | COMMENT | |
| LOW | kats/tests/utils/test_time_series_parameter_tuning.py | 621 | # set(parameter_values_with_scores), | COMMENT |
| LOW | kats/tests/utils/test_time_series_parameter_tuning.py | 641 | COMMENT | |
| LOW | kats/tests/utils/test_time_series_parameter_tuning.py | 661 | # ) | COMMENT |
| LOW | kats/tests/utils/test_emp_confidence_int.py | 41 | COMMENT | |
| LOW | kats/tests/utils/test_emp_confidence_int.py | 101 | 668.0317888909123, | COMMENT |
| LOW | kats/tests/models/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | kats/tests/detectors/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | kats/tests/detectors/meta_learning/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | kats/models/reconciliation/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | kats/models/nowcasting/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | kats/tsfeatures/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | kats/detectors/detector_consts.py | 401 | # if both control and test have one value, then using a t test does not make any sense | COMMENT |
| LOW | kats/detectors/bocpd.py | 901 | + message[self.T + m_ptr : self.T, self._ts_slice] | COMMENT |
| LOW | kats/detectors/bocpd.py | 921 | # = log(e^x_1 + e^(log(e^x_2 + ... + e^x_n))) | COMMENT |
| LOW | kats/detectors/meta_learning/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| LOW | kats/graphics/__init__.py | 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | kats/consts.py | 484 | # Check if time values are equal | COMMENT |
| LOW⚡ | kats/consts.py | 492 | # Check if value Series are equal | COMMENT |
| LOW⚡ | kats/consts.py | 501 | # Check if value DataFrames are equal (ignore column order) | COMMENT |
| LOW⚡ | kats/models/metalearner/get_metadata.py | 122 | # Check if the data type is TimeSeriesData | COMMENT |
| LOW⚡ | kats/models/metalearner/get_metadata.py | 130 | # Check if the time series is univariate | COMMENT |
| LOW⚡ | kats/models/metalearner/get_metadata.py | 138 | # Check if use customized tune Executor. | COMMENT |
| LOW | kats/evaluation/evaluator.py | 46 | if not isinstance(run_name, str): # Check if name is a string | CODE |
| LOW | kats/evaluation/evaluator.py | 55 | self._check_if_valid_run_name(run_name=run_name) # Check if valid run | CODE |
| LOW⚡ | kats/evaluation/evaluator.py | 78 | self._check_if_valid_run_name(run_name=run_name) # Check if valid run | CODE |
| LOW⚡ | kats/evaluation/evaluator.py | 80 | if np.ndim(evaluator.preds) < 1: # Check if predictions are a valid type | CODE |
| LOW⚡ | kats/evaluation/evaluator.py | 83 | if np.ndim(labels) < 1: # Check if labels are a valid type | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | kats/tests/detectors/test_detector_consts.py | 842 | score_list = self.response.scores.value.values.tolist() | CODE |
| CRITICAL | kats/tests/detectors/test_detector_consts.py | 1135 | score_list = self.response.scores.value.values.tolist() | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | kats/consts.py | 1030 | # convert to pandas.DataFrame so that we can leverage the built-in methods | COMMENT |
| LOW | kats/tests/test_ensemble.py | 338 | # the backtester should just return a random number here | COMMENT |
| LOW | kats/tests/test_ensemble.py | 414 | # the backtester should just return a random number here | COMMENT |
| LOW | kats/tests/models/test_ensemble.py | 340 | # the backtester should just return a random number here | COMMENT |
| MEDIUM | kats/models/ml_ar.py | 333 | # [TODO]: more comprehensive parameter check. | COMMENT |
| MEDIUM | kats/models/simple_heuristic_model.py | 175 | # TO DO: infer more robust frequency | COMMENT |
| MEDIUM | kats/tsfeatures/tsfeatures.py | 44 | # This is a temporary workaround to facilitate Numpy upgrade. The import | COMMENT |
| LOW | kats/detectors/stat_sig_detector.py | 232 | # just return the initial response of zeros | COMMENT |
| LOW | kats/detectors/stat_sig_detector.py | 1055 | # just return the initial response of zeros | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kats/consts.py | 560 | def _set_univariate_values_to_series(self) -> None: | CODE |
| LOW | kats/consts.py | 1361 | __all__ = [ | CODE |
| LOW | kats/models/globalmodel/model.py | 111 | def _set_nn_status(self, mode: str) -> None: | CODE |
| LOW | kats/tsfeatures/tsfeatures.py | 422 | def _set_defaults(self, kwargs: Dict[str, Any], default: bool) -> None: | CODE |
| LOW | kats/detectors/stat_sig_detector.py | 818 | def _update_response(self, date: pd.Timestamp) -> None: | CODE |
| LOW | kats/detectors/stat_sig_detector.py | 886 | def _update_control_test(self, data: TimeSeriesData) -> None: | CODE |
| LOW | kats/detectors/stat_sig_detector.py | 907 | def _update_data(self, data: TimeSeriesData) -> None: | CODE |
| LOW | kats/detectors/stat_sig_detector.py | 1217 | def _update_response(self, date: pd.Timestamp) -> None: | CODE |
| LOW | kats/detectors/stat_sig_detector.py | 1260 | def _update_control_test(self, data: TimeSeriesData) -> None: | CODE |
| LOW | kats/detectors/bocpd.py | 145 | def set_prior(self, param_dict: Dict[str, float]) -> None: | CODE |
| LOW | kats/detectors/bocpd.py | 194 | def set_prior(self, param_dict: Dict[str, float]) -> None: | CODE |
| LOW | kats/detectors/bocpd.py | 1188 | def update_sufficient_stats(self, x: float) -> None: | STRING |
| LOW | kats/detectors/bocpd.py | 1370 | def update_sufficient_stats(self, x: float) -> None: | STRING |
| LOW | kats/detectors/bocpd.py | 1756 | def update_sufficient_stats(self, x: float) -> None: | STRING |
| LOW | kats/detectors/bocpd.py | 1869 | def update_sufficient_stats(self, x: float) -> None: | STRING |
| LOW | kats/detectors/cusum_model.py | 318 | def _set_alert_off(self) -> None: | CODE |
| LOW | kats/detectors/cusum_model.py | 1208 | def _set_alert_off_multi_ts(self, set_off_mask: pd.Series) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kats/utils/simulator.py | 129 | # Step 1: simulate ARMA(p, q) | COMMENT |
| LOW | kats/utils/simulator.py | 157 | # Step 2: add drift, unit roots | COMMENT |
| LOW⚡ | kats/detectors/interval_detector.py | 619 | # Step 1: Determine critical_value of test_statistic. | COMMENT |
| LOW⚡ | kats/detectors/interval_detector.py | 622 | # Step 2: Get a test_statistic for each time value. | COMMENT |
| LOW | kats/detectors/interval_detector.py | 646 | # Step 4: Return to user. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kats/utils/simulator.py | 129 | # Step 1: simulate ARMA(p, q) | COMMENT |
| LOW | kats/utils/simulator.py | 157 | # Step 2: add drift, unit roots | COMMENT |
| LOW⚡ | kats/detectors/interval_detector.py | 619 | # Step 1: Determine critical_value of test_statistic. | COMMENT |
| LOW⚡ | kats/detectors/interval_detector.py | 622 | # Step 2: Get a test_statistic for each time value. | COMMENT |
| LOW | kats/detectors/interval_detector.py | 646 | # Step 4: Return to user. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | kats/compat/compat.py | 62 | except metadata.PackageNotFoundError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | kats/models/nowcasting/feature_extraction.py | 181 | CODE | |
| MEDIUM | kats/models/nowcasting/feature_extraction.py | 216 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kats/utils/decomposition.py | 288 | >>> # Example usage: | STRING |
| LOW | kats/detectors/anomaly_postprocessing.py | 48 | >>> # Example usage: | STRING |
| LOW | kats/detectors/stat_sig_detector.py | 70 | >>> # Example usage: | STRING |
| LOW | kats/detectors/stat_sig_detector.py | 963 | >>> # Example usage: | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kats/consts.py | 881 | # TODO: implement multivariate time series operation with constant | COMMENT |