Open-source telemetry dashboard. Supports UART, BLE, MQTT, Modbus, CAN Bus and more.
This report summarizes scanner evidence for Serial-Studio/Serial-Studio, a C project with 7,231 GitHub stars. SynthScan examined 1,274,954 lines of code across 4272 source files, recording 5762 pattern matches distributed across 24 syntactic categories. The legacy adjusted pattern signal is 8.3 (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? 3413 finding(s).
Are imports declared and package/API names verified? 232 finding(s).
Are wrappers, guards, and repeated structures necessary? 3640 finding(s).
Which changes need focused human review? 5762 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 5762 distinct pattern matches across 24 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 |
|---|---|---|---|---|
| MEDIUM | REUSE.toml | 6 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | REUSE.toml | 9 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | REUSE.toml | 37 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | REUSE.toml | 40 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | REUSE.toml | 76 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | REUSE.toml | 79 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | REUSE.toml | 86 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | REUSE.toml | 89 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | REUSE.toml | 116 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | REUSE.toml | 119 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | REUSE.toml | 150 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM | REUSE.toml | 154 | # ------------------------------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 239 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 249 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 251 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 347 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 349 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 359 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 363 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 365 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 453 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 455 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 461 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 467 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 469 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 496 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 498 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 504 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 509 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 511 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 531 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 540 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | CMakeLists.txt | 542 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 23 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 25 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 36 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 49 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 51 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 77 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 105 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 107 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 130 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 142 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 144 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 177 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 220 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 222 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 276 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 383 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 402 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 404 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 425 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 485 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | CMakeLists.txt | 562 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | core/CMakeLists.txt | 21 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | core/CMakeLists.txt | 23 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | core/CMakeLists.txt | 46 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | core/CMakeLists.txt | 61 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | core/CMakeLists.txt | 63 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | core/CMakeLists.txt | 89 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| 1515 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | CMakeLists.txt | 1 | # | COMMENT |
| LOW | CMakeLists.txt | 21 | cmake_minimum_required(VERSION 3.20) | COMMENT |
| LOW | CMakeLists.txt | 41 | COMMENT | |
| LOW | CMakeLists.txt | 61 | # ENABLE_PGO=OFF (default) - Profile-Guided Optimization | COMMENT |
| LOW | CMakeLists.txt | 101 | else() | COMMENT |
| LOW | CMakeLists.txt | 141 | COMMENT | |
| LOW | CMakeLists.txt | 161 | # - License: Commercial license file | COMMENT |
| LOW | CMakeLists.txt | 221 | # Expose project metadata to source code | COMMENT |
| LOW | CMakeLists.txt | 241 | add_definitions(-DPROJECT_VENDOR="${PROJECT_VENDOR}") | COMMENT |
| LOW | CMakeLists.txt | 261 | # - Adds BUILD_COMMERCIAL preprocessor definition to enable Pro features | COMMENT |
| LOW | CMakeLists.txt | 341 | add_compile_definitions(COMMERCIAL_BUILD_SALT=${COMMERCIAL_BUILD_SALT}ULL) | COMMENT |
| LOW | CMakeLists.txt | 361 | message(STATUS "CMAKE_SYSTEM_PROCESSOR: ${CMAKE_SYSTEM_PROCESSOR}") | COMMENT |
| LOW | CMakeLists.txt | 401 | COMMENT | |
| LOW | CMakeLists.txt | 461 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| LOW | CMakeLists.txt | 501 | # per-target serial_studio_harden() deltas. Signing.cmake defines serial_studio_sign(). Both are | COMMENT |
| LOW | CMakeLists.txt | 521 | # - ZLIB: Compression library (FetchContent or system) | COMMENT |
| LOW | CMakeLists.txt | 541 | # Build configuration summary | COMMENT |
| LOW | core/CMakeLists.txt | 1 | # | COMMENT |
| LOW | core/CMakeLists.txt | 21 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| LOW | core/CMakeLists.txt | 41 | # | COMMENT |
| LOW | core/CMakeLists.txt | 61 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| LOW | core/Ui/CMakeLists.txt | 1 | # | COMMENT |
| LOW | core/Ui/CMakeLists.txt | 21 | #--------------------------------------------------------------------------------------------------- | COMMENT |
| LOW | core/Ui/Misc/BackupManager.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/ExtensionManager.h | 21 | COMMENT | |
| LOW | core/Ui/Misc/ConnectionDiagnostics.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/ThemeManager.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/Utilities.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/Utilities.cpp | 41 | #include <QSvgRenderer> | COMMENT |
| LOW | core/Ui/Misc/ConnectionDiagnostics.h | 21 | COMMENT | |
| LOW | core/Ui/Misc/Examples.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/ExtensionManager.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/ExtensionManager.cpp | 41 | #include "API/Server.h" | COMMENT |
| LOW | core/Ui/Misc/ProblemCenter.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/HelpCenter.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/IconEngine.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/Problems/ProjectCheckers.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/Problems/LinkCheckers.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/Problems/ScriptCheckers.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/Extensions/ExtensionInstaller.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/Extensions/ExtensionInstaller.h | 21 | COMMENT | |
| LOW | core/Ui/Misc/Diagnostics/SerialChecks.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/Diagnostics/DeviceAccess.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/Diagnostics/AudioChecks.cpp | 21 | COMMENT | |
| LOW | core/Ui/Misc/Diagnostics/BluetoothChecks.cpp | 21 | COMMENT | |
| LOW | core/Ui/UI/Dashboard.h | 21 | COMMENT | |
| LOW | core/Ui/UI/Dashboard.h | 41 | #include "DataModel/IReplayPlotSink.h" | COMMENT |
| LOW | core/Ui/UI/DashboardWidget.cpp | 21 | COMMENT | |
| LOW | core/Ui/UI/WindowManager.h | 21 | COMMENT | |
| LOW | core/Ui/UI/WidgetExtensions.h | 21 | COMMENT | |
| LOW | core/Ui/UI/WidgetExtensions.cpp | 21 | COMMENT | |
| LOW | core/Ui/UI/AlarmMonitor.cpp | 21 | COMMENT | |
| LOW | core/Ui/UI/Taskbar.cpp | 21 | COMMENT | |
| LOW | core/Ui/UI/WindowManager.cpp | 21 | */ | COMMENT |
| LOW | core/Ui/UI/Dashboard.cpp | 21 | COMMENT | |
| LOW | core/Ui/UI/Taskbar.h | 21 | COMMENT | |
| LOW | core/Ui/UI/WindowManager/WindowLayoutStore.cpp | 21 | COMMENT | |
| LOW | core/Ui/UI/Alarms/AlarmAnnunciator.h | 21 | COMMENT | |
| LOW | core/Ui/UI/Alarms/SoundTheme.cpp | 21 | COMMENT | |
| LOW | core/Ui/UI/Alarms/AlarmAnnunciator.cpp | 21 | COMMENT | |
| 1498 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | app/rcc/ai/build_search_index.py | 188 | def strip_license_boilerplate(text: str) -> str: | CODE |
| LOW | app/rcc/ai/build_search_index.py | 242 | def harvest_templates_manifest(): | CODE |
| LOW⚡ | app/translations/translate_welcome_messages.py | 80 | def translate_welcome_message(source_text, target_language, context, lang_code): | CODE |
| LOW⚡ | app/translations/translate_welcome_messages.py | 160 | def translate_welcome_files_in_subdir(subdir, languages): | CODE |
| LOW | app/translations/llm_translate.py | 822 | def harvest_translation_memory(ts_root) -> list[tuple[str, str]]: | CODE |
| LOW | app/translations/llm_translate.py | 1048 | def _call_provider_with_retry( | CODE |
| LOW | app/translations/llm_translate.py | 1139 | def parse_numbered_translations( | CODE |
| LOW | app/translations/llm_translate.py | 1522 | def apply_capitalization_pattern( | CODE |
| LOW | app/translations/llm_translate.py | 1622 | def verify_capitalization_batch(entries, lang_code): | CODE |
| LOW | app/translations/llm_translate.py | 1782 | def reuse_existing_translations(root, lang_code: str, log_fn=print) -> int: | CODE |
| LOW | app/translations/llm_translate.py | 1848 | def reuse_translations_ts_file(filename) -> int: | CODE |
| LOW | app/translations/llm_translate.py | 2196 | def verify_capitalization_ts_file(filename): | CODE |
| LOW | tests/conftest.py | 147 | def pytest_collection_modifyitems(config, items): | CODE |
| LOW⚡ | tests/unit/test_updates_manifest.py | 63 | def test_manifest_has_exactly_the_expected_keys(updates): | CODE |
| LOW⚡ | tests/unit/test_updates_manifest.py | 67 | def test_every_entry_has_the_required_fields(updates): | CODE |
| LOW⚡ | tests/unit/test_updates_manifest.py | 73 | def test_all_entries_advertise_the_same_version(updates): | CODE |
| LOW⚡ | tests/unit/test_updates_manifest.py | 79 | def test_download_urls_match_package_type_and_arch(updates): | CODE |
| LOW⚡ | tests/unit/test_updates_manifest.py | 88 | def test_open_url_keys_have_no_direct_download(updates): | CODE |
| LOW⚡ | tests/unit/test_updates_manifest.py | 94 | def test_direct_download_keys_do_not_shadow_with_open_url(updates): | CODE |
| LOW⚡ | tests/unit/test_updates_manifest.py | 101 | def test_changelog_present_everywhere(updates): | CODE |
| LOW | tests/unit/test_alarm_sounds.py | 102 | def test_alarm_fundamental_in_iec_range(name): | CODE |
| LOW | tests/unit/test_alarm_sounds.py | 108 | def test_event_sounds_are_single_gestures(name): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 74 | def test_every_fixture_line_is_json(name): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 144 | def test_fixture_round_trips_through_the_client(name): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 160 | def test_layout_hash_is_reproducible(name): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 170 | def test_layout_hash_detects_reordering(): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 180 | def test_snapshot_encodes_strings_and_non_finite_out_of_band(): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 224 | def test_epoch_mismatch_drops_the_snapshot_and_requests_structure(): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 281 | def test_unknown_fields_kinds_and_push_keys_are_tolerated(): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 298 | def test_a_push_without_the_mirror_key_decodes_to_nothing(): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 306 | def test_heartbeat_decodes_and_separates_stale_from_idle(): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 320 | def test_chunked_structure_reassembles_regardless_of_arrival_order(): | CODE |
| LOW⚡ | tests/unit/test_mirror_protocol.py | 375 | def test_rate_bounds_and_watchdog_match_the_contract(): | CODE |
| LOW | tests/unit/test_mirror_protocol.py | 87 | def test_structure_order_matches_the_source_project(name): | CODE |
| LOW | tests/unit/test_mirror_protocol.py | 123 | def test_snapshot_value_count_matches_the_dataset_list(name): | CODE |
| LOW | tests/unit/test_mirror_protocol.py | 204 | def test_precision_parameter_shrinks_the_wire_without_changing_shape(): | CODE |
| LOW | tests/unit/test_mirror_protocol.py | 240 | def test_length_mismatch_is_handled_like_an_epoch_mismatch(): | CODE |
| LOW | tests/unit/test_mirror_protocol.py | 252 | def test_layout_hash_mismatch_refuses_the_structure(): | CODE |
| LOW | tests/unit/test_mirror_protocol.py | 263 | def test_version_mismatch_is_reported_not_half_decoded(): | CODE |
| LOW | tests/unit/test_mirror_protocol.py | 342 | def test_chunking_round_trips_a_structure_byte_for_byte(): | CODE |
| LOW | tests/unit/test_mirror_protocol.py | 387 | def test_timestamps_are_relative_and_monotonic_per_source(): | CODE |
| LOW | tests/security/test_access_control.py | 143 | def test_command_authorization(tester): | CODE |
| LOW | tests/security/test_access_control.py | 227 | def test_project_manipulation(tester): | CODE |
| LOW⚡ | tests/security/test_access_control.py | 284 | def test_information_disclosure(tester): | CODE |
| LOW | tests/security/test_http_on_api_socket.py | 65 | def test_http_request_closes_the_connection(api_server_required, request_bytes): | CODE |
| LOW | tests/security/test_http_on_api_socket.py | 79 | def test_http_body_command_never_runs(api_server_required, security_client): | CODE |
| LOW | tests/security/test_http_on_api_socket.py | 98 | def test_api_survives_http_probes(api_server_required, check_server_alive): | CODE |
| LOW | tests/security/test_http_on_api_socket.py | 112 | def test_raw_forwarding_waits_for_one_json_message(api_server_required): | CODE |
| LOW | tests/security/test_http_on_api_socket.py | 127 | def test_normal_clients_are_unaffected(api_server_required): | CODE |
| LOW | tests/security/conftest.py | 238 | def pytest_collection_modifyitems(config, items): | CODE |
| LOW | tests/security/test_remote_dispatch_gate.py | 31 | def test_direct_call_is_refused(api_client, command): | CODE |
| LOW | tests/security/test_remote_dispatch_gate.py | 38 | def test_batch_cannot_smuggle_system_exec(api_client): | CODE |
| LOW | tests/security/test_remote_dispatch_gate.py | 52 | def test_project_batch_ops_are_gated(api_client): | CODE |
| LOW | tests/security/test_remote_dispatch_gate.py | 65 | def test_assistant_bulk_apply_is_gated(api_client): | CODE |
| LOW | tests/security/test_remote_dispatch_gate.py | 85 | def test_script_install_passes_once_consented(api_client): | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 305 | def test_prototype_pollution_via_command(self, security_client, payload): | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 326 | def test_prototype_pollution_in_raw_json(self, check_server_alive): | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 478 | def test_null_byte_in_frame_delimiters(self, security_client, check_server_alive): | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 871 | def test_rapid_checksum_algorithm_switching( | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 1216 | def test_integer_truncation_in_time_range( | CODE |
| 1456 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | app/translations/translation_manager.py | 56 | except OSError: | CODE |
| HIGH | app/translations/llm_translate.py | 1004 | except ImportError: | CODE |
| HIGH | app/translations/llm_translate.py | 1022 | except ImportError: | CODE |
| HIGH | app/translations/llm_translate.py | 1092 | except Exception: | CODE |
| HIGH | tests/conftest.py | 58 | except Exception: | CODE |
| HIGH | tests/conftest.py | 110 | except APIError: | CODE |
| HIGH | tests/security/test_access_control.py | 139 | except Exception as e: | CODE |
| HIGH | tests/security/test_access_control.py | 165 | except APIError as e: | CODE |
| HIGH | tests/security/test_access_control.py | 252 | except APIError as e: | CODE |
| HIGH | tests/security/test_http_on_api_socket.py | 135 | except APIError: | CODE |
| HIGH | tests/security/conftest.py | 116 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 213 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 244 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 263 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 314 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 323 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 488 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 497 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 545 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 574 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 627 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 845 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 913 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1206 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1254 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1338 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1373 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1616 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 2199 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 88 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 401 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 458 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 758 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 780 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 894 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 972 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1014 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1049 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1270 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1563 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1848 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1871 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1893 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1929 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1949 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 542 | except (json.JSONDecodeError, UnicodeDecodeError): | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1240 | except Exception: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1331 | except socket.timeout: | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 1367 | except socket.timeout: | CODE |
| HIGH | tests/security/test_api_security.py | 114 | except (socket.timeout, ConnectionError, MemoryError): | CODE |
| HIGH | tests/security/test_api_security.py | 259 | except Exception: | CODE |
| HIGH | tests/security/test_api_security.py | 603 | except Exception: | CODE |
| HIGH | tests/security/test_api_security.py | 144 | except (socket.timeout, ConnectionError): | CODE |
| HIGH | tests/security/test_api_security.py | 569 | except: | CODE |
| HIGH | tests/security/test_api_security.py | 538 | except: | CODE |
| HIGH | tests/security/test_resource_exhaustion.py | 65 | except: | CODE |
| HIGH | tests/security/test_resource_exhaustion.py | 133 | except: | CODE |
| HIGH | tests/security/test_resource_exhaustion.py | 174 | except: | CODE |
| HIGH | tests/security/test_resource_exhaustion.py | 285 | except: | CODE |
| HIGH | tests/security/test_resource_exhaustion.py | 352 | except: | CODE |
| 189 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/security/test_unknown_input_hardening.py | 150 | "function parse(f){var a=[];while(true)a.push(new Array(1e6));" | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 2064 | b'{"type":"batch","id":"x","commands":[null,null]}\n', | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 2072 | b'{"type":"batch","id":"x","commands":[{"command":"api.getCommands"},42,"str",null,true]}\n', | CODE |
| HIGH | tests/security/test_unknown_input_hardening.py | 2120 | b'{"type":null,"id":"x","command":"api.getCommands"}\n', | CODE |
| HIGH | tests/security/test_protocol_fuzzing.py | 97 | b'{"type":"command","id":null,"command":"test"}\n', | CODE |
| HIGH | tests/integration/test_session_regression.py | 74 | " if (parseInt(frame) % 30 === 0) return null;" | CODE |
| HIGH⚡ | tests/integration/test_dataset_transforms.py | 265 | "var ema = null;\n" | CODE |
| HIGH⚡ | tests/integration/test_dataset_transforms.py | 267 | " ema = (ema === null) ? v : alpha * v + (1 - alpha) * ema;\n" | CODE |
| HIGH | tests/integration/test_session_export.py | 321 | # non-null) instead of QString(). | COMMENT |
| HIGH | tests/integration/test_image_view.py | 686 | # Payload is not a valid image — QImage::fromData will return null, | COMMENT |
| HIGH | tests/integration/test_image_view.py | 672 | (it is passed to QImage::fromData which returns null) without crashing.""" | STRING |
| HIGH | tests/integration/test_device_write.py | 195 | " if (typeof r !== 'object' || r === null) throw 'deviceWrite must return an object';\n" | CODE |
| HIGH | tests/integration/test_device_write.py | 426 | " if (info && typeof info.timestampMs === 'number') {\n" | CODE |
| HIGH | tests/integration/test_frame_parsing.py | 429 | values.push(data.groups[i].datasets[j].value); | CODE |
| HIGH | tests/integration/test_frame_parsing.py | 894 | values.push(data.groups[i].datasets[j].value); | CODE |
| HIGH | tests/integration/test_frame_parsing.py | 969 | values.push(data.groups[i].datasets[j].value); | CODE |
| HIGH | tests/integration/test_frame_parsing.py | 1048 | values.push(data.groups[i].datasets[j].value); | CODE |
| HIGH | tests/integration/test_frame_parsing.py | 1141 | values.push(data.groups[i].datasets[j].value); | CODE |
| HIGH⚡ | tests/integration/test_table_handles.py | 90 | var H = null; | CODE |
| HIGH⚡ | tests/integration/test_table_handles.py | 92 | if (H === null) H = tableHandleMany("DAQ", ["ch1","ch2","ch3","ch4"]); | CODE |
| HIGH⚡ | tests/utils/data_generator.py | 478 | '{"null": null}{"extra":"object"}', | STRING |
| HIGH⚡ | tests/utils/data_generator.py | 487 | '{"undefined": undefined}', | STRING |
| HIGH | tests/scripts/conftest.py | 100 | if (gen !== GEN || idx >= ORDER.length) return -1; | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 113 | if (def !== undefined) write(rec, def); | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 115 | ORDER.push(k); | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 120 | return rec ? read(rec) : undefined; | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 123 | if (v === undefined || v === null) return; | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 123 | if (v === undefined || v === null) return; | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 125 | if (rec && rec.computed) write(rec, v); | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 133 | for (var i = 0; i < regs.length; i++) out.push(tableHandle(t, regs[i])); | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 141 | if (v === undefined || v === null) return; | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 141 | if (v === undefined || v === null) return; | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 153 | if (!(uid in DS_RAW)) { DS_RAW[uid] = undefined; DS_FINAL[uid] = undefined; } | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 159 | if (typeof sel === "number") return (sel in DS_RAW) ? sel : undefined; | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 160 | if (typeof sel === "string") return ALIAS.hasOwnProperty(sel) ? ALIAS[sel] : undefined; | CODE |
| HIGH⚡ | tests/scripts/conftest.py | 161 | return undefined; | CODE |
| HIGH | tests/scripts/test_cpp_regressions.py | 295 | """The taskbar arrives through a qobject_cast that can yield null, so every reset of | STRING |
| HIGH | tests/scripts/test_table_handles.py | 188 | a.push(tableGet('A', CH[i])); | CODE |
| HIGH | tests/scripts/test_table_handles.py | 189 | b.push(tableGet('B', CH[i])); | CODE |
| HIGH⚡ | tests/scripts/test_dataset_alias.py | 65 | __defineDataset(128, null); | CODE |
| HIGH⚡ | tests/scripts/test_dataset_alias.py | 80 | __defineDataset(128, null); | CODE |
| HIGH⚡ | tests/scripts/test_dataset_alias.py | 100 | console.log(JSON.stringify({ missing: (v === undefined) })); | CODE |
| HIGH⚡ | tests/scripts/test_dataset_alias.py | 108 | console.log(JSON.stringify({ missing: (v === undefined) })); | CODE |
| HIGH | scripts/generate-sdk.py | 135 | lines.append(" bytes.push(parseInt(hex.substr(i, 2), 16));") | CODE |
| HIGH | scripts/generate-sdk.py | 141 | lines.append(" out.push(s.charCodeAt(j) & 0xff);") | CODE |
| HIGH | scripts/generate-property-registry.py | 532 | " if (kDatasetProperties[i].hasFormRow && kDatasetProperties[i].formId == formId)\n" | CODE |
| HIGH | scripts/generate-property-registry.py | 1270 | return f"value.toString(){suffix}" | CODE |
| HIGH | scripts/code-verify.py | 2798 | `for (int i = 0; i < kMaxIterations && cond; ++i)` so the bound is | CODE |
| HIGH | scripts/code_verify_rules.py | 2776 | # `start < line.length()`. The bare-identifier form covers member fields | COMMENT |
| HIGH | scripts/code_verify_rules.py | 1560 | "prefer `for (int i = 0; i < kMax && cond; ++i)` " | CODE |
| HIGH | lib/mbedtls/framework/scripts/generate_bignum_tests.py | 107 | return "0 (null)" | CODE |
| HIGH | lib/mbedtls/framework/scripts/generate_bignum_tests.py | 109 | return "negative 0 (null)" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | app/rcc/ai/build_search_index.py | 278 | except Exception: | CODE |
| LOW⚡ | app/translations/translate_welcome_messages.py | 207 | except Exception as e: | CODE |
| MEDIUM | app/translations/translate_welcome_messages.py | 238 | print(f"Error: unknown language code '{args.lang}'. Available: {available}") | CODE |
| MEDIUM | app/translations/translation_manager.py | 229 | print(f"Error: {ts_dir} directory does not exist.") | CODE |
| LOW | app/translations/llm_translate.py | 1068 | except Exception as exc: | CODE |
| LOW | app/translations/llm_translate.py | 1092 | except Exception: | CODE |
| LOW | app/translations/llm_translate.py | 2069 | except Exception as e: | CODE |
| LOW | app/translations/llm_translate.py | 2905 | except Exception as e: | CODE |
| LOW | app/translations/llm_translate.py | 2922 | except Exception as e: | CODE |
| LOW | tests/conftest.py | 58 | except Exception: | CODE |
| LOW | tests/conftest.py | 102 | except Exception: | CODE |
| MEDIUM | tests/conftest.py | 99 | def best_effort(func, *args, **kwargs): | CODE |
| LOW | tests/security/test_access_control.py | 100 | except Exception as e: | CODE |
| LOW | tests/security/test_access_control.py | 139 | except Exception as e: | CODE |
| LOW | tests/security/test_access_control.py | 223 | except Exception as e: | CODE |
| LOW | tests/security/test_access_control.py | 256 | except Exception as e: | CODE |
| LOW⚡ | tests/security/test_access_control.py | 280 | except Exception as e: | CODE |
| LOW | tests/security/test_access_control.py | 314 | except Exception as e: | CODE |
| LOW | tests/security/test_access_control.py | 341 | except Exception as e: | CODE |
| LOW | tests/security/conftest.py | 116 | except Exception: | CODE |
| MEDIUM | tests/security/test_unknown_input_hardening.py | 951 | def reconfigure_rapidly(thread_id): | CODE |
| MEDIUM | tests/security/test_unknown_input_hardening.py | 994 | def send_data(): | CODE |
| MEDIUM | tests/security/test_unknown_input_hardening.py | 1017 | def reload_project(): | CODE |
| MEDIUM | tests/security/test_unknown_input_hardening.py | 1832 | def config_changer(): | CODE |
| MEDIUM | tests/security/test_unknown_input_hardening.py | 1851 | def data_sender(): | CODE |
| MEDIUM | tests/security/test_unknown_input_hardening.py | 1874 | def status_querier(): | CODE |
| MEDIUM | tests/security/test_unknown_input_hardening.py | 1896 | def project_loader(): | CODE |
| MEDIUM | tests/security/test_unknown_input_hardening.py | 1932 | def export_toggler(): | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 263 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 314 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 323 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 488 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 497 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 627 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 1200 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 1206 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 1240 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 1248 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 1254 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 1270 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 1373 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 1563 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 1616 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 2190 | except Exception: | CODE |
| LOW⚡ | tests/security/test_unknown_input_hardening.py | 2199 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 82 | except Exception as e: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 88 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 213 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 244 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 401 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 458 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 545 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 574 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 753 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 758 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 775 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 780 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 845 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 894 | except Exception: | CODE |
| LOW | tests/security/test_unknown_input_hardening.py | 913 | except Exception: | CODE |
| 194 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | app/translations/translation_manager.py | 155 | CODE | |
| LOW | app/translations/llm_translate.py | 1048 | CODE | |
| LOW | app/translations/llm_translate.py | 1475 | CODE | |
| LOW | app/translations/llm_translate.py | 1740 | CODE | |
| LOW | app/translations/llm_translate.py | 2147 | CODE | |
| LOW | app/translations/llm_translate.py | 2196 | CODE | |
| LOW | app/translations/llm_translate.py | 2722 | CODE | |
| LOW | tests/security/test_access_control.py | 51 | CODE | |
| LOW | tests/security/test_access_control.py | 227 | CODE | |
| LOW | tests/security/test_access_control.py | 284 | CODE | |
| LOW | tests/security/test_unknown_input_hardening.py | 61 | CODE | |
| LOW | tests/security/test_unknown_input_hardening.py | 1293 | CODE | |
| LOW | tests/security/test_unknown_input_hardening.py | 1343 | CODE | |
| LOW | tests/security/test_api_security.py | 269 | CODE | |
| LOW | tests/security/test_api_security.py | 495 | CODE | |
| LOW | tests/security/test_resource_exhaustion.py | 155 | CODE | |
| LOW | tests/security/test_resource_exhaustion.py | 453 | CODE | |
| LOW | tests/security/test_resource_exhaustion.py | 531 | CODE | |
| LOW | tests/security/test_resource_exhaustion.py | 166 | CODE | |
| LOW | tests/security/test_protocol_fuzzing.py | 42 | CODE | |
| LOW | tests/security/test_protocol_fuzzing.py | 83 | CODE | |
| LOW | tests/security/test_api_input_hardening.py | 78 | CODE | |
| LOW | tests/security/test_api_input_hardening.py | 178 | CODE | |
| LOW | tests/security/test_api_input_hardening.py | 318 | CODE | |
| LOW | tests/security/test_api_input_hardening.py | 424 | CODE | |
| LOW | tests/security/test_api_input_hardening.py | 535 | CODE | |
| LOW | tests/security/test_api_input_hardening.py | 594 | CODE | |
| LOW | tests/security/test_write_backlog.py | 43 | CODE | |
| LOW | tests/security/test_write_backlog.py | 86 | CODE | |
| LOW | tests/security/security_probe_suite.py | 41 | CODE | |
| LOW | tests/security/security_probe_suite.py | 172 | CODE | |
| LOW | tests/security/security_probe_suite.py | 333 | CODE | |
| LOW | tests/security/security_probe_suite.py | 181 | CODE | |
| LOW | tests/security/test_robustness_techniques.py | 58 | CODE | |
| LOW | tests/security/test_robustness_techniques.py | 67 | CODE | |
| LOW | tests/integration/test_session_verification.py | 95 | CODE | |
| LOW | tests/integration/conftest.py | 74 | CODE | |
| LOW | tests/integration/conftest.py | 90 | CODE | |
| LOW | tests/integration/test_modbus_groups.py | 227 | CODE | |
| LOW | tests/integration/test_session_regression.py | 95 | CODE | |
| LOW | tests/integration/test_connection_verdicts.py | 91 | CODE | |
| LOW | tests/integration/test_api_surfaces.py | 120 | CODE | |
| LOW | tests/integration/test_driver_api_comprehensive.py | 24 | CODE | |
| LOW | tests/integration/test_driver_api_comprehensive.py | 278 | CODE | |
| LOW | tests/integration/test_driver_api_comprehensive.py | 368 | CODE | |
| LOW | tests/integration/test_driver_api_comprehensive.py | 599 | CODE | |
| LOW | tests/integration/test_project_undo.py | 79 | CODE | |
| LOW | tests/integration/test_pro_content_gate.py | 206 | CODE | |
| LOW | tests/utils/device_simulator.py | 95 | CODE | |
| LOW | tests/utils/device_simulator.py | 152 | CODE | |
| LOW | tests/utils/device_simulator.py | 184 | CODE | |
| LOW | tests/utils/device_simulator.py | 156 | CODE | |
| LOW | tests/utils/mirror_client.py | 183 | CODE | |
| LOW | tests/utils/data_generator.py | 89 | CODE | |
| LOW | tests/utils/data_generator.py | 255 | CODE | |
| LOW | tests/manual/api_enrichment_check.py | 32 | CODE | |
| LOW | tests/benchmarks/big_db_test/big_db_test.py | 257 | CODE | |
| LOW | .claude/hooks/claim-check.py | 149 | CODE | |
| LOW | .claude/hooks/canary-check.py | 138 | CODE | |
| LOW | examples/IEC 104 Example/iec104_server.py | 420 | CODE | |
| 110 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | app/rcc/ai/build_search_index.py | 24 | CODE | |
| LOW | tests/unit/test_mirror_protocol.py | 19 | CODE | |
| LOW | tests/security/conftest.py | 18 | CODE | |
| LOW | tests/security/test_unknown_input_hardening.py | 40 | CODE | |
| LOW | tests/security/test_unknown_input_hardening.py | 45 | CODE | |
| LOW | tests/security/test_unknown_input_hardening.py | 46 | CODE | |
| LOW | tests/security/test_resource_exhaustion.py | 28 | CODE | |
| LOW | tests/security/test_protocol_fuzzing.py | 22 | CODE | |
| LOW | tests/security/test_protocol_fuzzing.py | 25 | CODE | |
| LOW | tests/security/test_protocol_fuzzing.py | 25 | CODE | |
| LOW | tests/security/security_probe_suite.py | 24 | CODE | |
| LOW | tests/security/test_robustness_techniques.py | 28 | CODE | |
| LOW | tests/security/test_robustness_techniques.py | 30 | CODE | |
| LOW | tests/integration/test_licensing_tiers.py | 17 | CODE | |
| LOW | tests/integration/test_licensing_tiers.py | 18 | CODE | |
| LOW | tests/integration/test_licensing.py | 20 | CODE | |
| LOW | tests/integration/test_data_tables.py | 12 | CODE | |
| LOW | tests/integration/test_data_tables.py | 14 | CODE | |
| LOW | tests/integration/test_script_api_call.py | 19 | CODE | |
| LOW | tests/integration/test_source_configure.py | 25 | CODE | |
| LOW | tests/integration/conftest.py | 224 | CODE | |
| LOW | tests/integration/test_csv_parsing_verified.py | 13 | CODE | |
| LOW | tests/integration/test_csv_parsing_verified.py | 16 | CODE | |
| LOW | tests/integration/test_output_state_feedback.py | 22 | CODE | |
| LOW | tests/integration/test_painter_widget.py | 16 | CODE | |
| LOW | tests/integration/test_app_state.py | 21 | CODE | |
| LOW | tests/integration/test_csv_export.py | 11 | CODE | |
| LOW | tests/integration/test_csv_export.py | 16 | CODE | |
| LOW | tests/integration/test_batch_api.py | 14 | CODE | |
| LOW | tests/integration/test_fuzzy.py | 13 | CODE | |
| LOW | tests/integration/test_image_view.py | 29 | CODE | |
| LOW | tests/integration/test_image_view.py | 29 | CODE | |
| LOW | tests/integration/test_device_write.py | 30 | CODE | |
| LOW | tests/integration/test_output_widgets.py | 22 | CODE | |
| LOW | tests/integration/test_project_configuration.py | 10 | CODE | |
| LOW | tests/integration/test_multi_source.py | 16 | CODE | |
| LOW | tests/integration/test_mcp.py | 18 | CODE | |
| LOW | tests/integration/test_remote_mirror.py | 35 | CODE | |
| LOW | tests/integration/test_remote_mirror.py | 51 | CODE | |
| LOW | tests/integration/test_remote_mirror.py | 51 | CODE | |
| LOW | tests/utils/validators.py | 13 | CODE | |
| LOW | tests/utils/validators.py | 14 | CODE | |
| LOW | tests/utils/__init__.py | 10 | CODE | |
| LOW | tests/utils/__init__.py | 10 | CODE | |
| LOW | tests/utils/__init__.py | 11 | CODE | |
| LOW | tests/utils/__init__.py | 12 | CODE | |
| LOW | tests/utils/__init__.py | 12 | CODE | |
| LOW | tests/utils/__init__.py | 13 | CODE | |
| LOW | tests/utils/__init__.py | 13 | CODE | |
| LOW | tests/utils/__init__.py | 14 | CODE | |
| LOW | tests/utils/__init__.py | 15 | CODE | |
| LOW | tests/utils/__init__.py | 15 | CODE | |
| LOW | tests/utils/__init__.py | 15 | CODE | |
| LOW | tests/utils/__init__.py | 16 | CODE | |
| LOW | tests/utils/__init__.py | 16 | CODE | |
| LOW | tests/utils/__init__.py | 16 | CODE | |
| LOW | tests/utils/__init__.py | 16 | CODE | |
| LOW | tests/utils/http_ws_server.py | 23 | CODE | |
| LOW | tests/utils/mirror_client.py | 22 | CODE | |
| LOW | tests/utils/virtual_serial.py | 12 | CODE | |
| 86 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/integration/test_frame_parsing.py | 117 | # Step 1: Set delimiters and checksum | COMMENT |
| LOW⚡ | tests/integration/test_frame_parsing.py | 126 | # Step 2: Set frame detection mode | COMMENT |
| LOW⚡ | tests/integration/test_frame_parsing.py | 213 | # Step 1: Set delimiters and checksum | COMMENT |
| LOW⚡ | tests/integration/test_frame_parsing.py | 222 | # Step 2: Set frame detection mode | COMMENT |
| LOW⚡ | examples/CAN Bus Example/README.md | 36 | ### Step 1: Connect to CAN Bus | COMMENT |
| LOW⚡ | examples/CAN Bus Example/README.md | 39 | ### Step 2: Import DBC Database | COMMENT |
| LOW⚡ | examples/CAN Bus Example/README.md | 45 | ### Step 3: Review the Preview | COMMENT |
| LOW⚡ | examples/CAN Bus Example/README.md | 54 | ### Step 4: Save the Project | COMMENT |
| LOW⚡ | examples/CAN Bus Example/README.md | 64 | ### Step 5: View the Dashboard | COMMENT |
| LOW⚡ | examples/CAN Bus Example/README.md | 74 | ### Step 6: Customize (Optional) | COMMENT |
| LOW | examples/System Monitor/README.md | 56 | ### Step 1: install dependencies | COMMENT |
| LOW | examples/System Monitor/README.md | 67 | ### Step 2: configure Serial Studio | COMMENT |
| LOW | examples/MCP Client/README.md | 212 | #### Step 1: Enable Serial Studio API Server | COMMENT |
| LOW | examples/MCP Client/README.md | 219 | #### Step 2: Locate the Bridge Script | COMMENT |
| LOW | examples/MCP Client/README.md | 244 | #### Step 3: Configure Claude Desktop | COMMENT |
| LOW | examples/MCP Client/README.md | 313 | #### Step 4: Restart Claude Desktop | COMMENT |
| LOW | examples/MCP Client/README.md | 320 | #### Step 5: Verify Integration | COMMENT |
| LOW | examples/MCP Client/README.md | 334 | #### Step 6: Use It! | COMMENT |
| LOW | examples/Camera Telemetry/README.md | 49 | ### Step 1: install dependencies | COMMENT |
| LOW | examples/Camera Telemetry/README.md | 55 | ### Step 2: start the script | COMMENT |
| LOW | examples/Camera Telemetry/README.md | 78 | ### Step 3: configure Serial Studio | COMMENT |
| LOW | doc/help/Project-Editor.md | 183 | ### Step 1: create a new project | COMMENT |
| LOW | doc/help/Project-Editor.md | 190 | ### Step 2: configure frame parsing | COMMENT |
| LOW | doc/help/Project-Editor.md | 261 | ### Step 3: add groups | COMMENT |
| LOW | doc/help/Project-Editor.md | 284 | ### Step 4: add datasets | COMMENT |
| LOW | doc/help/Project-Editor.md | 331 | ### Step 5: add actions (optional) | COMMENT |
| LOW | doc/help/Project-Editor.md | 359 | ### Step 6: add sources (multi-device projects) | COMMENT |
| LOW | doc/help/Project-Editor.md | 373 | ### Step 7: write a frame parser script (optional) | COMMENT |
| LOW | doc/help/Getting-Started.md | 139 | ### Step 1: prepare your device | COMMENT |
| LOW⚡ | doc/help/Getting-Started.md | 164 | ### Step 2: configure Serial Studio | COMMENT |
| LOW⚡ | doc/help/Getting-Started.md | 172 | ### Step 3: connect | COMMENT |
| LOW⚡ | doc/help/Getting-Started.md | 182 | ### Step 4: explore the dashboard | COMMENT |
| LOW⚡ | doc/help/Getting-Started.md | 192 | ### Step 1: open the Project Editor | COMMENT |
| LOW⚡ | doc/help/Getting-Started.md | 196 | ### Step 2: create a project | COMMENT |
| LOW⚡ | doc/help/Getting-Started.md | 204 | ### Step 3: add groups and datasets | COMMENT |
| LOW⚡ | doc/help/Getting-Started.md | 211 | ### Step 4: save and load | COMMENT |
| LOW⚡ | doc/help/Getting-Started.md | 217 | ### Step 5: connect | COMMENT |
| LOW⚡ | doc/help/API-Reference.md | 484 | # Step 1: Connect to Arduino | COMMENT |
| LOW⚡ | doc/help/API-Reference.md | 491 | # Step 2: Enable CSV logging | COMMENT |
| LOW⚡ | doc/help/API-Reference.md | 496 | # Step 3: Stop recording | COMMENT |
| LOW⚡ | doc/help/Use-Cases.md | 649 | ### Step 1: Identify Your Data Sources | COMMENT |
| LOW⚡ | doc/help/Use-Cases.md | 654 | ### Step 2: Choose Your Hardware | COMMENT |
| LOW⚡ | doc/help/Use-Cases.md | 660 | ### Step 3: Select Serial Studio Mode | COMMENT |
| LOW⚡ | doc/help/Use-Cases.md | 667 | ### Step 4: Prototype and Test | COMMENT |
| LOW⚡ | doc/help/Use-Cases.md | 673 | ### Step 5: Deploy and Monitor | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/security/test_resource_exhaustion.py | 540 | # Create a project that references itself | COMMENT |
| MEDIUM⚡ | tests/security/test_robustness_techniques.py | 587 | # Create a message with extreme redundancy | COMMENT |
| MEDIUM | tests/integration/test_project_configuration.py | 297 | # Define a simple JavaScript parser | STRING |
| MEDIUM⚡ | examples/CAN Bus Example/ecu_simulator.py | 754 | # Create a realistic driving pattern: accelerate, cruise, brake, repeat | COMMENT |
| MEDIUM | .github/workflows/docs.yml | 7 | # This file is dual-licensed: | COMMENT |
| MEDIUM | .github/workflows/test-suite.yml | 7 | # This file is dual-licensed: | COMMENT |
| MEDIUM | .github/workflows/ci.yml | 7 | # This file is dual-licensed: | COMMENT |
| MEDIUM | lib/mbedtls/framework/scripts/code_style.py | 95 | # Create an environment without these variables for running commands on the | COMMENT |
| MEDIUM | lib/mbedtls/framework/scripts/all-helpers.sh | 6 | # This file contains helpers for test components that are executed by all.sh. | COMMENT |
| MEDIUM | lib/mbedtls/framework/scripts/all-helpers.sh | 9 | # This file is the right place for helpers: | COMMENT |
| MEDIUM | lib/mbedtls/framework/scripts/generate_test_code.py | 1114 | # Create a placeholder pattern with the correct named capture groups | STRING |
| MEDIUM | lib/mbedtls/framework/scripts/demo_common.sh | 125 | # This function is commonly called in an if condition, where "set -e" | COMMENT |
| MEDIUM | lib/mbedtls/framework/scripts/demo_common.sh | 176 | # Create a seedfile that's sufficiently long in all library configurations. | COMMENT |
| MEDIUM | …tls/framework/scripts/mbedtls_framework/test_driver.py | 164 | # Create the test driver tree | COMMENT |
| MEDIUM | …framework/scripts/mbedtls_framework/generated_files.py | 126 | # This file is optional and didn't exist before, so | COMMENT |
| MEDIUM | …ework/scripts/mbedtls_framework/c_wrapper_generator.py | 60 | # This class is designed to have many methods potentially overloaded. | COMMENT |
| MEDIUM | lib/mbedtls/include/psa/crypto_extra.h | 1617 | * -# Initialize the operation object with one of the methods described in the | COMMENT |
| MEDIUM | lib/mbedtls/include/psa/crypto.h | 962 | * -# Initialize the operation object with one of the methods described in the | COMMENT |
| MEDIUM | lib/mbedtls/include/psa/crypto.h | 1325 | * -# Initialize the operation object with one of the methods described in the | COMMENT |
| MEDIUM | lib/mbedtls/include/psa/crypto.h | 1385 | * -# Initialize the operation object with one of the methods described in the | COMMENT |
| MEDIUM | lib/mbedtls/include/psa/crypto.h | 1734 | * -# Initialize the operation object with one of the methods described in the | COMMENT |
| MEDIUM | lib/mbedtls/include/psa/crypto.h | 1797 | * -# Initialize the operation object with one of the methods described in the | COMMENT |
| MEDIUM | lib/mbedtls/include/psa/crypto.h | 2260 | * -# Initialize the operation object with one of the methods described in the | COMMENT |
| MEDIUM | lib/mbedtls/include/psa/crypto.h | 2330 | * -# Initialize the operation object with one of the methods described in the | COMMENT |
| MEDIUM | lib/KissFFT/test/testkiss.py | 3 | # This file is part of KISS FFT - https://github.com/mborgerding/kissfft | COMMENT |
| MEDIUM | lib/KissFFT/test/kissfft-testsuite.sh | 7 | # This file is part of KISS FFT - https://github.com/mborgerding/kissfft | COMMENT |
| MEDIUM | lib/QSimpleUpdater/sanitize-commit.sh | 34 | # Create a temp file with the list of tracked files | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/security/test_access_control.py | 276 | # Check if it's properly sanitized | COMMENT |
| LOW | tests/security/test_access_control.py | 326 | # Check if error reveals internal details | COMMENT |
| LOW | tests/security/test_unknown_input_hardening.py | 376 | # Check if path traversal succeeded | COMMENT |
| LOW | tests/security/test_api_security.py | 374 | # Check if rate limiting is working | COMMENT |
| LOW | tests/security/test_api_security.py | 413 | # Check if server returned an error response | COMMENT |
| LOW | tests/security/test_resource_exhaustion.py | 333 | # Check if server times out slow connections | COMMENT |
| LOW | tests/security/test_resource_exhaustion.py | 393 | # Check if server is still responsive | COMMENT |
| LOW | tests/security/run_all_security_tests.sh | 24 | # Check if Serial Studio is running | COMMENT |
| LOW⚡ | tests/security/test_api_input_hardening.py | 529 | # Check if extra params are silently ignored or cause issues | COMMENT |
| LOW⚡ | tests/security/test_api_input_hardening.py | 545 | # Check if error reveals internal paths, versions, etc. | COMMENT |
| LOW | tests/security/test_api_input_hardening.py | 235 | # Check if response leaks memory addresses | COMMENT |
| LOW | tests/security/test_api_input_hardening.py | 267 | # Check if server is still responsive | COMMENT |
| LOW | tests/security/test_api_input_hardening.py | 332 | # Check if server rejected the batch (error dict returned) | COMMENT |
| LOW | tests/security/test_api_input_hardening.py | 655 | # Check if server is running | COMMENT |
| LOW | tests/security/security_probe_suite.py | 232 | # Check if server crashed | COMMENT |
| LOW | tests/security/security_probe_suite.py | 366 | # Check if injection executed (unlikely but worth checking) | COMMENT |
| LOW | tests/security/test_robustness_techniques.py | 91 | # Check if server crashed | COMMENT |
| LOW | tests/security/test_robustness_techniques.py | 295 | # Check if server is confused | COMMENT |
| LOW | tests/security/test_robustness_techniques.py | 388 | # Check if server still accepts new connections | COMMENT |
| LOW | tests/security/test_robustness_techniques.py | 426 | # Check if server is still responsive | COMMENT |
| LOW | tests/security/test_robustness_techniques.py | 637 | # Check if server returned error response | COMMENT |
| LOW | examples/Modbus PLC Simulator/plc_simulator.py | 682 | # Check if shutdown complete | COMMENT |
| LOW | lib/mbedtls/framework/scripts/audit-validity-dates.py | 161 | # Check if Type (1 byte) is SEQUENCE. | COMMENT |
| LOW | lib/mbedtls/framework/scripts/project_detection.sh | 30 | # Check if file exists. | COMMENT |
| LOW⚡ | lib/mbedtls/framework/scripts/project_detection.sh | 46 | # Check if the current folder is the Mbed TLS root one. | COMMENT |
| LOW⚡ | lib/mbedtls/framework/scripts/project_detection.sh | 55 | # Check if the current folder is the TF-PSA-Crypto root one. | COMMENT |
| LOW⚡ | lib/mbedtls/framework/scripts/project_detection.sh | 64 | # Check if $1 is an Mbed TLS root folder. | COMMENT |
| LOW | lib/mbedtls/framework/scripts/project_detection.sh | 76 | # Check if $1 is a TF-PSA-Crypto root folder. | COMMENT |
| LOW | lib/mbedtls/framework/scripts/demo_common.sh | 19 | # Check if the provided path ($1) can be a valid root for Mbed TLS or TF-PSA-Crypto. | COMMENT |
| LOW | lib/mbedtls/framework/scripts/demo_common.sh | 76 | ## Display the message, then run COMMAND with the specified arguments. | COMMENT |
| LOW | …rk/scripts/mbedtls_framework/unittest_config_checks.py | 25 | # Set this to the path to the source file containing the config checks. | COMMENT |
| LOW | …s/framework/scripts/mbedtls_framework/config_common.py | 147 | # Check if modifying the config file | COMMENT |
| LOW | …s/framework/scripts/mbedtls_framework/config_common.py | 167 | # Check if modifying the config file | COMMENT |
| LOW | …s/framework/scripts/mbedtls_framework/config_common.py | 178 | # Check if modifying the config file | COMMENT |
| LOW | …ramework/scripts/mbedtls_framework/outcome_analysis.py | 374 | # Set this to False if a consuming branch can't achieve full test coverage | COMMENT |
| LOW | lib/mbedtls/scripts/code_size_compare.py | 794 | # Check if the corresponding record exists | COMMENT |
| LOW | lib/KissFFT/test/kissfft-testsuite.sh | 236 | # Return result | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | app/rcc/ai/skills/tool_discovery.md | 72 | ## Semantic doc search (RAG) | COMMENT |
| MEDIUM⚡ | app/translations/llm_translate.py | 129 | # paraphrase. gpt-5 hallucinates terminology in our experience. | COMMENT |
| MEDIUM | app/translations/llm_translate.py | 54 | # from the same .ts file are injected as few-shot examples per batch. | COMMENT |
| MEDIUM | app/translations/llm_translate.py | 809 | # entries from the same target .ts file and inject them as few-shot examples. | COMMENT |
| MEDIUM | app/translations/llm_translate.py | 811 | # context window. MAX_TM_SOURCE_LEN keeps a single huge paragraph from | COMMENT |
| MEDIUM | app/translations/llm_translate.py | 1197 | # include them as few-shot examples — anchors terminology choices. | COMMENT |
| MEDIUM | app/translations/llm_translate.py | 1955 | # paid call and the harvest below can quote them as few-shot examples. | COMMENT |
| MEDIUM | doc/claude/specs/0030-improvement-roadmap/spec.md | 222 | ### R10 — Declarative async orchestration for I/O flows | COMMENT |
| MEDIUM | doc/claude/specs/0075-review-remediation/tasks.md | 72 | ### WP0-T7 — Sanitizer job and fuzz scaffolding | COMMENT |
| MEDIUM | doc/claude/specs/0075-review-remediation/tasks.md | 777 | ### WPH-T2 — fs tools off the GUI thread; local context window | COMMENT |
| MEDIUM | doc/claude/specs/0075-review-remediation/plan.md | 36 | ### WP0 — CI integrity, tooling, harnesses (R11, R14 scaffolding) | COMMENT |
| MEDIUM | doc/claude/specs/0039-session-context/m2-plan.md | 492 | ### M2-T1 — Ownership scaffolding in `SessionContext` | COMMENT |
| MEDIUM | doc/claude/specs/0039-session-context/ctor-proof-m2.md | 62 | ## M2-T1 — Ownership scaffolding (recorded) | COMMENT |
| MEDIUM | …c/claude/specs/0047-golden-session-regression/tasks.md | 53 | ### T3 — Verifier regression scaffolding + parameterized replay | COMMENT |
| MEDIUM | …c/claude/specs/0047-golden-session-regression/tasks.md | 130 | ### T8 — Tag sweep orchestration | COMMENT |
| MEDIUM | doc/claude/specs/0034-async-task-trees/tasks.md | 8 | # Tasks 0034 — Declarative async orchestration for I/O flows | COMMENT |
| MEDIUM | doc/claude/specs/0034-async-task-trees/plan.md | 8 | # Plan 0034 — Declarative async orchestration for I/O flows | COMMENT |
| MEDIUM | doc/claude/specs/0034-async-task-trees/spec.md | 9 | # Spec 0034 — Declarative async orchestration for I/O flows | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/integration/test_session_verification.py | 0 | skip the test when session recording isn't usable on this instance. | STRING |
| HIGH | tests/integration/test_session_regression.py | 0 | skip the test when session recording isn't usable on this instance. | STRING |
| HIGH | tests/integration/test_session_export.py | 0 | skip the test when session recording isn't usable on this instance. | STRING |
| HIGH | tests/integration/test_dual_serial.py | 0 | return true when connected to a commercial build of serial studio. | STRING |
| HIGH | tests/integration/test_app_state.py | 0 | return true when connected to a commercial build of serial studio. | STRING |
| HIGH | tests/integration/test_multi_source.py | 0 | return true when connected to a commercial build of serial studio. | STRING |
| HIGH | tests/scripts/test_ai_assistant_static.py | 0 | a component's source: the named file plus the concern tus extracted from it. spec 0070 moved cohesive concerns out of th | STRING |
| HIGH | tests/scripts/test_diagnostics_static.py | 0 | a component's source: the named file plus the concern tus extracted from it. spec 0070 moved cohesive concerns out of th | STRING |
| HIGH | tests/scripts/test_cpp_regressions.py | 0 | a component's source: the named file plus the concern tus extracted from it. spec 0070 moved cohesive concerns out of th | STRING |
| HIGH | tests/scripts/test_problem_center_static.py | 0 | a component's source: the named file plus the concern tus extracted from it. spec 0070 moved cohesive concerns out of th | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/utils/validators.py | 20 | Validate frame has correct structure. Args: frame: Frame dict from Serial Studio expected_grou | STRING |
| HIGH | tests/utils/validators.py | 62 | Validate CSV export file. Args: csv_path: Path to CSV file min_rows: Minimum expected rows (ex | STRING |
| HIGH | tests/utils/validators.py | 115 | Validate project JSON file. Args: project_path: Path to .json project file Returns: True | STRING |
| HIGH | tests/utils/validators.py | 146 | Validate checksum matches data. Args: data: Payload bytes checksum_value: Expected checksum va | STRING |
| HIGH | tests/utils/validators.py | 179 | Validate export file can be opened and read. Args: export_path: Path to export file file_type: | STRING |
| HIGH | tests/utils/data_generator.py | 263 | Wrap payload with delimiters and optional binary checksum. IMPORTANT: Both DeviceSendsJSON and Project | STRING |
| HIGH | tests/utils/api_client.py | 127 | Send a command and return the result. Args: command: Command name (e.g., "io.getStatus") | STRING |
| HIGH | tests/utils/api_client.py | 185 | Send batch of commands. Args: commands: List of dicts with "command" and optional "params" | STRING |
| HIGH | tests/scripts/conftest.py | 21 | Execute a parser script's parse() function via Node.js. The frame_input is serialised as JSON and injected dir | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | scripts/code-verify.py | 1101 | # AI-narration patterns — phrases and shapes that ship in AI-generated code | COMMENT |
| HIGH | lib/mbedtls/library/error.c | 186 | /* Begin Auto-Generated Code. */ | COMMENT |
| HIGH | lib/mbedtls/library/error.c | 528 | /* End Auto-Generated Code. */ | COMMENT |
| HIGH | lib/mbedtls/library/error.c | 549 | /* Begin Auto-Generated Code. */ | COMMENT |
| HIGH | lib/mbedtls/library/error.c | 783 | /* End Auto-Generated Code. */ | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | app/rcc/scripts/transforms/js/median_filter.js | 10 | // robust than moving average at rejecting outlier spikes (salt and | COMMENT |
| MEDIUM | app/translations/llm_translate.py | 1190 | # Build the domain-context block first — it's the highest-leverage section. | COMMENT |
| LOW | tests/integration/test_workspaces.py | 752 | # is overkill -- just add another group, which is enough to fire the merge). | COMMENT |
| MEDIUM⚡ | tests/integration/test_table_handles.py | 88 | # the table store is built, so it is robust regardless of script-vs-store load order. | COMMENT |
| MEDIUM⚡ | tests/scripts/conftest.py | 80 | # Data-table handle API contract harness | COMMENT |
| MEDIUM | .github/workflows/ci.yml | 2082 | # fuzz harness fed the scanners the empty input libFuzzer always runs first. | COMMENT |
| LOW | lib/mbedtls/framework/scripts/generate_pkcs7_tests.py | 99 | # off the bat just add bytes to start and end of the buffer | COMMENT |
| LOW | lib/mbedtls/framework/scripts/project_detection.sh | 21 | # - 0: simply return an error | COMMENT |
| MEDIUM | …s/framework/scripts/mbedtls_framework/psa_test_case.py | 196 | # the output robust with respect to refactoring of the scripts. | COMMENT |
| MEDIUM | …framework/scripts/mbedtls_framework/macro_collector.py | 258 | # something more robust. | COMMENT |
| MEDIUM | …s/framework/scripts/mbedtls_framework/bignum_common.py | 143 | # provides earlier/more robust input validation. | COMMENT |
| MEDIUM | …s/framework/scripts/mbedtls_framework/bignum_common.py | 308 | # provides earlier/more robust input validation. | COMMENT |
| LOW | lib/hidapi/testgui/copy_to_bundle.sh | 84 | # necessary. If ../libtool not available, just use cp to do the copy, but | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | app/rcc/properties/schema.json | 158 | "placeholder", | CODE |
| LOW | app/rcc/properties/schema.json | 555 | "placeholder": {}, | CODE |
| LOW | app/rcc/properties/dataset.json | 432 | "kind": "placeholder", | CODE |
| LOW | app/rcc/properties/dataset.json | 690 | "placeholder": "Untitled Dataset", | CODE |
| LOW | app/rcc/properties/dataset.json | 795 | "placeholder": "Volts, Amps, etc.", | CODE |
| LOW | app/rcc/properties/dataset.json | 820 | "placeholder": "Stable name", | CODE |
| LOW | app/rcc/properties/dataset.json | 848 | "placeholder": "Automatic", | CODE |
| LOW | app/rcc/properties/dataset.json | 881 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 915 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1020 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1044 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1068 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1094 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1121 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1156 | "placeholder": 300, | CODE |
| LOW | app/rcc/properties/dataset.json | 1257 | "placeholder": 100, | CODE |
| LOW | app/rcc/properties/dataset.json | 1282 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1314 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1346 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1407 | "placeholder": "Auto", | CODE |
| LOW | app/rcc/properties/dataset.json | 1464 | "placeholder": "Auto", | CODE |
| LOW | app/rcc/properties/dataset.json | 1498 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1533 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1560 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1610 | "placeholder": 0, | CODE |
| LOW | app/rcc/properties/dataset.json | 1637 | "placeholder": 0, | CODE |
| LOW⚡ | tests/integration/test_licensing.py | 199 | dummy_key = "00000000-0000-0000-0000-000000000000" | CODE |
| LOW⚡ | tests/integration/test_licensing.py | 200 | api_client.command("licensing.setLicense", {"licenseKey": dummy_key}) | CODE |
| LOW | scripts/generate-property-registry.py | 947 | elif "placeholder" in prop: | CODE |
| LOW | scripts/generate-property-registry.py | 948 | placeholder = prop["placeholder"] | CODE |
| LOW | scripts/registry-verify.py | 721 | "placeholderHook": "placeholder", | CODE |
| LOW | doc/claude/specs/0036-property-registry/plan.md | 84 | "placeholder": "0", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | app/translations/llm_translate.py | 1723 | def _set_translation_text(message, translation, text: str) -> None: | CODE |
| LOW | tests/integration/test_parse_budget.py | 162 | def set_interval(self, interval: float, burst: int = 1) -> None: | CODE |
| LOW | tests/integration/test_lua_script_engine.py | 90 | def _setup_lua_project(api_client, lua_code: str, dataset_titles=None) -> None: | CODE |
| LOW | tests/integration/test_aural_alerts.py | 50 | def _set_sequence(api_client, letter: str) -> None: | CODE |
| LOW⚡ | tests/integration/test_dataset_transforms.py | 358 | def _set_library(api_client, code: str, language: str = "lua") -> None: | CODE |
| LOW⚡ | tests/integration/test_dataset_transforms.py | 365 | def _set_params(api_client, group_id: int, dataset_id: int, params: dict) -> None: | CODE |
| LOW | tests/integration/test_dataset_transforms.py | 72 | def _set_transform(api_client, group_id: int, dataset_id: int, code: str) -> None: | CODE |
| LOW | tests/integration/test_device_write.py | 129 | def _set_transform(api_client, group_id: int, dataset_id: int, code: str) -> None: | CODE |
| LOW | tests/utils/__init__.py | 23 | __all__ = [ | CODE |
| LOW | tests/utils/http_ws_server.py | 106 | def set_payload(self, payload: bytes, status: int = 200) -> None: | CODE |
| LOW | tests/utils/api_client.py | 242 | def set_bus_type(self, bus_type: str) -> None: | CODE |
| LOW | tests/utils/api_client.py | 348 | def set_dashboard_fps(self, fps: int) -> None: | CODE |
| LOW | tests/utils/api_client.py | 359 | def set_dashboard_time_range(self, seconds: float) -> None: | CODE |
| LOW | tests/utils/api_client.py | 388 | def set_operation_mode(self, mode: str) -> None: | CODE |
| LOW | tests/utils/api_client.py | 765 | def set_dataset_options(self, group_id: int, dataset_id: int, options: int) -> None: | CODE |
| LOW | scripts/icon-retier.py | 229 | def update_qrc(moved: list[Candidate]) -> None: | CODE |
| LOW | …s/framework/scripts/mbedtls_framework/config_macros.py | 128 | def update_shadow_file(self, always_update: bool) -> None: | CODE |
| LOW | …/framework/scripts/mbedtls_framework/bignum_mod_raw.py | 132 | def set_representation(self, r: bignum_common.ModulusRepresentation) -> None: | CODE |
| LOW | …tls/framework/scripts/mbedtls_framework/psa_storage.py | 41 | def update_cache(self) -> None: | CODE |
| LOW⚡ | …edtls/framework/scripts/mbedtls_framework/test_case.py | 65 | def set_description(self, description: str) -> None: | CODE |
| LOW⚡ | …edtls/framework/scripts/mbedtls_framework/test_case.py | 71 | def set_dependencies(self, dependencies: List[str]) -> None: | CODE |
| LOW⚡ | …edtls/framework/scripts/mbedtls_framework/test_case.py | 74 | def set_function(self, function: str) -> None: | CODE |
| LOW⚡ | …edtls/framework/scripts/mbedtls_framework/test_case.py | 77 | def set_arguments(self, arguments: List[str]) -> None: | CODE |
| LOW | …s/framework/scripts/mbedtls_framework/psa_test_case.py | 90 | def set_key_bits(self, key_bits: Optional[int]) -> None: | CODE |
| LOW | …s/framework/scripts/mbedtls_framework/psa_test_case.py | 100 | def set_key_pair_usage(self, key_pair_usage: Optional[List[str]]) -> None: | CODE |
| LOW | …s/framework/scripts/mbedtls_framework/psa_test_case.py | 170 | def set_arguments(self, arguments: List[str]) -> None: | CODE |
| LOW | …s/framework/scripts/mbedtls_framework/psa_test_case.py | 180 | def set_dependencies(self, dependencies: List[str]) -> None: | CODE |
| LOW | …ework/scripts/mbedtls_framework/c_wrapper_generator.py | 403 | def set_stream(self, stream: str) -> None: | STRING |
| LOW | lib/mbedtls/scripts/code_size_compare.py | 508 | def _set_size_record(self, git_rev: str, mod: str, size_text: str) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | lib/mdflib/docs/manual/html/jquery.js | 67 | set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value | CODE |
| CRITICAL | lib/mdflib/docs/manual/html/jquery.js | 107 | )&&(t.left+=l+i+h):0<r&&(0<(o=t.left-e.collisionPosition.marginLeft+l+i+h-o)||D(o)<r)&&(t.left+=l+i+h)},top:function(t,e | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/integration/test_frame_parsing.py | 117 | # Step 1: Set delimiters and checksum | COMMENT |
| LOW⚡ | tests/integration/test_frame_parsing.py | 126 | # Step 2: Set frame detection mode | COMMENT |
| LOW⚡ | tests/integration/test_frame_parsing.py | 213 | # Step 1: Set delimiters and checksum | COMMENT |
| LOW⚡ | tests/integration/test_frame_parsing.py | 222 | # Step 2: Set frame detection mode | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | lib/mbedtls/framework/scripts/quiet/quiet.sh | 22 | # be silenced, e.g. " --version | test ". In this example, "make lib test" will | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/integration/test_output_widgets.py | 55 | CODE | |
| LOW | examples/LTE modem/lte_serial.py | 104 | CODE | |
| LOW | examples/LTE modem/lte_udp.py | 104 | CODE | |
| LOW | examples/LTE modem/lte_mqtt.py | 105 | CODE | |
| LOW | examples/MCP Client/client.py | 70 | CODE | |
| LOW | scripts/tests/test_ci_workflow.py | 69 | CODE | |
| LOW | lib/mbedtls/framework/scripts/generate_test_code.py | 767 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | lib/mbedtls/framework/scripts/demo_common.sh | 126 | # has no effect, so make sure to stop explicitly on error. | COMMENT |
| LOW | lib/luajit/doc/install.html | 287 | <li>Don't forget to specify the same <tt>TARGET_SYS</tt> for the install step, too.</li> | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | lib/QSimpleUpdater/sanitize-commit.sh | 18 | # Usage: | COMMENT |