Vowpal Wabbit is a machine learning system which pushes the frontier of machine learning with techniques such as online, hashing, allreduce, reductions, learning2search, active, and interactive learning.
This report summarizes scanner evidence for VowpalWabbit/vowpal_wabbit, a C++ project with 8,728 GitHub stars. SynthScan examined 142,218 lines of code across 1000 source files, recording 618 pattern matches distributed across 20 syntactic categories. The legacy adjusted pattern signal is 5.9 (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? 498 finding(s).
Are imports declared and package/API names verified? 58 finding(s).
Are wrappers, guards, and repeated structures necessary? 157 finding(s).
Which changes need focused human review? 618 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
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 618 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 | demo/mnist/pixelngrams.cpp | 1 | #include <cmath> | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1 | #!/usr/bin/python | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 21 | # This file is part of Tanl. | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 81 | # The namespace used for module definitions | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 141 | COMMENT | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 581 | # name is defined by their ordinal position (1, 2, 3, ...). | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 601 | # "{{t|a|b|c|2=B}}" is equivalent to "{{t|a|B|c}}". | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 741 | else: | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 761 | COMMENT | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 881 | # If double opening braces are followed by triple closing braces or | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1201 | # Leading colon by itself implies main namespace, so strip this colon | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1441 | # """Expand templates invoking MediaWiki API""" | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1641 | # e1_img = re.compile("([%s]+)\\|(.*)" % tc, re.S | re.D) | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1661 | # charset = wgContLang.linkPrefixCharset() | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1681 | # line = text[cur:m.start()] | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1701 | # if m: # page with normal label or alt | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1721 | # if m: | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1741 | COMMENT | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1761 | # if might_be_img { # if this is actually an invalid link | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1781 | # label += '[[' + next_line | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1801 | # # [[Lista d''e paise d''o munno]] . <a href="...">Lista d''e paise d''o munno</a> | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1821 | # if ns == NS_FILE: | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1841 | COMMENT | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1861 | # # LinkHolderArray::doVariants() to allow batching the existence checks necessary | COMMENT |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1881 | COMMENT | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1981 | # # removeHTMLtags()) should not be included in | COMMENT |
| LOW | demo/random-noise/x-vs-y.r | 1 | #!/usr/bin/Rscript --vanilla | COMMENT |
| LOW | test/repeat.py | 1 | import subprocess | COMMENT |
| LOW | python/vowpalwabbit/pyvw.py | 1981 | # f = feature | COMMENT |
| LOW | python/docs/source/conf.py | 61 | # | COMMENT |
| LOW | …spanning_tree/include/vw/spanning_tree/spanning_tree.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/ccb_label.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/vw_math.h | 1 | #pragma once | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/example.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/table_formatter.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/cost_sensitive.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/parse_dispatch_loop.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/reduction_features.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/learner.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/learner.h | 101 | COMMENT | |
| LOW | vowpalwabbit/core/include/vw/core/learner.h | 121 | /// learner is created, the function objects are bound to the data object, and the | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/learner.h | 161 | /// \param i This is the offset used for the feature_width in this call. If using | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/parser.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/guard.h | 101 | T _value_to_swap; | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/guard.h | 121 | /// } | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/guard.h | 141 | /// | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/guard.h | 161 | /// do_thing_with_widget(my_widget); | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/guard.h | 181 | /// | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/global_data.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/global_data.h | 21 | #include <array> | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/model_utils.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/vw.h | 21 | COMMENT | |
| LOW | …lwabbit/core/include/vw/core/array_parameters_sparse.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | …it/core/include/vw/core/interaction_generation_state.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/interactions.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/thread_pool.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | …bit/core/include/vw/core/confidence_sequence_utility.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | …bit/core/include/vw/core/confidence_sequence_utility.h | 41 | COMMENT | |
| LOW | vowpalwabbit/core/include/vw/core/object_pool.h | 1 | // Copyright (c) by respective owners including Yahoo!, Microsoft, and | COMMENT |
| LOW | vowpalwabbit/core/include/vw/core/object_pool.h | 21 | # pragma warning(disable : 5308) // C5308 in VS2022+ | COMMENT |
| 250 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | demo/recall_tree/wikipara/WikiExtractor.py | 18 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | demo/recall_tree/wikipara/WikiExtractor.py | 20 | # ============================================================================= | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 4 | # ============================================================================= | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 34 | # ============================================================================= | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 63 | # =========================================================================== | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 137 | # ========================================================================= | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 171 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 331 | # ====================================================================== | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 443 | # ====================================================================== | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 520 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 799 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 1029 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 1041 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 1166 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 1232 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 1436 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 1448 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 1512 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 1584 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 1912 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 2026 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 2259 | # ------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 2331 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 2606 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 2658 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/DocGenerator.py | 5 | # ------------------------------------------------- | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/DocGenerator.py | 7 | # ------------------------------------------------- | COMMENT |
| MEDIUM | utl/post-release.sh | 57 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | utl/post-release.sh | 59 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | utl/post-release.sh | 73 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | utl/post-release.sh | 75 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | utl/post-release.sh | 87 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | utl/post-release.sh | 89 | # --------------------------------------------------------------------------- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/run_tests_model_gen_and_load.py | 88 | def try_get_workspace_or_none( | CODE |
| LOW | test/run_tests_model_gen_and_load.py | 108 | def generate_model_and_weights( | CODE |
| LOW | test/run_tests.py | 129 | def wait_for_completion_get_success(self, id: int) -> bool: | CODE |
| LOW | test/run_tests.py | 640 | def find_spanning_tree_binary( | CODE |
| LOW | test/run_tests.py | 684 | def find_or_use_user_supplied_path( | CODE |
| LOW | test/run_tests.py | 732 | def calculate_test_to_run_explicitly( | CODE |
| LOW | test/run_tests.py | 757 | def convert_tests_for_flatbuffers( | CODE |
| LOW | test/runtests_flatbuffer_converter.py | 56 | def get_flatbuffer_file_names(self): | CODE |
| LOW | test/runtests_flatbuffer_converter.py | 73 | def replace_filename_in_stderr(self): | CODE |
| LOW | test/tools/fuzzing/fuzz.py | 34 | def find_or_use_user_supplied_path( | CODE |
| LOW | python/vowpalwabbit/pyvw.py | 323 | def get_label_class_from_enum( | CODE |
| LOW | python/vowpalwabbit/dftovw.py | 976 | def check_columns_type_and_values(self): | CODE |
| LOW | python/tests/test_vwconfig.py | 5 | def helper_options_to_list_strings(config): | CODE |
| LOW | python/tests/test_vwconfig.py | 62 | def test_experimental_option_value(): | CODE |
| LOW | python/tests/test_cb.py | 81 | def test_getting_started_example_cb(): | CODE |
| LOW | python/tests/test_cb.py | 85 | def test_getting_started_example_legacy_cb(): | CODE |
| LOW | python/tests/test_cb.py | 155 | def helper_getting_started_example(which_cb): | CODE |
| LOW | python/tests/test_cb.py | 224 | def test_getting_started_example_with(): | CODE |
| LOW | python/tests/test_pyvw.py | 65 | def test_scalar_prediction_type(): | CODE |
| LOW | python/tests/test_pyvw.py | 74 | def test_scalars_prediction_type(): | CODE |
| LOW | python/tests/test_pyvw.py | 85 | def test_multiclass_prediction_type(): | CODE |
| LOW | python/tests/test_pyvw.py | 95 | def test_csoaa_ldf_scalars_prediction_type(): | CODE |
| LOW | python/tests/test_pyvw.py | 114 | def test_action_scores_prediction_type(): | CODE |
| LOW | python/tests/test_pyvw.py | 125 | def test_action_probs_prediction_type(): | CODE |
| LOW | python/tests/test_pyvw.py | 134 | def test_multilabel_prediction_type(): | CODE |
| LOW | python/tests/test_pyvw.py | 321 | def test_command_line_with_space_and_escape_kwargs(): | CODE |
| LOW | python/tests/test_pyvw.py | 335 | def test_command_line_using_arg_list(): | CODE |
| LOW | python/tests/test_pyvw.py | 357 | def test_command_line_with_double_space_in_str(): | CODE |
| LOW | python/tests/test_pyvw.py | 363 | def test_keys_with_list_of_values(): | CODE |
| LOW | python/tests/test_pyvw.py | 811 | def test_get_log_raises_when_logging_disabled(): | CODE |
| LOW | python/tests/test_pyvw.py | 821 | def test_get_driver_output_returns_training_stats(): | CODE |
| LOW | python/tests/test_pyvw.py | 836 | def test_get_driver_output_raises_when_logging_disabled(): | CODE |
| LOW | python/tests/test_pyvw.py | 846 | def test_get_log_output_returns_logger_messages(): | CODE |
| LOW | python/tests/test_pyvw.py | 857 | def test_get_log_output_raises_when_logging_disabled(): | CODE |
| LOW | python/tests/test_pyvw.py | 867 | def test_get_log_combines_channels(): | CODE |
| LOW | python/tests/test_pyvw.py | 884 | def test_get_log_preserves_empty_lines(): | CODE |
| LOW | python/tests/test_pyvw.py | 899 | def test_logging_with_cb_explore(): | CODE |
| LOW | python/tests/test_pyvw.py | 912 | def test_logging_average_loss_parseable(): | CODE |
| LOW⚡ | python/tests/test_pyvw.py | 578 | def test_runparser_cmd_string(): | STRING |
| LOW⚡ | python/tests/test_pyvw.py | 584 | def test_runparser_cmd_string_short(): | STRING |
| LOW⚡ | python/tests/test_pyvw.py | 590 | def test_not_runparser_cmd_string(): | STRING |
| LOW | python/tests/test_pyvw.py | 411 | def test_learn_predict_multiline(): | STRING |
| LOW | python/tests/test_pyvw.py | 495 | def test_example_namespace_id(): | STRING |
| LOW | python/tests/test_pyvw.py | 536 | def test_example_features_dict(): | STRING |
| LOW | python/tests/test_pyvw.py | 558 | def test_example_features_dict_long_long_index(): | STRING |
| LOW | python/tests/test_pyvw.py | 684 | def test_constructor_exception_is_safe(): | STRING |
| LOW | python/tests/test_pyvw.py | 735 | def test_merge_models_with_base(): | STRING |
| LOW | python/tests/test_pyvw.py | 778 | def test_get_explore_eval_stats(): | STRING |
| LOW | python/tests/test_pyvw.py | 796 | def test_get_log_returns_output(): | STRING |
| LOW | python/tests/test_ccb.py | 6 | def count_weights_from_readable_model_file_for_equiv_test(file_name): | CODE |
| LOW | python/tests/test_ccb.py | 14 | def test_ccb_single_slot_and_cb_equivalence_no_slot_features(): | CODE |
| LOW | python/tests/test_ccb.py | 67 | def test_ccb_single_slot_and_cb_non_equivalence_with_slot_features(): | STRING |
| LOW | python/tests/test_ccb.py | 116 | def test_ccb_non_slot_none_outcome(): | STRING |
| LOW⚡ | python/tests/test_DFtoVW.py | 22 | def test_no_label_rename_feature(): | CODE |
| LOW⚡ | python/tests/test_DFtoVW.py | 28 | def test_no_label_multiple_features(): | CODE |
| LOW⚡ | python/tests/test_DFtoVW.py | 36 | def test_namespace_with_value_but_no_name(): | CODE |
| LOW⚡ | python/tests/test_DFtoVW.py | 44 | def test_from_column_names_constructor(): | CODE |
| LOW⚡ | python/tests/test_DFtoVW.py | 52 | def test_from_column_names_no_label_constructor(): | CODE |
| LOW⚡ | python/tests/test_DFtoVW.py | 60 | def test_feature_column_renaming_and_tag(): | CODE |
| LOW | python/tests/test_DFtoVW.py | 102 | def test_dirty_colname_feature(): | CODE |
| 31 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | setup.py | 148 | except (ImportError, AttributeError): | CODE |
| HIGH | test/tools/fuzzing/fuzz.py | 117 | except FileExistsError: | CODE |
| HIGH | test/tools/fuzzing/fuzz.py | 123 | except FileExistsError: | CODE |
| HIGH | python/vowpalwabbit/dftovw.py | 926 | except AttributeError: | CODE |
| HIGH | python/vowpalwabbit/dftovw.py | 934 | except AttributeError: | CODE |
| HIGH | python/tests/test_pyvw.py | 687 | except: | CODE |
| HIGH | python/tests/test_pyvw.py | 933 | except ValueError: | CODE |
| HIGH | python/tests/conftest.py | 16 | except RuntimeError: | CODE |
| HIGH | python/tests/e2e_v2/test_helper.py | 38 | except ImportError: | CODE |
| HIGH | python/tests/e2e_v2/test_helper.py | 40 | except AttributeError: | CODE |
| HIGH | python/tests/e2e_v2/test_helper.py | 53 | except ImportError: | CODE |
| HIGH | python/tests/e2e_v2/test_helper.py | 55 | except AttributeError: | CODE |
| HIGH | python/tests/e2e_v2/test_core.py | 88 | except (FileNotFoundError, OSError): | CODE |
| HIGH | python/tests/e2e_v2/assert_job.py | 103 | except: | CODE |
| HIGH | utl/vw-hyperopt.py | 511 | except: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | setup.py | 101 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 803 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 875 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1321 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1515 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1592 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 2155 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 2338 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 2409 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 2664 | CODE | |
| LOW | demo/recall_tree/wikipara/DocGenerator.py | 10 | CODE | |
| LOW | demo/cats/utility/preprocess_data.py | 13 | CODE | |
| LOW | demo/cats/utility/get_offline_results.py | 49 | CODE | |
| LOW | demo/cats/utility/get_online_results.py | 42 | CODE | |
| LOW | demo/cats/utility/get_online_results.py | 146 | CODE | |
| LOW | demo/cats/utility/get_online_results.py | 164 | CODE | |
| LOW | demo/dependencyparsing/evaluate.py | 63 | CODE | |
| LOW | demo/ocr/ocr2vw.py | 20 | CODE | |
| LOW | demo/advertising/naive_baseline.py | 24 | CODE | |
| LOW | test/run_tests_model_gen_and_load.py | 233 | CODE | |
| LOW | test/run_tests_model_gen_and_load.py | 363 | CODE | |
| LOW | test/save_resume_test.py | 51 | CODE | |
| LOW | test/run_tests.py | 57 | CODE | |
| LOW | test/run_tests.py | 223 | CODE | |
| LOW | test/run_tests.py | 382 | CODE | |
| LOW | test/run_tests.py | 398 | CODE | |
| LOW | test/run_tests.py | 916 | CODE | |
| LOW | test/run_tests.py | 1015 | CODE | |
| LOW | test/run_tests.py | 60 | CODE | |
| LOW | test/runtest_coverage.py | 42 | CODE | |
| LOW | test/runtest_coverage.py | 52 | CODE | |
| LOW | test/runtest_coverage.py | 62 | CODE | |
| LOW | test/tools/fuzzing/fuzz.py | 17 | CODE | |
| LOW | test/tools/fuzzing/fuzz.py | 74 | CODE | |
| LOW | python/vowpalwabbit/pyvw.py | 616 | CODE | |
| LOW | python/vowpalwabbit/pyvw.py | 730 | CODE | |
| LOW | python/vowpalwabbit/pyvw.py | 901 | CODE | |
| LOW | python/vowpalwabbit/pyvw.py | 1623 | CODE | |
| LOW | python/vowpalwabbit/pyvw.py | 904 | CODE | |
| LOW | python/vowpalwabbit/sklearn.py | 686 | CODE | |
| LOW | python/tests/test_vwconfig.py | 5 | CODE | |
| LOW | python/tests/test_vwconfig.py | 62 | CODE | |
| LOW | python/tests/test_pyvw.py | 912 | CODE | |
| LOW | python/tests/distributionally_robust_data.py | 6 | CODE | |
| LOW | python/tests/test_tutorial.py | 48 | CODE | |
| LOW | python/tests/crminustwo.py | 244 | CODE | |
| LOW | python/tests/e2e_v2/test_core.py | 50 | CODE | |
| LOW | python/tests/e2e_v2/cb_cont/reward_functions.py | 9 | CODE | |
| LOW | python/tests/e2e_v2/cb/data_generation.py | 13 | CODE | |
| LOW | python/tests/e2e_v2/cb/reward_functions.py | 9 | CODE | |
| LOW | big_tests/testCode/ocr2vw.py | 21 | CODE | |
| LOW | utl/active_interactor.py | 221 | CODE | |
| LOW | utl/vw-hyperopt.py | 120 | CODE | |
| LOW | utl/vw-hyperopt.py | 208 | CODE | |
| LOW | utl/vw-hyperopt.py | 399 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 51 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 58 | CODE | |
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 58 | CODE | |
| LOW | demo/recall_tree/wikipara/makeparadata.py | 9 | CODE | |
| LOW | demo/recall_tree/wikipara/DocGenerator.py | 3 | CODE | |
| LOW | demo/advertising/naive_baseline.py | 3 | CODE | |
| LOW | demo/dbpedia/eval.py | 3 | CODE | |
| LOW | test/run_tests_model_gen_and_load.py | 28 | CODE | |
| LOW | test/run_tests_model_gen_and_load.py | 28 | CODE | |
| LOW | test/run_tests_model_gen_and_load.py | 28 | CODE | |
| LOW | test/run_tests_model_gen_and_load.py | 28 | CODE | |
| LOW | test/run_tests_model_gen_and_load.py | 28 | CODE | |
| LOW | test/run_tests_model_gen_and_load.py | 28 | CODE | |
| LOW | test/run_tests_model_gen_and_load.py | 28 | CODE | |
| LOW | test/tools/fuzzing/fuzz.py | 5 | CODE | |
| LOW | test/tools/fuzzing/fuzz.py | 6 | CODE | |
| LOW | python/vowpalwabbit/pyvw.py | 4 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 70 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 77 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/__init__.py | 78 | CODE | |
| LOW | python/vowpalwabbit/sklearn_vw.py | 10 | CODE | |
| LOW | python/vowpalwabbit/sklearn.py | 9 | CODE | |
| LOW | python/tests/conftest.py | 11 | CODE | |
| LOW | python/tests/distributionally_robust_data.py | 129 | CODE | |
| LOW | python/tests/distributionally_robust_data.py | 166 | CODE | |
| LOW | python/tests/test_distributionally_robust.py | 2 | CODE | |
| LOW | python/tests/test_distributionally_robust.py | 2 | CODE | |
| LOW | python/docs/source/conf.py | 12 | CODE | |
| LOW | vowpalwabbit/core/tests/hyperopt_test.py | 2 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | python/vowpalwabbit/pyvw.py | 297 | Get specified type of prediction from example .. deprecated:: 9.0.0 Use :py:meth:`~vowpalwabbit.Example.get | STRING |
| HIGH | python/vowpalwabbit/pyvw.py | 552 | Returns a collection of examples for a multiline example learner or a single example for a single example learne | STRING |
| HIGH | python/vowpalwabbit/pyvw.py | 2067 | Get prediction object from this example. Args: prediction_type: - If None, the labe | STRING |
| HIGH | python/vowpalwabbit/sklearn.py | 748 | Predict probabilities for each class. Args: X : {array-like, sparse matrix}, shape = (n_samples, n_ | STRING |
| HIGH | python/vowpalwabbit/sklearn.py | 792 | Convert array or sparse matrix to Vowpal Wabbit format Args: x : {array-like, sparse matrix}, shape (n_sam | STRING |
| HIGH | python/vowpalwabbit/dftovw.py | 61 | Returns the column defined in attribute 'colname' from the dataframe 'df'. Args: df: The dataframe | STRING |
| HIGH | python/vowpalwabbit/dftovw.py | 724 | Build DFtoVW instance using column names only. .. deprecated:: 9.2.0 Use :meth:`DFtoVW.from | STRING |
| HIGH | python/vowpalwabbit/dftovw.py | 773 | Build DFtoVW instance using column names only. Compared to :meth:`DFtoVW.from_colnames`, this method allows for y and la | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | cs/cs/Properties/AssemblyInfo.cs | 3 | // This code was generated by a tool. | COMMENT |
| HIGH | cs/cs_console/Properties/AssemblyInfo.cs | 3 | // This code was generated by a tool. | COMMENT |
| HIGH | cs/common/Properties/AssemblyInfo.cs | 3 | // This code was generated by a tool. | COMMENT |
| HIGH | cs/cs_json/Properties/AssemblyInfo.cs | 3 | // This code was generated by a tool. | COMMENT |
| HIGH | cs/cs_parallel/Properties/AssemblyInfo.cs | 3 | // This code was generated by a tool. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | demo/recall_tree/wikipara/WikiExtractor.py | 21 | # This file is part of Tanl. | COMMENT |
| MEDIUM | demo/recall_tree/wikipara/WikiExtractor.py | 1400 | # This function is used in some pages to construct links | COMMENT |
| MEDIUM | test/repeat.py | 5 | # This file is used to test some race conditions. | COMMENT |
| MEDIUM | test/tools/fuzzing/fuzz.py | 120 | # Create a temporary working directory for any output files VW produces | COMMENT |
| MEDIUM | python/vowpalwabbit/pyvw.py | 2158 | # Create the merged vw object and wrap it in a Workspace | COMMENT |
| MEDIUM | python/tests/e2e_v2/test_helper.py | 19 | # Create a dictionary to hold the variable values | COMMENT |
| MEDIUM⚡ | …ests/e2e_v2/classification/classification_functions.py | 8 | # Define the number of divisions for each feature | COMMENT |
| MEDIUM | .github/workflows/release.yml | 3 | # Creating the GitHub release was a manual step, and 9.11.3 is what that costs: the version | COMMENT |
| MEDIUM | .github/workflows/dotnet_nugets.yml | 222 | # Create the combined package on Windows | COMMENT |
| MEDIUM | utl/active_interactor.py | 265 | # Create a socket | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | cs/vw.net/VowpalWabbitBase.cs | 118 | byte[] argumentsBytes = Vw.Net.Native.NativeMethods.StringEncoding.GetBytes(arguments); | CODE |
| CRITICAL | cs/vw.net/VowpalWabbitBase.cs | 359 | byte[] argumentsBytes = Vw.Net.Native.NativeMethods.StringEncoding.GetBytes(args); | CODE |
| CRITICAL | cs/vw.net/VowpalWabbitBase.cs | 398 | byte[] filenameBytes = Vw.Net.Native.NativeMethods.StringEncoding.GetBytes(filename); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | demo/cats/utility/srm.py | 106 | except Exception as err: | CODE |
| LOW | test/run_tests_model_gen_and_load.py | 225 | except Exception as e: | CODE |
| LOW | test/run_tests.py | 885 | except Exception as e: | CODE |
| LOW | test/run_tests.py | 1316 | except Exception: | CODE |
| LOW⚡ | python/tests/e2e_v2/test_helper.py | 87 | except Exception as error: | CODE |
| LOW⚡ | python/tests/e2e_v2/test_helper.py | 102 | except Exception as error: | CODE |
| MEDIUM | …hon/docs/cmd_options_template/generate_cmdline_docs.py | 51 | print(f"Error: extra_info['options'] keys not used: {unused_options}") | CODE |
| MEDIUM | …hon/docs/cmd_options_template/generate_cmdline_docs.py | 56 | print(f"Error: extra_info['groups'] keys not used: {unused_groups}") | CODE |
| LOW | utl/verify-release.py | 104 | except Exception: | CODE |
| MEDIUM | utl/version_number.py | 16 | debug_print("Error: Git repository is shallow!") | CODE |
| MEDIUM | utl/version_number.py | 32 | debug_print("Error: 'git describe' output did not match regex!") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | vowpalwabbit/core/include/vw/core/gen_cs_example.h | 156 | // this implements the doubly robust method | COMMENT |
| MEDIUM | …palwabbit/core/include/vw/core/reductions/cb/cb_algs.h | 63 | // doubly robust estimate | COMMENT |
| MEDIUM | …palwabbit/core/include/vw/core/reductions/cb/cb_algs.h | 84 | // doubly robust estimate | COMMENT |
| MEDIUM | cs/cs_json/Serializer/JsonTypeInspector.cs | 135 | // leverage optimized path | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | demo/recall_tree/wikipara/WikiExtractor.py | 1863 | # if ns != NS_SPECIAL and nt.equals(self.mTitle) and !nt.hasFragment(): | COMMENT |
| HIGH | python/tests/test_ccb.py | 256 | assert q_weights.equals(automl_champ_weights) | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | demo/recall_tree/wikipara/WikiExtractor.py | 1357 | # Check if the last item had no = sign, thus specifying the default case | COMMENT |
| LOW | test/sender_test.py | 61 | # Check if daemon failed. | COMMENT |
| LOW | python/tests/e2e_v2/assert_job.py | 21 | # Check if the majority of elements are close | COMMENT |
| LOW | python/tests/e2e_v2/slate/assert_job.py | 6 | # Check if the majority of elements are close | COMMENT |
| LOW | python/docs/source/conf.py | 172 | # Check if we have a non-ipynb file, but an ipynb of same name exists | COMMENT |
| LOW | scripts/arm_diagnostic.sh | 20 | # Check if we're on ARM64 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | demo/random-noise/distrib.r | 6 | # Usage: | COMMENT |
| LOW | utl/maven-central-bundle.sh | 10 | # Usage: | COMMENT |
| LOW | utl/post-release.sh | 12 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/vowpalwabbit/sklearn.py | 63 | CODE | |
| LOW | python/vowpalwabbit/dftovw.py | 368 | CODE | |
| LOW | python/vowpalwabbit/dftovw.py | 421 | CODE | |
| LOW | python/tests/e2e_v2/test_helper.py | 26 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/vowpalwabbit/pyvw.py | 1763 | def set_label_string(self, string: str) -> None: | CODE |
| LOW | python/vowpalwabbit/__init__.py | 43 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | python/tests/test_sklearn_vw.py | 70 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/tools/fuzzing/fuzz.py | 16 | # in one, make sure to update the other | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | utl/vw-hyperopt.py | 445 | ): # TODO: implement parallel search with MongoTrials | CODE |