Repository Analysis

OpenBB-finance/OpenBB

Open Data Platform for analysts, quants and AI agents.

8.6 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of OpenBB-finance/OpenBB, a Python project with 70,540 GitHub stars. SynthScan v2.0 examined 749,373 lines of code across 1937 source files, recording 3454 pattern matches distributed across 20 syntactic categories. The overall adjusted score of 8.6 places this repository in the Low 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).

8.6
Adjusted Score
8.6
Raw Score
100%
Time Factor
2026-07-13
Last Push
70.5K
Stars
Python
Language
749.4K
Lines of Code
1.9K
Files
3.5K
Pattern Hits
2026-07-14
Scan Date
0.20
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

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

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 211HIGH 185MEDIUM 178LOW 2880

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 3454 distinct pattern matches across 20 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.

Hallucination Indicators211 hits · 2110 pts
SeverityFileLineSnippetContext
CRITICAL…yfinance/openbb_yfinance/models/currency_historical.py111 from openbb_yfinance.utils.helpers import yf_downloadCODE
CRITICAL…rm/providers/yfinance/openbb_yfinance/models/losers.py47 from openbb_yfinance.utils.helpers import get_custom_screenerCODE
CRITICAL…nance/openbb_yfinance/models/undervalued_large_caps.py49 from openbb_yfinance.utils.helpers import get_custom_screenerCODE
CRITICAL…/yfinance/openbb_yfinance/models/futures_historical.py75 from openbb_yfinance.utils.helpers import get_futures_dataCODE
CRITICAL…/yfinance/openbb_yfinance/models/futures_historical.py127 from openbb_yfinance.utils.helpers import yf_downloadCODE
CRITICAL…inance/openbb_yfinance/models/aggressive_small_caps.py49 from openbb_yfinance.utils.helpers import get_custom_screenerCODE
CRITICAL…ers/yfinance/openbb_yfinance/models/equity_screener.py175 from openbb_yfinance.utils.helpers import get_custom_screenerCODE
CRITICAL…m/providers/yfinance/openbb_yfinance/models/gainers.py47 from openbb_yfinance.utils.helpers import get_custom_screenerCODE
CRITICAL…s/yfinance/openbb_yfinance/models/equity_historical.py141 from openbb_yfinance.utils.helpers import yf_downloadCODE
CRITICAL…/openbb_yfinance/models/undervalued_growth_equities.py53 from openbb_yfinance.utils.helpers import get_custom_screenerCODE
CRITICAL…rs/yfinance/openbb_yfinance/models/index_historical.py132 from openbb_yfinance.utils.helpers import yf_downloadCODE
CRITICAL…finance/openbb_yfinance/models/growth_tech_equities.py49 from openbb_yfinance.utils.helpers import get_custom_screenerCODE
CRITICAL…rm/providers/yfinance/openbb_yfinance/models/active.py47 from openbb_yfinance.utils.helpers import get_custom_screenerCODE
CRITICAL…iders/yfinance/openbb_yfinance/models/futures_curve.py51 from openbb_yfinance.utils.helpers import get_futures_curveCODE
CRITICAL…s/yfinance/openbb_yfinance/models/crypto_historical.py103 from openbb_yfinance.utils.helpers import yf_downloadCODE
CRITICAL…iders/nasdaq/openbb_nasdaq/models/calendar_dividend.py93 from openbb_nasdaq.utils.helpers import get_headers, date_range # noqaCODE
CRITICAL…iders/nasdaq/openbb_nasdaq/models/economic_calendar.py77 from openbb_nasdaq.utils.helpers import remove_html_tags # noqaCODE
CRITICAL…iders/nasdaq/openbb_nasdaq/models/economic_calendar.py127 from openbb_nasdaq.utils.helpers import get_headers, date_rangeCODE
CRITICAL…oviders/nasdaq/openbb_nasdaq/models/equity_screener.py386 from openbb_nasdaq.utils.helpers import get_headersCODE
CRITICAL…rs/nasdaq/openbb_nasdaq/models/historical_dividends.py108 from openbb_nasdaq.utils.helpers import get_headers # noqaCODE
CRITICAL…iders/nasdaq/openbb_nasdaq/models/calendar_earnings.py169 from openbb_nasdaq.utils.helpers import get_headers, date_range # noqaCODE
CRITICAL…/providers/nasdaq/openbb_nasdaq/models/calendar_ipo.py154 from openbb_nasdaq.utils.helpers import get_headers, date_range # noqaCODE
CRITICAL…providers/nasdaq/openbb_nasdaq/models/equity_search.py107 from openbb_nasdaq.utils.helpers import get_nasdaq_directoryCODE
CRITICAL…oviders/nasdaq/openbb_nasdaq/models/company_filings.py157 from openbb_nasdaq.utils.helpers import get_headersCODE
CRITICAL…enbb_platform/providers/sec/openbb_sec/utils/frames.py23from openbb_sec.utils.helpers import get_all_companies, symbol_mapCODE
CRITICAL…atform/providers/sec/openbb_sec/utils/company_facts.py550 from openbb_sec.utils.helpers import symbol_mapCODE
CRITICAL…rm/providers/sec/openbb_sec/models/nport_disclosure.py255 from openbb_sec.utils.helpers import HEADERS, get_nport_candidatesCODE
CRITICAL…bb_platform/providers/sec/openbb_sec/models/cik_map.py50 from openbb_sec.utils.helpers import symbol_mapCODE
CRITICAL…platform/providers/sec/openbb_sec/models/equity_ftd.py70 from openbb_sec.utils.helpers import download_zip_file, get_ftd_urls # noqaCODE
CRITICAL…platform/providers/sec/openbb_sec/models/symbol_map.py49 from openbb_sec.utils.helpers import cik_mapCODE
CRITICAL…platform/providers/sec/openbb_sec/models/sic_search.py72 from openbb_sec.utils.helpers import SEC_HEADERS, sec_callbackCODE
CRITICAL…ec/openbb_sec/models/management_discussion_analysis.py75 from openbb_sec.utils.helpers import SEC_HEADERS, sec_callbackCODE
CRITICAL…providers/sec/openbb_sec/models/institutions_search.py66 from openbb_sec.utils.helpers import get_all_ciksCODE
CRITICAL…platform/providers/sec/openbb_sec/models/sec_filing.py297 from openbb_sec.utils.helpers import cik_mapCODE
CRITICAL…platform/providers/sec/openbb_sec/models/sec_filing.py352 from openbb_sec.utils.helpers import sec_callbackCODE
CRITICAL…orm/providers/sec/openbb_sec/models/company_filings.py194 from openbb_sec.utils.helpers import symbol_mapCODE
CRITICAL…alpha/openbb_seeking_alpha/models/calendar_earnings.py18from openbb_seeking_alpha.utils.helpers import HEADERS, date_rangeCODE
CRITICAL…a/openbb_seeking_alpha/models/forward_eps_estimates.py15from openbb_seeking_alpha.utils.helpers import HEADERS, get_seekingalpha_idCODE
CRITICAL…openbb_seeking_alpha/models/forward_sales_estimates.py15from openbb_seeking_alpha.utils.helpers import HEADERS, get_seekingalpha_idCODE
CRITICAL…rs/eia/openbb_us_eia/models/petroleum_status_report.py121 from openbb_us_eia.utils.helpers import download_excel_fileCODE
CRITICAL…/eia/openbb_us_eia/models/short_term_energy_outlook.py117 from openbb_us_eia.utils.helpers import response_callbackCODE
CRITICAL…orm/providers/finra/openbb_finra/utils/data_storage.py8from openbb_finra.utils.helpers import get_short_interest_datesCODE
CRITICAL…m/providers/finra/openbb_finra/models/otc_aggregate.py56 from openbb_finra.utils.helpers import aget_full_dataCODE
CRITICAL…iders/congress_gov/tests/test_congress_gov_fetchers.py18from openbb_congress_gov.utils.helpers import year_to_congressCODE
CRITICAL…bb_congress_gov/models/congress_committee_documents.py8from openbb_congress_gov.utils.helpers import year_to_congressCODE
CRITICAL…_gov/openbb_congress_gov/models/congress_amendments.py222 from openbb_congress_gov.utils.helpers import get_all_amendments_by_typeCODE
CRITICAL…gress_gov/openbb_congress_gov/models/congress_bills.py17from openbb_congress_gov.utils.helpers import year_to_congressCODE
CRITICAL…_gov/openbb_congress_gov/router/congress_gov_router.py152 from openbb_congress_gov.utils.helpers import get_bill_text_choicesCODE
CRITICAL…_gov/openbb_congress_gov/router/congress_gov_router.py348 from openbb_congress_gov.utils.helpers import get_amendment_text_choicesCODE
CRITICALopenbb_platform/providers/imf/openbb_imf/imf_router.py873 from openbb_imf.utils.helpers import detect_transform_dimensionCODE
CRITICAL…atform/providers/imf/openbb_imf/utils/query_builder.py336 from openbb_imf.utils.helpers import parse_time_periodCODE
CRITICAL…atform/providers/imf/openbb_imf/utils/table_builder.py11from openbb_imf.utils.helpers import parse_codelist_id_from_urnCODE
CRITICAL…platform/providers/imf/openbb_imf/utils/dot_helpers.py47 from openbb_imf.utils.helpers import normalize_country_labelCODE
CRITICAL…platform/providers/imf/openbb_imf/utils/dot_helpers.py56 from openbb_imf.utils.helpers import normalize_country_labelCODE
CRITICAL…roviders/imf/openbb_imf/models/consumer_price_index.py14from openbb_imf.utils.helpers import normalize_country_labelCODE
CRITICAL…ment_us/openbb_government_us/models/treasury_prices.py64 from openbb_government_us.utils.helpers import get_random_agentCODE
CRITICAL…oecd/openbb_oecd/models/composite_leading_indicator.py160 from openbb_oecd.utils.helpers import oecd_date_to_python_dateCODE
CRITICAL…form/providers/oecd/openbb_oecd/models/gdp_forecast.py165 from openbb_oecd.utils.helpers import oecd_date_to_python_dateCODE
CRITICAL…platform/providers/oecd/openbb_oecd/models/gdp_real.py112 from openbb_oecd.utils.helpers import oecd_date_to_python_dateCODE
CRITICAL…providers/oecd/openbb_oecd/models/house_price_index.py110 from openbb_oecd.utils.helpers import oecd_date_to_python_date # noqaCODE
151 more matches not shown…
Hyper-Verbose Identifiers1856 hits · 1763 pts
SeverityFileLineSnippetContext
LOW…emplate/{{cookiecutter.project_tag}}/tests/conftest.py19def pytest_collection_modifyitems(config, items):CODE
LOW…me}}/obbject/{{cookiecutter.obbject_name}}/__init__.py58def _expensive_operation_worker(serialized_obbject: dict):CODE
LOWdesktop/src/routes/backends.tsx2156function loadEnvironmentsFromCache(): Environment[] {CODE
LOWcli/integration/test_integration_cli_controller.py8def test_parse_input_valid_commands():CODE
LOWcli/integration/test_integration_cli_controller.py18def test_parse_input_invalid_commands():CODE
LOW…tegration/test_integration_base_platform_controller.py35def test_platform_controller_initialization(platform_controller):CODE
LOW…tegration/test_integration_base_platform_controller.py69def test_platform_controller_calls(CODE
LOWcli/integration/test_commands.py21def test_launch_with_cli_input(monkeypatch, input_values):CODE
LOWcli/integration/test_integration_base_controller.py62def test_switch_command_execution(base_controller):CODE
LOWcli/tests/test_controllers_utils.py35def test_remove_file_existing_file():CODE
LOWcli/tests/test_controllers_utils.py42def test_remove_file_directory():CODE
LOWcli/tests/test_controllers_utils.py69def test_parse_and_split_input():CODE
LOWcli/tests/test_controllers_utils.py84def test_parse_and_split_input_special_cases(input_command, expected_output):CODE
LOWcli/tests/test_controllers_utils.py98def test_get_flair_and_username(mock_session):CODE
LOWcli/tests/test_controllers_utils.py159def test_parse_unknown_args_to_dict_basic(args, expected, mock_session):CODE
LOWcli/tests/test_controllers_utils.py176def test_parse_unknown_args_to_dict_literal_eval(args, expected, mock_session):CODE
LOWcli/tests/test_controllers_utils.py182def test_parse_unknown_args_to_dict_missing_value(mock_session):CODE
LOWcli/tests/test_controllers_utils.py202def test_validate_register_key(key, should_raise):CODE
LOWcli/tests/test_controllers_utils.py214def test_check_file_type_saved_valid(mock_session):CODE
LOWcli/tests/test_controllers_utils.py222def test_check_file_type_saved_invalid(mock_session):CODE
LOWcli/tests/test_controllers_utils.py230def test_check_file_type_saved_empty(mock_session):CODE
LOWcli/tests/test_controllers_utils.py237def test_check_file_type_saved_no_valid_types(mock_session):CODE
LOWcli/tests/test_config_setup.py11def test_bootstrap_creates_directory_and_file():CODE
LOWcli/tests/test_config_setup.py22def test_bootstrap_directory_exists():CODE
LOWcli/tests/test_config_setup.py33def test_bootstrap_file_exists():CODE
LOWcli/tests/test_config_setup.py44def test_bootstrap_permission_error():CODE
LOWcli/tests/test_session.py25def test_session_initialization(session):CODE
LOWcli/tests/test_session.py36def test_get_prompt_session_true(mock_isatty, mock_prompt_session, session):CODE
LOWcli/tests/test_session.py43def test_get_prompt_session_false(mock_isatty, session):CODE
LOWcli/tests/test_controllers_script_parser.py30def test_match_and_return_openbb_keyword_date():CODE
LOWcli/tests/test_controllers_script_parser.py44def test_parse_openbb_script_basic():CODE
LOWcli/tests/test_controllers_script_parser.py52def test_parse_openbb_script_with_variable():CODE
LOWcli/tests/test_controllers_script_parser.py60def test_parse_openbb_script_with_foreach_loop():CODE
LOWcli/tests/test_controllers_script_parser.py68def test_parse_openbb_script_with_error():CODE
LOWcli/tests/test_controllers_script_parser.py89def test_parse_openbb_script_foreach_errors(line, expected):CODE
LOWcli/tests/test_controllers_script_parser.py95def test_date_keyword_last_friday():CODE
LOWcli/tests/test_argparse_translator.py77def test_custom_argument_action_validation():CODE
LOWcli/tests/test_argparse_translator.py94def test_custom_argument_remove_props_on_store_true():CODE
LOWcli/tests/test_argparse_translator.py112def test_custom_argument_group():CODE
LOWcli/tests/test_argparse_translator.py134def test_argparse_translator_setup():CODE
LOWcli/tests/test_argparse_translator.py147def test_argparse_translator_execution():CODE
LOWcli/tests/test_argparse_translator.py228def test_pipe_union_type_handling():CODE
LOWcli/tests/test_argparse_translator.py251def test_custom_type_flattening():CODE
LOWcli/tests/test_argparse_translator.py279def test_description_cleaning_union():CODE
LOWcli/tests/test_argparse_translator.py298def test_description_cleaning_optional():CODE
LOWcli/tests/test_argparse_translator.py317def test_description_cleaning_annotated():CODE
LOWcli/tests/test_argparse_translator.py336def test_description_cleaning_pipe_union():CODE
LOWcli/tests/test_argparse_translator.py355def test_custom_argument_groups():CODE
LOWcli/tests/test_argparse_translator.py386def test_provider_parameters_tracking():CODE
LOWcli/tests/test_argparse_translator.py441 def test_parse_type_annotated(self):CODE
LOWcli/tests/test_argparse_translator.py475 def test_get_choices_multiple_literals(self):CODE
LOWcli/tests/test_argparse_translator.py532 def test_build_custom_groups_skip_standard(self):CODE
LOWcli/tests/test_argparse_translator.py569 def test_build_custom_groups_multiple_providers(self):CODE
LOWcli/tests/test_controllers_base_controller.py24def test_base_controller_initialization():CODE
LOWcli/tests/test_controllers_base_controller.py100def test_comma_split_flagged_value_not_split(mock_base_session):CODE
LOWcli/tests/test_controllers_base_controller.py108def test_comma_split_short_flag_not_split(mock_base_session):CODE
LOWcli/tests/test_controllers_base_controller.py116def test_comma_split_equals_syntax_not_split(mock_base_session):CODE
LOWcli/tests/test_controllers_base_controller.py124def test_comma_split_nargs_plus_all_values_protected(mock_base_session):CODE
LOWcli/tests/test_controllers_base_controller.py136def test_comma_split_nargs_star_values_protected(mock_base_session):CODE
LOWcli/tests/test_controllers_base_controller.py146def test_comma_split_nargs_int_values_protected(mock_base_session):CODE
1796 more matches not shown…
Cross-File Repetition180 hits · 900 pts
SeverityFileLineSnippetContext
HIGH…_platform/core/tests/provider/abstract/test_fetcher.py0transform the params to the provider-specific query.STRING
HIGH…platform/core/openbb_core/provider/abstract/fetcher.py0transform the params to the provider-specific query.STRING
HIGH…rs/nasdaq/openbb_nasdaq/models/historical_dividends.py0transform the params to the provider-specific query.STRING
HIGH…rm/providers/nasdaq/openbb_nasdaq/models/top_retail.py0transform the params to the provider-specific query.STRING
HIGH…yfinance/openbb_yfinance/models/currency_historical.py0transform the query, extract and transform the data from the yahoo finance endpoints.STRING
HIGH…s/yfinance/openbb_yfinance/models/available_indices.py0transform the query, extract and transform the data from the yahoo finance endpoints.STRING
HIGH…viders/yfinance/openbb_yfinance/models/company_news.py0transform the query, extract and transform the data from the yahoo finance endpoints.STRING
HIGH…/yfinance/openbb_yfinance/models/futures_historical.py0transform the query, extract and transform the data from the yahoo finance endpoints.STRING
HIGH…inance/openbb_yfinance/models/aggressive_small_caps.py0transform the query, extract and transform the data from the yahoo finance endpoints.STRING
HIGH…s/yfinance/openbb_yfinance/models/equity_historical.py0transform the query, extract and transform the data from the yahoo finance endpoints.STRING
HIGH…rs/yfinance/openbb_yfinance/models/index_historical.py0transform the query, extract and transform the data from the yahoo finance endpoints.STRING
HIGH…finance/openbb_yfinance/models/growth_tech_equities.py0transform the query, extract and transform the data from the yahoo finance endpoints.STRING
HIGH…rm/providers/yfinance/openbb_yfinance/models/active.py0transform the query, extract and transform the data from the yahoo finance endpoints.STRING
HIGH…s/yfinance/openbb_yfinance/models/crypto_historical.py0transform the query, extract and transform the data from the yahoo finance endpoints.STRING
HIGH…yfinance/openbb_yfinance/models/currency_historical.py0return the raw data from the yahoo finance endpoint.STRING
HIGH…/yfinance/openbb_yfinance/models/futures_historical.py0return the raw data from the yahoo finance endpoint.STRING
HIGH…s/yfinance/openbb_yfinance/models/equity_historical.py0return the raw data from the yahoo finance endpoint.STRING
HIGH…rs/yfinance/openbb_yfinance/models/index_historical.py0return the raw data from the yahoo finance endpoint.STRING
HIGH…s/yfinance/openbb_yfinance/models/crypto_historical.py0return the raw data from the yahoo finance endpoint.STRING
HIGH…nbb_platform/providers/wsj/openbb_wsj/models/losers.py0transform the query, extract and transform the data from the wsj endpoints.STRING
HIGH…bb_platform/providers/wsj/openbb_wsj/models/gainers.py0transform the query, extract and transform the data from the wsj endpoints.STRING
HIGH…nbb_platform/providers/wsj/openbb_wsj/models/active.py0transform the query, extract and transform the data from the wsj endpoints.STRING
HIGH…iders/nasdaq/openbb_nasdaq/models/calendar_dividend.py0transform the query, extract and transform the data from the nasdaq endpoints.STRING
HIGH…iders/nasdaq/openbb_nasdaq/models/economic_calendar.py0transform the query, extract and transform the data from the nasdaq endpoints.STRING
HIGH…iders/nasdaq/openbb_nasdaq/models/calendar_earnings.py0transform the query, extract and transform the data from the nasdaq endpoints.STRING
HIGH…/providers/nasdaq/openbb_nasdaq/models/calendar_ipo.py0transform the query, extract and transform the data from the nasdaq endpoints.STRING
HIGH…rm/providers/nasdaq/openbb_nasdaq/models/top_retail.py0transform the query, extract and transform the data from the nasdaq endpoints.STRING
HIGH…alpha/openbb_seeking_alpha/models/calendar_earnings.py0return the raw data from the seeking alpha endpoint.STRING
HIGH…a/openbb_seeking_alpha/models/forward_eps_estimates.py0return the raw data from the seeking alpha endpoint.STRING
HIGH…openbb_seeking_alpha/models/forward_sales_estimates.py0return the raw data from the seeking alpha endpoint.STRING
HIGH…viders/fred/openbb_fred/models/consumer_price_index.py0transform the query, extract and transform the data from the fred endpoints.STRING
HIGH…enbb_platform/providers/fred/openbb_fred/models/tmc.py0transform the query, extract and transform the data from the fred endpoints.STRING
HIGH…tform/providers/fred/openbb_fred/models/yield_curve.py0transform the query, extract and transform the data from the fred endpoints.STRING
HIGH…platform/providers/fred/openbb_fred/models/ameribor.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…fred/openbb_fred/models/overnight_bank_funding_rate.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…roviders/fred/openbb_fred/models/federal_funds_rate.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…nbb_platform/providers/fred/openbb_fred/models/sofr.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…/providers/fred/openbb_fred/models/commercial_paper.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…/providers/fred/openbb_fred/models/mortgage_indices.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…form/providers/fred/openbb_fred/models/bond_indices.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…iders/fred/openbb_fred/models/commodity_spot_prices.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…tform/providers/fred/openbb_fred/models/tips_yields.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…b_platform/providers/fred/openbb_fred/models/series.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…platform/providers/fred/openbb_fred/models/regional.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…viders/fred/openbb_fred/models/euro_short_term_rate.py0frequency aggregation to convert daily data to lower frequency. \n a = annual \n q = quarterly \n m = monthly \n w = weeSTRING
HIGH…platform/providers/fred/openbb_fred/models/ameribor.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…fred/openbb_fred/models/overnight_bank_funding_rate.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…fred/openbb_fred/models/manufacturing_outlook_texas.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…roviders/fred/openbb_fred/models/federal_funds_rate.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…tform/providers/fred/openbb_fred/models/tips_yields.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…nbb_platform/providers/fred/openbb_fred/models/sofr.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…rs/fred/openbb_fred/models/manufacturing_outlook_ny.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…/providers/fred/openbb_fred/models/commercial_paper.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…ders/fred/openbb_fred/models/university_of_michigan.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…viders/fred/openbb_fred/models/euro_short_term_rate.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…b_fred/models/survey_of_economic_conditions_chicago.py0a key that indicates the aggregation method used for frequency aggregation. \n avg = average \n sum = sum \n eop = end oSTRING
HIGH…platform/providers/fred/openbb_fred/models/ameribor.py0transformation type none = no transformation chg = change ch1 = change from year ago pch = percent change pc1 = percent STRING
HIGH…fred/openbb_fred/models/overnight_bank_funding_rate.py0transformation type none = no transformation chg = change ch1 = change from year ago pch = percent change pc1 = percent STRING
HIGH…/providers/fred/openbb_fred/models/mortgage_indices.py0transformation type none = no transformation chg = change ch1 = change from year ago pch = percent change pc1 = percent STRING
HIGH…iders/fred/openbb_fred/models/commodity_spot_prices.py0transformation type none = no transformation chg = change ch1 = change from year ago pch = percent change pc1 = percent STRING
120 more matches not shown…
Decorative Section Separators121 hits · 435 pts
SeverityFileLineSnippetContext
MEDIUM…core/openbb_core/provider/utils/update_country_data.py63# ── Name normalization ──────────────────────────────────────────────────────COMMENT
MEDIUM…core/openbb_core/provider/utils/update_country_data.py155# ── Scrapers ────────────────────────────────────────────────────────────────COMMENT
MEDIUM…core/openbb_core/provider/utils/update_country_data.py475# ── Main logic ──────────────────────────────────────────────────────────────COMMENT
MEDIUM…enbb_platform/providers/sec/tests/test_sec_fetchers.py249# ---------------------------------------------------------------------------COMMENT
MEDIUM…enbb_platform/providers/sec/tests/test_sec_fetchers.py251# ---------------------------------------------------------------------------COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_xbrl_taxonomy.py182# ═════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_xbrl_taxonomy.py184# ═════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_xbrl_taxonomy.py761# ═════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_xbrl_taxonomy.py763# ═════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_xbrl_taxonomy.py50# ─── Per-test fixtures (cheap, no network) ────────────────────────────────COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_xbrl_taxonomy.py65# ─── Module-scoped fixtures — each expensive fetch runs at most once ──────COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py541# =========================================================================COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py543# =========================================================================COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py2831# ---------------------------------------------------------------------------COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py2833# ---------------------------------------------------------------------------COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py22# ---------------------------------------------------------------------------COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py24# ---------------------------------------------------------------------------COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py1015# =========================================================================COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py1017# =========================================================================COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py2341# ---------------------------------------------------------------------------COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py2343# ---------------------------------------------------------------------------COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py2585# ---------------------------------------------------------------------------COMMENT
MEDIUM…nbb_platform/providers/sec/tests/test_company_facts.py2587# ---------------------------------------------------------------------------COMMENT
MEDIUM…providers/sec/openbb_sec/utils/xbrl_taxonomy_helper.py203# ---------------------------------------------------------------------------COMMENT
MEDIUM…providers/sec/openbb_sec/utils/xbrl_taxonomy_helper.py205# ---------------------------------------------------------------------------COMMENT
MEDIUM…providers/sec/openbb_sec/utils/xbrl_taxonomy_helper.py708# ---------------------------------------------------------------------------COMMENT
MEDIUM…providers/sec/openbb_sec/utils/xbrl_taxonomy_helper.py710# ---------------------------------------------------------------------------COMMENT
MEDIUM…providers/sec/openbb_sec/utils/xbrl_taxonomy_helper.py764# ---------------------------------------------------------------------------COMMENT
MEDIUM…providers/sec/openbb_sec/utils/xbrl_taxonomy_helper.py766# ---------------------------------------------------------------------------COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py873 # ───────────────────────────────────────────────────────────────────COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py5140# ============================================================================COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py5142# ============================================================================COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py5152# ============================================================================COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py19# ============================================================================COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py21# ============================================================================COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py358 # ── Headerless continuation detection ──────────────────────────────COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py736# ============================================================================COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py738# ============================================================================COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py848 # ── New: label-continuation merge ──────────────────────────────────COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py3640# ── Chart-legend helper ─────────────────────────────────────────────COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py3800# ── Table-title pattern for composite-table splitting ──────────────COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py3952 # ── Chart-legend detection ──────────────────────────────────────COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py6997# ============================================================================COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py6999# ============================================================================COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py7314# ============================================================================COMMENT
MEDIUM…atform/providers/sec/openbb_sec/utils/html2markdown.py7316# ============================================================================COMMENT
MEDIUM…ec/openbb_sec/models/management_discussion_analysis.py1349 # ── Locate the end of the MD&A section ──────────────COMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py221# =============================================================================COMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py223# =============================================================================COMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py342# =============================================================================COMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py344# =============================================================================COMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py551# =============================================================================COMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py553# =============================================================================COMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py689# =============================================================================COMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py691# =============================================================================COMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py1036# =============================================================================COMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py1038# =============================================================================COMMENT
MEDIUM…viders/government_us/tests/test_psd_template_parser.py104# =============================================================================COMMENT
MEDIUM…viders/government_us/tests/test_psd_template_parser.py106# =============================================================================COMMENT
MEDIUM…viders/government_us/tests/test_psd_template_parser.py159# =============================================================================COMMENT
61 more matches not shown…
Deep Nesting361 hits · 312 pts
SeverityFileLineSnippetContext
LOWcli/openbb_cli/config/console.py60CODE
LOWcli/openbb_cli/config/completer.py140CODE
LOWcli/openbb_cli/config/completer.py186CODE
LOW…/openbb_cli/argparse_translator/argparse_translator.py77CODE
LOW…/openbb_cli/argparse_translator/argparse_translator.py442CODE
LOW…/openbb_cli/argparse_translator/reference_processor.py85CODE
LOWcli/openbb_cli/argparse_translator/utils.py6CODE
LOWcli/openbb_cli/controllers/cli_controller.py498CODE
LOWcli/openbb_cli/controllers/cli_controller.py620CODE
LOWcli/openbb_cli/controllers/cli_controller.py291CODE
LOWcli/openbb_cli/controllers/base_platform_controller.py106CODE
LOWcli/openbb_cli/controllers/base_platform_controller.py151CODE
LOWcli/openbb_cli/controllers/base_platform_controller.py154CODE
LOWcli/openbb_cli/controllers/utils.py264CODE
LOWcli/openbb_cli/controllers/utils.py713CODE
LOWcli/openbb_cli/controllers/utils.py763CODE
LOWcli/openbb_cli/controllers/utils.py916CODE
LOWcli/openbb_cli/controllers/script_parser.py60CODE
LOWcli/openbb_cli/controllers/script_parser.py146CODE
LOWcli/openbb_cli/controllers/base_controller.py173CODE
LOWcli/openbb_cli/controllers/base_controller.py426CODE
LOWcli/openbb_cli/controllers/base_controller.py509CODE
LOWcli/openbb_cli/controllers/base_controller.py643CODE
LOWcli/openbb_cli/controllers/base_controller.py838CODE
LOWopenbb_platform/core/tests/app/test_deprecation.py12CODE
LOWopenbb_platform/core/tests/app/model/test_metadata.py106CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py89CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py308CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py431CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py538CODE
LOWopenbb_platform/core/openbb_core/app/utils.py92CODE
LOWopenbb_platform/core/openbb_core/app/router.py433CODE
LOWopenbb_platform/core/openbb_core/app/router.py464CODE
LOWopenbb_platform/core/openbb_core/app/router.py490CODE
LOW…enbb_platform/core/openbb_core/app/extension_loader.py61CODE
LOW…bb_platform/core/openbb_core/app/provider_interface.py245CODE
LOW…bb_platform/core/openbb_core/app/provider_interface.py373CODE
LOW…bb_platform/core/openbb_core/app/provider_interface.py449CODE
LOW…platform/core/openbb_core/app/logs/handlers_manager.py24CODE
LOW…latform/core/openbb_core/app/static/package_builder.py171CODE
LOW…latform/core/openbb_core/app/static/package_builder.py415CODE
LOW…latform/core/openbb_core/app/static/package_builder.py482CODE
LOW…latform/core/openbb_core/app/static/package_builder.py554CODE
LOW…latform/core/openbb_core/app/static/package_builder.py1132CODE
LOW…latform/core/openbb_core/app/static/package_builder.py1432CODE
LOW…latform/core/openbb_core/app/static/package_builder.py1738CODE
LOW…latform/core/openbb_core/app/static/package_builder.py1920CODE
LOW…latform/core/openbb_core/app/static/package_builder.py2052CODE
LOW…latform/core/openbb_core/app/static/package_builder.py2205CODE
LOW…latform/core/openbb_core/app/static/package_builder.py2751CODE
LOW…latform/core/openbb_core/app/static/package_builder.py2997CODE
LOW…latform/core/openbb_core/app/static/package_builder.py3136CODE
LOW…latform/core/openbb_core/app/static/package_builder.py3173CODE
LOW…latform/core/openbb_core/app/static/package_builder.py3377CODE
LOW…latform/core/openbb_core/app/static/package_builder.py3721CODE
LOW…latform/core/openbb_core/app/static/package_builder.py3882CODE
LOW…latform/core/openbb_core/app/static/package_builder.py4165CODE
LOW…latform/core/openbb_core/app/static/package_builder.py4312CODE
LOW…latform/core/openbb_core/app/static/package_builder.py2218CODE
LOW…latform/core/openbb_core/app/static/package_builder.py2319CODE
301 more matches not shown…
Excessive Try-Catch Wrapping286 hits · 278 pts
SeverityFileLineSnippetContext
MEDIUMcookiecutter/openbb_cookiecutter/cli.py133 print(f"Error: extra-context must be in KEY=VALUE format: {item}")CODE
LOWcookiecutter/openbb_cookiecutter/cli.py157 except Exception as e:CODE
MEDIUMcookiecutter/openbb_cookiecutter/cli.py158 print(f"Error: {e}", file=sys.stderr) # noqaCODE
LOW…openbb_cookiecutter/template/hooks/post_gen_project.py99 except Exception:CODE
MEDIUMdesktop/src-tauri/src/tauri_handlers/helpers.rs723 print(f"Error reading existing user settings: {e}")CODE
MEDIUMdesktop/src-tauri/src/tauri_handlers/helpers.rs768 print(f"Error reading existing system settings: {e}")CODE
LOWdesktop/src-tauri/src/tauri_handlers/helpers.rs810except Exception as e:CODE
MEDIUMdesktop/src-tauri/src/tauri_handlers/helpers.rs811 print(f"Error updating OpenBB settings: {e}")CODE
LOWcli/integration/test_commands.py28 except Exception as e:CODE
LOWcli/openbb_cli/session.py85 except Exception:CODE
LOWcli/openbb_cli/cli.py29 except Exception:CODE
MEDIUMcli/openbb_cli/config/style.py63 console.print("Error loading default.")CODE
LOWcli/openbb_cli/controllers/base_platform_controller.py273 except Exception as e:CODE
LOWcli/openbb_cli/controllers/utils.py57 except Exception:CODE
LOWcli/openbb_cli/controllers/utils.py92 except Exception as e:CODE
LOWcli/openbb_cli/controllers/utils.py129 except Exception as e:CODE
LOWcli/openbb_cli/controllers/utils.py955 except Exception as e:CODE
LOWcli/openbb_cli/controllers/choices.py339 except Exception as exception:CODE
LOWcli/openbb_cli/controllers/base_controller.py207 except Exception as exc:CODE
LOWopenbb_platform/core/openbb_core/build.py62 except Exception as e: # pylint: disable=broad-exceptCODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py177 except Exception:CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py293 except Exception as e: # pylint: disable=broad-exception-caughtCODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py468 except Exception as e:CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py509 except Exception as e:CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py570 except Exception as e:CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py630 except Exception as e:CODE
LOWopenbb_platform/core/openbb_core/app/router.py527 except Exception as e:CODE
LOW…enbb_platform/core/openbb_core/app/logs/utils/utils.py26 except Exception as e:CODE
LOW…latform/core/openbb_core/app/static/package_builder.py73except Exception: # pylint: disable=broad-except # noqaCODE
LOW…latform/core/openbb_core/app/static/package_builder.py132 except Exception: # pylint: disable=broad-except # noqaCODE
LOW…latform/core/openbb_core/app/static/package_builder.py337 except Exception:CODE
LOW…latform/core/openbb_core/app/static/package_builder.py3084 except Exception: # pragma: no coverCODE
LOW…latform/core/openbb_core/app/static/package_builder.py3685 except Exception: # pylint: disable=broad-except # noqaCODE
LOW…nbb_platform/core/openbb_core/app/model/credentials.py105 except Exception as e:CODE
LOWopenbb_platform/core/openbb_core/app/model/obbject.py282 except Exception as ex:CODE
LOWopenbb_platform/core/openbb_core/provider/registry.py46 except Exception as e:CODE
LOW…core/openbb_core/provider/utils/update_country_data.py498 except Exception as e:CODE
LOW…penbb_core/provider/utils/options_chains_properties.py167 except Exception: # pylint: disable=broad-exception-caughtCODE
LOW…bb_platform/core/openbb_core/provider/utils/helpers.py501 except Exception as e: # pylint: disable=broad-exceptCODE
LOW…bb_platform/core/openbb_core/api/exception_handlers.py93 except Exception:CODE
LOWopenbb_platform/core/openbb_core/api/router/commands.py332 except Exception as exc: # pylint: disable=W0703CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py532 except Exception: # pylint: disable=W0718CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py542 except Exception as e:CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py647 except Exception: # pylint: disable=W0718CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py657 except Exception as e: # pylint: disable=W0718CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py758 except Exception as e: # pylint: disable=W0718CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py771 except Exception as e: # pylint: disable=W0718CODE
LOW…ct_extensions/charting/openbb_charting/core/backend.py337 except Exception as exc:CODE
LOW…ensions/charting/openbb_charting/core/openbb_figure.py265 except Exception as e:CODE
LOW…ensions/charting/openbb_charting/core/openbb_figure.py874 except Exception as e:CODE
LOW…ensions/charting/openbb_charting/core/openbb_figure.py966 except Exception:CODE
LOW…t_extensions/charting/openbb_charting/core/to_chart.py65 except Exception as e:CODE
LOW…ns/charting/openbb_charting/core/plotly_ta/ta_class.py344 except Exception:CODE
LOW…ns/charting/openbb_charting/core/plotly_ta/ta_class.py524 except Exception as e:CODE
LOW…harting/openbb_charting/core/plotly_ta/data_classes.py200 except Exception as err:CODE
LOW…harting/openbb_charting/core/plotly_ta/data_classes.py211 except Exception as err:CODE
LOW…harting/openbb_charting/core/plotly_ta/data_classes.py384 except Exception as e:CODE
LOW…enbb_charting/core/plotly_ta/plugins/overlap_plugin.py64 except Exception as e:CODE
LOW…ions/charting/openbb_charting/charts/generic_charts.py84 except Exception as _: # noqa: S112CODE
LOW…ions/charting/openbb_charting/charts/generic_charts.py124 except Exception as _:CODE
226 more matches not shown…
Redundant / Tautological Comments182 hits · 241 pts
SeverityFileLineSnippetContext
LOWcli/tests/test_controllers_base_platform_controller.py45 # Check if command function is correctly linkedCOMMENT
LOWcli/openbb_cli/config/completer.py204 # Check if there are multiple flags for the same commandCOMMENT
LOWcli/openbb_cli/argparse_translator/argparse_argument.py49 # Check if choices is present and if it's an empty tuple remove itCOMMENT
LOWcli/openbb_cli/controllers/cli_controller.py447 # Check if the directory existsCOMMENT
LOWcli/openbb_cli/controllers/cli_controller.py484 # Check if the directory existsCOMMENT
LOWcli/openbb_cli/controllers/cli_controller.py537 # Check if toolbar hint was enabledCOMMENT
LOWcli/openbb_cli/controllers/cli_controller.py579 # Check if the user wants to reset applicationCOMMENT
LOWcli/openbb_cli/controllers/script_parser.py88 # Check if it corresponds to a monthCOMMENT
LOWcli/openbb_cli/controllers/script_parser.py97 # Check if it corresponds to a week dayCOMMENT
LOWcli/openbb_cli/controllers/script_parser.py115 # Check if it corresponds to a monthCOMMENT
LOWcli/openbb_cli/controllers/script_parser.py128 # Check if it corresponds to a week dayCOMMENT
LOWcli/openbb_cli/controllers/script_parser.py181 # Check if this line has a variable attributionCOMMENT
LOWcli/openbb_cli/controllers/script_parser.py329 # Check if the string starts with a minus signCOMMENT
LOWcli/openbb_cli/controllers/script_parser.py360 # Check if this is an OpenBB keyword variable likeCOMMENT
LOWcli/openbb_cli/controllers/base_controller.py391 # Check if title has a valid formatCOMMENT
LOWcli/openbb_cli/controllers/base_controller.py812 # Check if the action has optional choices, if yes, remove themCOMMENT
LOWcli/openbb_cli/controllers/base_controller.py883 # Check if toolbar hint was enabledCOMMENT
LOW…/app/logs/formatters/test_formatter_with_exceptions.py323 # Check if the mock methods were calledCOMMENT
LOWopenbb_platform/core/tests/app/logs/utils/test_utils.py32 # Check if the first part (UUID) is a valid UUIDCOMMENT
LOWopenbb_platform/core/tests/app/logs/utils/test_utils.py35 # Check if the second part (current_time) is numericCOMMENT
LOW…b_platform/core/tests/app/service/test_user_service.py36 # Read the file and verify its contentsCOMMENT
LOWopenbb_platform/core/openbb_core/app/utils.py75 # Check if df has multiindex. If so, add the index names to the df and a boolean columnCOMMENT
LOW…bb_platform/core/openbb_core/app/provider_interface.py400 # Check if descriptions differ before mergingCOMMENT
LOW…tform/core/openbb_core/app/logs/utils/expired_files.py17 if directory.is_dir(): # Check if the directory exists and is a directoryCODE
LOW…latform/core/openbb_core/app/static/package_builder.py505 # Check if this is a Depends objectCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py1512 # Check if all union members are LiteralsCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py1812 # Check if we already have a kwargs parameter (VAR_KEYWORD) in formatted_paramsCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py2271 # Check if there's | None at the endCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py2342 # Check if this is the "Multiple comma separated" lineCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py2570 # Check if annotation is an Annotated typeCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py3120 # Check if this router has sub-routersCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py3644 # Append the dictionary to the listCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py3752 # Check if type is optionalCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py3758 # Check if None or NoneType is in the unionCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py4134 # Set data to the fieldsCOMMENT
LOW…latform/core/openbb_core/app/static/package_builder.py4177 # Check if the return type is an OBBjectCOMMENT
LOW…b_platform/core/openbb_core/app/model/user_settings.py24 # Check if user settings file exists and load from itCOMMENT
LOW…penbb_core/provider/utils/options_chains_properties.py1485 # Check if all items are FalseCOMMENT
LOW…openbb_core/provider/standard_models/options_chains.py370 if value: # Check if the list is not emptyCODE
LOWopenbb_platform/core/openbb_core/api/router/commands.py83 # Check if any metadata item is a Depends instanceCOMMENT
LOW…s/charting/openbb_charting/charts/relative_rotation.py510 # Add the trace to the listCOMMENT
LOW…orm/providers/yfinance/tests/test_yfinance_fetchers.py58 # Check if the key (HTML doctype) is in the response bodyCOMMENT
LOWopenbb_platform/providers/sec/validate_corpus.py1430 # Check if at least one CIK from this group is in the corpusCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py875 # Check if this row starts an incomplete parentheticalCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py883 # Check if the first non-empty cell has balanced parenthesesCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py223 # Check if this is a category header row (ALL CAPS words, no numbers)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py528 # Check if next_table immediately follows (no significant content between)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py577 # Check if it contains bold/styled text indicating a section headerCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py600 # Check if child spans have a SMALLER font size — if so, theCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py776 # Check if cell has an open paren that isn't closedCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py819 # Check if cell is a numeric valueCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py826 # Check if next cell is a note reference like "(a)", "(b)"COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py917 # Check if next row is continuation (ends with ) or has amounts/share text)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1056 # Check if data rows have content in THIS column vs PREV columnCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1078 # Check if data is complementary: no row has data in BOTH columns.COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1111 # Check if columns i-1 and i are strictly complementary across ALL rowsCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1190 # Check if this is a number (with optional $ prefix, commas, parens for negative)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1228 # Check if values contain dollar amounts (start with $ or have commas)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1599 # Check if this cell has the complete value ($ + number)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1753 # Check if title row (one text spans >=80%)COMMENT
122 more matches not shown…
Self-Referential Comments43 hits · 134 pts
SeverityFileLineSnippetContext
MEDIUMcli/openbb_cli/controllers/base_platform_controller.py124 # Create the sub controller as a new classCOMMENT
MEDIUM…atform/core/tests/app/logs/utils/test_expired_files.py100 # Create a MagicMock for the Path class to represent a file pathCOMMENT
MEDIUM…s/app/logs/handlers/test_path_tracking_file_handler.py53 # Define a sample LoggingSettings object with mock attributesCOMMENT
MEDIUMopenbb_platform/core/tests/app/static/test_filters.py37# Create a list of scenarios to testCOMMENT
MEDIUMopenbb_platform/core/tests/app/model/test_extension.py90 # Create a fake module to be imported in the propertyCOMMENT
MEDIUM…_platform/core/tests/app/model/test_system_settings.py54 # Create the openbb directoryCOMMENT
MEDIUM…_platform/core/tests/app/model/test_system_settings.py77 # Create the openbb directoryCOMMENT
MEDIUM…_platform/core/tests/app/model/test_system_settings.py80 # Create the user_settings.json fileCOMMENT
MEDIUM…b_platform/core/tests/app/service/test_user_service.py23 # Create a temporary file for this testCOMMENT
MEDIUM…b_platform/core/tests/app/service/test_user_service.py27 # Create a UserSettings object with some test dataCOMMENT
MEDIUM…bb_platform/core/openbb_core/app/provider_interface.py405 # Create a field with provider-specific descriptionCOMMENT
MEDIUM…latform/core/openbb_core/app/static/package_builder.py1248 # Create a new annotation with OpenBBField containing the descriptionCOMMENT
MEDIUM…latform/core/openbb_core/app/static/package_builder.py3599 # Define a regex pattern to match parameter blocksCOMMENT
MEDIUM…latform/core/openbb_core/app/static/package_builder.py3633 # Create a new dictionary with fields in the desired orderCOMMENT
MEDIUM…s/charting/openbb_charting/charts/relative_rotation.py131 # Create an empty list to store the scatter tracesCOMMENT
MEDIUM…s/charting/openbb_charting/charts/relative_rotation.py190 # Define the initial trace for the figureCOMMENT
MEDIUM…s/charting/openbb_charting/charts/relative_rotation.py197 # Create the layout for the figureCOMMENT
MEDIUM…s/charting/openbb_charting/charts/relative_rotation.py427 # Create the figure and add the initial traceCOMMENT
MEDIUM…s/charting/openbb_charting/charts/relative_rotation.py480 # Create an empty list to store the scatter tracesCOMMENT
MEDIUM…s/charting/openbb_charting/charts/relative_rotation.py490 # Create a scatter trace for each columnCOMMENT
MEDIUM…roviders/finviz/openbb_finviz/utils/screener_helper.py2085 # Create the user presets directory if it doesn't exist.COMMENT
MEDIUM…atform/providers/imf/openbb_imf/utils/query_builder.py40 # Create a map for case-insensitive matching of dimension IDsCOMMENT
MEDIUM…nbb_platform/providers/imf/tests/test_table_builder.py338 # Create a large hierarchyCOMMENT
MEDIUM…orm/providers/imf/tests/test_progressive_validation.py1005 # Create a long list of codesCOMMENT
MEDIUM…t_us/openbb_government_us/utils/psd_data_downloader.py50 # Create a clean filename from the titleCOMMENT
MEDIUM…b_platform/providers/oecd/openbb_oecd/utils/helpers.py18# Create the cache directory if it does not existCOMMENT
MEDIUM…b_platform/providers/oecd/openbb_oecd/utils/helpers.py115 # Create a DataFrameCOMMENT
MEDIUM…nbb_platform/providers/bls/openbb_bls/models/series.py137 # Define a function to wrap as a coroutine.COMMENT
MEDIUM…nbb_platform/providers/bls/openbb_bls/models/series.py166 # Create a list of tasks to run based on the API query limitations.COMMENT
MEDIUM…/providers/cboe/openbb_cboe/models/index_historical.py124 # Create a list of European indices.COMMENT
MEDIUM…form/providers/cboe/openbb_cboe/models/equity_quote.py135 # Create a list of European indices.COMMENT
MEDIUM…m/providers/econdb/openbb_econdb/models/yield_curve.py202 # Create a DataFrame from the dataCOMMENT
MEDIUM…roviders/famafrench/openbb_famafrench/utils/helpers.py651 # Create the multi-index columnsCOMMENT
MEDIUM…nbb_platform/providers/tmx/openbb_tmx/utils/helpers.py569 # Create the standardized contract symbol.COMMENT
MEDIUM…nbb_platform/providers/tmx/openbb_tmx/utils/helpers.py809 # Create a list of 4-week chunksCOMMENT
MEDIUM…nbb_platform/providers/tmx/openbb_tmx/utils/helpers.py1020 # Create a list of 4-week chunksCOMMENT
MEDIUM…nbb_platform/providers/tmx/openbb_tmx/utils/helpers.py1030 # Create a datetime object representing 9:30 AM on the dateCOMMENT
MEDIUM…orm/providers/tmx/openbb_tmx/models/company_filings.py111 # Create a list of 4-week chunksCOMMENT
MEDIUM…orm/extensions/economy/openbb_economy/economy_views.py173 # Create the figure object with subplots.COMMENT
MEDIUM…rm/extensions/platform_api/tests/test_widgets_utils.py28 # Create a sample OmniWidgetResponseModel instanceCOMMENT
MEDIUM…nbb_platform/extensions/platform_api/tests/test_api.py329 # Create a proper mock module with __spec__ attributeCOMMENT
MEDIUM…m/extensions/mcp_server/tests/utils/test_app_import.py389 # Create a package structureCOMMENT
MEDIUM…orm/extensions/mcp_server/openbb_mcp_server/app/app.py827 # Create the directory and write all filesCOMMENT
Unused Imports88 hits · 86 pts
SeverityFileLineSnippetContext
LOW…emplate/{{cookiecutter.project_tag}}/tests/conftest.py9CODE
LOW…iders/{{cookiecutter.provider_name}}/models/example.py19CODE
LOWcli/openbb_cli/config/console.py13CODE
LOWopenbb_platform/conftest.py9CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py28CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py29CODE
LOWopenbb_platform/core/openbb_core/app/command_runner.py30CODE
LOW…latform/core/openbb_core/app/static/package_builder.py58CODE
LOW…latform/core/openbb_core/app/static/package_builder.py59CODE
LOW…latform/core/openbb_core/app/static/package_builder.py59CODE
LOW…latform/core/openbb_core/app/static/package_builder.py60CODE
LOWopenbb_platform/core/openbb_core/app/static/coverage.py11CODE
LOW…enbb_platform/core/openbb_core/app/static/container.py8CODE
LOWopenbb_platform/core/openbb_core/app/model/obbject.py24CODE
LOWopenbb_platform/core/openbb_core/app/model/obbject.py26CODE
LOWopenbb_platform/core/openbb_core/provider/__init__.py3CODE
LOWopenbb_platform/core/openbb_core/provider/__init__.py3CODE
LOWopenbb_platform/core/openbb_core/provider/__init__.py3CODE
LOWopenbb_platform/core/openbb_core/provider/__init__.py3CODE
LOWopenbb_platform/core/openbb_core/provider/__init__.py4CODE
LOWopenbb_platform/core/openbb_core/provider/__init__.py4CODE
LOW…core/openbb_core/provider/utils/update_country_data.py21CODE
LOW…bb_platform/core/openbb_core/provider/utils/helpers.py28CODE
LOW…ore/openbb_core/api/router/helpers/coverage_helpers.py11CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py27CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py29CODE
LOW…ct_extensions/charting/openbb_charting/core/backend.py8CODE
LOW…ct_extensions/charting/openbb_charting/core/backend.py10CODE
LOW…ct_extensions/charting/openbb_charting/core/backend.py12CODE
LOW…ensions/charting/openbb_charting/core/openbb_figure.py34CODE
LOW…t_extensions/charting/openbb_charting/core/to_chart.py6CODE
LOW…t_extensions/charting/openbb_charting/core/to_chart.py7CODE
LOW…t_extensions/charting/openbb_charting/core/to_chart.py8CODE
LOW…t_extensions/charting/openbb_charting/core/to_chart.py8CODE
LOW…/charting/openbb_charting/core/config/openbb_styles.py6CODE
LOW…/charting/openbb_charting/core/plotly_ta/ta_helpers.py6CODE
LOW…ns/charting/openbb_charting/core/plotly_ta/ta_class.py25CODE
LOW…nsions/charting/openbb_charting/core/plotly_ta/base.py14CODE
LOW…s/charting/openbb_charting/charts/relative_rotation.py10CODE
LOW…ions/charting/openbb_charting/charts/generic_charts.py19CODE
LOW…ions/charting/openbb_charting/charts/generic_charts.py21CODE
LOW…s/charting/openbb_charting/charts/price_performance.py6CODE
LOW…s/charting/openbb_charting/charts/price_performance.py7CODE
LOW…_extensions/charting/openbb_charting/charts/helpers.py9CODE
LOW…s/yfinance/openbb_yfinance/models/equity_historical.py20CODE
LOW…nbb_platform/providers/sec/tests/test_xbrl_taxonomy.py26CODE
LOW…atform/providers/sec/openbb_sec/utils/company_facts.py5CODE
LOW…iders/sec/openbb_sec/utils/statement_schema/_schema.py5CODE
LOW…viders/sec/openbb_sec/utils/statement_schema/_rules.py3CODE
LOW…viders/sec/openbb_sec/utils/statement_schema/_types.py3CODE
LOW…rs/sec/openbb_sec/utils/statement_schema/_detection.py5CODE
LOW…ders/sec/openbb_sec/utils/statement_schema/__init__.py3CODE
LOW…ders/sec/openbb_sec/utils/statement_schema/__init__.py4CODE
LOW…ders/sec/openbb_sec/utils/statement_schema/__init__.py4CODE
LOW…ders/sec/openbb_sec/utils/statement_schema/__init__.py4CODE
LOW…ders/sec/openbb_sec/utils/statement_schema/__init__.py4CODE
LOW…ders/sec/openbb_sec/utils/statement_schema/__init__.py4CODE
LOW…ders/sec/openbb_sec/utils/statement_schema/__init__.py4CODE
LOW…ders/sec/openbb_sec/utils/statement_schema/__init__.py4CODE
LOW…ders/sec/openbb_sec/utils/statement_schema/__init__.py4CODE
28 more matches not shown…
AI Structural Patterns46 hits · 45 pts
SeverityFileLineSnippetContext
LOWcli/openbb_cli/config/completer.py415CODE
LOWcli/openbb_cli/controllers/utils.py264CODE
LOW…penbb_core/provider/utils/options_chains_properties.py283CODE
LOW…penbb_core/provider/utils/options_chains_properties.py1408CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py177CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py275CODE
LOW…bbject_extensions/charting/openbb_charting/charting.py549CODE
LOW…ensions/charting/openbb_charting/core/openbb_figure.py163CODE
LOW…ensions/charting/openbb_charting/core/openbb_figure.py268CODE
LOW…ions/charting/openbb_charting/charts/generic_charts.py25CODE
LOW…ions/charting/openbb_charting/charts/generic_charts.py335CODE
LOW…rm/providers/yfinance/openbb_yfinance/utils/helpers.py480CODE
LOW…providers/yfinance/openbb_yfinance/models/cash_flow.py107CODE
LOW…iders/yfinance/openbb_yfinance/models/balance_sheet.py109CODE
LOW…rs/yfinance/openbb_yfinance/models/income_statement.py109CODE
LOW…/providers/finviz/openbb_finviz/models/price_target.py106CODE
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py191CODE
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py5137CODE
LOW…iders/sec/openbb_sec/utils/statement_schema/_schema.py225CODE
LOW…platform/providers/sec/openbb_sec/models/symbol_map.py55CODE
LOW…atform/providers/fred/openbb_fred/models/iorb_rates.py54CODE
LOW…tform/providers/fred/openbb_fred/models/sonia_rates.py73CODE
LOW…enbb_platform/providers/fred/openbb_fred/models/tmc.py74CODE
LOW…m/providers/fred/openbb_fred/models/fed_projections.py67CODE
LOW…oviders/fred/openbb_fred/models/balance_of_payments.py96CODE
LOW…tform/providers/fred/openbb_fred/models/tips_yields.py231CODE
LOW…tform/providers/fred/openbb_fred/models/dwpcr_rates.py81CODE
LOW…providers/fred/openbb_fred/models/economic_calendar.py168CODE
LOW…bb_platform/providers/fred/openbb_fred/models/ffrmc.py79CODE
LOW…bb_platform/providers/fred/openbb_fred/models/tbffr.py72CODE
LOW…roviders/fred/openbb_fred/models/ecb_interest_rates.py73CODE
LOW…platform/providers/finra/openbb_finra/utils/helpers.py109CODE
LOW…atform/providers/imf/openbb_imf/utils/table_builder.py84CODE
LOW…b_platform/providers/oecd/openbb_oecd/utils/helpers.py65CODE
LOW…ral_reserve/openbb_federal_reserve/utils/ny_fed_api.py81CODE
LOWopenbb_platform/providers/cboe/openbb_cboe/utils/vix.py329CODE
LOW…ntrinio/openbb_intrinio/models/financial_attributes.py71CODE
LOW…s/intrinio/openbb_intrinio/models/search_attributes.py66CODE
LOW…ders/intrinio/openbb_intrinio/models/options_chains.py321CODE
LOW…iders/intrinio/openbb_intrinio/models/equity_search.py83CODE
LOW…nbb_platform/providers/tmx/openbb_tmx/utils/helpers.py327CODE
LOW…m/providers/tmx/openbb_tmx/models/available_indices.py64CODE
LOW…tform/providers/tmx/openbb_tmx/models/index_sectors.py67CODE
LOW…/providers/tmx/openbb_tmx/models/index_constituents.py78CODE
LOW…rivatives/openbb_derivatives/options/options_router.py58CODE
LOW…nsions/technical/openbb_technical/relative_rotation.py142CODE
Verbosity Indicators17 hits · 28 pts
SeverityFileLineSnippetContext
LOWdesktop/src/routes/environments.tsx1555 // Step 1: Create environment with base packages only (no extensions)COMMENT
LOWdesktop/src/routes/environments.tsx1570 // Step 2: Install extensions if any were selectedCOMMENT
LOW…/openbb_cli/argparse_translator/argparse_translator.py129 # we need to check if the optional choices were set in other groupCOMMENT
LOW…_platform/core/tests/provider/abstract/test_fetcher.py8# Step 1: Create a dummy subclass of FetcherCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1430 # Step 1: Find first data row (row with actual numeric values)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py4302 # Step 1: Extract period headers from header rowsCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py4304 # Step 2: Parse each row semantically - first text is label, numbers are valuesCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1464 # Step 2: Analyze a data row to find the column structureCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1491 # Step 3: Build headers from header rows (rows before data_start_idx)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1565 # Step 4: Build output tableCOMMENT
LOW…ders/congress_gov/openbb_congress_gov/utils/helpers.py784 # Step 1: Amendment base detail for description (committee report check) and text URLCOMMENT
LOW…ders/congress_gov/openbb_congress_gov/utils/helpers.py788 # Step 2: Fetch the /text sub-resource.COMMENT
LOW…ders/congress_gov/openbb_congress_gov/utils/helpers.py799 # Step 3: Check if the amendment was printed in a committee report and fetch that textCOMMENT
LOW…ders/congress_gov/openbb_congress_gov/utils/helpers.py823 # Step 4: If no text versions found, fall back to the amended bill's text versions.COMMENT
LOWopenbb_platform/providers/imf/openbb_imf/imf_router.py1075 # Step 1: No country selected - return country choices filtered by indicatorCOMMENT
LOWopenbb_platform/providers/imf/openbb_imf/imf_router.py1082 # Step 2: Country selected, no frequency - return frequency choicesCOMMENT
LOWopenbb_platform/providers/imf/openbb_imf/imf_router.py1086 # Step 3: Frequency selected, no transform - return transform choicesCOMMENT
Structural Annotation Overuse16 hits · 25 pts
SeverityFileLineSnippetContext
LOWdesktop/src/routes/environments.tsx1555 // Step 1: Create environment with base packages only (no extensions)COMMENT
LOWdesktop/src/routes/environments.tsx1570 // Step 2: Install extensions if any were selectedCOMMENT
LOW…_platform/core/tests/provider/abstract/test_fetcher.py8# Step 1: Create a dummy subclass of FetcherCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1430 # Step 1: Find first data row (row with actual numeric values)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py4302 # Step 1: Extract period headers from header rowsCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py4304 # Step 2: Parse each row semantically - first text is label, numbers are valuesCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1464 # Step 2: Analyze a data row to find the column structureCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1491 # Step 3: Build headers from header rows (rows before data_start_idx)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py1565 # Step 4: Build output tableCOMMENT
LOW…ders/congress_gov/openbb_congress_gov/utils/helpers.py784 # Step 1: Amendment base detail for description (committee report check) and text URLCOMMENT
LOW…ders/congress_gov/openbb_congress_gov/utils/helpers.py788 # Step 2: Fetch the /text sub-resource.COMMENT
LOW…ders/congress_gov/openbb_congress_gov/utils/helpers.py799 # Step 3: Check if the amendment was printed in a committee report and fetch that textCOMMENT
LOW…ders/congress_gov/openbb_congress_gov/utils/helpers.py823 # Step 4: If no text versions found, fall back to the amended bill's text versions.COMMENT
LOWopenbb_platform/providers/imf/openbb_imf/imf_router.py1075 # Step 1: No country selected - return country choices filtered by indicatorCOMMENT
LOWopenbb_platform/providers/imf/openbb_imf/imf_router.py1082 # Step 2: Country selected, no frequency - return frequency choicesCOMMENT
LOWopenbb_platform/providers/imf/openbb_imf/imf_router.py1086 # Step 3: Frequency selected, no transform - return transform choicesCOMMENT
AI Slop Vocabulary12 hits · 24 pts
SeverityFileLineSnippetContext
MEDIUMdesktop/src-tauri/src/tauri_handlers/backends.rs1617 // In-memory file system for robust, path-agnostic mockingCOMMENT
LOW…nbb_platform/core/openbb_core/provider/registry_map.py174 # If standard uses inheritance we just use the first docstringCOMMENT
LOW…bb_platform/core/openbb_core/provider/utils/helpers.py152 # If a session is already provided, just return it.COMMENT
LOW…bb_platform/core/openbb_core/provider/utils/helpers.py232 # If a session is already provided, just return it.COMMENT
MEDIUM…oviders/finviz/openbb_finviz/utils/presets/canslim.ini4# This config add some extra filters to make the list more robustCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py935 # For colspan, just use first row's structureCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py3600 # skip using prefixes and just use the yearsCOMMENT
LOW…ec/openbb_sec/models/management_discussion_analysis.py1643 # Mixed-case "Item N." header — just add '#' prefix.COMMENT
MEDIUM…b_platform/providers/oecd/openbb_oecd/utils/helpers.py164 # TODO: More robust caching logicCOMMENT
MEDIUM…ers/test_benzinga_company_news_fetcher_urllib3_v2.yaml277 broader efforts by the U.S. to limit China’s access to cutting-edgeCODE
MEDIUM…ers/test_benzinga_company_news_fetcher_urllib3_v2.yaml445 stated, “Next year, the industry will utilize 2-nanometer process technology,CODE
MEDIUM…orm/extensions/mcp_server/openbb_mcp_server/app/app.py985 # Create MCP server with comprehensive configurationCOMMENT
Cross-Language Confusion4 hits · 22 pts
SeverityFileLineSnippetContext
HIGHcli/openbb_cli/controllers/script_parser.py450 # If the list is non null, then we want to convert this into a parsed string that isCOMMENT
HIGH…b_platform/core/tests/app/logs/test_logging_service.py169 'CMD: {"route": "mock_route", "input": {}, "error": null, 'CODE
HIGH…b_platform/core/tests/app/logs/test_logging_service.py170 + '"provider": "not_passed_to_kwargs", "custom_headers": null}',CODE
HIGH…form/providers/yfinance/tests/test_yfinance_helpers.py30 assert df.equals(MOCK_FUTURES_DATA)CODE
Modern Structural Boilerplate14 hits · 16 pts
SeverityFileLineSnippetContext
LOWcli/openbb_cli/models/settings.py198 def set_item(self, key: str, value: Any) -> None:CODE
LOWcli/openbb_cli/controllers/base_controller.py119 def update_completer(self, choices) -> None:CODE
LOWopenbb_platform/core/openbb_core/build.py9logger = logging.getLogger(__name__)CODE
LOW…ore/openbb_core/provider/utils/update_exchange_data.py26logger = logging.getLogger(__name__)CODE
LOW…ders/sec/openbb_sec/utils/statement_schema/__init__.py20__all__ = [CODE
LOW…nbb_platform/providers/bls/openbb_bls/utils/helpers.py398async def update_static_asset(category: str) -> None:CODE
LOW…atform/providers/econdb/openbb_econdb/utils/helpers.py620def update_json_files() -> None:CODE
LOW…atform/providers/econdb/openbb_econdb/utils/helpers.py625 def update_symbol_to_indicator() -> None:CODE
LOW…atform/providers/econdb/openbb_econdb/utils/helpers.py640 def update_multipliers() -> None:CODE
LOW…atform/providers/econdb/openbb_econdb/utils/helpers.py651 def update_scales() -> None:CODE
LOW…atform/providers/econdb/openbb_econdb/utils/helpers.py660 def update_units() -> None:CODE
LOW…atform/providers/econdb/openbb_econdb/utils/helpers.py669 def update_descriptions() -> None:CODE
LOW…atform/providers/econdb/openbb_econdb/utils/helpers.py683 def update_indicator_countries() -> None:CODE
LOW…orm/extensions/mcp_server/openbb_mcp_server/app/app.py140def _setup_file_system_prompt(mcp: FastMCP, settings: MCPSettings) -> None:CODE
Over-Commented Block9 hits · 8 pts
SeverityFileLineSnippetContext
LOWopenbb_platform/core/tests/app/static/test_filters.py81# - "mont" was correctly rejected: it satisfies neither Literal, so ExtraParamsCOMMENT
LOW…nviz/openbb_finviz/utils/presets/screener_template.ini1# Author of preset: OpenBBTerminal (https://github.com/OpenBB-finance/OpenBB)COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py2221 super_row = ["", super_text]COMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py5141# ABSOLUTE-POSITIONED LAYOUT REFLOWCOMMENT
LOW…atform/providers/sec/openbb_sec/utils/html2markdown.py6781 # These are common in SEC filings for subsection titlesCOMMENT
LOW…ec/openbb_sec/models/management_discussion_analysis.py401COMMENT
LOW…ec/openbb_sec/models/management_discussion_analysis.py1321COMMENT
LOW…ec/openbb_sec/models/management_discussion_analysis.py1341 _anchor_tag = f'id="{_stub_anchor_id}"'COMMENT
LOW.github/workflows/codeql.yml1# For most projects, this workflow file will not need changing; you simply needCOMMENT
Modern AI Meta-Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMopenbb_platform/core/openbb_core/app/command_runner.py344 # All kwargs to the function so dependency injection happensCOMMENT
MEDIUMopenbb_platform/core/openbb_core/app/command_runner.py473 # Remove the dependency injection objects embedded in the kwargsCOMMENT
Overly Generic Function Names4 hits · 6 pts
SeverityFileLineSnippetContext
LOWcli/tests/test_argparse_translator.py137 def test_function(test_arg: int):CODE
LOWcli/tests/test_argparse_translator.py150 def test_function(test_arg: int) -> int:CODE
LOWopenbb_platform/core/tests/provider/utils/test_lru.py190 def my_function():CODE
LOW…nsions/technical/openbb_technical/relative_rotation.py208def process_data(CODE
Docstring Block Structure1 hit · 5 pts
SeverityFileLineSnippetContext
HIGH…ions/mcp_server/openbb_mcp_server/models/mcp_config.py235 Validate an MCP configuration dictionary. Args: config_dict: The configuration dictionary to validate STRING
Slop Phrases1 hit · 2 pts
SeverityFileLineSnippetContext
LOWopenbb_platform/core/openbb_core/app/command_runner.py343 # If **kwargs is in the function signature, we need to make sure to passCOMMENT