AI Slop Code RIsk Monitor

wkentaro/labelme

Image annotation with Python. Supports polygon, rectangle, circle, line, point, and AI-assisted annotation.

20.3 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for wkentaro/labelme, a Python project with 16,214 GitHub stars. SynthScan examined 81,417 lines of code across 275 source files, recording 1517 pattern matches distributed across 9 syntactic categories. The legacy adjusted pattern signal is 20.3 (Elevated 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.

20.3
Adjusted Signal
20.3
Raw Pattern Score
100%
Time Factor
2026-10-07
Last Push
16.2K
Stars
Python
Language
81.4K
Lines of Code
275
Files
1.5K
Pattern Hits
2026-10-12
Scan Date
0.02
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 48.2/100 · MEDIUM

Can maintainers explain intent, assumptions, and trade-offs? 1163 finding(s).

Hallucinated Dependency & Supply Chain Risk 13.0/100 · LOW

Are imports declared and package/API names verified? 218 finding(s).

Agent Over-Engineering Ratio 57.9/100 · HIGH

Are wrappers, guards, and repeated structures necessary? 1279 finding(s).

PR Review Velocity Impact 64.2/100 · HIGH

Which changes need focused human review? 1517 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

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.

Severity Breakdown

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.

CRITICAL 0HIGH 6MEDIUM 63LOW 1448

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 1517 distinct pattern matches across 9 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.

Hyper-Verbose Identifiers1141 hits · 1053 pts
SeverityFileLineSnippetContext
LOWtools/artifact_install_smoke.py26def _check_packaged_resources() -> None:CODE
LOWtools/artifact_install_smoke.py43def _check_application_starts() -> None:CODE
LOWtests/workflow_test.py16def test_release_without_version_suggests_next_version(*, tmp_path: Path) -> None:CODE
LOWtests/workflow_test.py58def test_test_matrix_covers_every_supported_python_version() -> None:CODE
LOWtests/unit/_app_test.py40def test_resolve_text_annotation_shape_type(CODE
LOWtests/unit/_app_test.py133def test_make_image_too_large_message_explains_allocation_limit(CODE
LOWtests/unit/_app_test.py151def test_make_image_too_large_message_accounts_for_bit_depth(CODE
LOWtests/unit/_app_test.py172def test_make_image_too_large_message_uses_minimum_gui_depth(CODE
LOWtests/unit/_app_test.py190def test_make_image_too_large_message_reports_per_side_limit() -> None:CODE
LOWtests/unit/_app_test.py218def test_make_image_too_large_message_rounds_the_need_up(CODE
LOWtests/unit/_app_test.py239def test_make_image_too_large_message_is_none_for_undecodable_data() -> None:CODE
LOWtests/unit/_app_test.py244def test_make_image_too_large_message_is_none_within_allocation_limit() -> None:CODE
LOWtests/unit/_app_test.py323def test_shapes_from_dicts_merges_label_flags(CODE
LOWtests/unit/_app_test.py337def test_shapes_from_dicts_warns_once_per_shape_with_a_non_str_label() -> None:CODE
LOWtests/unit/_app_test.py360def test_shapes_from_dicts_gives_each_shape_its_own_flags() -> None:CODE
LOWtests/unit/_app_test.py374def test_shapes_from_dicts_carries_over_the_shape_fields() -> None:CODE
LOWtests/unit/_app_test.py399def test_shape_to_dict_maps_all_fields() -> None:CODE
LOWtests/unit/_app_test.py436def test_shape_to_dict_coalesces_optional_flags_and_description(CODE
LOWtests/unit/_app_test.py451def test_shape_to_dict_copies_mask() -> None:CODE
LOWtests/unit/_app_test.py465def test_shape_to_dict_requires_label() -> None:CODE
LOWtests/unit/_app_test.py505def test_resolve_stored_image_path_falls_back_to_absolute(CODE
LOWtests/unit/_app_test.py520def test_resolve_stored_image_path_falls_back_across_real_windows_drives() -> None:CODE
LOW⚡tests/unit/_label_flags_test.py8def test_compile_label_flags_none_is_empty() -> None:CODE
LOW⚡tests/unit/_label_flags_test.py12def test_compile_label_flags_keeps_the_flag_keys_of_a_valid_pattern() -> None:CODE
LOW⚡tests/unit/_label_flags_test.py19def test_compile_label_flags_drops_an_uncompilable_pattern() -> None:CODE
LOW⚡tests/unit/_label_flags_test.py23def test_compile_label_flags_drops_a_non_str_pattern() -> None:CODE
LOW⚡tests/unit/_label_flags_test.py29def test_compile_label_flags_drops_a_bytes_pattern() -> None:CODE
LOW⚡tests/unit/_label_flags_test.py36def test_compile_label_flags_keeps_the_valid_patterns_of_a_mixed_spec() -> None:CODE
LOWtests/unit/_model_manager_test.py59def test_queue_continues_after_failure_and_retry_goes_last(CODE
LOWtests/unit/_model_manager_test.py99def test_cache_setup_failure_marks_model_as_failed(CODE
LOWtests/unit/_model_manager_test.py114def test_cancel_keeps_completed_files_and_quit_discards_queue(CODE
LOWtests/unit/_model_manager_test.py163def test_cancel_preserves_blob_completed_before_active_download(CODE
LOWtests/unit/_model_manager_test.py195def test_shutdown_interrupts_stalled_download(CODE
LOWtests/unit/_model_manager_test.py221def test_shutdown_terminates_download_stalled_during_tls(CODE
LOWtests/unit/_model_manager_test.py253def test_failed_shutdown_keeps_active_download_and_queue(CODE
LOWtests/unit/_model_manager_test.py290def test_remove_stops_download_before_deleting_files(CODE
LOWtests/unit/_model_manager_test.py320def test_existing_files_count_as_downloaded_until_deleted(CODE
LOWtests/unit/_model_manager_test.py341def test_progress_supports_files_larger_than_two_gibibytes(CODE
LOW⚡tests/unit/_yaml_test.py11def test_safe_load_parses_string_into_nested_structure() -> None:CODE
LOW⚡tests/unit/_yaml_test.py15def test_safe_load_accepts_file_like_stream() -> None:CODE
LOW⚡tests/unit/_yaml_test.py19def test_safe_load_returns_none_for_empty_string() -> None:CODE
LOWtests/unit/_yaml_test.py32def test_safe_load_rejects_unsafe_python_tag(*, payload: str) -> None:CODE
LOW⚡tests/unit/__main___test.py38def test_removed_flag_errors_as_unknown(CODE
LOW⚡tests/unit/__main___test.py48def test_logger_level_choice_is_a_valid_loguru_level(*, level: str) -> None:CODE
LOW⚡tests/unit/__main___test.py52def test_logger_level_rejects_fatal(*, monkeypatch: pytest.MonkeyPatch) -> None:CODE
LOW⚡tests/unit/__main___test.py60def test_output_rejects_json_file_path_case_insensitively(CODE
LOW⚡tests/unit/__main___test.py120def test_parse_list_arg_splits_comma_separated_value(CODE
LOW⚡tests/unit/__main___test.py126def test_parse_list_arg_reads_and_strips_file_lines(*, tmp_path: Path) -> None:CODE
LOW⚡tests/unit/__main___test.py133def test_parse_list_arg_splits_value_too_long_to_be_a_path() -> None:CODE
LOW⚡tests/unit/__main___test.py140def test_resolve_config_source_falls_back_to_defaults_on_missing_default_file(CODE
LOW⚡tests/unit/__main___test.py199def test_resolve_config_source_reads_an_explicit_file(*, tmp_path: Path) -> None:CODE
LOW⚡tests/unit/__main___test.py208def test_resolve_config_source_takes_a_yaml_string_as_overrides(CODE
LOW⚡tests/unit/__main___test.py217def test_logger_io_forwards_stripped_writes_to_debug() -> None:CODE
LOWtests/unit/__main___test.py25def test_help_uses_console_script_name(CODE
LOWtests/unit/__main___test.py78def test_deprecated_alias_warns_pointing_to_canonical(CODE
LOWtests/unit/__main___test.py98def test_canonical_flag_does_not_warn(CODE
LOWtests/unit/__main___test.py163def test_resolve_config_source_reads_an_existing_default_file(CODE
LOWtests/unit/__main___test.py174def test_resolve_config_source_exits_on_an_explicit_missing_file(CODE
LOWtests/unit/__main___test.py187def test_resolve_config_source_exits_on_a_value_too_long_to_be_a_path(CODE
LOWtests/unit/__main___test.py233def test_logger_io_is_a_write_only_non_seekable_sink() -> None:CODE
1081 more matches not shown…
Decorative Section Separators62 hits · 273 pts
SeverityFileLineSnippetContext
MEDIUM⚡tests/unit/utils/_qt_test.py87# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/utils/_qt_test.py89# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/utils/_qt_test.py113# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/utils/_qt_test.py115# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/utils/_qt_test.py201# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/utils/_qt_test.py203# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/utils/_qt_test.py327# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/utils/_qt_test.py329# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py88# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py90# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py123# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py125# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py143# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py145# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py174# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py176# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py213# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py215# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py242# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py244# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py273# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py275# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py327# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_canvas_interaction/canvas_test.py329# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/unit/widgets/_canvas_interaction/canvas_test.py395# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/unit/widgets/_canvas_interaction/canvas_test.py405# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py45# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py47# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py57# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py59# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py74# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py76# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py107# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py109# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py168# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py171# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py283# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py285# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py343# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py345# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py367# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py369# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py414# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/unit/widgets/_canvas_interaction/primitives_test.py416# ---------------------------------------------------------------------------COMMENT
MEDIUM…ts/unit/widgets/_canvas_interaction/primitives_test.py236# ---------------------------------------------------------------------------COMMENT
MEDIUM…ts/unit/widgets/_canvas_interaction/primitives_test.py238# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py77# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py79# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py125# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py127# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py208# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py210# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py242# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py244# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py285# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py287# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py330# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py332# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py455# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/unit/widgets/_label_dialog/interaction_test.py457# ---------------------------------------------------------------------------COMMENT
2 more matches not shown…
Unused Imports214 hits · 204 pts
SeverityFileLineSnippetContext
LOWtools/benchmark_undo.py3CODE
LOWtools/check_config_migrations.py1CODE
LOWtools/artifact_install_smoke.py1CODE
LOWtools/artifact_install_smoke.py7CODE
LOWtests/conftest.py1CODE
LOWtests/unit/_app_test.py1CODE
LOWtests/unit/_label_flags_test.py1CODE
LOWtests/unit/_model_manager_test.py1CODE
LOWtests/unit/_yaml_test.py1CODE
LOWtests/unit/__main___test.py1CODE
LOWtests/unit/__main___test.py7CODE
LOWtests/unit/read_image_file_test.py1CODE
LOWtests/unit/_shape_test.py1CODE
LOWtests/unit/_shape_clipboard_test.py1CODE
LOWtests/unit/_locale_test.py1CODE
LOWtests/unit/_label_file_test.py1CODE
LOWtests/unit/_shape_color_test.py1CODE
LOWtests/unit/tools/artifact_install_smoke_test.py1CODE
LOWtests/unit/utils/_qt_test.py1CODE
LOWtests/unit/utils/util.py1CODE
LOWtests/unit/utils/_shape_test.py1CODE
LOWtests/unit/utils/_image_test.py1CODE
LOWtests/unit/_shape/_merge_test.py1CODE
LOWtests/unit/examples/labelme2voc_test.py1CODE
LOWtests/unit/examples/utils_test.py1CODE
LOWtests/unit/examples/labelme2coco_test.py1CODE
LOWtests/unit/_automation/_ai_assist_test.py1CODE
LOWtests/unit/_automation/conftest.py1CODE
LOWtests/unit/_automation/_osam_session_test.py1CODE
LOWtests/unit/_automation/_shape_builders_test.py1CODE
LOWtests/unit/_automation/_text_detection_test.py1CODE
LOWtests/unit/_automation/_suppression_test.py1CODE
LOWtests/unit/_automation/_geometry_test.py1CODE
LOWtests/unit/_config/writer_test.py1CODE
LOWtests/unit/_config/schema_test.py1CODE
LOWtests/unit/_config/migration_test.py1CODE
LOWtests/unit/_config/api_test.py1CODE
LOW…sts/unit/widgets/_ai_text_to_annotation_widget_test.py1CODE
LOW…ts/unit/widgets/_ai_assisted_annotation_widget_test.py1CODE
LOWtests/unit/widgets/_empty_state_test.py1CODE
LOWtests/unit/widgets/_canvas_test.py1CODE
LOWtests/unit/widgets/_label_list_widget_test.py1CODE
LOWtests/unit/widgets/_vertex_render_test.py1CODE
LOWtests/unit/widgets/_tool_bar_test.py1CODE
LOWtests/unit/widgets/_settings_dialog_test.py1CODE
LOWtests/unit/widgets/_unique_label_qlist_widget_test.py1CODE
LOWtests/unit/widgets/_shape_render_test.py1CODE
LOW…unit/widgets/_brightness_contrast_dialog/alpha_test.py1CODE
LOW…gets/_brightness_contrast_dialog/accessibility_test.py1CODE
LOW…/unit/widgets/_brightness_contrast_dialog/i18n_test.py1CODE
LOW…nit/widgets/_brightness_contrast_dialog/output_test.py1CODE
LOWtests/unit/widgets/_zoom_widget/value_test.py1CODE
LOWtests/unit/widgets/_canvas_interaction/canvas_test.py1CODE
LOW…ts/unit/widgets/_canvas_interaction/primitives_test.py1CODE
LOWtests/unit/widgets/_label_dialog/interaction_test.py1CODE
LOWtests/unit/widgets/_label_dialog/keyboard_test.py1CODE
LOWtests/unit/widgets/_label_dialog/updates_test.py1CODE
LOWtests/unit/widgets/_label_dialog/accessibility_test.py1CODE
LOWtests/unit/widgets/_label_dialog/screen_fit_test.py1CODE
LOWtests/e2e/undo_after_label_edit_test.py1CODE
154 more matches not shown…
Modern Structural Boilerplate57 hits · 56 pts
SeverityFileLineSnippetContext
LOWtools/update_translate.py13def _setup_logging() -> None:CODE
LOW⚡tests/unit/utils/_qt_test.py118def _set_window_text(app: QtWidgets.QApplication, /, *, color: QtGui.QColor) -> None:CODE
LOWtests/e2e/settings_test.py25def _set_flag_checked(*, win: MainWindow, name: str) -> None:CODE
LOWtests/e2e/label_list_canvas_selection_test.py361 def set_group_id_then_accept() -> None:CODE
LOWlabelme/_app.py792 def update_shapes_present_actions() -> None:STRING
LOWlabelme/_app.py1022 def _setup_toolbars(self) -> None:STRING
LOWlabelme/_app.py2124 def set_scroll_value(self, *, orientation: Qt.Orientation, value: float) -> None:STRING
LOWlabelme/_app.py2141 def _set_zoom(self, *, value: float, pos: QtCore.QPointF | None) -> None:STRING
LOWlabelme/_app.py2170 def _set_zoom_to_original(self) -> None:STRING
LOWlabelme/_app.py2184 def set_fit_window_mode(self, value: bool = True, /) -> None: # noqa: FBT001, FBT002 -- QAction.triggered slotSTRING
LOWlabelme/_app.py2188 def set_fit_width_mode(self, value: bool = True, /) -> None: # noqa: FBT001, FBT002 -- QAction.triggered slotSTRING
LOWlabelme/_app.py2831 def _set_point_prompt_mode(self, *, enabled: bool) -> None:STRING
LOWlabelme/_app.py2847 def _set_setting_value(self, *, key_path: tuple[str, ...], value: object) -> None:STRING
LOWlabelme/_app.py3341 def _update_status_stats(self, mouse_pos: QtCore.QPointF, /) -> None:STRING
LOWlabelme/__main__.py54def _setup_loguru(*, logger_level: str) -> None:CODE
LOWlabelme/_utils/__init__.py18__all__ = [CODE
LOW⚡labelme/_widgets/_canvas.py314 def set_fill_drawing(self, *, value: bool) -> None:CODE
LOW⚡labelme/_widgets/_canvas.py317 def set_show_labels(self, *, value: bool) -> None:CODE
LOW⚡labelme/_widgets/_canvas.py320 def set_allow_out_of_bounds_points(self, *, value: bool) -> None:CODE
LOW⚡labelme/_widgets/_canvas.py516 def set_ai_polygon_detail(self, *, detail: int) -> None:CODE
LOW⚡labelme/_widgets/_canvas.py522 def set_ai_existing_shape_suppression(self, *, enabled: bool) -> None:CODE
LOW⚡labelme/_widgets/_canvas.py1890 def _set_ai_existing_shape_highlights(self, *, shapes: list[Shape]) -> None:CODE
LOWlabelme/_widgets/_canvas.py359 def set_point_size(self, *, point_size: int) -> None:CODE
LOWlabelme/_widgets/_canvas.py375 def set_draft_palette(self, *, palette: Palette) -> None:CODE
LOWlabelme/_widgets/_canvas.py502 def set_ai_model_name(self, *, model_name: str) -> None:CODE
LOWlabelme/_widgets/_canvas.py662 def _update_status(self, *, extra_messages: list[str] | None) -> None:CODE
LOWlabelme/_widgets/_canvas.py1604 def _setup_world_transform(self, *, painter: QtGui.QPainter) -> None:CODE
LOWlabelme/_widgets/_canvas.py2100 def set_shape_visible(self, *, shape: Shape, value: bool) -> None:CODE
LOWlabelme/_widgets/__init__.py19__all__ = [CODE
LOWlabelme/_widgets/_integer_slider.py46 def set_value(self, value: int, /) -> None:CODE
LOWlabelme/_widgets/_label_dialog.py268 def set_flag_rules(self, *, flags: dict[str, list[str]] | None) -> None:CODE
LOWlabelme/_widgets/_label_dialog.py271 def _update_flags(self, text: str, /) -> None:CODE
LOWlabelme/_widgets/_label_dialog.py292 def set_predefined_labels(self, *, labels: list[str]) -> None:CODE
LOWlabelme/_widgets/_label_dialog.py408 def _set_flag_checkboxes(self, *, flags: dict[str, bool]) -> None:CODE
LOWlabelme/_widgets/_ai_assisted_annotation_widget.py167 def set_current_model(self, *, model_display: str) -> None:CODE
LOW⚡labelme/_widgets/_ai_assisted_annotation_widget.py178 def set_available_models(self, *, available: set[str]) -> None:CODE
LOW⚡labelme/_widgets/_ai_assisted_annotation_widget.py181 def set_polygon_detail(self, detail: int, /) -> None:CODE
LOW⚡labelme/_widgets/_ai_assisted_annotation_widget.py185 def set_point_prompt_mode(self, *, enabled: bool) -> None:CODE
LOWlabelme/_widgets/_ai_text_to_annotation_widget.py139 def set_model_name(self, *, model_name: str) -> None:CODE
LOWlabelme/_widgets/_ai_text_to_annotation_widget.py142 def set_available_models(self, *, available: set[str]) -> None:CODE
LOWlabelme/_widgets/_model_picker.py49 def set_available_models(self, *, available: set[str]) -> None:CODE
LOWlabelme/_widgets/_model_picker.py59 def set_model_name(self, *, model_name: str) -> None:CODE
LOWlabelme/_widgets/_label_list_widget.py122 def set_shape(self, *, shape: Shape | None) -> None:CODE
LOWlabelme/_widgets/_label_list_widget.py125 def set_label(self, *, text: str, color: tuple[int, int, int]) -> None:CODE
LOWlabelme/_widgets/_settings_dialog.py153 def set_accessible_note(self, note: str, /) -> None:CODE
LOWlabelme/_widgets/_settings_dialog.py157 def set_value(self, *, value: dict[str, list[str]] | None) -> None:CODE
LOWlabelme/_widgets/_settings_dialog.py290 def set_rgb(self, rgb: tuple[int, int, int], /) -> None:CODE
LOW⚡labelme/_widgets/_settings_dialog.py302 def set_accessible_note(self, note: str, /) -> None:CODE
LOW⚡labelme/_widgets/_settings_dialog.py306 def _update_accessible_description(self) -> None:CODE
LOWlabelme/_widgets/_settings_dialog.py507 def _update_search(self, text: str, /) -> None:CODE
LOWlabelme/_widgets/_settings_dialog.py571 def _set_status(self, message: str, /) -> None:CODE
LOWlabelme/_widgets/_settings_dialog.py899 def set_value(self, *, key_path: tuple[str, ...], value: object) -> None:CODE
LOWlabelme/_widgets/_settings_dialog.py1180 def _set_editor_value(self, *, editor: QtWidgets.QWidget, value: object) -> None:CODE
LOWlabelme/_shape/__init__.py20__all__ = [CODE
LOWlabelme/_automation/__init__.py15__all__ = [CODE
LOWlabelme/_automation/_ai_assist.py46 def set_model_name(self, model_name: str, /) -> None:CODE
LOWlabelme/_config/__init__.py18__all__ = ["get_user_config_file", "load_config", "reset_config", "set_overrides"]CODE
Cross-Language Confusion4 hits · 22 pts
SeverityFileLineSnippetContext
HIGH⚡tests/unit/utils/_qt_test.py273 keys = [s.toString() for s in action.shortcuts()]CODE
HIGH⚡tests/unit/utils/_qt_test.py282 keys = [s.toString() for s in action.shortcuts()]CODE
HIGHlabelme/_app.py2520 logger.warning("image is null, cannot apply zoom")STRING
HIGHlabelme/_widgets/_shape_render.py206 if paths.orientation_arrow.length() > 0:CODE
Deep Nesting20 hits · 18 pts
SeverityFileLineSnippetContext
LOWtools/check_config_migrations.py12CODE
LOWtests/unit/widgets/_canvas_test.py425CODE
LOWtests/unit/widgets/_canvas_test.py2538CODE
LOWtests/e2e/background_save_test.py129CODE
LOWlabelme/_app.py2912CODE
LOWlabelme/_app.py3218CODE
LOWlabelme/_model_manager.py155CODE
LOWlabelme/_label_file.py255CODE
LOWlabelme/_utils/_image.py72CODE
LOWlabelme/_utils/_shape.py33CODE
LOWlabelme/_widgets/_canvas.py831CODE
LOWlabelme/_widgets/_canvas.py1961CODE
LOWlabelme/_widgets/_canvas.py1982CODE
LOWlabelme/_widgets/_shape_render.py405CODE
LOWlabelme/_widgets/_settings_dialog.py233CODE
LOWlabelme/_widgets/_settings_dialog.py667CODE
LOWlabelme/_widgets/_settings_dialog.py1013CODE
LOWlabelme/_widgets/_settings_dialog.py1180CODE
LOWexamples/utils.py83CODE
LOWexamples/instance_segmentation/labelme2coco.py56CODE
Excessive Try-Catch Wrapping15 hits · 14 pts
SeverityFileLineSnippetContext
LOWtools/check_config_migrations.py40 except Exception as error:CODE
LOWlabelme/_app.py209 except Exception:CODE
LOWlabelme/_app.py1355 except Exception as error:STRING
LOWlabelme/_app.py1399 except Exception as error:STRING
LOWlabelme/_app.py1561 except Exception as e:STRING
LOWlabelme/_model_manager.py44 except Exception as error:CODE
LOWlabelme/_model_manager.py100 except Exception:CODE
LOWlabelme/_model_manager.py240 except Exception as error:CODE
MEDIUMlabelme/_model_manager.py83def start(self) -> None:CODE
LOWlabelme/__main__.py83 except Exception as e:CODE
LOWlabelme/__main__.py375 except Exception as e:CODE
LOWlabelme/_label_file.py251 except Exception as e:CODE
LOWlabelme/_widgets/_canvas.py1785 except Exception as e:CODE
LOWlabelme/_widgets/_canvas.py1830 except Exception as e:CODE
LOWlabelme/_config/__init__.py103 except Exception:CODE
Empty Error Handlers2 hits · 10 pts
SeverityFileLineSnippetContext
HIGHtests/conftest.py192except (BrokenPipeError, ConnectionResetError):CODE
HIGHtests/e2e/conftest.py214except RuntimeError:CODE
AI Structural Patterns2 hits · 2 pts
SeverityFileLineSnippetContext
LOWlabelme/_utils/_qt.py126CODE
LOWlabelme/_widgets/_label_dialog.py37CODE