Repository Analysis

StackStorm/st2

StackStorm (aka "IFTTT for Ops") is event-driven automation for auto-remediation, incident responses, troubleshooting, deployments, and more for DevOps and SREs. Includes rules engine, workflow, 160 integration packs with 6000+ actions (see https://exchange.stackstorm.org) and ChatOps. Installer at https://docs.stackstorm.com/install/index.html

27.6 Moderate AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of StackStorm/st2, a Python project with 6,526 GitHub stars. SynthScan v2.0 examined 208,693 lines of code across 1669 source files, recording 5086 pattern matches distributed across 19 syntactic categories. The overall adjusted score of 27.6 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.6
Adjusted Score
27.6
Raw Score
100%
Time Factor
2026-08-28
Last Push
6.5K
Stars
Python
Language
208.7K
Lines of Code
1.7K
Files
5.1K
Pattern Hits
2026-08-29
Scan Date
0.05
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 3HIGH 84MEDIUM 126LOW 4873

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 5086 distinct pattern matches across 19 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 Identifiers1960 hits · 1979 pts
SeverityFileLineSnippetContext
LOWconftest.py75def pytest_collection_modifyitems(session, config, items: List[nodes.Node]):CODE
LOWtools/diff-db-disk.py95def _get_api_models_from_disk(artifact_type, pack_dir=None):CODE
LOWtools/migrate_triggers_to_include_ref_count.py30 def _get_trigger_with_parameters(self):CODE
LOWtools/migrate_triggers_to_include_ref_count.py42 def _update_trigger_ref_count(self, trigger_db, ref_count):CODE
LOWtools/json2yaml.py40def get_files_matching_pattern(dir_, pattern):CODE
LOWst2auth/st2auth/handlers.py60 def _get_username_for_request(self, username, request):CODE
LOWst2auth/st2auth/validation.py25def validate_auth_backend_is_correctly_configured():CODE
LOWst2auth/st2auth/controllers/v1/auth.py89def process_successful_response(token):CODE
LOWst2auth/st2auth/controllers/v1/sso.py111def process_successful_authn_response(referer, token):STRING
LOWst2auth/st2auth/controllers/v1/sso.py135def process_successful_response(status_code, json_body):STRING
LOWst2auth/tests/unit/test_handlers.py51 def test_proxy_handler_no_remote_user(self):CODE
LOWst2auth/tests/unit/test_handlers.py63 def test_proxy_handler_bad_auth(self):CODE
LOWst2auth/tests/unit/test_handlers.py76 def test_standalone_bad_auth_type(self):CODE
LOWst2auth/tests/unit/test_handlers.py102 def test_standalone_bad_auth_value(self):CODE
LOWst2auth/tests/unit/test_handlers.py128 def test_standalone_handler_ttl(self):CODE
LOWst2auth/tests/unit/test_handlers.py151 def test_standalone_for_user_not_service(self):CODE
LOWst2auth/tests/unit/test_handlers.py170 def test_standalone_for_user_service(self):CODE
LOWst2auth/tests/unit/test_handlers.py184 def test_standalone_for_user_not_found(self):CODE
LOWst2auth/tests/unit/test_handlers.py198 def test_standalone_impersonate_user_not_found(self):CODE
LOWst2auth/tests/unit/test_handlers.py222 def test_standalone_impersonate_user_with_nick_origin(self):CODE
LOWst2auth/tests/unit/test_handlers.py237 def test_standalone_impersonate_user_no_origin(self):CODE
LOWst2auth/tests/unit/test_handlers.py251 def test_password_contains_colon(self):CODE
LOWst2auth/tests/unit/test_validation_utils.py30 def test_validate_auth_backend_is_correctly_configured_success(self):CODE
LOWst2auth/tests/unit/test_validation_utils.py34 def test_validate_auth_backend_is_correctly_configured_invalid_backend(self):CODE
LOWst2auth/tests/unit/test_validation_utils.py44 def test_validate_auth_backend_is_correctly_configured_backend_doesnt_expose_groups(CODE
LOWst2auth/tests/unit/test_auth_backends.py22 def test_flat_file_backend_is_available_by_default(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_sso.py73 def test_default_backend_unknown_exception(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_sso.py79 def test_default_backend_not_implemented(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_sso.py102 def test_default_backend_unknown_exception(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_sso.py110 def test_default_backend_not_implemented(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_sso.py145 def test_callback_url_encoded_payload(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_sso.py158 def test_idp_callback_verification_failed(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py70 def test_token_model_null_token(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py75 def test_token_model_null_user(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py80 def test_token_model_null_expiry(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py192 def test_token_post_set_bad_ttl(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py201 def test_token_get_unauthorized(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py100 def test_token_post_proxy_user(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py113 def test_token_post_unauthorized(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py129 def test_token_post_existing_user(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py135 def test_token_post_success_x_api_url_header_value(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py151 def test_token_post_default_url_path(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py171 def test_token_post_no_data_in_body_text_plain_context_type_used(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py180 def test_token_post_set_ttl_over_policy(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py213 def test_token_get_unauthorized_bad_api_key(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py228 def test_token_get_unauthorized_bad_token(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py248 def test_token_get_auth_with_api_key(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py264 def test_token_get_auth_with_token(self):CODE
LOWst2auth/tests/unit/controllers/v1/test_token.py297 def test_token_get_unauthorized_bad_ttl(self):CODE
LOWst2stream/st2stream/signal_handlers.py21def register_stream_signal_handlers(handler_func):CODE
LOW…ts/unit/controllers/v1/test_stream_execution_output.py39 def test_get_one_id_last_no_executions_in_the_database(self):CODE
LOW…ts/unit/controllers/v1/test_stream_execution_output.py48 def test_get_output_running_execution(self):CODE
LOW…ts/unit/controllers/v1/test_stream_execution_output.py140 def test_get_output_finished_execution(self):CODE
LOWst2stream/tests/unit/controllers/v1/test_stream.py138 def test_get_all_with_filters(self):CODE
LOWst2stream/tests/unit/controllers/v1/test_stream.py152 def dispatch_and_handle_mock_data(resp):CODE
LOWcontrib/core/tests/test_action_inject_trigger.py31 def test_inject_trigger_only_trigger_no_payload(self, mock_get_api_client):CODE
LOWcontrib/core/tests/test_action_inject_trigger.py45 def test_inject_trigger_trigger_and_payload(self, mock_get_api_client):CODE
LOWcontrib/core/tests/test_action_inject_trigger.py60 def test_inject_trigger_trigger_payload_trace_tag(self, mock_get_api_client):CODE
LOWcontrib/core/tests/test_action_sendmail.py55 def test_sendmail_default_text_html_content_type(self):CODE
LOWcontrib/core/tests/test_action_sendmail.py88 def test_sendmail_text_plain_content_type(self):CODE
1900 more matches not shown…
Over-Commented Block1119 hits · 1112 pts
SeverityFileLineSnippetContext
LOWconftest.py1# Copyright 2022 The StackStorm Authors.COMMENT
LOWpants.toml61]COMMENT
LOWpants.toml161py_resolve_format = "mutable_virtualenv"COMMENT
LOWfixed-requirements.txt1# Package versions fixed (pinned) for the whole st2 project.COMMENT
LOWpackaging/build_st2_venv.py1# Copyright 2025 The StackStorm Authors.COMMENT
LOWpackaging/deb/scripts/post-install.sh1#!/bin/shCOMMENT
LOWpackaging/deb/scripts/post-install.sh21# [ removing <conflicting-package> <version> ]COMMENT
LOWpackaging/deb/scripts/pre-install.sh1#!/bin/shCOMMENT
LOWpackaging/deb/scripts/pre-remove.sh1#!/bin/shCOMMENT
LOWpackaging/deb/scripts/post-remove.sh1#!/bin/shCOMMENT
LOWtools/migrate_messaging_setup.py1#!/usr/bin/env pythonCOMMENT
LOWtools/visualize_action_chain.py1#!/usr/bin/env pythonCOMMENT
LOWtools/diff-db-disk.py1#!/usr/bin/env pythonCOMMENT
LOWtools/queue_producer.py1#!/usr/bin/env pythonCOMMENT
LOWtools/config_gen.py1#!/usr/bin/env pythonCOMMENT
LOWtools/log_watcher.py1#!/usr/bin/env pythonCOMMENT
LOWtools/direct_queue_publisher.py1#!/usr/bin/env pythonCOMMENT
LOWtools/st2-inject-trigger-instances.py1#!/usr/bin/env pythonCOMMENT
LOWtools/list_group_members.py1#!/usr/bin/env pythonCOMMENT
LOWtools/enumerate-runners.py1#!/usr/bin/env pythonCOMMENT
LOWtools/migrate_triggers_to_include_ref_count.py1#!/usr/bin/env pythonCOMMENT
LOWtools/st2-analyze-links.py1#!/usr/bin/env pythonCOMMENT
LOWtools/migrate_rules_to_include_pack.py1#!/usr/bin/env pythonCOMMENT
LOWtools/queue_consumer.py1#!/usr/bin/env pythonCOMMENT
LOWtools/json2yaml.py1#!/usr/bin/env pythonCOMMENT
LOWst2auth/setup.py1# -*- coding: utf-8 -*-COMMENT
LOWst2auth/dist_utils.py1# -*- coding: utf-8 -*-COMMENT
LOWst2auth/dist_utils.py21from __future__ import absolute_importCOMMENT
LOWst2auth/st2auth/config.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/handlers.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/__init__.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/app.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/wsgi.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/validation.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/cmd/api.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/backends/constants.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/backends/__init__.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/backends/base.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/sso/__init__.py1# Copyright 2019 Extreme Networks, Inc.COMMENT
LOWst2auth/st2auth/sso/noop.py1# Copyright 2019 Extreme Networks, Inc.COMMENT
LOWst2auth/st2auth/sso/base.py1# Copyright 2019 Extreme Networks, Inc.COMMENT
LOWst2auth/st2auth/controllers/v1/auth.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/st2auth/controllers/v1/sso.py1# Copyright 2019 Extreme Networks, Inc.COMMENT
LOWst2auth/st2auth/controllers/v1/root.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/tests/base.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/tests/unit/test_handlers.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/tests/unit/test_validation_utils.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/tests/unit/test_auth_backends.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2auth/tests/unit/controllers/v1/test_sso.py1# Copyright 2019 Extreme Networks, Inc.COMMENT
LOWst2auth/tests/unit/controllers/v1/test_token.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2stream/setup.py1# -*- coding: utf-8 -*-COMMENT
LOWst2stream/dist_utils.py1# -*- coding: utf-8 -*-COMMENT
LOWst2stream/dist_utils.py21from __future__ import absolute_importCOMMENT
LOWst2stream/st2stream/config.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2stream/st2stream/__init__.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2stream/st2stream/app.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2stream/st2stream/signal_handlers.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2stream/st2stream/wsgi.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2stream/st2stream/cmd/__init__.py1# Copyright 2020 The StackStorm Authors.COMMENT
LOWst2stream/st2stream/cmd/api.py1# Copyright 2020 The StackStorm Authors.COMMENT
1059 more matches not shown…
Unused Imports816 hits · 810 pts
SeverityFileLineSnippetContext
LOWtools/migrate_messaging_setup.py21CODE
LOWtools/visualize_action_chain.py21CODE
LOWtools/diff-db-disk.py25CODE
LOWtools/queue_producer.py21CODE
LOWtools/config_gen.py17CODE
LOWtools/log_watcher.py17CODE
LOWtools/log_watcher.py18CODE
LOWtools/direct_queue_publisher.py18CODE
LOWtools/st2-inject-trigger-instances.py29CODE
LOWtools/list_group_members.py17CODE
LOWtools/enumerate-runners.py17CODE
LOWtools/migrate_triggers_to_include_ref_count.py18CODE
LOWtools/st2-analyze-links.py32CODE
LOWtools/st2-analyze-links.py34CODE
LOWtools/migrate_rules_to_include_pack.py17CODE
LOWtools/queue_consumer.py21CODE
LOWtools/json2yaml.py21CODE
LOWst2auth/dist_utils.py21CODE
LOWst2auth/st2auth/config.py16CODE
LOWst2auth/st2auth/sso/__init__.py15CODE
LOWst2auth/st2auth/sso/noop.py15CODE
LOWst2auth/tests/unit/test_handlers.py16CODE
LOWst2stream/dist_utils.py21CODE
LOWst2stream/st2stream/config.py20CODE
LOWst2stream/st2stream/cmd/__init__.py16CODE
LOWcontrib/core/tests/test_action_inject_trigger.py18CODE
LOWcontrib/core/tests/test_action_uuid.py18CODE
LOWcontrib/core/actions/inject_trigger.py16CODE
LOWcontrib/core/actions/generate_uuid.py16CODE
LOWcontrib/core/actions/pause.py16CODE
LOW…ntrib/packs/actions/pack_mgmt/get_pack_dependencies.py15CODE
LOWcontrib/packs/actions/pack_mgmt/get_pack_warnings.py14CODE
LOWcontrib/linux/tests/test_action_dig.py17CODE
LOW…les/actions/pythonactions/forloop_push_github_repos.py16CODE
LOWcontrib/examples/actions/pythonactions/fibonacci.py17CODE
LOWcontrib/runners/winrm_runner/setup.py17CODE
LOWcontrib/runners/winrm_runner/dist_utils.py21CODE
LOW…rs/winrm_runner/winrm_runner/winrm_ps_script_runner.py16CODE
LOW…ners/winrm_runner/winrm_runner/winrm_command_runner.py16CODE
LOWcontrib/runners/winrm_runner/winrm_runner/winrm_base.py16CODE
LOW…s/winrm_runner/winrm_runner/winrm_ps_command_runner.py16CODE
LOW…s/winrm_runner/tests/unit/test_winrm_command_runner.py16CODE
LOW…rib/runners/winrm_runner/tests/unit/test_winrm_base.py16CODE
LOW…winrm_runner/tests/unit/test_winrm_ps_script_runner.py16CODE
LOW…inrm_runner/tests/unit/test_winrm_ps_command_runner.py16CODE
LOWcontrib/runners/python_runner/setup.py17CODE
LOWcontrib/runners/python_runner/dist_utils.py21CODE
LOW…b/runners/python_runner/python_runner/python_runner.py16CODE
LOW…s/python_runner/python_runner/python_action_wrapper.py16CODE
LOW…runners/python_runner/tests/unit/test_output_schema.py16CODE
LOW…/runners/python_runner/tests/unit/test_pythonrunner.py16CODE
LOW…ests/integration/test_python_action_process_wrapper.py35CODE
LOWcontrib/runners/local_runner/setup.py17CODE
LOWcontrib/runners/local_runner/dist_utils.py21CODE
LOW…ocal_runner/local_runner/local_shell_command_runner.py16CODE
LOW…local_runner/local_runner/local_shell_script_runner.py16CODE
LOWcontrib/runners/local_runner/local_runner/base.py16CODE
LOW…ers/local_runner/tests/integration/test_localrunner.py16CODE
LOWcontrib/runners/action_chain_runner/setup.py17CODE
LOWcontrib/runners/action_chain_runner/dist_utils.py21CODE
756 more matches not shown…
Modern Structural Boilerplate457 hits · 459 pts
SeverityFileLineSnippetContext
LOWst2auth/dist_utils.py48__all__ = [CODE
LOWst2auth/st2auth/validation.py22__all__ = ["validate_auth_backend_is_correctly_configured"]CODE
LOWst2auth/st2auth/cmd/api.py39__all__ = ["main"]CODE
LOWst2auth/st2auth/backends/constants.py22__all__ = ["AuthBackendCapability"]CODE
LOWst2auth/st2auth/backends/__init__.py25__all__ = ["get_available_backends", "get_backend_instance"]CODE
LOWst2auth/st2auth/backends/base.py22__all__ = ["BaseAuthenticationBackend"]CODE
LOWst2auth/st2auth/sso/__init__.py28__all__ = ["get_available_backends", "get_backend_instance", "get_sso_backend"]CODE
LOWst2auth/st2auth/sso/noop.py20__all__ = ["NoOpSingleSignOnBackend"]CODE
LOWst2auth/st2auth/sso/base.py19__all__ = ["BaseSingleSignOnBackend"]CODE
LOWst2auth/tests/unit/test_handlers.py33__all__ = ["AuthHandlerTestCase"]CODE
LOWst2auth/tests/unit/test_validation_utils.py22__all__ = ["ValidationUtilsTestCase"]CODE
LOWst2stream/dist_utils.py48__all__ = [CODE
LOWst2stream/st2stream/signal_handlers.py18__all__ = ["register_stream_signal_handlers"]CODE
LOWst2stream/st2stream/cmd/__init__.py18__all__ = ["api"]CODE
LOWst2stream/st2stream/cmd/api.py40__all__ = ["main"]CODE
LOWst2stream/st2stream/controllers/v1/executions.py33__all__ = ["ActionExecutionOutputStreamController"]CODE
LOWst2stream/st2stream/controllers/v1/stream.py24__all__ = ["StreamController"]CODE
LOWst2stream/st2stream/controllers/v1/root.py18__all__ = ["RootController"]CODE
LOW…ts/unit/controllers/v1/test_stream_execution_output.py35__all__ = ["ActionExecutionOutputStreamControllerTestCase"]CODE
LOWst2stream/tests/unit/controllers/v1/base.py19__all__ = ["FunctionalTest"]CODE
LOWcontrib/core/tests/test_action_sendmail.py36__all__ = ["SendmailActionTestCase"]CODE
LOWcontrib/core/actions/inject_trigger.py20__all__ = ["InjectTriggerAction"]CODE
LOWcontrib/core/actions/generate_uuid.py21__all__ = ["GenerateUUID"]CODE
LOWcontrib/core/actions/pause.py22__all__ = ["PauseAction"]CODE
LOWcontrib/chatops/tests/test_format_result.py23__all__ = ["FormatResultActionTestCase"]CODE
LOWcontrib/packs/tests/test_action_unload.py44__all__ = ["UnloadActionTestCase"]CODE
LOWcontrib/packs/actions/pack_mgmt/register.py22__all__ = ["St2RegisterAction"]CODE
LOWcontrib/packs/actions/pack_mgmt/download.py24__all__ = ["DownloadGitRepoAction"]CODE
LOWcontrib/packs/actions/pack_mgmt/setup_virtualenv.py21__all__ = ["SetupVirtualEnvironmentAction"]CODE
LOWcontrib/runners/winrm_runner/dist_utils.py48__all__ = [CODE
LOW…rs/winrm_runner/winrm_runner/winrm_ps_script_runner.py24__all__ = ["WinRmPsScriptRunner", "get_runner", "get_metadata"]CODE
LOW…ners/winrm_runner/winrm_runner/winrm_command_runner.py23__all__ = ["WinRmCommandRunner", "get_runner", "get_metadata"]CODE
LOWcontrib/runners/winrm_runner/winrm_runner/winrm_base.py33__all__ = [CODE
LOW…s/winrm_runner/winrm_runner/winrm_ps_command_runner.py23__all__ = ["WinRmPsCommandRunner", "get_runner", "get_metadata"]CODE
LOWcontrib/runners/python_runner/dist_utils.py48__all__ = [CODE
LOW…b/runners/python_runner/python_runner/python_runner.py61__all__ = [CODE
LOW…s/python_runner/python_runner/python_action_wrapper.py70__all__ = ["PythonActionWrapper", "ActionService"]CODE
LOW…ests/integration/test_python_action_process_wrapper.py46__all__ = ["PythonRunnerActionWrapperProcessTestCase"]CODE
LOW…runner/tests/integration/test_pythonrunner_behavior.py40__all__ = ["PythonRunnerBehaviorTestCase"]CODE
LOWcontrib/runners/local_runner/dist_utils.py48__all__ = [CODE
LOW…ocal_runner/local_runner/local_shell_command_runner.py26__all__ = ["LocalShellCommandRunner", "get_runner", "get_metadata"]CODE
LOW…local_runner/local_runner/local_shell_script_runner.py26__all__ = ["LocalShellScriptRunner", "get_runner", "get_metadata"]CODE
LOWcontrib/runners/local_runner/local_runner/base.py42__all__ = ["BaseLocalShellRunner", "RUNNER_COMMAND"]CODE
LOW…ers/local_runner/tests/integration/test_localrunner.py47__all__ = ["LocalShellCommandRunnerTestCase", "LocalShellScriptRunnerTestCase"]CODE
LOWcontrib/runners/action_chain_runner/dist_utils.py48__all__ = [CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py53__all__ = ["ActionChainRunner", "ChainHolder", "get_runner", "get_metadata"]CODE
LOWcontrib/runners/orquesta_runner/dist_utils.py48__all__ = [CODE
LOW…ers/orquesta_runner/orquesta_runner/orquesta_runner.py40__all__ = ["OrquestaRunner", "get_runner", "get_metadata"]CODE
LOWcontrib/runners/remote_runner/dist_utils.py48__all__ = [CODE
LOW…rs/remote_runner/remote_runner/remote_script_runner.py30__all__ = ["ParamikoRemoteScriptRunner", "get_runner", "get_metadata"]CODE
LOW…s/remote_runner/remote_runner/remote_command_runner.py27__all__ = ["ParamikoRemoteCommandRunner", "get_runner", "get_metadata"]CODE
LOWcontrib/runners/http_runner/dist_utils.py48__all__ = [CODE
LOW…rib/runners/http_runner/tests/unit/test_http_runner.py31__all__ = ["HTTPClientTestCase", "HTTPRunnerTestCase"]CODE
LOWcontrib/runners/http_runner/http_runner/http_runner.py39__all__ = ["HttpRunner", "HTTPClient", "get_runner", "get_metadata"]CODE
LOWcontrib/runners/announcement_runner/dist_utils.py48__all__ = [CODE
LOW…ment_runner/announcement_runner/announcement_runner.py27__all__ = ["AnnouncementRunner", "get_runner", "get_metadata"]CODE
LOWcontrib/runners/inquirer_runner/dist_utils.py48__all__ = [CODE
LOW…ers/inquirer_runner/inquirer_runner/inquirer_runner.py32__all__ = ["Inquirer", "get_runner", "get_metadata"]CODE
LOWcontrib/runners/noop_runner/dist_utils.py48__all__ = [CODE
LOWcontrib/runners/noop_runner/noop_runner/noop_runner.py25__all__ = ["NoopRunner", "get_runner", "get_metadata"]CODE
397 more matches not shown…
Excessive Try-Catch Wrapping303 hits · 355 pts
SeverityFileLineSnippetContext
LOWtools/migrate_rules_to_include_pack.py141 except Exception as e:CODE
MEDIUMtools/migrate_rules_to_include_pack.py121def migrate_rules():CODE
LOWst2auth/st2auth/handlers.py137 except Exception:CODE
LOWst2auth/st2auth/handlers.py199 except Exception:CODE
LOWst2auth/st2auth/handlers.py265 except Exception:CODE
LOWst2auth/st2auth/cmd/api.py115 except Exception:CODE
MEDIUMst2auth/st2auth/cmd/api.py108def main():CODE
LOWst2auth/st2auth/backends/__init__.py54 except Exception as e:CODE
LOWst2auth/st2auth/sso/__init__.py58 except Exception as e:CODE
LOWst2auth/st2auth/controllers/v1/auth.py50 except Exception:CODE
LOWst2auth/st2auth/controllers/v1/sso.py61 except Exception as e:CODE
LOWst2auth/st2auth/controllers/v1/sso.py73 except Exception as e:CODE
LOWst2auth/st2auth/controllers/v1/sso.py88 except Exception:CODE
MEDIUMst2auth/st2auth/controllers/v1/sso.py38def post(self, response, **kwargs):CODE
MEDIUMst2auth/st2auth/controllers/v1/sso.py66def get(self, referer):CODE
MEDIUMst2auth/st2auth/controllers/v1/sso.py84def get(self):CODE
LOWst2stream/st2stream/cmd/api.py125 except Exception:CODE
MEDIUMst2stream/st2stream/cmd/api.py112def main():CODE
LOW…ntrib/packs/actions/pack_mgmt/get_pack_dependencies.py127 except Exception:CODE
LOW…ntrib/packs/actions/pack_mgmt/get_pack_dependencies.py139 except Exception:CODE
LOWcontrib/packs/actions/pack_mgmt/get_pack_warnings.py56 except Exception:CODE
LOWcontrib/packs/actions/pack_mgmt/get_installed.py60 except Exception as e:CODE
LOWcontrib/linux/actions/wait_for_ssh.py64 except Exception as e:CODE
LOWcontrib/linux/actions/checks/check_processes.py62 except Exception:CODE
MEDIUMcontrib/linux/actions/checks/check_loadavg.py35 print("Error opening %s" % loadAvgFile)CODE
MEDIUMcontrib/linux/actions/checks/check_loadavg.py46 print("Error opening %s" % cpuInfoFile)CODE
LOW…ib/examples/actions/ubuntu_pkg_info/ubuntu_pkg_info.py34 except Exception as e:CODE
LOW…es/actions/pythonactions/forloop_parse_github_repos.py35 except Exception as e:CODE
MEDIUM…es/actions/pythonactions/forloop_parse_github_repos.py24def run(self, content):CODE
LOW…les/actions/pythonactions/forloop_push_github_repos.py29 except Exception as e:CODE
MEDIUM…les/actions/pythonactions/forloop_push_github_repos.py24def run(self, data_to_push):CODE
LOWcontrib/examples/actions/pythonactions/fibonacci.py38 except Exception as e:CODE
LOW…b/runners/python_runner/python_runner/python_runner.py222 except Exception as e:CODE
LOW…b/runners/python_runner/python_runner/python_runner.py370 except Exception as e:CODE
LOW…s/python_runner/python_runner/python_action_wrapper.py200 except Exception as e:STRING
LOW…s/python_runner/python_runner/python_action_wrapper.py249 except Exception:STRING
LOW…s/python_runner/python_runner/python_action_wrapper.py267 except Exception as e:STRING
LOW…s/python_runner/python_runner/python_action_wrapper.py373 except Exception as e:STRING
MEDIUM…s/python_runner/python_runner/python_action_wrapper.py264def _get_action_instance(self):CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py285 except Exception as e:CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py301 except Exception as e:CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py319 except Exception as e:CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py415 except Exception as e:CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py455 except Exception as e:CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py589 except Exception as e:CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py683 except Exception as e:CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py764 except Exception as e:CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py816 except Exception as e:CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py870 except Exception as e:CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py895 except Exception as e:CODE
LOW…ib/runners/orquesta_runner/orquesta_functions/st2kv.py46 except Exception as e:CODE
LOW…ib/runners/orquesta_runner/orquesta_functions/st2kv.py62 except Exception as e:CODE
LOW…trib/runners/orquesta_runner/tests/unit/test_notify.py213 except Exception as e:CODE
LOW…ers/orquesta_runner/orquesta_runner/orquesta_runner.py147 except Exception as e:CODE
LOW…ers/orquesta_runner/orquesta_runner/orquesta_runner.py166 except Exception as e:CODE
LOW…ers/orquesta_runner/orquesta_runner/orquesta_runner.py267 except Exception:CODE
MEDIUM…ers/orquesta_runner/orquesta_runner/orquesta_runner.py159def rerun_workflow(self, ac_ex_ref, options=None):CODE
LOWcontrib/runners/http_runner/http_runner/http_runner.py307 except Exception as e:CODE
LOWcontrib/runners/http_runner/http_runner/http_runner.py341 except Exception:CODE
LOWst2api/st2api/validation.py61 except Exception as e:CODE
243 more matches not shown…
Cross-File Repetition60 hits · 300 pts
SeverityFileLineSnippetContext
HIGHst2auth/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHst2stream/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHcontrib/runners/winrm_runner/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHcontrib/runners/python_runner/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHcontrib/runners/local_runner/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHcontrib/runners/action_chain_runner/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHcontrib/runners/orquesta_runner/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHcontrib/runners/remote_runner/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHcontrib/runners/http_runner/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHcontrib/runners/announcement_runner/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHcontrib/runners/inquirer_runner/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHcontrib/runners/noop_runner/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHst2api/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHst2client/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHst2reactor/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHscripts/dist_utils_old.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHscripts/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHst2actions/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHst2common/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHst2tests/dist_utils.py0return a list of requirements and links by parsing the provided requirements file.STRING
HIGHst2auth/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHst2stream/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHcontrib/runners/winrm_runner/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHcontrib/runners/python_runner/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHcontrib/runners/local_runner/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHcontrib/runners/action_chain_runner/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHcontrib/runners/orquesta_runner/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHcontrib/runners/remote_runner/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHcontrib/runners/http_runner/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHcontrib/runners/announcement_runner/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHcontrib/runners/inquirer_runner/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHcontrib/runners/noop_runner/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHst2api/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHst2client/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHst2reactor/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHscripts/dist_utils_old.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHscripts/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHst2actions/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHst2common/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHst2tests/dist_utils.py0function which detects if the script is being executed inside vagrant and if it is, it deletes "os.link" attribute. noteSTRING
HIGHst2stream/st2stream/config.py0configuration options registration and useful routines.STRING
HIGHst2api/st2api/config.py0configuration options registration and useful routines.STRING
HIGHst2actions/st2actions/config.py0configuration options registration and useful routines.STRING
HIGHst2common/st2common/cmd/purge_rule_enforcements.py0a utility script that purges st2 executions older than certain timestamp. *** risk risk risk. you will lose data. run atSTRING
HIGHst2common/st2common/cmd/purge_workflows.py0a utility script that purges st2 executions older than certain timestamp. *** risk risk risk. you will lose data. run atSTRING
HIGHst2common/st2common/cmd/purge_traces.py0a utility script that purges st2 executions older than certain timestamp. *** risk risk risk. you will lose data. run atSTRING
HIGHst2common/st2common/cmd/purge_task_executions.py0a utility script that purges st2 executions older than certain timestamp. *** risk risk risk. you will lose data. run atSTRING
HIGHst2common/st2common/cmd/purge_trigger_instances.py0a utility script that purges st2 executions older than certain timestamp. *** risk risk risk. you will lose data. run atSTRING
HIGHst2common/st2common/cmd/purge_tokens.py0a utility script that purges st2 executions older than certain timestamp. *** risk risk risk. you will lose data. run atSTRING
HIGHst2common/st2common/cmd/purge_executions.py0a utility script that purges st2 executions older than certain timestamp. *** risk risk risk. you will lose data. run atSTRING
HIGHst2common/st2common/bootstrap/triggersregistrar.py0register all the sensors from the provided pack. :return: number of sensors registered. :rtype: ``int``STRING
HIGHst2common/st2common/bootstrap/policiesregistrar.py0register all the sensors from the provided pack. :return: number of sensors registered. :rtype: ``int``STRING
HIGHst2common/st2common/bootstrap/sensorsregistrar.py0register all the sensors from the provided pack. :return: number of sensors registered. :rtype: ``int``STRING
HIGHst2common/st2common/models/system/action.py0retrieve a list of flags which are passed to sudo on every invocation. :rtype: ``list``STRING
HIGH…mmon/st2common/models/system/paramiko_script_action.py0retrieve a list of flags which are passed to sudo on every invocation. :rtype: ``list``STRING
HIGH…mon/st2common/models/system/paramiko_command_action.py0retrieve a list of flags which are passed to sudo on every invocation. :rtype: ``list``STRING
HIGHst2common/st2common/garbage_collection/trace.py0module with utility functions for purging old trigger instance objects.STRING
HIGH…mmon/st2common/garbage_collection/trigger_instances.py0module with utility functions for purging old trigger instance objects.STRING
HIGHst2common/st2common/garbage_collection/token.py0module with utility functions for purging old trigger instance objects.STRING
HIGH…ommon/st2common/garbage_collection/rule_enforcement.py0module with utility functions for purging old trigger instance objects.STRING
Self-Referential Comments62 hits · 207 pts
SeverityFileLineSnippetContext
MEDIUMst2auth/tests/unit/controllers/v1/test_token.py202 # Create a new token.COMMENT
MEDIUMst2auth/tests/unit/controllers/v1/test_token.py214 # Create a new token.COMMENT
MEDIUMst2auth/tests/unit/controllers/v1/test_token.py229 # Create a new token.COMMENT
MEDIUMst2auth/tests/unit/controllers/v1/test_token.py249 # Create a new token.COMMENT
MEDIUMst2auth/tests/unit/controllers/v1/test_token.py265 # Create a new token.COMMENT
MEDIUMcontrib/examples/sensors/sample_sensor.py58 # This method is called when trigger is createdCOMMENT
MEDIUMcontrib/examples/sensors/sample_sensor.py62 # This method is called when trigger is updatedCOMMENT
MEDIUMcontrib/examples/sensors/sample_sensor.py66 # This method is called when trigger is deletedCOMMENT
MEDIUMcontrib/examples/sensors/echo_flask_app.py59 # This method is called when trigger is createdCOMMENT
MEDIUMcontrib/examples/sensors/echo_flask_app.py63 # This method is called when trigger is updatedCOMMENT
MEDIUMcontrib/examples/sensors/echo_flask_app.py67 # This method is called when trigger is deletedCOMMENT
MEDIUMcontrib/examples/sensors/fibonacci_sensor.py67 # This method is called when trigger is createdCOMMENT
MEDIUMcontrib/examples/sensors/fibonacci_sensor.py71 # This method is called when trigger is updatedCOMMENT
MEDIUMcontrib/examples/sensors/fibonacci_sensor.py75 # This method is called when trigger is deletedCOMMENT
MEDIUMcontrib/examples/sensors/sample_polling_sensor.py63 # This method is called when trigger is createdCOMMENT
MEDIUMcontrib/examples/sensors/sample_polling_sensor.py67 # This method is called when trigger is updatedCOMMENT
MEDIUMcontrib/examples/sensors/sample_polling_sensor.py71 # This method is called when trigger is deletedCOMMENT
MEDIUMcontrib/runners/winrm_runner/winrm_runner/winrm_base.py445 # Create a big OR regex that matches any of the substrings to replaceCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py1070 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py835 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py907 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py919 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py1098 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py1126 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py1154 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py1186 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py1203 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py1221 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py1239 # Create a new executionCOMMENT
MEDIUMst2api/tests/unit/controllers/v1/test_executions.py1257 # Create a new executionCOMMENT
MEDIUMst2client/tests/unit/test_ssl.py56 # Create a temp file to mock a cert file.COMMENT
MEDIUMst2reactor/tests/integration/test_sensor_watcher.py116 # Create a rabbit client and delete each queueCOMMENT
MEDIUMscripts/ci/add-itest-user-key.sh25# Create an SSH system user (default `stanley` user may be already created)COMMENT
MEDIUM…ctions/tests/unit/test_scheduler_bootstrap_recovery.py65 # Create a LiveAction in 'requested' status directly in the databaseCOMMENT
MEDIUM…ctions/tests/unit/test_scheduler_bootstrap_recovery.py76 # Create the associated ActionExecutionCOMMENT
MEDIUM…ctions/tests/unit/test_scheduler_bootstrap_recovery.py120 # Create a LiveAction with a queue entry (normal case)COMMENT
MEDIUM…ctions/tests/unit/test_scheduler_bootstrap_recovery.py231 # Create a LiveAction without an ActionExecution (edge case)COMMENT
MEDIUM…ctions/tests/unit/test_scheduler_bootstrap_recovery.py258 # Create a LiveAction with a delayCOMMENT
MEDIUMst2actions/tests/unit/test_worker.py155 # Create a temporary file that is deleted when the file is closed and then set up anCOMMENT
MEDIUMst2actions/tests/unit/test_worker.py218 # Create a temporary file that is deleted when the file is closed and then set up anCOMMENT
MEDIUMst2actions/tests/unit/test_worker.py281 # Create a temporary file that is NOT automatically deleted. This ensures the actionCOMMENT
MEDIUMst2actions/tests/unit/test_worker.py353 # Create a temporary file that is NOT automatically deleted. This ensures the actionCOMMENT
MEDIUMst2actions/tests/unit/test_kombu_error_propagation.py99 # Create a liveactionCOMMENT
MEDIUMst2actions/st2actions/scheduler/handler.py187 # Create the missing queue entryCOMMENT
MEDIUMst2actions/st2actions/container/base.py93 # Create a temporary auth token which will be availableCOMMENT
MEDIUMst2common/tests/unit/test_connection_retry_wrapper.py118 # Create a simple callbackCOMMENT
MEDIUMst2common/tests/unit/test_executions.py167 # Create the DB record.COMMENT
MEDIUMst2common/tests/unit/test_executions.py256 # Create the DB record.COMMENT
MEDIUM…n/tests/unit/services/test_workflow_service_retries.py261 # Create a temporary file which will be used to signalCOMMENT
MEDIUM…/tests/unit/services/test_workflow_identify_orphans.py137 # Create the WorkflowExecutionDB record first since the ID needs to beCOMMENT
MEDIUM…/tests/unit/services/test_workflow_identify_orphans.py155 # Create the LiveActionDB record.COMMENT
MEDIUM…/tests/unit/services/test_workflow_identify_orphans.py168 # Create the ActionExecutionDB record.COMMENT
MEDIUM…/tests/unit/services/test_workflow_identify_orphans.py219 # Create the TaskExecutionDB record first since the ID needs to beCOMMENT
MEDIUM…/tests/unit/services/test_workflow_identify_orphans.py247 # Create the LiveActionDB record.COMMENT
MEDIUM…/tests/unit/services/test_workflow_identify_orphans.py261 # Create the ActionExecutionDB record.COMMENT
MEDIUMst2common/st2common/util/virtualenvs.py302 # This file is auto-generated by StackStorm.COMMENT
MEDIUMst2common/st2common/models/db/__init__.py676 # Create a new Q object with the same filters as the old oneCOMMENT
MEDIUMst2common/st2common/models/db/__init__.py682 # Create a new QCombination object with the same operation and fixed filtersCOMMENT
MEDIUMst2common/st2common/models/api/rule.py203 # Create a trigger for the provided ruleCOMMENT
MEDIUMst2common/st2common/runners/paramiko_ssh.py421 # Create a stdin file and immediately close it to prevent anyCOMMENT
2 more matches not shown…
Cross-Language Confusion21 hits · 140 pts
SeverityFileLineSnippetContext
HIGHst2auth/st2auth/controllers/v1/sso.py99 return v ? v[2] : null;CODE
HIGH…i/tests/unit/controllers/v1/test_executions_filters.py471 # Verify empty (None / null) filters are excludedCOMMENT
HIGHpylint_plugins/api_models.py264 # Hack for attributes with multiple types (e.g. string, null)COMMENT
HIGH…common/tests/unit/test_paramiko_script_action_model.py155 ex = "export FOO=BAR && cd /tmp && '/tmp/remote script.sh'"CODE
HIGH…ommon/tests/unit/test_paramiko_command_action_model.py29 ex = "cd /tmp && echo boo bah baz"CODE
HIGH…ommon/tests/unit/test_paramiko_command_action_model.py33 ex = "sudo -E -- bash -c 'cd /tmp && echo boo bah baz'"CODE
HIGH…ommon/tests/unit/test_paramiko_command_action_model.py53 "bash -c 'cd /tmp && echo boo bah baz'"CODE
HIGH…ommon/tests/unit/test_paramiko_command_action_model.py62 ex = "export BAR='BEET CAFE' " + "FOO=BAR" + " && cd /tmp && echo boo bah baz"CODE
HIGH…ommon/tests/unit/test_paramiko_command_action_model.py72 + " && cd /tmp && echo boo bah baz'"CODE
HIGH…ommon/tests/unit/test_paramiko_command_action_model.py78 + " && cd /tmp && echo boo bah baz'"CODE
HIGH…ommon/tests/unit/test_paramiko_command_action_model.py89 + " && cd /tmp && echo boo bah baz'"CODE
HIGH…ommon/tests/unit/test_paramiko_command_action_model.py98 ex = "cd /tmp && echo boo bah baz"CODE
HIGH…ommon/tests/unit/test_paramiko_command_action_model.py105 ex = 'cd /tmp && bash "/tmp/stuff space.sh"'CODE
HIGH…ommon/tests/unit/test_paramiko_command_action_model.py114 ex = "export FOO=BAR && cd /tmp && echo boo bah baz"CODE
HIGHst2common/st2common/util/jinja.py95 undefined=undefined, trim_blocks=trim_blocks, lstrip_blocks=lstrip_blocksCODE
HIGH…mmon/st2common/models/system/paramiko_script_action.py43 "%s && cd %s && %s %s"CODE
HIGH…mmon/st2common/models/system/paramiko_script_action.py53 "%s && cd %s && %s" % (env_str, cwd, script_path)CODE
HIGH…mmon/st2common/models/system/paramiko_script_action.py69 command = "%s && cd %s && %s %s" % (CODE
HIGH…mmon/st2common/models/system/paramiko_script_action.py79 command = "%s && cd %s && %s" % (env_str, cwd, script_path)CODE
HIGH…mon/st2common/models/system/paramiko_command_action.py42 command = quote_unix("%s && cd %s && %s" % (env_str, cwd, self.command))CODE
HIGH…mon/st2common/models/system/paramiko_command_action.py56 command = "%s && cd %s && %s" % (env_str, cwd, self.command)CODE
AI Structural Patterns105 hits · 105 pts
SeverityFileLineSnippetContext
LOWst2stream/st2stream/controllers/v1/executions.py157CODE
LOWst2stream/st2stream/controllers/v1/executions.py84CODE
LOWst2stream/st2stream/controllers/v1/executions.py154CODE
LOWst2stream/st2stream/controllers/v1/stream.py88CODE
LOWcontrib/core/actions/inject_trigger.py54CODE
LOWcontrib/packs/actions/get_config.py29CODE
LOWcontrib/packs/actions/pack_mgmt/register.py44CODE
LOWcontrib/packs/actions/pack_mgmt/register.py82CODE
LOWcontrib/packs/actions/pack_mgmt/register.py157CODE
LOWcontrib/examples/actions/python-mock-create-vm.py31CODE
LOW…amples/actions/pythonactions/load_and_print_fixture.py27CODE
LOW…ers/local_runner/tests/integration/test_localrunner.py403CODE
LOW…rs/remote_runner/remote_runner/remote_script_runner.py123CODE
LOWcontrib/runners/http_runner/http_runner/http_runner.py190CODE
LOWst2api/st2api/controllers/resource.py131CODE
LOWst2api/st2api/controllers/resource.py394CODE
LOWst2api/st2api/controllers/resource.py413CODE
LOWst2api/st2api/controllers/resource.py696CODE
LOWst2api/st2api/controllers/v1/rbac.py116CODE
LOWst2api/st2api/controllers/v1/service_registry.py41CODE
LOWst2api/st2api/controllers/v1/inquiries.py251CODE
LOWst2api/st2api/controllers/v1/actionexecutions.py514CODE
LOWst2api/st2api/controllers/v1/actionexecutions.py1092CODE
LOWst2api/st2api/controllers/v1/actionexecutions.py511CODE
LOWst2api/st2api/controllers/v1/timers.py116CODE
LOWst2api/st2api/controllers/v1/policies.py81CODE
LOWst2api/st2api/controllers/v1/policies.py83CODE
LOWst2api/st2api/controllers/v1/packs.py322CODE
LOWst2client/st2client/client.py56CODE
LOWst2client/st2client/base.py214CODE
LOWst2client/st2client/base.py416CODE
LOWst2client/st2client/utils/httpclient.py106CODE
LOWst2client/st2client/utils/httpclient.py122CODE
LOWst2client/st2client/utils/httpclient.py131CODE
LOWst2client/st2client/utils/httpclient.py139CODE
LOWst2client/st2client/utils/httpclient.py148CODE
LOWst2client/st2client/utils/httpclient.py157CODE
LOWst2client/st2client/utils/httpclient.py165CODE
LOWst2client/st2client/utils/jsutil.py77CODE
LOWst2client/st2client/utils/interactive.py277CODE
LOWst2client/st2client/utils/interactive.py308CODE
LOWst2client/st2client/utils/date.py40CODE
LOWst2client/st2client/utils/date.py61CODE
LOWst2client/st2client/utils/date.py72CODE
LOWst2client/st2client/models/core.py69CODE
LOWst2client/st2client/models/core.py177CODE
LOWst2client/st2client/commands/pack.py555CODE
LOWpants-plugins/uses_services/system_user_rules_test.py62CODE
LOWpants-plugins/uses_services/rabbitmq_rules_test.py67CODE
LOWpants-plugins/uses_services/redis_rules_test.py67CODE
LOWpants-plugins/uses_services/st2cluster_rules_test.py64CODE
LOWpants-plugins/uses_services/data_fixtures.py19CODE
LOWpants-plugins/uses_services/mongo_rules_test.py70CODE
LOW…mon/benchmarks/micro/test_mongo_escape_and_unescape.py64CODE
LOW…mon/benchmarks/micro/test_mongo_escape_and_unescape.py101CODE
LOWst2common/benchmarks/micro/test_mongo_field_types.py84CODE
LOWst2common/st2common/service_setup.py86CODE
LOWst2common/st2common/fields.py71CODE
LOWst2common/st2common/fields.py75CODE
LOWst2common/st2common/fields.py90CODE
45 more matches not shown…
Deep Nesting92 hits · 92 pts
SeverityFileLineSnippetContext
LOWtools/log_watcher.py127CODE
LOWst2auth/st2auth/handlers.py60CODE
LOWst2stream/st2stream/controllers/v1/executions.py53CODE
LOWst2stream/st2stream/controllers/v1/executions.py98CODE
LOWst2stream/st2stream/controllers/v1/executions.py113CODE
LOWst2stream/tests/unit/controllers/v1/test_stream.py138CODE
LOWst2stream/tests/unit/controllers/v1/test_stream.py152CODE
LOWcontrib/chatops/actions/format_execution_result.py39CODE
LOW…ntrib/packs/actions/pack_mgmt/get_pack_dependencies.py26CODE
LOWcontrib/linux/actions/checks/check_processes.py54CODE
LOWcontrib/runners/winrm_runner/winrm_runner/winrm_base.py451CODE
LOW…ers/local_runner/tests/integration/test_localrunner.py237CODE
LOW…hain_runner/action_chain_runner/action_chain_runner.py391CODE
LOW…/runners/orquesta_runner/orquesta_functions/runtime.py48CODE
LOWst2api/st2api/controllers/resource.py784CODE
LOWst2api/st2api/controllers/v1/keyvalue.py138CODE
LOWst2api/st2api/controllers/v1/aliasexecution.py113CODE
LOWst2api/st2api/controllers/v1/actionexecutions.py805CODE
LOWst2api/st2api/controllers/v1/packs.py159CODE
LOWst2client/st2client/config_parser.py102CODE
LOWst2client/st2client/formatters/execution.py65CODE
LOWst2client/st2client/formatters/table.py57CODE
LOWst2client/st2client/formatters/table.py219CODE
LOWst2client/st2client/utils/jsutil.py100CODE
LOWst2client/st2client/commands/pack.py141CODE
LOWst2client/st2client/commands/pack.py285CODE
LOWst2client/st2client/commands/trace.py350CODE
LOWst2client/st2client/commands/trace.py429CODE
LOWst2client/st2client/commands/action.py798CODE
LOWst2client/st2client/commands/action.py1017CODE
LOWst2client/st2client/commands/action.py1126CODE
LOWst2client/st2client/commands/action.py1992CODE
LOWst2reactor/st2reactor/cmd/rulesengine.py58CODE
LOWpylint_plugins/api_models.py100CODE
LOWscripts/fixate-requirements.py154CODE
LOWscripts/fixate-requirements.py194CODE
LOWscripts/fixate_requirements.py154CODE
LOWscripts/fixate_requirements.py194CODE
LOW…gins/pack_metadata/python_rules/python_pack_content.py295CODE
LOWst2actions/st2actions/cmd/scheduler.py64CODE
LOWst2actions/st2actions/notifier/notifier.py144CODE
LOWst2common/benchmarks/micro/test_mongo_field_types.py153CODE
LOWst2common/benchmarks/micro/test_fast_deepcopy.py133CODE
LOWst2common/benchmarks/micro/test_fast_deepcopy.py139CODE
LOW…s/micro/test_json_serialization_and_deserialization.py62CODE
LOW…s/micro/test_json_serialization_and_deserialization.py115CODE
LOW…s/micro/test_json_serialization_and_deserialization.py75CODE
LOW…s/micro/test_json_serialization_and_deserialization.py121CODE
LOWst2common/st2common/log.py83CODE
LOWst2common/st2common/router.py230CODE
LOWst2common/st2common/router.py321CODE
LOWst2common/st2common/operators.py53CODE
LOWst2common/st2common/middleware/error_handling.py39CODE
LOWst2common/st2common/transport/utils.py96CODE
LOWst2common/st2common/bootstrap/policiesregistrar.py179CODE
LOWst2common/st2common/bootstrap/rulesregistrar.py113CODE
LOWst2common/st2common/util/pack_management.py77CODE
LOWst2common/st2common/util/misc.py166CODE
LOWst2common/st2common/util/config_loader.py103CODE
LOWst2common/st2common/util/config_loader.py216CODE
32 more matches not shown…
AI Slop Vocabulary23 hits · 50 pts
SeverityFileLineSnippetContext
MEDIUMtools/config_gen.py242 # display warnings+errors on stderr to facilitate debuggingSTRING
MEDIUMst2client/st2client/commands/action.py539 # Flag to opt-in to functionality introduced in PR #3670. More robust parsingCOMMENT
MEDIUMst2client/st2client/commands/action.py935 # also leverage that to cast each array item to the correct type.COMMENT
LOWst2reactor/st2reactor/timer/base.py105 raise # Or should we just return?CODE
MEDIUMpylint_plugins/api_models.py271 # Expose the AST at this point to facilitate handling that approach.COMMENT
LOWscripts/fixate-requirements.py219 # we don't have any idea how to process links, so just add themCOMMENT
LOWscripts/fixate_requirements.py219 # we don't have any idea how to process links, so just add themCOMMENT
LOW.github/workflows/ci.yaml324 # Now, we simply set this environment varible here in the CI portion of our testing andCOMMENT
LOW.github/workflows/ci.yaml501 # Now, we simply set this environment varible here in the CI portion of our testing andCOMMENT
LOW.github/workflows/orquesta-integration-tests.yaml107 # Now, we simply set this environment varible here in the CI portion of our testing andCOMMENT
MEDIUMst2common/st2common/middleware/instrumentation.py95 # Due to the way stream service works, we need to utilize eventlet posthook toCOMMENT
MEDIUMst2common/st2common/middleware/request_id.py34 # as soon as possible to ensure it's present by the time it's needed. Certainly beforeCOMMENT
LOWst2common/st2common/util/pack_management.py232 # No ref provided so we just use a default active branchCOMMENT
LOWst2common/st2common/util/crypto.py274 # bytes) so we simply add 5 0'sCOMMENT
MEDIUMst2common/st2common/util/green/shell.py168 # TODO: Now that we support Python >= 3.6 we should utilize timeout argument for theCOMMENT
MEDIUMst2common/st2common/constants/meta.py42# NOTE: We utilize CSafeLoader if available since it uses C extensions and is faster.COMMENT
MEDIUMst2common/st2common/stream/listener.py120 # message bus level if we modified our exchange layout and utilize routing keysCOMMENT
LOWst2common/st2common/content/loader.py43 # content - they just return a pathCOMMENT
LOWst2common/st2common/models/db/__init__.py27# One option would be to simply add monkey_patch() call to the top of every single test file, butCOMMENT
LOWst2common/st2common/models/db/__init__.py43 # In that case, we just add the monkey_patch to the top of that test file.COMMENT
MEDIUMst2common/st2common/models/api/base.py101 # Special case for models which utilize JSONDictField - there is no need to escape thoseCOMMENT
MEDIUMst2tests/st2tests/api.py66# The problem is that for the unit based api tests we utilize webtest which has the same bug asCOMMENT
MEDIUMst2tests/st2tests/api.py68# follow exactly the same code path as actual production code which doesn't utilize webtestCOMMENT
Redundant / Tautological Comments26 hits · 42 pts
SeverityFileLineSnippetContext
LOW…s/python_runner/python_runner/python_action_wrapper.py258 # Print output to stdout so the parent can capture itSTRING
LOWcontrib/runners/http_runner/http_runner/http_runner.py253 # Check if the provided URL is blacklistedCOMMENT
LOWst2api/st2api/controllers/v1/keyvalue.py192 # Check if user is granted one of the system roles.COMMENT
LOWst2api/st2api/controllers/v1/actions.py442 # Write files to diskCOMMENT
LOWst2api/st2api/controllers/v1/inquiries.py152 # Set requester to system user if not provided.COMMENT
LOWst2api/st2api/controllers/v1/inquiries.py173 # Check if inquiry can still be respond to.COMMENT
LOWst2api/st2api/controllers/v1/inquiries.py180 # Check if user has permission to respond to this inquiry.COMMENT
LOWst2reactor/st2reactor/rules/tester.py83 # Check if rule matches criteria.COMMENT
LOWst2reactor/st2reactor/rules/tester.py96 # Check if rule can be enforcedCOMMENT
LOWst2reactor/st2reactor/rules/filter.py220 # Check if jinja variable is in criteria_pattern and if so lets ensureCOMMENT
LOWst2actions/st2actions/worker.py163 # Check if there are other runners in service registryCOMMENT
LOWst2actions/st2actions/workflows/workflows.py132 # Check if there are other WFEs in service registryCOMMENT
LOWst2actions/st2actions/scheduler/handler.py166 # Check if this liveaction already has a queue entryCOMMENT
LOWst2common/tests/unit/test_db.py890 # Check if notification settings were set correctly.COMMENT
LOWst2common/tests/unit/test_transport_utils.py130 # Set max_retries to 0 for infinite retriesCOMMENT
LOWst2common/tests/unit/test_executions.py99 # Assign parent to the execution records for the subtasks.COMMENT
LOWst2common/st2common/util/param.py133 # Check if the parameter is of type raw_stringCOMMENT
LOWst2common/st2common/util/ip_utils.py87 # Check if it's square bracket style.COMMENT
LOWst2common/st2common/util/ip_utils.py91 # Check if square bracket style no port.COMMENT
LOWst2common/st2common/models/db/rule_enforcement.py80 # Set status to succeeded for old / existing RuleEnforcementDB which predate status fieldCOMMENT
LOWst2common/st2common/models/api/keyvalue.py136 # Check if name is in full "user:keyname" formatCOMMENT
LOWst2common/st2common/validators/api/action.py46 # Check if pack is valid.COMMENT
LOWst2common/st2common/validators/api/action.py56 # Check if parameters defined are valid.COMMENT
LOWst2common/st2common/validators/api/action.py65 # Check if runner exists.COMMENT
LOWst2common/st2common/validators/api/action.py86 # Check if overridden runner parameters are permitted.COMMENT
LOWst2common/st2common/services/inquiry.py128 # Set requester to system user is not provided.COMMENT
Hallucination Indicators3 hits · 30 pts
SeverityFileLineSnippetContext
CRITICALst2api/st2api/controllers/v1/actionexecutions.py264 self.access.impl.model.objects.filter(id=id).only(*fields).get()CODE
CRITICALst2api/st2api/controllers/v1/actionexecutions.py371 self.access.impl.model.objects.filter(id=id).only(*fields).get()CODE
CRITICALst2api/st2api/controllers/v1/actionexecutions.py420 self.access.impl.model.objects.filter(id=id).only("result")[0].resultCODE
Fake / Example Data20 hits · 24 pts
SeverityFileLineSnippetContext
LOW…2api/tests/unit/controllers/v1/test_alias_execution.py81 command = 'Lorem ipsum value1 dolor sit "value2 value3" amet.'CODE
LOW…2api/tests/unit/controllers/v1/test_alias_execution.py89 command = "lorem ipsum"CODE
LOW…2api/tests/unit/controllers/v1/test_alias_execution.py97 command = 'Lorem ipsum value1 dolor sit "value2 value3" amet.'CODE
LOW…2api/tests/unit/controllers/v1/test_alias_execution.py114 command = "Lorem ipsum value1 dolor sit value2 amet."CODE
LOW…2api/tests/unit/controllers/v1/test_alias_execution.py121 command = 'Lorem ipsum value1 dolor sit "value2, value3" amet.'CODE
LOW…2api/tests/unit/controllers/v1/test_alias_execution.py203 data["command"] = "Lorem ipsum banana dolor sit pineapple amet."CODE
LOW…2api/tests/unit/controllers/v1/test_alias_execution.py210 "Command 'Lorem ipsum banana dolor sit pineapple amet.' "CODE
LOW…2api/tests/unit/controllers/v1/test_alias_execution.py158 command = "Lorem ipsum value1 dolor sit " + SUPER_SECRET_PARAMETER + " amet."CODE
LOWst2api/tests/unit/controllers/v1/test_action_alias.py191 data = {"command": "Lorem ipsum banana dolor sit pineapple amet."}CODE
LOWst2api/tests/unit/controllers/v1/test_action_alias.py196 "Command 'Lorem ipsum banana dolor sit pineapple amet.' "CODE
LOWst2reactor/tests/unit/test_sensor_service.py84 "name": "John Doe",CODE
LOWst2reactor/tests/unit/test_sensor_service.py112 "name": "John Doe",CODE
LOWst2reactor/tests/unit/test_sensor_service.py155 "name": "John Doe",CODE
LOWst2reactor/tests/unit/test_sensor_service.py172 "name": "John Doe",CODE
LOWst2reactor/tests/unit/test_sensor_service.py217 "name": "John Doe",CODE
LOWst2reactor/tests/unit/test_sensor_service.py231 "name": "John Doe",CODE
LOWst2reactor/tests/unit/test_sensor_service.py251 "name": "John Doe",CODE
LOWpants-plugins/release/rules_test.py221 "runners/foobar_runner/README.rst": "lorem ipsum",CODE
LOWpants-plugins/release/rules_test.py323 "runners/foobar_runner/README.rst": "lorem ipsum",CODE
LOWpants-plugins/release/rules_test.py340 "long_description": "lorem ipsum",CODE
Synthetic Comment Markers3 hits · 22 pts
SeverityFileLineSnippetContext
HIGHst2actions/tests/unit/policies/test_concurrency.py388 # Once capacity freed up, the delayed execution is published as requested again.COMMENT
HIGH…ctions/tests/unit/policies/test_concurrency_by_attr.py226 # Once capacity freed up, the delayed execution is published as requested again.COMMENT
HIGH…ctions/tests/unit/policies/test_concurrency_by_attr.py417 # Once capacity freed up, the delayed execution is published as requested again.COMMENT
Slop Phrases9 hits · 10 pts
SeverityFileLineSnippetContext
LOWpants.toml112# On update, make sure to also update:COMMENT
MEDIUMcontrib/hello_st2/pack.yaml21# Specify a list of dependency packs to install. If the pack is in StackStorm Exchange you can useCOMMENT
LOWcontrib/packs/actions/pack_mgmt/register.py81 # TODO: make sure to return proper modelCOMMENT
LOWst2client/tests/base.py119 # TODO: nosetests specific make sure to update when / if switching to pytestCOMMENT
LOWpants-plugins/uses_services/mongo_rules.py227 # Don't forget to start mongo.STRING
LOWpants-plugins/uses_services/mongo_rules.py235 # Don't forget to start mongo.STRING
LOWpants-plugins/uses_services/rabbitmq_rules.py169 # Don't forget to start rabbitmq-server.STRING
LOWpants-plugins/uses_services/redis_rules.py168 # Don't forget to start redis.STRING
LOWpants-plugins/uses_services/redis_rules.py176 # Don't forget to start redis.STRING
Decorative Section Separators2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMtest-requirements.txt6# ----------------------------------------------------------------------COMMENT
MEDIUMfixed-requirements.txt7# ----------------------------------------------------------------------COMMENT
Structural Annotation Overuse4 hits · 6 pts
SeverityFileLineSnippetContext
LOW…2api/tests/unit/controllers/v1/test_alias_execution.py321 # NOTE: This function only handles casting list, but not casting nested list items (e.g.COMMENT
LOWst2actions/st2actions/scheduler/handler.py277 # NOTE: This method call is intentionally not instrumented since it causes too much overheadCOMMENT
LOWst2common/st2common/metrics/base.py49# NOTE: This value is populated lazily on the first get_driver() function callCOMMENT
LOWst2common/st2common/models/db/__init__.py98# NOTE: This variable is populated lazily inside get_model_classes()COMMENT
TODO Padding1 hit · 2 pts
SeverityFileLineSnippetContext
LOWpants-plugins/uses_services/st2cluster_rules.py67 # TODO: consider adding a from_env method using one or both of client => server vars:COMMENT