RF-DETR is a real-time object detection and segmentation model architecture developed by Roboflow, SOTA on COCO, designed for fine-tuning. [ICLR 2026]
This report summarizes scanner evidence for roboflow/rf-detr, a Python project with 9,766 GitHub stars. SynthScan examined 199,888 lines of code across 497 source files, recording 7614 pattern matches distributed across 23 syntactic categories. The legacy adjusted pattern signal is 59.1 (High 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? 5864 finding(s).
Are imports declared and package/API names verified? 345 finding(s).
Are wrappers, guards, and repeated structures necessary? 6539 finding(s).
Which changes need focused human review? 7614 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 7614 distinct pattern matches across 23 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 | AGENTS.md | 161 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | AGENTS.md | 165 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/run_smoke_all_models.py | 2 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/run_smoke_all_models.py | 6 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/conftest.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/conftest.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/__init__.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_online.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_online.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_markers.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_markers.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/test_weekly_metrics.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/test_weekly_metrics.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/test_main.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/test_main.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_metrics_csv.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_metrics_csv.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_metrics_csv.py | 31 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_metrics_csv.py | 33 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_metrics_csv.py | 90 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_metrics_csv.py | 92 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/test_metrics_csv.py | 113 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/test_metrics_csv.py | 115 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_auto_batch.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_auto_batch.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_gradient_clipping.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_gradient_clipping.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/conftest.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/conftest.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/conftest.py | 16 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/conftest.py | 19 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/conftest.py | 91 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/conftest.py | 93 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/test_trainer_smoke.py | 61 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/test_trainer_smoke.py | 63 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_trainer_smoke.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_trainer_smoke.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_trainer_smoke.py | 39 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_trainer_smoke.py | 41 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_trainer_smoke.py | 343 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_trainer_smoke.py | 345 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_grad_accumulation.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_grad_accumulation.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_coco_map.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_coco_map.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_coco_map_streaming.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_coco_map_streaming.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/training/test_detr_shim.py | 185 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/test_detr_shim.py | 187 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/test_detr_shim.py | 700 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/test_detr_shim.py | 702 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/test_detr_shim.py | 1397 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/training/test_detr_shim.py | 1399 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_detr_shim.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_detr_shim.py | 5 | # ------------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/training/test_detr_shim.py | 43 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_detr_shim.py | 45 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_detr_shim.py | 484 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/training/test_detr_shim.py | 486 | # --------------------------------------------------------------------------- | COMMENT |
| 1242 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/run_smoke_all_models.py | 171 | def _test_coco_class_name_mapping(model_instance: object) -> None: | CODE |
| LOW | tests/conftest.py | 167 | def synthetic_shape_dataset_dir(tmp_path_factory: pytest.TempPathFactory) -> Generator[Path, Any, None]: | CODE |
| LOW | tests/conftest.py | 183 | def synthetic_shape_segmentation_dataset_dir( | CODE |
| LOW⚡ | tests/test_weekly_metrics.py | 331 | def test_rendered_metadata_round_trips_complete_state(self) -> None: | CODE |
| LOW⚡ | tests/test_weekly_metrics.py | 340 | def test_parser_rejects_malformed_checkpoint_json(self) -> None: | CODE |
| LOW⚡ | tests/test_weekly_metrics.py | 347 | def test_parser_rejects_negative_downloads(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 85 | def test_thursday_selects_previous_completed_week(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 96 | def test_sums_exact_completed_week(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 118 | def test_rejects_incomplete_week(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 132 | def test_rejects_non_calendar_week(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 147 | def test_first_observation_establishes_unknown_delta_baseline(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 160 | def test_next_observation_records_star_delta(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 175 | def test_gap_establishes_unknown_delta_baseline(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 190 | def test_same_period_replaces_observation_without_resetting_delta(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 214 | def test_same_period_rerun_keeps_delta_at_minimum_history_limit(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 234 | def test_rejects_period_older_than_checkpoint(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 248 | def test_next_observation_records_zero_star_delta(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 267 | def test_retains_only_configured_latest_history(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 295 | def test_checked_in_svg_contains_post_correction_backfill(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 319 | def test_load_state_rejects_oversized_existing_svg(self, tmp_path: Path) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 365 | def test_metadata_escapes_xml_characters_and_round_trips(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 379 | def test_baseline_does_not_claim_zero_weekly_star_growth(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 388 | def test_baseline_week_draws_no_download_mark(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 406 | def test_renders_zero_downloads_week_without_dividing_by_zero(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 418 | def test_chart_uses_display_window_and_latest_summary(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 453 | def test_reports_connection_failure_as_metrics_error(self, error: Exception, match: str) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 472 | def test_reports_body_read_failure_as_metrics_error(self, read_error: Exception) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 493 | def test_reports_invalid_body_as_metrics_error(self, body: bytes, match: str) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 510 | def test_fetch_star_count_uses_repository_api_and_token_header(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 522 | def test_fetch_daily_downloads_reads_without_mirrors_series(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 541 | def test_fetch_daily_downloads_rejects_duplicate_dates(self) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 606 | def test_fetch_daily_downloads_rejects_malformed_response(self, payload: dict, match: str) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 624 | def test_first_update_writes_fetch_results_as_embedded_baseline(self, tmp_path: Path) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 657 | def test_cli_writes_custom_output(self, tmp_path: Path) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 680 | def test_same_week_rerun_is_byte_identical(self, tmp_path: Path) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 705 | def test_malformed_existing_svg_is_not_overwritten(self, tmp_path: Path) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 722 | def test_failed_write_removes_its_temporary_file(self, tmp_path: Path) -> None: | CODE |
| LOW | tests/test_weekly_metrics.py | 744 | def test_script_entry_point_executes_after_all_helpers_are_defined(self, tmp_path: Path) -> None: | CODE |
| LOW | tests/test_main.py | 18 | def test_dispatches_to_cli_main_when_run_as_script(self) -> None: | CODE |
| LOW | tests/test_main.py | 31 | def test_skips_cli_main_when_imported_as_a_module(self) -> None: | CODE |
| LOW⚡ | tests/training/test_metrics_csv.py | 121 | def test_base_metrics_present_without_ema(self, base_model_config, base_train_config): | CODE |
| LOW | tests/training/test_metrics_csv.py | 134 | def test_ema_metrics_present_with_ema_enabled(self, base_model_config, base_train_config): | CODE |
| LOW | tests/training/test_metrics_csv.py | 147 | def test_train_loss_is_unscaled(self, base_model_config, base_train_config): | CODE |
| LOW | tests/training/test_metrics_csv.py | 252 | def test_history_preserved_across_resume(self, base_model_config, base_train_config): | CODE |
| LOW | tests/training/test_metrics_csv.py | 284 | def test_reused_output_dir_with_empty_resume_resets_history(self, base_model_config, base_train_config): | CODE |
| LOW | tests/training/test_metrics_csv.py | 307 | def test_reused_output_dir_without_resume_resets_history(self, base_model_config, base_train_config): | CODE |
| LOW | tests/training/test_auto_batch.py | 26 | def test_recommend_grad_accum_steps_rounds_up(): | CODE |
| LOW | tests/training/test_auto_batch.py | 30 | def test_probe_max_micro_batch_uses_exponential_then_binary_search(): | CODE |
| LOW | tests/training/test_auto_batch.py | 56 | def test_probe_max_micro_batch_raises_if_one_is_not_safe(): | CODE |
| LOW | tests/training/test_auto_batch.py | 75 | def test_probe_max_micro_batch_reprobes_batch_one_with_state_resident(): | CODE |
| LOW | tests/training/test_auto_batch.py | 111 | def test_probe_max_micro_batch_warms_up_state_before_exponential_search(): | CODE |
| LOW | tests/training/test_auto_batch.py | 143 | def test_probe_max_micro_batch_raises_before_building_shadow_optimizer_when_no_trainable_params(): | CODE |
| LOW | tests/training/test_auto_batch.py | 170 | def test_probe_step_raises_when_loss_keys_do_not_overlap_weight_keys(): | CODE |
| LOW | tests/training/test_auto_batch.py | 215 | def test_probe_step_rejects_trainable_params_shadow_args_passed_positionally(): | CODE |
| LOW | tests/training/test_auto_batch.py | 305 | def test_does_not_mutate_real_model_parameters(self) -> None: | CODE |
| LOW | tests/training/test_auto_batch.py | 336 | def test_populates_shadow_optimizer_state(self) -> None: | CODE |
| LOW | tests/training/test_auto_batch.py | 349 | def test_shadow_optimizer_state_reused_not_reallocated_across_iterations(self) -> None: | CODE |
| LOW | tests/training/test_auto_batch.py | 377 | def test_shadow_grad_cleared_after_step(self) -> None: | CODE |
| LOW | tests/training/test_auto_batch.py | 387 | def test_shadow_grad_cleared_when_step_itself_ooms(self) -> None: | CODE |
| LOW | tests/training/test_auto_batch.py | 457 | def test_probe_max_micro_batch_drives_real_search_loop_end_to_end(): | CODE |
| 5053 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/_online.py | 14 | Report whether *host* accepts a TCP connection on *port* within *timeout_s*. Args: host: Hostname or IP add | STRING |
| HIGH | tests/training/test_coco_map.py | 1425 | Ground truth shaped to exercise the columnar builder's edge cases, not just its happy path. Args: seed: Tor | STRING |
| HIGH | tests/training/test_coco_map.py | 1480 | Return one filled-rectangle mask per box, on the fixture's fixed canvas. Args: boxes: ``(N, 4)`` boxes in ` | STRING |
| HIGH | tests/training/test_coco_map.py | 2025 | Return two images of axis-aligned rectangle masks that fill their boxes exactly, so box and mask areas agree. Args: | STRING |
| HIGH | tests/training/test_module_data.py | 1053 | Build one (image, target) pair shaped exactly as the COCO reader produces for a segmentation model: ``masks`` is | STRING |
| HIGH | tests/training/test_coco_map_masks.py | 54 | Return a ``(K, H, W)`` mask stack for one COCO RLE edge case. ``background`` and ``foreground`` are single-run mask | STRING |
| HIGH | tests/training/test_coco_map_masks.py | 121 | Wrap a mask stack as one image of predictions, with the mirrored stack as that image's ground truth. Args: | STRING |
| HIGH | tests/training/test_coco_map_masks.py | 220 | Return one image of predictions and ground truth exercising one rule of TorchMetrics' stored state. ``crowd_and_are | STRING |
| HIGH | tests/training/test_coco_map_masks.py | 289 | Update *metric* with one image of identical detections and report whether it warned about too many. Args: m | STRING |
| HIGH | tests/training/test_coco_map_dataset.py | 24 | Return a boolean ``_CANVAS`` x ``_CANVAS`` mask that is set on one rectangle. Args: top: First masked row. | STRING |
| HIGH | tests/training/test_coco_map_dataset.py | 122 | Return a per-class metric on ``backend`` that has seen :func:`_records`. Args: backend: The ``eval_backend` | STRING |
| HIGH | tests/training/test_coco_map_dataset.py | 239 | Return a stand-in hotcoco module whose ``COCO`` type carries only the given attributes. Args: **sym | STRING |
| HIGH | tests/training/test_fused_adamw_ema.py | 42 | Run the wrapped model. Args: inputs: Model input. Returns: The wrapped model's | STRING |
| HIGH | tests/training/test_fused_adamw_ema.py | 66 | Run one head, leaving the other without a gradient. Args: inputs: Model input. use_firs | STRING |
| HIGH | tests/training/test_fused_adamw_ema.py | 146 | Build one arm of the production comparison: module, trainer stand-in, optimizer, EMA callback, parameters. Args: | STRING |
| HIGH | tests/training/test_fused_adamw_ema.py | 183 | Fit the production module with a real Lightning ``Trainer``, optionally resuming a checkpoint. Two micro-batches pe | STRING |
| HIGH | tests/training/callbacks/test_best_model_callback.py | 37 | Create a minimal mock Trainer with controllable callback_metrics. Sets the attributes required by ModelCheckpoint a | STRING |
| HIGH | tests/datasets/test_kornia_transforms.py | 2268 | Shift a ``(C, H, W)`` array right by ``tx`` and down by ``ty`` pixels, filling from the border. This is the referen | STRING |
| HIGH | tests/datasets/test_kornia_transforms.py | 2299 | Build a pixel-translation transform and fix its sampled per-image offsets. The transform comes from the public buil | STRING |
| HIGH | tests/datasets/test_keypoint_schema.py | 31 | Write a minimal COCO annotation file. Args: path: Destination JSON path. categories: COCO category | STRING |
| HIGH | tests/datasets/test_coco.py | 252 | Build a builder namespace carrying the image-pipeline options the dataset builders require. The builders read these | STRING |
| HIGH | tests/datasets/test_coco.py | 1572 | Write a Roboflow-style COCO split whose category list starts with a synthetic root node. Args: directory: S | STRING |
| HIGH | tests/datasets/test_builder_options.py | 37 | Build the merged model/train namespace passed to dataset builders. Args: model_config: Architecture config | STRING |
| HIGH | tests/datasets/test_builder_options.py | 69 | Run the standard COCO builder with external dataset operations mocked. Args: args: Namespace forwarded to t | STRING |
| HIGH | tests/datasets/test_builder_options.py | 110 | Run the Roboflow COCO builder with external dataset operations mocked. Args: args: Namespace forwarded to t | STRING |
| HIGH | tests/datasets/test_builder_options.py | 151 | Run the YOLO builder with filesystem and dataset operations mocked. Args: args: Namespace forwarded to the | STRING |
| HIGH | tests/datasets/test_builder_options.py | 189 | Run the Object365 builder with dataset and transform operations mocked. Args: args: Namespace forwarded to | STRING |
| HIGH | tests/datasets/test_augmentations.py | 35 | Report whether the installed Albumentations exports a transform. Albumentations is imported inside the call, not at | STRING |
| HIGH | tests/datasets/test_webdataset.py | 86 | Write a synthetic COCO split to disk and return its ``(image_dir, annotations_path)``. Args: tmp_path: Root | STRING |
| HIGH | tests/datasets/test_webdataset.py | 1396 | Build the merged model/train namespace :func:`~rfdetr.datasets.webdataset.load.build_webdataset` expects. Args: | STRING |
| HIGH | tests/legacy/test_checkpoint_compat.py | 99 | Parse a versions file and return a list of version strings. Args: versions_file: Path to the versions file. | STRING |
| HIGH | tests/legacy/test_checkpoint_compat.py | 131 | Return the expected checkpoint path for *version*. Args: version: rfdetr version string, e.g. ``"1.5.0"``. | STRING |
| HIGH | tests/legacy/test_checkpoint_compat.py | 151 | Return the artifact path for a legacy checkpoint prediction image. Args: version: Legacy RF-DETR version en | STRING |
| HIGH | tests/legacy/generate_checkpoint.py | 79 | Download (once) and return the path to the fixed reference test image. Caches the file in a stable temp directory a | STRING |
| HIGH | tests/legacy/generate_checkpoint.py | 118 | Extract the highest-confidence detection as a plain, picklable reference. ``class_id`` (not ``class_name``) is the | STRING |
| HIGH | tests/legacy/generate_checkpoint.py | 170 | Extract the bare model state-dict from an rfdetr facade instance. Tries the current layout (``model.model.model.sta | STRING |
| HIGH | tests/legacy/generate_checkpoint.py | 213 | Extract patch_size from an rfdetr facade instance. Args: model: An rfdetr facade instance. Returns: | STRING |
| HIGH | tests/legacy/generate_checkpoint.py | 239 | Instantiate an rfdetr model, falling back through available classes. Tries *preferred_class* first, then ``RFDETRBa | STRING |
| HIGH | tests/legacy/generate_checkpoint.py | 319 | Best-effort check for whether *exc* looks like a network/infra failure, not a code bug. Walks the exception's ``__c | STRING |
| HIGH | tests/models/test_transformer_onnx_two_stage.py | 56 | Return the decoder hidden states. Args: src: Feature map of shape ``(B, C, H, W)``. pos | STRING |
| HIGH | tests/models/test_transformer_onnx_two_stage.py | 145 | Return the names of ``Concat`` nodes with exactly one input — the shape CoreML rejects. Args: graph: An ONN | STRING |
| HIGH | tests/models/test_transformer_onnx_two_stage.py | 165 | Return the names of ``Concat`` nodes with a zero-sized float input — the other shape CoreML rejects. Only float dat | STRING |
| HIGH | tests/models/test_model.py | 14 | Return the patch-embedding projection layer for an RF-DETR model. RFDETR wrappers are not nn.Module; the underlying | STRING |
| HIGH | tests/models/_transformer_support.py | 61 | Spy on ``function.apply``: record every call's arguments and still run the real autograd function. Args: mo | STRING |
| HIGH | tests/models/test_criterion.py | 1213 | Build one random detection batch with a different ground-truth count per image. Args: seed: Seed for the ba | STRING |
| HIGH | tests/models/test_criterion.py | 1249 | Build a criterion on the production classification branch. ``SetCriterion`` defaults ``ia_bce_loss`` to False while | STRING |
| HIGH | tests/models/test_criterion.py | 1290 | Build detection output layers and their per-image targets. Optional masks cover the segmentation case. Target boxes | STRING |
| HIGH | tests/models/test_assignment.py | 28 | Solve one ungrouped compact cost matrix per-image with SciPy directly. Ground truth for ``group_detr=1`` cases: no | STRING |
| HIGH | tests/models/test_transformer_keypoints.py | 28 | Build minimal synthetic multi-scale inputs for `Transformer.forward`. Examples: >>> srcs, masks, pos_embeds | STRING |
| HIGH | tests/models/test_transformer.py | 130 | Build minimal valid inputs for ms_deform_attn_core_pytorch. Examples: >>> value, spatial_shapes, sampling_l | STRING |
| HIGH | tests/models/test_transformer.py | 1548 | Build batch=1 per-position class scores with `picks` as the strictly descending top-k winners. Args: total_ | STRING |
| HIGH | tests/models/test_transformer.py | 1696 | Build a two-stage ``Transformer`` whose group heads are the concrete types LWDETR constructs. ``Transformer.__init_ | STRING |
| HIGH | tests/models/test_transformer.py | 2295 | Build a decoder-free, two-stage ``Transformer`` with GroupPose keypoint heads enabled. ``num_decoder_layers=0`` iso | STRING |
| HIGH | tests/models/test_transformer.py | 2558 | Reproduce Transformer.forward's two-stage box construction from a bbox-delta MLP output. Args: delta: Raw ` | STRING |
| HIGH | tests/models/test_platform_models.py | 28 | Execute a fresh copy of ``rfdetr.platform.models`` against a fake ``rfdetr_plus``. The shipped module decides what | STRING |
| HIGH | tests/models/heads/test_segmentation_head.py | 637 | Return mask logits for one decoder layer's query features at a fixed 4x4 image size. Args: spatial_ | STRING |
| HIGH | tests/models/heads/test_detection_head.py | 26 | Construct the smallest viable LWDETR without loading pretrained weights. Uses a MagicMock backbone and transformer | STRING |
| HIGH | tests/models/heads/test_detection_head.py | 61 | Construct a minimal keypoint-capable LWDETR with detection head resized to num_classes+1. Mirrors what happens afte | STRING |
| HIGH | tests/models/heads/test_detection_head.py | 104 | Build a zero keypoint prediction tensor with the shape expected by _aggregate_keypoint_class_logits. The second-to- | STRING |
| HIGH | tests/utilities/test_imports.py | 28 | Map each flag a module assigns from ``is_installed("<package>")`` to its literal package name. The names come from | STRING |
| 458 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/_online.py | 8 | CODE | |
| LOW | tests/_markers.py | 8 | CODE | |
| LOW | tests/training/test_metrics_csv.py | 16 | CODE | |
| LOW | tests/training/test_gradient_clipping.py | 23 | CODE | |
| LOW | tests/training/test_grad_accumulation.py | 18 | CODE | |
| LOW | tests/training/test_checkpoint_cadence.py | 15 | CODE | |
| LOW | tests/training/test_fused_adamw_ema.py | 8 | CODE | |
| LOW | tests/training/test_cuda_graph_te.py | 8 | CODE | |
| LOW | tests/training/test_cuda_graph_step.py | 8 | CODE | |
| LOW | tests/training/test_module_model_encoder_weights.py | 8 | CODE | |
| LOW | tests/training/test_cli.py | 25 | CODE | |
| LOW | tests/training/test_trainer.py | 8 | CODE | |
| LOW | tests/training/helpers.py | 14 | CODE | |
| LOW | tests/training/test_fused_adamw_ema_routing.py | 8 | CODE | |
| LOW | …ing/callbacks/test_gpu_memory_progress_bar_callback.py | 8 | CODE | |
| LOW | tests/training/callbacks/test_ema_callback.py | 8 | CODE | |
| LOW | tests/training/callbacks/test_best_model_callback.py | 8 | CODE | |
| LOW | tests/training/callbacks/test_drop_path_callback.py | 8 | CODE | |
| LOW | tests/datasets/test_o365.py | 13 | CODE | |
| LOW | tests/datasets/test__torchvision.py | 8 | CODE | |
| LOW | tests/legacy/test_checkpoint_compat.py | 23 | CODE | |
| LOW | tests/legacy/generate_checkpoint.py | 36 | CODE | |
| LOW | tests/legacy/test_generate_checkpoint.py | 13 | CODE | |
| LOW | tests/models/test_transformer_onnx_two_stage.py | 14 | CODE | |
| LOW | tests/models/test_safe_torch_load.py | 11 | CODE | |
| LOW | tests/models/_transformer_support.py | 8 | CODE | |
| LOW | tests/models/test_assignment.py | 16 | CODE | |
| LOW | tests/models/test_transformer_rewrites.py | 12 | CODE | |
| LOW | tests/models/test_math.py | 8 | CODE | |
| LOW | tests/models/test_defaults.py | 14 | CODE | |
| LOW | tests/models/ops/functions/test_ms_deform_attn_func.py | 8 | CODE | |
| LOW | tests/models/backbone/test_backbone.py | 8 | CODE | |
| LOW | tests/models/backbone/test_backbone_registry.py | 8 | CODE | |
| LOW | tests/models/backbone/test_projector.py | 8 | CODE | |
| LOW | tests/models/backbone/test_base.py | 8 | CODE | |
| LOW | tests/visualize/test_training.py | 8 | CODE | |
| LOW | tests/utilities/test_decorators.py | 8 | CODE | |
| LOW | tests/utilities/test_imports.py | 8 | CODE | |
| LOW | tests/utilities/test_logger.py | 19 | CODE | |
| LOW | tests/inference/test_predict_cuda_transfer.py | 14 | CODE | |
| LOW | tests/inference/test_model_device_move.py | 14 | CODE | |
| LOW | tests/inference/test_from_checkpoint.py | 15 | CODE | |
| LOW | tests/inference/helpers.py | 14 | CODE | |
| LOW | tests/export/test_onnx_inference.py | 14 | CODE | |
| LOW | tests/export/test_registry.py | 13 | CODE | |
| LOW | tests/export/test_coreml_ane.py | 23 | CODE | |
| LOW | tests/export/test_executorch_coreml.py | 22 | CODE | |
| LOW | tests/export/conftest.py | 16 | CODE | |
| LOW | tests/export/test_neural_engine.py | 8 | CODE | |
| LOW | tests/export/test_tensorrt_int8.py | 14 | CODE | |
| LOW | tests/export/test_tensorrt_metadata.py | 14 | CODE | |
| LOW | tests/export/test_runtime_decode.py | 14 | CODE | |
| LOW | tests/export/test_topk_selection_parity.py | 22 | CODE | |
| LOW | tests/export/test_openvino_export.py | 21 | CODE | |
| LOW | tests/export/test_executorch_xnnpack.py | 8 | CODE | |
| LOW | tests/export/test_litert_sampling.py | 8 | CODE | |
| LOW | tests/export/test_roboflow_deploy_e2e.py | 30 | CODE | |
| LOW | tests/export/test_class_layout.py | 8 | CODE | |
| LOW | tests/export/test_public_facades.py | 13 | CODE | |
| LOW | tests/export/test_parity_helpers.py | 13 | CODE | |
| 259 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | mkdocs.yaml | 101 | edit: material/pencil | COMMENT |
| LOW | pyproject.toml | 61 | # resolves its COCO helpers from a closed backend-name enum that has no hotcoco member. The floor is 1.2.1. | COMMENT |
| LOW | pyproject.toml | 81 | # The ceiling keeps the parity-tested 0.1 line until the next series is verified against the adapter. The | COMMENT |
| LOW | pyproject.toml | 161 | executorch = [ | COMMENT |
| LOW | pyproject.toml | 181 | ] | COMMENT |
| LOW | pyproject.toml | 221 | # cannot express "equal minor", so we pin BOTH to the current known-good pair (2.9) — bump the two | COMMENT |
| LOW | pyproject.toml | 481 | "e2e_roboflow: live deploy_to_roboflow() upload + train-status validation (issue #1116); requires ROBOFLOW_API_KEY ( | COMMENT |
| LOW | tests/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/training/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/training/callbacks/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/datasets/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/legacy/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/legacy/checkpoint_versions.txt | 1 | # RF-DETR versions to include in backward-compatibility checkpoint matrix. | COMMENT |
| LOW | tests/legacy/frozen_dependencies/req-1.7.txt | 1 | # Frozen dependency set for generating the rfdetr~=1.7.0 legacy checkpoint | COMMENT |
| LOW | tests/legacy/frozen_dependencies/req-1.6.txt | 1 | # Frozen dependency set for generating the rfdetr~=1.6.0 legacy checkpoint | COMMENT |
| LOW | tests/legacy/frozen_dependencies/req-1.4.txt | 1 | # Frozen dependency set for generating the rfdetr~=1.4.0 legacy checkpoint | COMMENT |
| LOW | tests/legacy/frozen_dependencies/req-1.5.txt | 1 | # Frozen dependency set for generating the rfdetr~=1.5.0 legacy checkpoint | COMMENT |
| LOW | tests/legacy/frozen_dependencies/req-1.8.txt | 1 | # Frozen dependency set for generating the rfdetr~=1.8.0 legacy checkpoint | COMMENT |
| LOW | tests/models/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/models/heads/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/models/ops/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/models/ops/functions/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/models/backbone/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/cli/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/utilities/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/inference/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/evaluation/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/export/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | tests/export/test_coreml_export.py | 761 | # Keypoints are preview-only and therefore XLarge at resolution 576 — several times the work of the | COMMENT |
| LOW | tests/assets/__init__.py | 1 | # ------------------------------------------------------------------------ | COMMENT |
| LOW | .github/workflows/ci-integrations.yml | 61 | # list/`.`, and the SAME job timeout, so a format silently drifting onto too-narrow a test | COMMENT |
| LOW | .github/workflows/ci-integrations.yml | 81 | format: ["openvino", "litert", "onnx"] | COMMENT |
| LOW | .github/workflows/ci-tests-xla.yml | 1 | name: XLA tests Workflow | COMMENT |
| LOW | .github/workflows/publish-docs.yml | 1 | # Build and deploy MkDocs documentation to GitHub Pages (https://rfdetr.roboflow.com/) | COMMENT |
| LOW | src/rfdetr/detr.py | 501 | #: that two threads reaching a never-moved module together cannot create two different locks over its storage. | COMMENT |
| LOW | src/rfdetr/detr.py | 601 | if isinstance(target, str): | COMMENT |
| LOW | src/rfdetr/detr.py | 1141 | # "" — pretrain_weights key absent entirely | COMMENT |
| LOW | src/rfdetr/detr.py | 1341 | _inferred_nc, | COMMENT |
| LOW | src/rfdetr/detr.py | 1501 | self._align_keypoint_schema_from_dataset(config) | COMMENT |
| LOW | src/rfdetr/detr.py | 1621 | # metadata, and per-callback state only when the resumed callback configuration | COMMENT |
| LOW | src/rfdetr/detr.py | 2621 | # The request holds up; now the host must too. A missing install is refused here rather than inside the | COMMENT |
| LOW | src/rfdetr/detr.py | 3301 | if not isinstance(images, (list, tuple)): | COMMENT |
| LOW | src/rfdetr/detr.py | 3381 | # ``.copy()``, not ``np.ascontiguousarray``: NumPy ignores the stride of a length-1 axis when | COMMENT |
| LOW | src/rfdetr/detr.py | 3621 | # by far the largest of the group in a crowded/high-detection-count frame). | COMMENT |
| LOW | src/rfdetr/config.py | 1241 | # Gradient accumulation is an explicit opt-in, not a silent default: max out batch_size for the GPU first | COMMENT |
| LOW | src/rfdetr/config.py | 1301 | multi_scale: MultiScale = MultiScale.PER_BATCH | COMMENT |
| LOW | src/rfdetr/config.py | 1501 | # device is intentionally absent: PTL auto-detects accelerator via Trainer(accelerator="auto"). | COMMENT |
| LOW | src/rfdetr/training/coco_map.py | 501 | # vernier evaluates on its own API, reaching neither the COCO dataset and evaluator surfaces nor | COMMENT |
| LOW | src/rfdetr/training/module_data.py | 401 | # a machine without CUDA/kornia would strip CPU Normalize from datasets | COMMENT |
| LOW | src/rfdetr/training/module_model.py | 401 | # Manual optimization is enabled only for keypoint models so that the box-count | COMMENT |
| LOW | src/rfdetr/training/module_model.py | 421 | # loss; emitted from on_validation_epoch_start on the first real (non-sanity) validation epoch only. | COMMENT |
| LOW | src/rfdetr/training/module_model.py | 501 | # (a validation batch of another shape recompiles once). Positional | COMMENT |
| LOW | src/rfdetr/training/module_model.py | 541 | logger.warning( | COMMENT |
| LOW | src/rfdetr/training/module_model.py | 1621 | else: | COMMENT |
| LOW | src/rfdetr/training/trainer.py | 61 | COMMENT | |
| LOW | src/rfdetr/training/trainer.py | 601 | # into the required XLA plugin after applying caller-provided Trainer arguments. Uses | COMMENT |
| LOW | src/rfdetr/training/trainer.py | 641 | if tpu_accelerator and amp_dtype in {"bf16", "auto"}: | COMMENT |
| LOW | src/rfdetr/training/trainer.py | 661 | # no GradScaler.scale/unscale/update overhead per optimizer step. | COMMENT |
| LOW | src/rfdetr/training/trainer.py | 781 | ) | COMMENT |
| LOW | src/rfdetr/training/trainer.py | 821 | # step on 2x L4/NCCL (5 runs, real detection model, find_unused_parameters=True kept alongside | COMMENT |
| 47 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | tests/training/callbacks/test_ema_callback.py | 387 | cb._average_model.module.model.weight.fill_(5.0) | CODE |
| CRITICAL | tests/training/callbacks/test_ema_callback.py | 413 | source_callback._average_model.module.model.weight.fill_(5.0) | CODE |
| CRITICAL | tests/training/callbacks/test_ema_callback.py | 444 | cb._average_model.module.model.weight.fill_(5.0) | CODE |
| CRITICAL⚡ | tests/models/backbone/test_windowed_dino.py | 494 | before = [layer.attention.attention.query.weight.clone() for layer in model.encoder.layer] | CODE |
| CRITICAL⚡ | tests/models/backbone/test_windowed_dino.py | 509 | key_before = [layer.attention.attention.key.weight.clone() for layer in model.encoder.layer] | CODE |
| CRITICAL⚡ | tests/models/backbone/test_windowed_dino.py | 510 | val_before = [layer.attention.attention.value.weight.clone() for layer in model.encoder.layer] | CODE |
| CRITICAL⚡ | tests/models/backbone/test_windowed_dino.py | 527 | dense_before = [layer.attention.output.dense.weight.clone() for layer in model.encoder.layer] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/training/test_detr_shim.py | 1484 | def _set_class_names(mock_self: MagicMock, class_names: list[str]) -> None: | CODE |
| LOW⚡ | tests/training/test_module_model.py | 340 | def update_drop_path(self, *args, **kwargs) -> None: | CODE |
| LOW⚡ | tests/training/test_module_model.py | 343 | def update_dropout(self, *args, **kwargs) -> None: | CODE |
| LOW⚡ | tests/training/test_build_trainer.py | 1296 | def update_drop_path(self, *args, **kwargs) -> None: | CODE |
| LOW⚡ | tests/training/test_build_trainer.py | 1299 | def update_dropout(self, *args, **kwargs) -> None: | CODE |
| LOW⚡ | tests/training/helpers.py | 35 | def update_drop_path(self, *args, **kwargs) -> None: | CODE |
| LOW⚡ | tests/training/helpers.py | 38 | def update_dropout(self, *args, **kwargs) -> None: | CODE |
| LOW | tests/training/callbacks/test_ema_callback.py | 58 | def set_extra_state(self, state: object) -> None: | CODE |
| LOW | tests/training/callbacks/test_best_model_callback.py | 3003 | def set_extra_state(self, state: object) -> None: | CODE |
| LOW | tests/inference/test_trt_inference.py | 571 | def set_stream(self, stream: object) -> None: | CODE |
| LOW | tests/export/test_benchmark_coco.py | 84 | def _set_image_field(annotations_path: Path, image_id: int, key: str, value: str) -> None: | CODE |
| LOW | tests/export/test_prepare.py | 167 | def set_export_shape(self, shape: tuple[int, int]) -> None: | CODE |
| LOW | src/rfdetr/detr.py | 379 | __all__ = ["RFDETR", "ModelContext", *_VARIANT_EXPORTS] | CODE |
| LOW | src/rfdetr/config.py | 38 | __all__ = [ | CODE |
| LOW⚡ | src/rfdetr/variants.py | 15 | __all__ = [ | CODE |
| LOW | src/rfdetr/__init__.py | 64 | __all__ = [ | CODE |
| LOW⚡ | src/rfdetr/inference.py | 10 | __all__ = ["ModelContext"] | CODE |
| LOW | src/rfdetr/training/module_data.py | 952 | def _setup_kornia_pipeline(self) -> None: | CODE |
| LOW | src/rfdetr/training/fused_adamw_ema.py | 110 | def set_max_grad_norm(self, value: float | None) -> None: | CODE |
| LOW | src/rfdetr/training/checkpoint.py | 29 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/rfdetr/training/checkpoint.py | 31 | __all__ = ["convert_legacy_checkpoint"] | CODE |
| LOW | src/rfdetr/training/model_ema.py | 184 | __all__ = [ | CODE |
| LOW | src/rfdetr/training/__init__.py | 36 | __all__ = [ | CODE |
| LOW | src/rfdetr/training/callbacks/ema.py | 357 | def _update_ema_for_step(self, pl_module: LightningModule, global_step: int) -> None: | CODE |
| LOW | src/rfdetr/training/callbacks/__init__.py | 17 | __all__ = [ | CODE |
| LOW | src/rfdetr/training/callbacks/coco_eval.py | 1253 | def _update_keypoint_oks_metric(self, trainer: Any, outputs: Mapping[str, Any], split: str) -> None: | CODE |
| LOW | src/rfdetr/datasets/aug_config.py | 32 | __all__ = [ | CODE |
| LOW | src/rfdetr/datasets/_keypoint_schema.py | 21 | __all__ = [ | CODE |
| LOW⚡ | src/rfdetr/models/__init__.py | 24 | __all__ = [ | CODE |
| LOW | src/rfdetr/models/weights.py | 41 | __all__ = ["load_pretrain_weights", "apply_lora", "interpolate_position_embeddings"] | CODE |
| LOW | src/rfdetr/models/lwdetr.py | 778 | def update_drop_path(self, drop_path_rate: float, vit_encoder_num_layers: int) -> None: | CODE |
| LOW | src/rfdetr/models/lwdetr.py | 809 | def update_dropout(self, drop_rate: float) -> None: | CODE |
| LOW⚡ | src/rfdetr/models/heads/__init__.py | 11 | __all__ = [ | CODE |
| LOW | src/rfdetr/models/heads/keypoints.py | 601 | __all__ = [ | CODE |
| LOW⚡ | src/rfdetr/models/ops/functions/__init__.py | 18 | __all__ = [ | CODE |
| LOW⚡ | src/rfdetr/models/ops/modules/__init__.py | 15 | __all__ = [ | CODE |
| LOW | src/rfdetr/models/backbone/dinov2_with_windowed_attn.py | 975 | def set_attn_implementation(self, attn_implementation: str) -> None: # type: ignore[override] | STRING |
| LOW | src/rfdetr/models/backbone/dinov2_with_windowed_attn.py | 1376 | __all__ = [ | STRING |
| LOW | src/rfdetr/models/backbone/backbone.py | 33 | __all__ = ["Backbone"] | CODE |
| LOW⚡ | src/rfdetr/cli/__init__.py | 12 | __all__ = ["main"] | CODE |
| LOW⚡ | src/rfdetr/visualize/__init__.py | 11 | __all__ = [ | CODE |
| LOW⚡ | src/rfdetr/utilities/compiler.py | 12 | __all__ = ["cuda_autocast_dtype", "is_compiling", "is_tracing"] | CODE |
| LOW | src/rfdetr/utilities/__init__.py | 35 | __all__ = [ | CODE |
| LOW⚡ | src/rfdetr/utilities/keypoints.py | 15 | __all__ = [ | CODE |
| LOW⚡ | src/rfdetr/utilities/decorators.py | 14 | __all__ = ["TargetMode", "deprecated", "void"] | CODE |
| LOW⚡ | src/rfdetr/evaluation/__init__.py | 14 | __all__ = [ | CODE |
| LOW | src/rfdetr/export/benchmark.py | 37 | __all__ = ["BenchmarkResult", "MemoryResult", "measure_latency", "measure_memory"] | CODE |
| LOW | src/rfdetr/export/prepare.py | 83 | def set_export_shape(self, shape: tuple[int, int]) -> None: | CODE |
| LOW | src/rfdetr/export/_openvino/__init__.py | 16 | __all__ = ["_IS_OPENVINO_AVAILABLE"] | CODE |
| LOW | src/rfdetr/export/_litert/__init__.py | 16 | __all__ = ["_IS_LITERT_AVAILABLE"] | CODE |
| LOW | src/rfdetr/export/_tflite/__init__.py | 16 | __all__ = ["TFLiteExporter", "_IS_ONNX2TF_AVAILABLE"] | CODE |
| LOW | src/rfdetr/export/_executorch/__init__.py | 19 | __all__ = ["ExecuTorchExporter"] | CODE |
| LOW⚡ | src/rfdetr/assets/__init__.py | 14 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/models/conftest.py | 25 | except AttributeError: | CODE |
| HIGH | tests/export/test_executorch_export.py | 219 | except Exception: | CODE |
| HIGH | tests/export/test_executorch_export.py | 231 | except Exception: | CODE |
| HIGH | tests/export/test_tflite_export.py | 827 | except RuntimeError: | CODE |
| HIGH | tests/export/test_tflite_export.py | 912 | except RuntimeError: | CODE |
| HIGH | src/rfdetr/detr.py | 69 | except Exception: | CODE |
| HIGH | src/rfdetr/detr.py | 2814 | except WebDatasetSplitUnavailableError: | CODE |
| HIGH | src/rfdetr/training/module_model.py | 814 | except RuntimeError: | CODE |
| HIGH | src/rfdetr/utilities/files.py | 105 | except FileNotFoundError: | CODE |
| HIGH | src/rfdetr/utilities/io.py | 75 | except (RuntimeError, pickle.UnpicklingError): | CODE |
| HIGH | src/rfdetr/utilities/io.py | 88 | except (RuntimeError, pickle.UnpicklingError): | CODE |
| HIGH | src/rfdetr/export/_executorch/exporter.py | 160 | except importlib.metadata.PackageNotFoundError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/run_smoke_all_models.py | 230 | CODE | |
| LOW | tests/training/test_coco_map.py | 1741 | CODE | |
| LOW | tests/training/test_detr_shim.py | 835 | CODE | |
| LOW | tests/training/test_coco_map_masks.py | 53 | CODE | |
| LOW | tests/training/test_fused_adamw_ema.py | 256 | CODE | |
| LOW | tests/training/test_cuda_graph_step.py | 278 | CODE | |
| LOW | tests/models/test_criterion.py | 180 | CODE | |
| LOW | tests/models/test_transformer.py | 1889 | CODE | |
| LOW | tests/models/test_transformer.py | 1926 | CODE | |
| LOW | tests/models/test_transformer.py | 3091 | CODE | |
| LOW | tests/models/test_transformer.py | 3373 | CODE | |
| LOW | tests/export/test_tensorrt_int8.py | 1769 | CODE | |
| LOW | tests/export/test_export.py | 2529 | CODE | |
| LOW | src/rfdetr/detr.py | 649 | CODE | |
| LOW | src/rfdetr/detr.py | 783 | CODE | |
| LOW | src/rfdetr/detr.py | 926 | CODE | |
| LOW | src/rfdetr/detr.py | 1435 | CODE | |
| LOW | src/rfdetr/detr.py | 1729 | CODE | |
| LOW | src/rfdetr/detr.py | 1889 | CODE | |
| LOW | src/rfdetr/detr.py | 2986 | CODE | |
| LOW | src/rfdetr/detr.py | 3165 | CODE | |
| LOW | src/rfdetr/config.py | 232 | CODE | |
| LOW | src/rfdetr/config.py | 792 | CODE | |
| LOW | src/rfdetr/training/module_data.py | 377 | CODE | |
| LOW | src/rfdetr/training/module_data.py | 1114 | CODE | |
| LOW | src/rfdetr/training/module_model.py | 676 | CODE | |
| LOW | src/rfdetr/training/module_model.py | 1556 | CODE | |
| LOW | src/rfdetr/training/module_model.py | 1776 | CODE | |
| LOW | src/rfdetr/training/module_model.py | 1878 | CODE | |
| LOW | src/rfdetr/training/param_groups.py | 203 | CODE | |
| LOW | src/rfdetr/training/param_groups.py | 259 | CODE | |
| LOW | src/rfdetr/training/trainer.py | 537 | CODE | |
| LOW | src/rfdetr/training/trainer.py | 629 | CODE | |
| LOW | src/rfdetr/training/auto_batch.py | 552 | CODE | |
| LOW | src/rfdetr/training/callbacks/best_model.py | 174 | CODE | |
| LOW | src/rfdetr/datasets/coco.py | 647 | CODE | |
| LOW | src/rfdetr/datasets/coco.py | 775 | CODE | |
| LOW | src/rfdetr/datasets/transforms.py | 443 | CODE | |
| LOW | src/rfdetr/datasets/transforms.py | 802 | CODE | |
| LOW | src/rfdetr/datasets/transforms.py | 831 | CODE | |
| LOW | src/rfdetr/datasets/kornia_transforms.py | 313 | CODE | |
| LOW | src/rfdetr/datasets/yolo.py | 351 | CODE | |
| LOW | src/rfdetr/datasets/_develop.py | 209 | CODE | |
| LOW | src/rfdetr/datasets/_develop.py | 258 | CODE | |
| LOW | src/rfdetr/datasets/webdataset/load.py | 533 | CODE | |
| LOW | src/rfdetr/models/matcher.py | 911 | CODE | |
| LOW | src/rfdetr/models/postprocess.py | 173 | CODE | |
| LOW | src/rfdetr/models/transformer.py | 886 | CODE | |
| LOW | src/rfdetr/models/transformer.py | 1291 | CODE | |
| LOW | src/rfdetr/models/transformer.py | 1646 | CODE | |
| LOW | src/rfdetr/models/criterion.py | 617 | CODE | |
| LOW | src/rfdetr/models/weights.py | 315 | CODE | |
| LOW | src/rfdetr/models/backbone/dinov2_with_windowed_attn.py | 1146 | CODE | |
| LOW | src/rfdetr/models/backbone/dinov2_with_windowed_attn.py | 1271 | CODE | |
| LOW | src/rfdetr/models/backbone/projector.py | 197 | CODE | |
| LOW | src/rfdetr/visualize/training.py | 90 | CODE | |
| LOW | src/rfdetr/utilities/files.py | 145 | CODE | |
| LOW | src/rfdetr/utilities/tensors.py | 437 | CODE | |
| LOW | src/rfdetr/evaluation/coco_eval.py | 441 | CODE | |
| LOW | src/rfdetr/evaluation/matching.py | 262 | CODE | |
| 7 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/export/test_onnx_preprocess_parity.py | 0 | mirror of the pytorch predict() preprocessing: to_tensor -> resize(antialias=false) -> normalize. examples: >>> import n | STRING |
| HIGH | tests/export/test_infer_preprocess_parity.py | 0 | mirror of the pytorch predict() preprocessing: to_tensor -> resize(antialias=false) -> normalize. examples: >>> import n | STRING |
| HIGH | tests/export/test_tflite_inference_parity.py | 0 | mirror of the pytorch predict() preprocessing: to_tensor -> resize(antialias=false) -> normalize. examples: >>> import n | STRING |
| HIGH | tests/export/test_onnx_preprocess_parity.py | 0 | deterministic synthetic rgb image with structure (not pure noise) so resize filtering matters. examples: >>> img = _make | STRING |
| HIGH | tests/export/test_infer_preprocess_parity.py | 0 | deterministic synthetic rgb image with structure (not pure noise) so resize filtering matters. examples: >>> img = _make | STRING |
| HIGH | tests/export/test_tflite_inference_parity.py | 0 | deterministic synthetic rgb image with structure (not pure noise) so resize filtering matters. examples: >>> img = _make | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/run_smoke_all_models.py | 275 | except Exception as ex: | CODE |
| LOW | tests/conftest.py | 48 | except Exception as exc: | CODE |
| LOW | tests/legacy/generate_checkpoint.py | 292 | except Exception as exc: | CODE |
| LOW⚡ | tests/export/test_executorch_export.py | 219 | except Exception: | CODE |
| LOW⚡ | tests/export/test_executorch_export.py | 231 | except Exception: | CODE |
| LOW | tests/export/test_coreml_op_coverage.py | 166 | except Exception: | CODE |
| LOW | tests/export/test_coreml_op_coverage.py | 198 | except Exception: | CODE |
| LOW | src/rfdetr/detr.py | 69 | except Exception: | CODE |
| LOW | src/rfdetr/detr.py | 287 | except Exception as exc: | CODE |
| LOW | src/rfdetr/detr.py | 835 | except Exception: | CODE |
| LOW | src/rfdetr/detr.py | 1604 | except Exception: | CODE |
| LOW | src/rfdetr/detr.py | 2091 | except Exception: | CODE |
| LOW | src/rfdetr/training/checkpoint.py | 51 | except Exception: | CODE |
| LOW | src/rfdetr/training/checkpoint.py | 95 | except Exception: | CODE |
| LOW | src/rfdetr/training/cuda_graph_step.py | 182 | except Exception as exc: | CODE |
| LOW | src/rfdetr/training/trainer.py | 616 | except Exception: # defensive parity with the rfdetr.detr import-time guard | CODE |
| LOW | src/rfdetr/datasets/transforms.py | 1189 | except Exception as e: | CODE |
| LOW | src/rfdetr/models/weights.py | 382 | except Exception: | CODE |
| LOW | src/rfdetr/utilities/files.py | 192 | except Exception: | CODE |
| LOW | src/rfdetr/utilities/files.py | 208 | except Exception: | CODE |
| LOW | src/rfdetr/export/_openvino/exporter.py | 308 | except Exception as e: | CODE |
| LOW | src/rfdetr/export/_coreml/exporter.py | 376 | except Exception as exc: | CODE |
| LOW | src/rfdetr/export/_coreml/op_coverage.py | 41 | except Exception: | CODE |
| LOW | src/rfdetr/export/_coreai/exporter.py | 278 | except Exception as exc: | CODE |
| LOW | src/rfdetr/export/_litert/exporter.py | 266 | except Exception as e: | CODE |
| LOW | src/rfdetr/export/_tensorrt/exporter.py | 661 | except Exception: | CODE |
| LOW | src/rfdetr/export/_tensorrt/exporter.py | 1627 | except Exception: | CODE |
| LOW | src/rfdetr/export/_tflite/exporter.py | 486 | except Exception as exc: | CODE |
| LOW | src/rfdetr/export/_tflite/exporter.py | 750 | except Exception: | CODE |
| LOW | src/rfdetr/export/_tflite/exporter.py | 1254 | except Exception as exc: | CODE |
| LOW | src/rfdetr/export/_executorch/exporter.py | 547 | except Exception as exc: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/learn/deploy.md | 29 | api_key="<YOUR_API_KEY>", | CODE |
| HIGH | docs/learn/deploy.md | 29 | api_key="<YOUR_API_KEY>", | CODE |
| HIGH | docs/learn/deploy.md | 42 | api_key="<YOUR_API_KEY>", | CODE |
| HIGH | docs/learn/deploy.md | 42 | api_key="<YOUR_API_KEY>", | CODE |
| HIGH | docs/root-static/llms-full.txt | 255 | api_key="YOUR_API_KEY" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/training/callbacks/test_coco_eval_callback.py | 964 | # Create a fake callback whose class name is RichProgressBar so | COMMENT |
| MEDIUM | tests/assets/test_downloads.py | 192 | # Create a mock asset without MD5 | COMMENT |
| MEDIUM | tests/assets/test_downloads.py | 206 | # Create a mock asset without MD5 | COMMENT |
| MEDIUM | src/rfdetr/datasets/yolo.py | 1039 | >>> # Create a sample image and target | STRING |
| MEDIUM | src/rfdetr/models/backbone/dinov2.py | 127 | # Create the encoder | COMMENT |
| MEDIUM | src/rfdetr/models/backbone/dinov2.py | 255 | # Create a new Parameter with the new size | COMMENT |
| MEDIUM | src/rfdetr/models/backbone/projector.py | 192 | """This module implements MultiScaleProjector in :paper:`lwdetr`. | STRING |
| MEDIUM | src/rfdetr/utilities/state_dict.py | 220 | # Create the temp file in the destination directory so os.replace stays on the same filesystem (atomic). | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | tests/training/test_detr_shim.py | 2814 | """An index the reader rejects (ValueError from ShardIndex.from_json) degrades to null, never an exception.""" | STRING |
| HIGH⚡ | tests/training/test_detr_shim.py | 2846 | """A bg-first keypoint run killed in fit() leaves class_names null, not the detection-basis ['person'].""" | STRING |
| HIGH⚡ | tests/inference/test_trt_inference.py | 1604 | old ones, which TensorRT leaves undefined; that includes what ``dynamic_batch=True`` exports. | STRING |
| HIGH⚡ | tests/export/test_tensorrt_export.py | 3362 | between replays, which TensorRT leaves undefined, so the real engine's profile must be read as varying. | STRING |
| HIGH | src/rfdetr/export/_litert/sampling.py | 62 | Coordinates must be finite: for a NaN coordinate the result is undefined, and the ``.tflite`` may fail | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/inference/test_trt_inference.py | 913 | # Step 2: batch 1 -- the smallest legal batch, right after the largest. | COMMENT |
| LOW⚡ | tests/inference/test_trt_inference.py | 920 | # Step 3: batch 3 -- a third, different size, still on the same runtime object. | COMMENT |
| LOW | tests/inference/test_trt_inference.py | 902 | # Step 1: batch 4 -- fills the whole profile-max buffer. ``execute_v2`` reports launch success as a bool | COMMENT |
| LOW | docs/learn/how-it-works.md | 57 | ### Step 1: from pixels to tokens | COMMENT |
| LOW | docs/learn/how-it-works.md | 72 | ### Step 2: a backbone that already knows what things look like | COMMENT |
| LOW⚡ | docs/learn/how-it-works.md | 88 | ### Step 3: the projector | COMMENT |
| LOW⚡ | docs/learn/how-it-works.md | 97 | ### Step 4: choosing where to look | COMMENT |
| LOW⚡ | docs/learn/how-it-works.md | 103 | ### Step 5: the decoder, where queries look and negotiate | COMMENT |
| LOW | docs/learn/how-it-works.md | 117 | ### Step 6: reading the answer | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | configs/rfdetr_seg_small.yaml | 2 | # Usage: | COMMENT |
| LOW | configs/rfdetr_seg_2xlarge.yaml | 2 | # Usage: | COMMENT |
| LOW | configs/rfdetr_seg_large.yaml | 2 | # Usage: | COMMENT |
| LOW | configs/rfdetr_seg_nano.yaml | 2 | # Usage: | COMMENT |
| LOW | configs/rfdetr_seg_xlarge.yaml | 2 | # Usage: | COMMENT |
| LOW | configs/rfdetr_base.yaml | 2 | # Usage: | COMMENT |
| LOW | configs/rfdetr_medium.yaml | 2 | # Usage: | COMMENT |
| LOW | configs/rfdetr_seg_medium.yaml | 2 | # Usage: | COMMENT |
| LOW | configs/rfdetr_small.yaml | 2 | # Usage: | COMMENT |
| LOW | configs/rfdetr_nano.yaml | 2 | # Usage: | COMMENT |
| LOW | configs/rfdetr_large.yaml | 2 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/training/test_cuda_graph_te.py | 73 | CODE | |
| LOW | tests/inference/helpers.py | 52 | CODE | |
| LOW | src/rfdetr/detr.py | 2196 | CODE | |
| LOW | src/rfdetr/training/coco_map.py | 749 | CODE | |
| LOW | src/rfdetr/training/auto_batch.py | 339 | CODE | |
| LOW | src/rfdetr/training/callbacks/coco_eval.py | 206 | CODE | |
| LOW | src/rfdetr/datasets/coco.py | 1223 | CODE | |
| LOW | src/rfdetr/datasets/coco.py | 1332 | CODE | |
| LOW | src/rfdetr/datasets/webdataset/load.py | 533 | CODE | |
| LOW | src/rfdetr/models/matcher.py | 134 | CODE | |
| LOW | src/rfdetr/models/transformer.py | 524 | CODE | |
| LOW | src/rfdetr/models/transformer.py | 1251 | CODE | |
| LOW | src/rfdetr/models/transformer.py | 1331 | CODE | |
| LOW | src/rfdetr/models/transformer.py | 1514 | CODE | |
| LOW | src/rfdetr/models/transformer.py | 1748 | CODE | |
| LOW | src/rfdetr/models/transformer.py | 1930 | CODE | |
| LOW | src/rfdetr/models/lwdetr.py | 121 | CODE | |
| LOW | src/rfdetr/models/backbone/dinov2_with_windowed_attn.py | 682 | CODE | |
| LOW | src/rfdetr/models/backbone/dinov2_with_windowed_attn.py | 235 | CODE | |
| LOW | src/rfdetr/models/backbone/dinov2.py | 101 | CODE | |
| LOW | src/rfdetr/models/backbone/backbone.py | 39 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/training/test_drop_path.py | 140 | # Should not raise an error, just return early | COMMENT |
| MEDIUM | tests/inference/test_predict.py | 2675 | """``predict()`` URL handling: robust HTTP fetch and correct local-path classification.""" | STRING |
| MEDIUM | tests/export/test_executorch_export.py | 931 | # random weights); the bound keeps modest headroom, robust to BLAS/XNNPACK build differences while still | COMMENT |
| MEDIUM | src/rfdetr/export/_onnx/inference.py | 165 | # Match by name so the code is robust to output reordering. | COMMENT |
| MEDIUM | src/rfdetr/export/_tflite/inference.py | 213 | # Match by name so the code is robust to onnx2tf output reordering. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/inference/test_trt_inference.py | 913 | # Step 2: batch 1 -- the smallest legal batch, right after the largest. | COMMENT |
| LOW⚡ | tests/inference/test_trt_inference.py | 920 | # Step 3: batch 3 -- a third, different size, still on the same runtime object. | COMMENT |
| LOW | tests/inference/test_trt_inference.py | 902 | # Step 1: batch 4 -- fills the whole profile-max buffer. ``execute_v2`` reports launch success as a bool | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/training/test_detr_shim.py | 1517 | api_key="dummy-key", | CODE |
| LOW | tests/training/test_detr_shim.py | 1550 | api_key="dummy-key", | CODE |
| LOW | tests/training/test_detr_shim.py | 1582 | api_key="dummy-key", | CODE |
| LOW | tests/training/test_detr_shim.py | 1610 | api_key="dummy-key", | CODE |
| LOW | tests/training/test_detr_shim.py | 1636 | api_key="dummy-key", | CODE |
| LOW | tests/training/test_detr_shim.py | 1663 | api_key="dummy-key", | CODE |
| LOW | tests/training/test_detr_shim.py | 1682 | api_key="dummy-key", | CODE |
| LOW | tests/training/test_detr_shim.py | 1742 | api_key="dummy-key", | CODE |
| LOW | tests/training/test_detr_shim.py | 1921 | load_classes_patch = patch.object(RFDETR, "_load_classes", return_value=["placeholder"]) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/export/test_export.py | 1143 | # patch_size=14, num_windows=3 → block_size=42; scaffold sets resolution=84 (42*2) which is valid | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/rfdetr/assets/model_weights.py | 430 | # Check if we have a hash for this model | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | src/rfdetr/export/_tensorrt/exporter.py | 1424 | CODE |