{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "scanner-8232de4db8bd880b", "name": "Possibly dead Python function: do_GET", "shortDescription": {"text": "Possibly dead Python function: do_GET"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2ec97b290c67f5b1", "name": "Possibly dead Python function: do_POST", "shortDescription": {"text": "Possibly dead Python function: do_POST"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1ba538a5569299cc", "name": "Possibly dead Python function: log_message", "shortDescription": {"text": "Possibly dead Python function: log_message"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-342a23e6d2d7c37c", "name": "Possibly dead Python function: formatting", "shortDescription": {"text": "Possibly dead Python function: formatting"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-646fbda5f1f3d185", "name": "Possibly dead Python function: visit_Call", "shortDescription": {"text": "Possibly dead Python function: visit_Call"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5e5708b79f9a1b0e", "name": "Possibly dead Python function: read_authenticode_signature", "shortDescription": {"text": "Possibly dead Python function: read_authenticode_signature"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bb79872c92f0cafa", "name": "Possibly dead Python function: dragEnterEvent", "shortDescription": {"text": "Possibly dead Python function: dragEnterEvent"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-563060a095331e04", "name": "Possibly dead Python function: dropEvent", "shortDescription": {"text": "Possibly dead Python function: dropEvent"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-25eb02b001bb58d0", "name": "Possibly dead Python function: highlightBlock", "shortDescription": {"text": "Possibly dead Python function: highlightBlock"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b22a7653bffe9d4d", "name": "Possibly dead Python function: natural_size", "shortDescription": {"text": "Possibly dead Python function: natural_size"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6436fe4167602f70", "name": "Possibly dead Python function: toggle", "shortDescription": {"text": "Possibly dead Python function: toggle"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e32075ee832d5ff1", "name": "Possibly dead Python function: toggle", "shortDescription": {"text": "Possibly dead Python function: toggle"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8d6b309b9ad8feb5", "name": "Possibly dead Python function: set_scene_bounds", "shortDescription": {"text": "Possibly dead Python function: set_scene_bounds"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-377381ef9b11d53a", "name": "Possibly dead Python function: request_extract", "shortDescription": {"text": "Possibly dead Python function: request_extract"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9e1e20f199dcaa70", "name": "Possibly dead Python function: paintEvent", "shortDescription": {"text": "Possibly dead Python function: paintEvent"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b2f90365137ca4a3", "name": "Possibly dead Python function: dragEnterEvent", "shortDescription": {"text": "Possibly dead Python function: dragEnterEvent"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ec49adb052f76a66", "name": "Possibly dead Python function: dropEvent", "shortDescription": {"text": "Possibly dead Python function: dropEvent"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a53fbf1a1bda0309", "name": "Possibly dead Python function: run_batch", "shortDescription": {"text": "Possibly dead Python function: run_batch"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-39f35911419f664d", "name": "Possibly dead Python function: decode_cb", "shortDescription": {"text": "Possibly dead Python function: decode_cb"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d3ca27781537788c", "name": "Possibly dead Python function: detect_cb", "shortDescription": {"text": "Possibly dead Python function: detect_cb"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9710c8d059e53154", "name": "No frontend routes/components detected", "shortDescription": {"text": "No frontend routes/components detected"}, "fullDescription": {"text": "No React/Vue/Next routes were found. This is fine for backend-only repos."}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9e1c9c381c08ed64", "name": "Insecure pattern 'tls_verify_false' in src/hsext_v4/core/pipeline_config/store.py:161", "shortDescription": {"text": "Insecure pattern 'tls_verify_false' in src/hsext_v4/core/pipeline_config/store.py:161"}, "fullDescription": {"text": "Found a known-risky pattern (tls_verify_false). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6372cebde0220094", "name": "No auth library detected", "shortDescription": {"text": "No auth library detected"}, "fullDescription": {"text": "The scanner did not find any standard auth library (JWT, OAuth, NextAuth, Auth0, etc.). The repo has auth/admin/session surface indicators, so auth may live in custom code, in a separate service, or be missing."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-27924aa79fa4a517", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "astral-sh/setup-uv@v8.1.0 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-426d7268184c135e", "name": "Very large file: tests/test_shadow_boundary_probe.py (1704 lines)", "shortDescription": {"text": "Very large file: tests/test_shadow_boundary_probe.py (1704 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-691732033db4da9f", "name": "Very large file: tests/test_video_roi_tab.py (1746 lines)", "shortDescription": {"text": "Very large file: tests/test_video_roi_tab.py (1746 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9b4023ae356594f6", "name": "Very large file: tests/test_main_window_integration.py (2578 lines)", "shortDescription": {"text": "Very large file: tests/test_main_window_integration.py (2578 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c89cd53113af4953", "name": "Very large file: tests/test_gui_workers.py (1644 lines)", "shortDescription": {"text": "Very large file: tests/test_gui_workers.py (1644 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a25455f6e4b4d091", "name": "Very large file: tests/test_stages_ocr_vl_merge.py (2825 lines)", "shortDescription": {"text": "Very large file: tests/test_stages_ocr_vl_merge.py (2825 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ffd6a59715025ca4", "name": "Very large file: src/hsext_v4/cli.py (1719 lines)", "shortDescription": {"text": "Very large file: src/hsext_v4/cli.py (1719 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0912c9d90d420006", "name": "Very large file: src/hsext_v4/gui/workers.py (1671 lines)", "shortDescription": {"text": "Very large file: src/hsext_v4/gui/workers.py (1671 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-31e46cf37f64069d", "name": "Very large file: src/hsext_v4/gui/main_window.py (2714 lines)", "shortDescription": {"text": "Very large file: src/hsext_v4/gui/main_window.py (2714 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1500c6eef1033b0b", "name": "Very large file: src/hsext_v4/gui/tabs/pipeline_config_tab.py (1628 lines)", "shortDescription": {"text": "Very large file: src/hsext_v4/gui/tabs/pipeline_config_tab.py (1628 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3c9867041d2f3504", "name": "Very large file: src/hsext_v4/gui/tabs/results_tab.py (2244 lines)", "shortDescription": {"text": "Very large file: src/hsext_v4/gui/tabs/results_tab.py (2244 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9f66763a856bbe63", "name": "Very large file: src/hsext_v4/gui/tabs/video_roi_tab.py (2804 lines)", "shortDescription": {"text": "Very large file: src/hsext_v4/gui/tabs/video_roi_tab.py (2804 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3367901f4e560b56", "name": "Very large file: src/hsext_v4/gui/tabs/pipeline_tab.py (2182 lines)", "shortDescription": {"text": "Very large file: src/hsext_v4/gui/tabs/pipeline_tab.py (2182 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-24ce326e615bdd01", "name": "Very large file: src/hsext_v4/roi/autopilot.py (2394 lines)", "shortDescription": {"text": "Very large file: src/hsext_v4/roi/autopilot.py (2394 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-19e9dccd648d2516", "name": "Very large file: src/hsext_v4/core/shadow_boundary_probe.py (1793 lines)", "shortDescription": {"text": "Very large file: src/hsext_v4/core/shadow_boundary_probe.py (1793 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f6396d09a3c52d3b", "name": "Very large file: src/hsext_v4/core/stages/merge_stage.py (1882 lines)", "shortDescription": {"text": "Very large file: src/hsext_v4/core/stages/merge_stage.py (1882 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 368 console/debugger/print-style debug statements in non-test source. This is a common fast-generation residue before production cleanup."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-72b2a6250083a784", "name": "Placeholder or mock-heavy implementation detected", "shortDescription": {"text": "Placeholder or mock-heavy implementation detected"}, "fullDescription": {"text": "Found 33 placeholder/mock markers across 16 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e725d2ab884fbd49", "name": "Multiple root agent instruction files without precedence", "shortDescription": {"text": "Multiple root agent instruction files without precedence"}, "fullDescription": {"text": "The repo has multiple top-level AI-coder instruction files. Without precedence rules, different agents may follow different policies."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-92d1961e25714a0f", "name": "Legacy-named symbol `model_copy` in tests/test_session_picker_dialog.py:67", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_session_picker_dialog.py:67"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ff27d961eefb40ea", "name": "Legacy-named symbol `model_copy` in tests/test_run_preset_async.py:54", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_run_preset_async.py:54"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dc93260fce83d814", "name": "Legacy-named symbol `12_v2` in tests/test_series_root.py:85", "shortDescription": {"text": "Legacy-named symbol `12_v2` in tests/test_series_root.py:85"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-db9714160c9b5d75", "name": "Legacy-named symbol `model_copy` in tests/test_agent_plan_service.py:53", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_agent_plan_service.py:53"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bdbab98d50edfa2d", "name": "Commented-code block (5 lines) in tests/test_reference_offset.py:136", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_reference_offset.py:136"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b7dbb664dccf5ece", "name": "Legacy-named symbol `model_copy` in tests/test_gui_workers.py:247", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_gui_workers.py:247"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-94775b8a8c15cc76", "name": "Legacy-named symbol `chn_v2` in tests/test_translate_intake.py:330", "shortDescription": {"text": "Legacy-named symbol `chn_v2` in tests/test_translate_intake.py:330"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a7da3f5adc94cc64", "name": "Legacy-named symbol `test_roundtrip_v2` in tests/test_roi_profiles.py:163", "shortDescription": {"text": "Legacy-named symbol `test_roundtrip_v2` in tests/test_roi_profiles.py:163"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f9dc4e31e169b85b", "name": "Commented-code block (5 lines) in tests/test_visual_spacing.py:26", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_visual_spacing.py:26"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c252d7727bf24536", "name": "Legacy-named symbol `model_copy` in tests/test_pipeline_resume.py:164", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_pipeline_resume.py:164"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-192be09a66739db9", "name": "Legacy-named symbol `model_copy` in tests/test_form_preserves_widgetless_merge.py:89", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_form_preserves_widgetless_merge.py:89"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-531933bf19d7874e", "name": "Legacy-named symbol `model_copy` in tests/test_main_window_step3_preset_store.py:67", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_main_window_step3_preset_store.py:67"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0cd0d7f056e6a580", "name": "Legacy-named symbol `test_speech_floor_boundary_exact_value_matches_legacy` in tests/test_voice_matching.py:653", "shortDescription": {"text": "Legacy-named symbol `test_speech_floor_boundary_exact_value_matches_legacy` in tests/test_voice_matching.py:653"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-482f5eb46610f277", "name": "Legacy-named symbol `model_copy` in tests/test_run_batch_pipelined.py:51", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_run_batch_pipelined.py:51"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bfa2392520dd326b", "name": "Legacy-named symbol `model_copy` in tests/test_sessions_archive.py:63", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_sessions_archive.py:63"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b4ec4044462b1fc8", "name": "Legacy-named symbol `test_session_mode_missing_cli_key_falls_back_to_legacy` in tests/test_vsf_runner.py:625", "shortDescription": {"text": "Legacy-named symbol `test_session_mode_missing_cli_key_falls_back_to_legacy` in tests/test_vsf_runner.py:625"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f3b666510320a6cd", "name": "Legacy-named symbol `model_copy` in tests/test_pipeline_run_controller.py:167", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_pipeline_run_controller.py:167"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fd962e38ca783cbd", "name": "Legacy-named symbol `model_copy` in tests/test_run_preset.py:68", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_run_preset.py:68"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-856d7755cd55670d", "name": "Legacy-named symbol `model_copy` in tests/test_sessions_tab.py:72", "shortDescription": {"text": "Legacy-named symbol `model_copy` in tests/test_sessions_tab.py:72"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9d2b90c1990e254a", "name": "Commented-code block (5 lines) in dev/scripts/ab_cudagraph_e131.py:56", "shortDescription": {"text": "Commented-code block (5 lines) in dev/scripts/ab_cudagraph_e131.py:56"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e286c03b4dc0b582", "name": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/train_ppocr_rec_finetune.py:90", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/train_ppocr_rec_finetune.py:90"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3826713cfdbbeac7", "name": "Legacy-named symbol `hunyuan_lora_beyondtime_v1` in dev/scripts/train_hunyuan_lora.py:22", "shortDescription": {"text": "Legacy-named symbol `hunyuan_lora_beyondtime_v1` in dev/scripts/train_hunyuan_lora.py:22"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bb42c303e3c7fb38", "name": "Legacy-named symbol `ppocrv5_donghua_rec_v2` in dev/scripts/benchmark_finetune_22.py:11", "shortDescription": {"text": "Legacy-named symbol `ppocrv5_donghua_rec_v2` in dev/scripts/benchmark_finetune_22.py:11"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9e05f91bbc4cdb16", "name": "Legacy-named symbol `openocr_donghua_rec_v1` in dev/scripts/openai_ocr_compat_server.py:600", "shortDescription": {"text": "Legacy-named symbol `openocr_donghua_rec_v1` in dev/scripts/openai_ocr_compat_server.py:600"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-696fbcd33fb79c97", "name": "Commented-code block (8 lines) in dev/scripts/openai_ocr_compat_server.py:265", "shortDescription": {"text": "Commented-code block (8 lines) in dev/scripts/openai_ocr_compat_server.py:265"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-18a94db5a0cc808a", "name": "Legacy-named symbol `openocr_donghua_rec_v1` in dev/scripts/bench_holdout_episodes.py:36", "shortDescription": {"text": "Legacy-named symbol `openocr_donghua_rec_v1` in dev/scripts/bench_holdout_episodes.py:36"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fb97f1beead052c2", "name": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/bench_holdout_episodes.py:59", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/bench_holdout_episodes.py:59"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9352bae6912df1fd", "name": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/vsf_extract_beyondtime_batch.py:175", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/vsf_extract_beyondtime_batch.py:175"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-412d2df0ce5e75f5", "name": "Legacy-named symbol `openocr_server_v1` in dev/scripts/train_openocr_rec_finetune.py:11", "shortDescription": {"text": "Legacy-named symbol `openocr_server_v1` in dev/scripts/train_openocr_rec_finetune.py:11"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5444d8606e2dadfa", "name": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/train_openocr_rec_finetune.py:164", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/train_openocr_rec_finetune.py:164"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1e87dc8279c51660", "name": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/extract_cue_frames.py:103", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/extract_cue_frames.py:103"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-426052b78c2be3d8", "name": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/realesrgan_anime_runtime.py:28", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/realesrgan_anime_runtime.py:28"}, "fullDescription": {"text": "`urllib.request.urlretrieve(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f9f7a6a4f95a1822", "name": "Legacy-named symbol `openocr_donghua_rec_v1` in dev/scripts/benchmark_openocr_finetuned_22.py:27", "shortDescription": {"text": "Legacy-named symbol `openocr_donghua_rec_v1` in dev/scripts/benchmark_openocr_finetuned_22.py:27"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d337908dc7ea1486", "name": "Legacy-named symbol `hunyuan_lora_beyondtime_v1` in dev/scripts/merge_hunyuan_lora.py:30", "shortDescription": {"text": "Legacy-named symbol `hunyuan_lora_beyondtime_v1` in dev/scripts/merge_hunyuan_lora.py:30"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b9a44b83227cee49", "name": "Commented-code block (5 lines) in dev/scripts/build_radical_leak_map.py:29", "shortDescription": {"text": "Commented-code block (5 lines) in dev/scripts/build_radical_leak_map.py:29"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c100afa6b621aa33", "name": "Network/subprocess call without timeout or try/except \u2014 tools/release_check.py:153", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/release_check.py:153"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1f283473c0f8c992", "name": "Network/subprocess call without timeout or try/except \u2014 tools/create_e2e_samples.py:141", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/create_e2e_samples.py:141"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-576a98d5d0b81c31", "name": "Network/subprocess call without timeout or try/except \u2014 tools/build_nuitka.py:97", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/build_nuitka.py:97"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-76c1e5928e65d92b", "name": "Network/subprocess call without timeout or try/except \u2014 tools/build_installer.py:129", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/build_installer.py:129"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5c4ca9e76b331344", "name": "Network/subprocess call without timeout or try/except \u2014 tools/sign_release.py:349", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/sign_release.py:349"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-59aa6f751a1c85ba", "name": "Legacy-named symbol `_wrap_legacy` in src/hsext_v4/gui/main_window.py:608", "shortDescription": {"text": "Legacy-named symbol `_wrap_legacy` in src/hsext_v4/gui/main_window.py:608"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cb709e7b9b2a5c0b", "name": "Legacy-named symbol `scalanie_plikow_v2` in src/hsext_v4/gui/services/tool_actions.py:4", "shortDescription": {"text": "Legacy-named symbol `scalanie_plikow_v2` in src/hsext_v4/gui/services/tool_actions.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-16159d95ecc35128", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/gui/tabs/pipeline_config_tab.py:198", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/gui/tabs/pipeline_config_tab.py:198"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-339b7ffcdda23847", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/gui/tabs/_pipeline_binding.py:632", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/gui/tabs/_pipeline_binding.py:632"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-392b2a87344b63c4", "name": "Commented-code block (6 lines) in src/hsext_v4/gui/tabs/_pipeline_binding.py:547", "shortDescription": {"text": "Commented-code block (6 lines) in src/hsext_v4/gui/tabs/_pipeline_binding.py:547"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d3815db7ef391747", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/gui/tabs/pipeline_tab.py:370", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/gui/tabs/pipeline_tab.py:370"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-957ccc73d09982ab", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/roi/series_memory.py:136", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/roi/series_memory.py:136"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-03ff4fb08b33a22e", "name": "Commented-code block (5 lines) in src/hsext_v4/roi/autopilot.py:58", "shortDescription": {"text": "Commented-code block (5 lines) in src/hsext_v4/roi/autopilot.py:58"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2c6c56e33455be89", "name": "Legacy-named symbol `_parse_v2` in src/hsext_v4/roi/profiles.py:302", "shortDescription": {"text": "Legacy-named symbol `_parse_v2` in src/hsext_v4/roi/profiles.py:302"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-15bb51e7477494ca", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/speaker/voice_registry.py:514", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/speaker/voice_registry.py:514"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-51d56d56c116facf", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/speaker/voice_eval.py:137", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/speaker/voice_eval.py:137"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9f628bd6c77ca6f1", "name": "Legacy-named symbol `has_v2` in src/hsext_v4/speaker/embeddings_io.py:239", "shortDescription": {"text": "Legacy-named symbol `has_v2` in src/hsext_v4/speaker/embeddings_io.py:239"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-682bd6e0dc6a5788", "name": "Commented-code block (8 lines) in src/hsext_v4/speaker/pipeline.py:112", "shortDescription": {"text": "Commented-code block (8 lines) in src/hsext_v4/speaker/pipeline.py:112"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-afa4963e74edf462", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/pipeline/golden.py:198", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/pipeline/golden.py:198"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0e586e48beb4a002", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/pipeline/run_preset.py:255", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/pipeline/run_preset.py:255"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1c6049d9d1424efc", "name": "Commented-code block (6 lines) in src/hsext_v4/pipeline/run_preset.py:99", "shortDescription": {"text": "Commented-code block (6 lines) in src/hsext_v4/pipeline/run_preset.py:99"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ad5b86e51e4be065", "name": "Commented-code block (6 lines) in src/hsext_v4/core/shadow_boundary_probe.py:115", "shortDescription": {"text": "Commented-code block (6 lines) in src/hsext_v4/core/shadow_boundary_probe.py:115"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d64cac6a91a9299d", "name": "Commented-code block (7 lines) in src/hsext_v4/core/visual_spacing.py:39", "shortDescription": {"text": "Commented-code block (7 lines) in src/hsext_v4/core/visual_spacing.py:39"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c40ae3e85a68451e", "name": "Commented-code block (5 lines) in src/hsext_v4/core/shadow_boundary.py:66", "shortDescription": {"text": "Commented-code block (5 lines) in src/hsext_v4/core/shadow_boundary.py:66"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4e8602004b92a1e0", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/core/sessions/models.py:253", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/core/sessions/models.py:253"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eadd247a1a623936", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/core/sessions/manager.py:143", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/core/sessions/manager.py:143"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7035eade92151de6", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/core/sessions/archive.py:474", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/core/sessions/archive.py:474"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8d6ca2034973f509", "name": "Commented-code block (6 lines) in src/hsext_v4/core/gpu/arbiter.py:77", "shortDescription": {"text": "Commented-code block (6 lines) in src/hsext_v4/core/gpu/arbiter.py:77"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-feec2a07017423e9", "name": "Commented-code block (6 lines) in src/hsext_v4/core/pipeline_config/models.py:225", "shortDescription": {"text": "Commented-code block (6 lines) in src/hsext_v4/core/pipeline_config/models.py:225"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4ae645e3dabf5ca5", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/core/pipeline_config/store.py:261", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/core/pipeline_config/store.py:261"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4a09af0bf24ab7d4", "name": "Legacy-named symbol `model_copy` in src/hsext_v4/core/pipeline_config/importer.py:393", "shortDescription": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/core/pipeline_config/importer.py:393"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bbad946e4e2e4085", "name": "Commented-code block (6 lines) in src/hsext_v4/core/stages/merge_stage.py:830", "shortDescription": {"text": "Commented-code block (6 lines) in src/hsext_v4/core/stages/merge_stage.py:830"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1501ca83ab397d5d", "name": "Legacy-named symbol `_pending_unused` in src/hsext_v4/core/stages/base.py:377", "shortDescription": {"text": "Legacy-named symbol `_pending_unused` in src/hsext_v4/core/stages/base.py:377"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7bebf038ef6827aa", "name": "Commented-code block (5 lines) in src/hsext_v4/core/vl_batch/hard_cases.py:11", "shortDescription": {"text": "Commented-code block (5 lines) in src/hsext_v4/core/vl_batch/hard_cases.py:11"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bd94b0ab9ee46027", "name": "Commented-code block (5 lines) in src/hsext_v4/ocr/filters.py:40", "shortDescription": {"text": "Commented-code block (5 lines) in src/hsext_v4/ocr/filters.py:40"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5d4c120686cd4983", "name": "Commented-code block (7 lines) in src/hsext_v4/ocr/postprocess.py:456", "shortDescription": {"text": "Commented-code block (7 lines) in src/hsext_v4/ocr/postprocess.py:456"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-44ccf2dfbe593648", "name": "Commented-code block (5 lines) in src/hsext_v4/video/vsf_runner.py:80", "shortDescription": {"text": "Commented-code block (5 lines) in src/hsext_v4/video/vsf_runner.py:80"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-022ad766e4782939", "name": "Legacy-named symbol `scalanie_plikow_v2` in src/hsext_v4/plugins/registry.py:112", "shortDescription": {"text": "Legacy-named symbol `scalanie_plikow_v2` in src/hsext_v4/plugins/registry.py:112"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be46ea126aa5d8dc", "name": "Near-duplicate function bodies in 3 places", "shortDescription": {"text": "Near-duplicate function bodies in 3 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\ndev/scripts/compare_beyond_time_second_vs_v4.py:norm, dev/scripts/benchmark_finetune_22.py:norm, dev/scripts/benchmark_ppocrv5_openocr_22.py:norm\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-02525d39071dd2c7", "name": "Near-duplicate function bodies in 5 places", "shortDescription": {"text": "Near-duplicate function bodies in 5 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\ndev/scripts/compare_beyond_time_second_vs_v4.py:edit_distance, dev/scripts/benchmark_finetune_22.py:edit_distance, dev/scripts/benchmark_ppocrv5_openocr_22.py:edit_distance, dev/scripts/bench_radical_leak_rule.py:edit_distance\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\ndev/scripts/benchmark_finetune_22.py:parse_srt, dev/scripts/benchmark_ppocrv5_openocr_22.py:parse_srt\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-49c98f7cedd9c977", "name": "Near-duplicate function bodies in 4 places", "shortDescription": {"text": "Near-duplicate function bodies in 4 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\ndev/scripts/openai_ocr_compat_server.py:read, dev/scripts/openai_ocr_compat_server.py:read, dev/scripts/openai_ocr_compat_server.py:read, dev/scripts/openai_ocr_compat_server.py:read\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-974b6c5bf584b109", "name": "FastAPI POST `_chat` without auth dependency \u2014 dev/scripts/openai_ocr_compat_server.py:766", "shortDescription": {"text": "FastAPI POST `_chat` without auth dependency \u2014 dev/scripts/openai_ocr_compat_server.py:766"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-251e3dbd600caba5", "name": "Unused endpoint: GET /v1/models", "shortDescription": {"text": "Unused endpoint: GET /v1/models"}, "fullDescription": {"text": "`dev/scripts/openai_ocr_compat_server.py` declares `GET /v1/models` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ff99ecd9b3a77326", "name": "Unused endpoint: POST /v1/chat/completions", "shortDescription": {"text": "Unused endpoint: POST /v1/chat/completions"}, "fullDescription": {"text": "`dev/scripts/openai_ocr_compat_server.py` declares `POST /v1/chat/completions` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/21118"}, "properties": {"repository": "TheNavinHR/atlas-loom-9f4c7a2e1b", "repoUrl": "https://github.com/TheNavinHR/atlas-loom-9f4c7a2e1b", "branch": "main"}, "results": [{"ruleId": "scanner-8232de4db8bd880b", "level": "note", "message": {"text": "Possibly dead Python function: do_GET"}, "properties": {"repobilityId": "2d943bb45e4f13bd", "scanner": "scanner-primary", "fingerprint": "8232de4db8bd880b", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "dev/scripts/mock_backend.py:20"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2ec97b290c67f5b1", "level": "note", "message": {"text": "Possibly dead Python function: do_POST"}, "properties": {"repobilityId": "53357410ca9379a9", "scanner": "scanner-primary", "fingerprint": "2ec97b290c67f5b1", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "dev/scripts/mock_backend.py:26"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1ba538a5569299cc", "level": "note", "message": {"text": "Possibly dead Python function: log_message"}, "properties": {"repobilityId": "965f3150b4af5b2e", "scanner": "scanner-primary", "fingerprint": "1ba538a5569299cc", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "dev/scripts/mock_backend.py:62"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-342a23e6d2d7c37c", "level": "note", "message": {"text": "Possibly dead Python function: formatting"}, "properties": {"repobilityId": "7814359d11870a9f", "scanner": "scanner-primary", "fingerprint": "342a23e6d2d7c37c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "dev/scripts/train_hunyuan_lora.py:110"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-646fbda5f1f3d185", "level": "note", "message": {"text": "Possibly dead Python function: visit_Call"}, "properties": {"repobilityId": "83d516a32f6d02f1", "scanner": "scanner-primary", "fingerprint": "646fbda5f1f3d185", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/i18n_audit.py:61"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5e5708b79f9a1b0e", "level": "note", "message": {"text": "Possibly dead Python function: read_authenticode_signature"}, "properties": {"repobilityId": "99ff3c23c1d115cf", "scanner": "scanner-primary", "fingerprint": "5e5708b79f9a1b0e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/release_artifacts.py:128"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bb79872c92f0cafa", "level": "note", "message": {"text": "Possibly dead Python function: dragEnterEvent"}, "properties": {"repobilityId": "b697340237933307", "scanner": "scanner-primary", "fingerprint": "bb79872c92f0cafa", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/workspace.py:388"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-563060a095331e04", "level": "note", "message": {"text": "Possibly dead Python function: dropEvent"}, "properties": {"repobilityId": "357965e641e9f054", "scanner": "scanner-primary", "fingerprint": "563060a095331e04", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/workspace.py:394"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-25eb02b001bb58d0", "level": "note", "message": {"text": "Possibly dead Python function: highlightBlock"}, "properties": {"repobilityId": "61c062f6734d0254", "scanner": "scanner-primary", "fingerprint": "25eb02b001bb58d0", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/widgets/srt_editor.py:121"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b22a7653bffe9d4d", "level": "note", "message": {"text": "Possibly dead Python function: natural_size"}, "properties": {"repobilityId": "092d525f119f6d55", "scanner": "scanner-primary", "fingerprint": "b22a7653bffe9d4d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/widgets/roi_overlay.py:88"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6436fe4167602f70", "level": "note", "message": {"text": "Possibly dead Python function: toggle"}, "properties": {"repobilityId": "0f9993db32d0ee08", "scanner": "scanner-primary", "fingerprint": "6436fe4167602f70", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/widgets/video_widget.py:95"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e32075ee832d5ff1", "level": "note", "message": {"text": "Possibly dead Python function: toggle"}, "properties": {"repobilityId": "0f9993db32d0ee08", "scanner": "scanner-primary", "fingerprint": "e32075ee832d5ff1", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/widgets/table_column_visibility.py:153"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8d6b309b9ad8feb5", "level": "note", "message": {"text": "Possibly dead Python function: set_scene_bounds"}, "properties": {"repobilityId": "26b9fb0b7bcbcd68", "scanner": "scanner-primary", "fingerprint": "8d6b309b9ad8feb5", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/widgets/resizable_roi.py:168"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-377381ef9b11d53a", "level": "note", "message": {"text": "Possibly dead Python function: request_extract"}, "properties": {"repobilityId": "937d71795ed31891", "scanner": "scanner-primary", "fingerprint": "377381ef9b11d53a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/widgets/audio_waveform_widget.py:145"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9e1e20f199dcaa70", "level": "note", "message": {"text": "Possibly dead Python function: paintEvent"}, "properties": {"repobilityId": "1222c83b9204300b", "scanner": "scanner-primary", "fingerprint": "9e1e20f199dcaa70", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/widgets/audio_waveform_widget.py:170"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b2f90365137ca4a3", "level": "note", "message": {"text": "Possibly dead Python function: dragEnterEvent"}, "properties": {"repobilityId": "b697340237933307", "scanner": "scanner-primary", "fingerprint": "b2f90365137ca4a3", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/tabs/video_roi_tab.py:759"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ec49adb052f76a66", "level": "note", "message": {"text": "Possibly dead Python function: dropEvent"}, "properties": {"repobilityId": "357965e641e9f054", "scanner": "scanner-primary", "fingerprint": "ec49adb052f76a66", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/gui/tabs/video_roi_tab.py:763"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a53fbf1a1bda0309", "level": "note", "message": {"text": "Possibly dead Python function: run_batch"}, "properties": {"repobilityId": "2464dcafa908c8be", "scanner": "scanner-primary", "fingerprint": "a53fbf1a1bda0309", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/translate/engine.py:110"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-39f35911419f664d", "level": "note", "message": {"text": "Possibly dead Python function: decode_cb"}, "properties": {"repobilityId": "69a1d785849ef5f3", "scanner": "scanner-primary", "fingerprint": "39f35911419f664d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/core/shadow_boundary_probe.py:399"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d3ca27781537788c", "level": "note", "message": {"text": "Possibly dead Python function: detect_cb"}, "properties": {"repobilityId": "2390700e6f8c87fa", "scanner": "scanner-primary", "fingerprint": "d3ca27781537788c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/core/shadow_boundary_probe.py:402"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9710c8d059e53154", "level": "none", "message": {"text": "No frontend routes/components detected"}, "properties": {"repobilityId": "44ca61485762e494", "scanner": "scanner-primary", "fingerprint": "9710c8d059e53154", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-9e1c9c381c08ed64", "level": "error", "message": {"text": "Insecure pattern 'tls_verify_false' in src/hsext_v4/core/pipeline_config/store.py:161"}, "properties": {"repobilityId": "86112768afc63458", "scanner": "scanner-primary", "fingerprint": "9e1c9c381c08ed64", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "tls_verify_false"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/hsext_v4/core/pipeline_config/store.py"}, "region": {"startLine": 161}}}]}, {"ruleId": "scanner-6372cebde0220094", "level": "warning", "message": {"text": "No auth library detected"}, "properties": {"repobilityId": "a5b6035a5bbf8054", "scanner": "scanner-primary", "fingerprint": "6372cebde0220094", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["coverage", "auth"]}}, {"ruleId": "scanner-27924aa79fa4a517", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "f6139f50639923c9", "scanner": "scanner-primary", "fingerprint": "27924aa79fa4a517", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/ci.yml"}, "region": {"startLine": 31}}}]}, {"ruleId": "scanner-426d7268184c135e", "level": "note", "message": {"text": "Very large file: tests/test_shadow_boundary_probe.py (1704 lines)"}, "properties": {"repobilityId": "2acb0cca3ef1411a", "scanner": "scanner-primary", "fingerprint": "426d7268184c135e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-691732033db4da9f", "level": "note", "message": {"text": "Very large file: tests/test_video_roi_tab.py (1746 lines)"}, "properties": {"repobilityId": "9baa79332bc5cbd0", "scanner": "scanner-primary", "fingerprint": "691732033db4da9f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9b4023ae356594f6", "level": "note", "message": {"text": "Very large file: tests/test_main_window_integration.py (2578 lines)"}, "properties": {"repobilityId": "bcc1bf0c3b2dbb0d", "scanner": "scanner-primary", "fingerprint": "9b4023ae356594f6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c89cd53113af4953", "level": "note", "message": {"text": "Very large file: tests/test_gui_workers.py (1644 lines)"}, "properties": {"repobilityId": "1968124852365d62", "scanner": "scanner-primary", "fingerprint": "c89cd53113af4953", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a25455f6e4b4d091", "level": "note", "message": {"text": "Very large file: tests/test_stages_ocr_vl_merge.py (2825 lines)"}, "properties": {"repobilityId": "9ce1e6ca0ec1d90a", "scanner": "scanner-primary", "fingerprint": "a25455f6e4b4d091", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ffd6a59715025ca4", "level": "note", "message": {"text": "Very large file: src/hsext_v4/cli.py (1719 lines)"}, "properties": {"repobilityId": "21215356ae7bf1c1", "scanner": "scanner-primary", "fingerprint": "ffd6a59715025ca4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0912c9d90d420006", "level": "note", "message": {"text": "Very large file: src/hsext_v4/gui/workers.py (1671 lines)"}, "properties": {"repobilityId": "d86e8d4d71478821", "scanner": "scanner-primary", "fingerprint": "0912c9d90d420006", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-31e46cf37f64069d", "level": "note", "message": {"text": "Very large file: src/hsext_v4/gui/main_window.py (2714 lines)"}, "properties": {"repobilityId": "be412b4ea2c33be3", "scanner": "scanner-primary", "fingerprint": "31e46cf37f64069d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-1500c6eef1033b0b", "level": "note", "message": {"text": "Very large file: src/hsext_v4/gui/tabs/pipeline_config_tab.py (1628 lines)"}, "properties": {"repobilityId": "7f1b727da343d19c", "scanner": "scanner-primary", "fingerprint": "1500c6eef1033b0b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3c9867041d2f3504", "level": "note", "message": {"text": "Very large file: src/hsext_v4/gui/tabs/results_tab.py (2244 lines)"}, "properties": {"repobilityId": "99065fda554bd44e", "scanner": "scanner-primary", "fingerprint": "3c9867041d2f3504", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9f66763a856bbe63", "level": "note", "message": {"text": "Very large file: src/hsext_v4/gui/tabs/video_roi_tab.py (2804 lines)"}, "properties": {"repobilityId": "a9d9a08ab3f240ec", "scanner": "scanner-primary", "fingerprint": "9f66763a856bbe63", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3367901f4e560b56", "level": "note", "message": {"text": "Very large file: src/hsext_v4/gui/tabs/pipeline_tab.py (2182 lines)"}, "properties": {"repobilityId": "ddf210923432ff2f", "scanner": "scanner-primary", "fingerprint": "3367901f4e560b56", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-24ce326e615bdd01", "level": "note", "message": {"text": "Very large file: src/hsext_v4/roi/autopilot.py (2394 lines)"}, "properties": {"repobilityId": "3bb197393545860a", "scanner": "scanner-primary", "fingerprint": "24ce326e615bdd01", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-19e9dccd648d2516", "level": "note", "message": {"text": "Very large file: src/hsext_v4/core/shadow_boundary_probe.py (1793 lines)"}, "properties": {"repobilityId": "0930b052bdda4ad2", "scanner": "scanner-primary", "fingerprint": "19e9dccd648d2516", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f6396d09a3c52d3b", "level": "note", "message": {"text": "Very large file: src/hsext_v4/core/stages/merge_stage.py (1882 lines)"}, "properties": {"repobilityId": "29de93b5943d331b", "scanner": "scanner-primary", "fingerprint": "f6396d09a3c52d3b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "b1b350af394d37ad", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-72b2a6250083a784", "level": "warning", "message": {"text": "Placeholder or mock-heavy implementation detected"}, "properties": {"repobilityId": "ff4a4592bfb831de", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "66b3920f488c5de1", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "8a8316c7d51d9972", "scanner": "scanner-primary", "fingerprint": "ea8f3013f588db25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-8424db9c75e04ba4", "level": "none", "message": {"text": "Very short observed git history"}, "properties": {"repobilityId": "77e04b06abcebd88", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-e725d2ab884fbd49", "level": "note", "message": {"text": "Multiple root agent instruction files without precedence"}, "properties": {"repobilityId": "1953db6c89508d22", "scanner": "scanner-primary", "fingerprint": "e725d2ab884fbd49", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["agent-instructions", "governance"]}}, {"ruleId": "scanner-92d1961e25714a0f", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_session_picker_dialog.py:67"}, "properties": {"repobilityId": "2717a4fcffcfae72", "scanner": "scanner-primary", "fingerprint": "92d1961e25714a0f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ff27d961eefb40ea", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_run_preset_async.py:54"}, "properties": {"repobilityId": "0b4ec58152778433", "scanner": "scanner-primary", "fingerprint": "ff27d961eefb40ea", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-dc93260fce83d814", "level": "note", "message": {"text": "Legacy-named symbol `12_v2` in tests/test_series_root.py:85"}, "properties": {"repobilityId": "526f97330b16c780", "scanner": "scanner-primary", "fingerprint": "dc93260fce83d814", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-db9714160c9b5d75", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_agent_plan_service.py:53"}, "properties": {"repobilityId": "39e3b0a2cc4ed715", "scanner": "scanner-primary", "fingerprint": "db9714160c9b5d75", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bdbab98d50edfa2d", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_reference_offset.py:136"}, "properties": {"repobilityId": "13bdc128b0a63913", "scanner": "scanner-primary", "fingerprint": "bdbab98d50edfa2d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b7dbb664dccf5ece", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_gui_workers.py:247"}, "properties": {"repobilityId": "979775606f04ca22", "scanner": "scanner-primary", "fingerprint": "b7dbb664dccf5ece", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-94775b8a8c15cc76", "level": "note", "message": {"text": "Legacy-named symbol `chn_v2` in tests/test_translate_intake.py:330"}, "properties": {"repobilityId": "996a02fbc41d0e3a", "scanner": "scanner-primary", "fingerprint": "94775b8a8c15cc76", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a7da3f5adc94cc64", "level": "note", "message": {"text": "Legacy-named symbol `test_roundtrip_v2` in tests/test_roi_profiles.py:163"}, "properties": {"repobilityId": "d66311acefbc3efb", "scanner": "scanner-primary", "fingerprint": "a7da3f5adc94cc64", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f9dc4e31e169b85b", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_visual_spacing.py:26"}, "properties": {"repobilityId": "d8b04484ef717af9", "scanner": "scanner-primary", "fingerprint": "f9dc4e31e169b85b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c252d7727bf24536", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_pipeline_resume.py:164"}, "properties": {"repobilityId": "19724d424a6213f6", "scanner": "scanner-primary", "fingerprint": "c252d7727bf24536", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-192be09a66739db9", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_form_preserves_widgetless_merge.py:89"}, "properties": {"repobilityId": "8744722d7c748186", "scanner": "scanner-primary", "fingerprint": "192be09a66739db9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-531933bf19d7874e", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_main_window_step3_preset_store.py:67"}, "properties": {"repobilityId": "c12b522304d3b864", "scanner": "scanner-primary", "fingerprint": "531933bf19d7874e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0cd0d7f056e6a580", "level": "note", "message": {"text": "Legacy-named symbol `test_speech_floor_boundary_exact_value_matches_legacy` in tests/test_voice_matching.py:653"}, "properties": {"repobilityId": "d4e46a7c8c6952b4", "scanner": "scanner-primary", "fingerprint": "0cd0d7f056e6a580", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-482f5eb46610f277", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_run_batch_pipelined.py:51"}, "properties": {"repobilityId": "3230e9c2657d9ea2", "scanner": "scanner-primary", "fingerprint": "482f5eb46610f277", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bfa2392520dd326b", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_sessions_archive.py:63"}, "properties": {"repobilityId": "8c0670e7a346825f", "scanner": "scanner-primary", "fingerprint": "bfa2392520dd326b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b4ec4044462b1fc8", "level": "note", "message": {"text": "Legacy-named symbol `test_session_mode_missing_cli_key_falls_back_to_legacy` in tests/test_vsf_runner.py:625"}, "properties": {"repobilityId": "75318575634e7ffa", "scanner": "scanner-primary", "fingerprint": "b4ec4044462b1fc8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f3b666510320a6cd", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_pipeline_run_controller.py:167"}, "properties": {"repobilityId": "60487ad572abab5a", "scanner": "scanner-primary", "fingerprint": "f3b666510320a6cd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-fd962e38ca783cbd", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_run_preset.py:68"}, "properties": {"repobilityId": "744721b419ec9c45", "scanner": "scanner-primary", "fingerprint": "fd962e38ca783cbd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-856d7755cd55670d", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in tests/test_sessions_tab.py:72"}, "properties": {"repobilityId": "d1d2f4ab3cec9e68", "scanner": "scanner-primary", "fingerprint": "856d7755cd55670d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9d2b90c1990e254a", "level": "none", "message": {"text": "Commented-code block (5 lines) in dev/scripts/ab_cudagraph_e131.py:56"}, "properties": {"repobilityId": "3a3b5dc77d56bb91", "scanner": "scanner-primary", "fingerprint": "9d2b90c1990e254a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e286c03b4dc0b582", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/train_ppocr_rec_finetune.py:90"}, "properties": {"repobilityId": "6294f73c0225f3bc", "scanner": "scanner-primary", "fingerprint": "e286c03b4dc0b582", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3826713cfdbbeac7", "level": "note", "message": {"text": "Legacy-named symbol `hunyuan_lora_beyondtime_v1` in dev/scripts/train_hunyuan_lora.py:22"}, "properties": {"repobilityId": "a2ce36df43bf39df", "scanner": "scanner-primary", "fingerprint": "3826713cfdbbeac7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bb42c303e3c7fb38", "level": "note", "message": {"text": "Legacy-named symbol `ppocrv5_donghua_rec_v2` in dev/scripts/benchmark_finetune_22.py:11"}, "properties": {"repobilityId": "d2186c27dd12f589", "scanner": "scanner-primary", "fingerprint": "bb42c303e3c7fb38", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9e05f91bbc4cdb16", "level": "note", "message": {"text": "Legacy-named symbol `openocr_donghua_rec_v1` in dev/scripts/openai_ocr_compat_server.py:600"}, "properties": {"repobilityId": "4d930376e2be9761", "scanner": "scanner-primary", "fingerprint": "9e05f91bbc4cdb16", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-696fbcd33fb79c97", "level": "none", "message": {"text": "Commented-code block (8 lines) in dev/scripts/openai_ocr_compat_server.py:265"}, "properties": {"repobilityId": "92dfeff9bde376cf", "scanner": "scanner-primary", "fingerprint": "696fbcd33fb79c97", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-18a94db5a0cc808a", "level": "note", "message": {"text": "Legacy-named symbol `openocr_donghua_rec_v1` in dev/scripts/bench_holdout_episodes.py:36"}, "properties": {"repobilityId": "603fbf345c1f5e13", "scanner": "scanner-primary", "fingerprint": "18a94db5a0cc808a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-fb97f1beead052c2", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/bench_holdout_episodes.py:59"}, "properties": {"repobilityId": "6d3869301a8f0e18", "scanner": "scanner-primary", "fingerprint": "fb97f1beead052c2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9352bae6912df1fd", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/vsf_extract_beyondtime_batch.py:175"}, "properties": {"repobilityId": "216ab89adc038057", "scanner": "scanner-primary", "fingerprint": "9352bae6912df1fd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-412d2df0ce5e75f5", "level": "note", "message": {"text": "Legacy-named symbol `openocr_server_v1` in dev/scripts/train_openocr_rec_finetune.py:11"}, "properties": {"repobilityId": "1ccf7268a848bd9c", "scanner": "scanner-primary", "fingerprint": "412d2df0ce5e75f5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5444d8606e2dadfa", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/train_openocr_rec_finetune.py:164"}, "properties": {"repobilityId": "c6109fb392504499", "scanner": "scanner-primary", "fingerprint": "5444d8606e2dadfa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1e87dc8279c51660", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/extract_cue_frames.py:103"}, "properties": {"repobilityId": "008e37068c29276f", "scanner": "scanner-primary", "fingerprint": "1e87dc8279c51660", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-426052b78c2be3d8", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 dev/scripts/realesrgan_anime_runtime.py:28"}, "properties": {"repobilityId": "7fcb55d8e65ea854", "scanner": "scanner-primary", "fingerprint": "426052b78c2be3d8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f9f7a6a4f95a1822", "level": "note", "message": {"text": "Legacy-named symbol `openocr_donghua_rec_v1` in dev/scripts/benchmark_openocr_finetuned_22.py:27"}, "properties": {"repobilityId": "9894c916958e2b1e", "scanner": "scanner-primary", "fingerprint": "f9f7a6a4f95a1822", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d337908dc7ea1486", "level": "note", "message": {"text": "Legacy-named symbol `hunyuan_lora_beyondtime_v1` in dev/scripts/merge_hunyuan_lora.py:30"}, "properties": {"repobilityId": "42014d733517f90e", "scanner": "scanner-primary", "fingerprint": "d337908dc7ea1486", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b9a44b83227cee49", "level": "none", "message": {"text": "Commented-code block (5 lines) in dev/scripts/build_radical_leak_map.py:29"}, "properties": {"repobilityId": "b22d7f41ad1eb49a", "scanner": "scanner-primary", "fingerprint": "b9a44b83227cee49", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c100afa6b621aa33", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/release_check.py:153"}, "properties": {"repobilityId": "07f50cce118837b6", "scanner": "scanner-primary", "fingerprint": "c100afa6b621aa33", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1f283473c0f8c992", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/create_e2e_samples.py:141"}, "properties": {"repobilityId": "574a41f1f75c7513", "scanner": "scanner-primary", "fingerprint": "1f283473c0f8c992", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-576a98d5d0b81c31", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/build_nuitka.py:97"}, "properties": {"repobilityId": "2936adeec6d3ce03", "scanner": "scanner-primary", "fingerprint": "576a98d5d0b81c31", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-76c1e5928e65d92b", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/build_installer.py:129"}, "properties": {"repobilityId": "d3e091ab5a0d64b0", "scanner": "scanner-primary", "fingerprint": "76c1e5928e65d92b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5c4ca9e76b331344", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/sign_release.py:349"}, "properties": {"repobilityId": "ac7aa13d41d80ccf", "scanner": "scanner-primary", "fingerprint": "5c4ca9e76b331344", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-59aa6f751a1c85ba", "level": "note", "message": {"text": "Legacy-named symbol `_wrap_legacy` in src/hsext_v4/gui/main_window.py:608"}, "properties": {"repobilityId": "f3a071d6c15b01ec", "scanner": "scanner-primary", "fingerprint": "59aa6f751a1c85ba", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cb709e7b9b2a5c0b", "level": "note", "message": {"text": "Legacy-named symbol `scalanie_plikow_v2` in src/hsext_v4/gui/services/tool_actions.py:4"}, "properties": {"repobilityId": "cef6edaeff0c4a65", "scanner": "scanner-primary", "fingerprint": "cb709e7b9b2a5c0b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-16159d95ecc35128", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/gui/tabs/pipeline_config_tab.py:198"}, "properties": {"repobilityId": "09b66255416909a3", "scanner": "scanner-primary", "fingerprint": "16159d95ecc35128", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-339b7ffcdda23847", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/gui/tabs/_pipeline_binding.py:632"}, "properties": {"repobilityId": "38cd4de068e6e1ad", "scanner": "scanner-primary", "fingerprint": "339b7ffcdda23847", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-392b2a87344b63c4", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/hsext_v4/gui/tabs/_pipeline_binding.py:547"}, "properties": {"repobilityId": "7c7cb6f443fadb48", "scanner": "scanner-primary", "fingerprint": "392b2a87344b63c4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3815db7ef391747", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/gui/tabs/pipeline_tab.py:370"}, "properties": {"repobilityId": "2eb128569599b5a8", "scanner": "scanner-primary", "fingerprint": "d3815db7ef391747", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-957ccc73d09982ab", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/roi/series_memory.py:136"}, "properties": {"repobilityId": "bdb31df8997414a1", "scanner": "scanner-primary", "fingerprint": "957ccc73d09982ab", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-03ff4fb08b33a22e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/hsext_v4/roi/autopilot.py:58"}, "properties": {"repobilityId": "cd0ff6ba636cd82c", "scanner": "scanner-primary", "fingerprint": "03ff4fb08b33a22e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2c6c56e33455be89", "level": "note", "message": {"text": "Legacy-named symbol `_parse_v2` in src/hsext_v4/roi/profiles.py:302"}, "properties": {"repobilityId": "0f9781bd1c8d7552", "scanner": "scanner-primary", "fingerprint": "2c6c56e33455be89", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-15bb51e7477494ca", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/speaker/voice_registry.py:514"}, "properties": {"repobilityId": "7712fa70ce6f8579", "scanner": "scanner-primary", "fingerprint": "15bb51e7477494ca", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-51d56d56c116facf", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/speaker/voice_eval.py:137"}, "properties": {"repobilityId": "b6f16c23c24cf7c5", "scanner": "scanner-primary", "fingerprint": "51d56d56c116facf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9f628bd6c77ca6f1", "level": "note", "message": {"text": "Legacy-named symbol `has_v2` in src/hsext_v4/speaker/embeddings_io.py:239"}, "properties": {"repobilityId": "6c480cfe2fa0fbb3", "scanner": "scanner-primary", "fingerprint": "9f628bd6c77ca6f1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-682bd6e0dc6a5788", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/hsext_v4/speaker/pipeline.py:112"}, "properties": {"repobilityId": "ee9586ba366d06ea", "scanner": "scanner-primary", "fingerprint": "682bd6e0dc6a5788", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-afa4963e74edf462", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/pipeline/golden.py:198"}, "properties": {"repobilityId": "cf6237db1922c76b", "scanner": "scanner-primary", "fingerprint": "afa4963e74edf462", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0e586e48beb4a002", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/pipeline/run_preset.py:255"}, "properties": {"repobilityId": "ee607a9313cf7396", "scanner": "scanner-primary", "fingerprint": "0e586e48beb4a002", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1c6049d9d1424efc", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/hsext_v4/pipeline/run_preset.py:99"}, "properties": {"repobilityId": "bc37cc54a1fe9ef4", "scanner": "scanner-primary", "fingerprint": "1c6049d9d1424efc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad5b86e51e4be065", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/hsext_v4/core/shadow_boundary_probe.py:115"}, "properties": {"repobilityId": "14e295ccc4aad8bd", "scanner": "scanner-primary", "fingerprint": "ad5b86e51e4be065", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d64cac6a91a9299d", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/hsext_v4/core/visual_spacing.py:39"}, "properties": {"repobilityId": "1149056eff8d147c", "scanner": "scanner-primary", "fingerprint": "d64cac6a91a9299d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c40ae3e85a68451e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/hsext_v4/core/shadow_boundary.py:66"}, "properties": {"repobilityId": "3389ca7f01dd8dd2", "scanner": "scanner-primary", "fingerprint": "c40ae3e85a68451e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e8602004b92a1e0", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/core/sessions/models.py:253"}, "properties": {"repobilityId": "9e728efe6ec409fb", "scanner": "scanner-primary", "fingerprint": "4e8602004b92a1e0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-eadd247a1a623936", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/core/sessions/manager.py:143"}, "properties": {"repobilityId": "641cd4fd517e6d2f", "scanner": "scanner-primary", "fingerprint": "eadd247a1a623936", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7035eade92151de6", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/core/sessions/archive.py:474"}, "properties": {"repobilityId": "b152b085b61418c6", "scanner": "scanner-primary", "fingerprint": "7035eade92151de6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8d6ca2034973f509", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/hsext_v4/core/gpu/arbiter.py:77"}, "properties": {"repobilityId": "4ed16bdc607c4045", "scanner": "scanner-primary", "fingerprint": "8d6ca2034973f509", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-feec2a07017423e9", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/hsext_v4/core/pipeline_config/models.py:225"}, "properties": {"repobilityId": "d96866a3197bfaf9", "scanner": "scanner-primary", "fingerprint": "feec2a07017423e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ae645e3dabf5ca5", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/core/pipeline_config/store.py:261"}, "properties": {"repobilityId": "260e53ffcd3f9e86", "scanner": "scanner-primary", "fingerprint": "4ae645e3dabf5ca5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4a09af0bf24ab7d4", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in src/hsext_v4/core/pipeline_config/importer.py:393"}, "properties": {"repobilityId": "3f8b518b3deed320", "scanner": "scanner-primary", "fingerprint": "4a09af0bf24ab7d4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bbad946e4e2e4085", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/hsext_v4/core/stages/merge_stage.py:830"}, "properties": {"repobilityId": "18996fcc4726c93a", "scanner": "scanner-primary", "fingerprint": "bbad946e4e2e4085", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1501ca83ab397d5d", "level": "note", "message": {"text": "Legacy-named symbol `_pending_unused` in src/hsext_v4/core/stages/base.py:377"}, "properties": {"repobilityId": "ac9d15c70e8a4ea8", "scanner": "scanner-primary", "fingerprint": "1501ca83ab397d5d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7bebf038ef6827aa", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/hsext_v4/core/vl_batch/hard_cases.py:11"}, "properties": {"repobilityId": "22ab811d5a146bd5", "scanner": "scanner-primary", "fingerprint": "7bebf038ef6827aa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd94b0ab9ee46027", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/hsext_v4/ocr/filters.py:40"}, "properties": {"repobilityId": "40892b5042334a9c", "scanner": "scanner-primary", "fingerprint": "bd94b0ab9ee46027", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5d4c120686cd4983", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/hsext_v4/ocr/postprocess.py:456"}, "properties": {"repobilityId": "48b07cf64eceef09", "scanner": "scanner-primary", "fingerprint": "5d4c120686cd4983", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-44ccf2dfbe593648", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/hsext_v4/video/vsf_runner.py:80"}, "properties": {"repobilityId": "546109dcb84dc93f", "scanner": "scanner-primary", "fingerprint": "44ccf2dfbe593648", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-022ad766e4782939", "level": "note", "message": {"text": "Legacy-named symbol `scalanie_plikow_v2` in src/hsext_v4/plugins/registry.py:112"}, "properties": {"repobilityId": "e73e138234307a45", "scanner": "scanner-primary", "fingerprint": "022ad766e4782939", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "a5ae355b7fdb6790", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-02525d39071dd2c7", "level": "note", "message": {"text": "Near-duplicate function bodies in 5 places"}, "properties": {"repobilityId": "41b90e6f1906813e", "scanner": "scanner-primary", "fingerprint": "02525d39071dd2c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "d425d288225dcd37", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "ebef58073a3389bc", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "1eb8b159dc910703", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "333012b803fe7157", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "0b4747e52607518c", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "69ac8dda165e82b8", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "1a94971f667c9063", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "9d51ce9d62f0721b", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "b822e0bfb4f1487a", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "ec0c5ca92b48e94f", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "1f28065c0592de79", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "98f083ed1951f3ed", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "77d5e728f7541836", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "072e8af9bfe39698", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "2c9d9f49810af1c6", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "f49eb222b7e09b5b", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "59870ef0dbd2ff81", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "f8719f83a0469116", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-974b6c5bf584b109", "level": "error", "message": {"text": "FastAPI POST `_chat` without auth dependency \u2014 dev/scripts/openai_ocr_compat_server.py:766"}, "properties": {"repobilityId": "650b1fc3f3e1b90c", "scanner": "scanner-primary", "fingerprint": "974b6c5bf584b109", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "dev/scripts/openai_ocr_compat_server.py"}, "region": {"startLine": 766}}}]}, {"ruleId": "scanner-251e3dbd600caba5", "level": "note", "message": {"text": "Unused endpoint: GET /v1/models"}, "properties": {"repobilityId": "32a1c27776fa20fa", "scanner": "scanner-primary", "fingerprint": "251e3dbd600caba5", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ff99ecd9b3a77326", "level": "note", "message": {"text": "Unused endpoint: POST /v1/chat/completions"}, "properties": {"repobilityId": "a4e46ebebd196339", "scanner": "scanner-primary", "fingerprint": "ff99ecd9b3a77326", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}