https://github.com/00gxd14g/DDUE-Recovery-Project-P1 ·
lang: python ·
LOC: ·
source: both
| Rule | Severity | Count |
|---|---|---|
MINED111 Bare except continues silently |
medium | 25 |
MINED108 self.attribute used but never assigned in __init__ |
high | 25 |
MINED050 Stub Only Function |
info | 4 |
MINED001 Bare Except Pass |
high | 4 |
ERR001 [ERR001] Silent Exception Swallowing (and 2 more): Same pat… |
info | 4 |
COMP001 [COMP001] High cognitive complexity: Function `load_yfinanc… |
low | 4 |
AIC003 Duplicated implementation block across source files |
low | 3 |
SEC128 Async function without await — fire-and-forget Promise (AI … |
high | 3 |
SEC136 AI-typical over-broad exception handler swallowing all erro… |
medium | 2 |
CORE_NO_CI No CI/CD configuration found |
medium | 1 |
COMP001
[COMP001] High cognitive complexity: Function `load_yfinance_data` has cognitive complexity 9 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand — nested branches, boolean chains, and recursion all weigh in. Breakdown: except=1, for=1, if=2, nested_bonus=3, or=2.
debug_mft.py:31
· conf 0.95
[COMP001] High cognitive complexity: Function `main` has cognitive complexity 60 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand — nested branche…
COMP001
[COMP001] High cognitive complexity: Function `load_yfinance_data` has cognitive complexity 9 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand — nested branches, boolean chains, and recursion all weigh in. Breakdown: except=1, for=1, if=2, nested_bonus=3, or=2.
pyddeu/carve.py:31
· conf 0.95
[COMP001] High cognitive complexity: Function `carve_signatures` has cognitive complexity 26 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand — ne…
MINED001
Bare Except Pass
CWE-755
pyddeu/carve.py:58
· conf 1.00
[MINED001] Bare Except Pass: except: pass or except Exception: pass — silently swallows everything including KeyboardInterrupt and bugs.
MINED001
Bare Except Pass
CWE-755
pyddeu/exporter.py:107
· conf 1.00
[MINED001] Bare Except Pass: except: pass or except Exception: pass — silently swallows everything including KeyboardInterrupt and bugs.
MINED001
Bare Except Pass
CWE-755
pyddeu/imager.py:53
· conf 1.00
[MINED001] Bare Except Pass: except: pass or except Exception: pass — silently swallows everything including KeyboardInterrupt and bugs.
MINED004
Weak Crypto
CWE-327
pyddeu/state.py:131
· conf 1.00
[MINED004] Weak Crypto: MD5/SHA1/DES/RC4 used for security context (not just checksums).
MINED106
Phantom test coverage (assertion-free test)
CWE-1126
tests/test_monitor.py:165
· conf 1.00
[MINED106] Phantom test coverage: test_start_linux_monitor: Test function `test_start_linux_monitor` runs code but contains no assert / expect / should call — it passes regardless of behaviour. Adds …
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:116
· conf 1.00
[MINED108] `self.var_aggressive_scan` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.var_aggressive_scan`, but no assignment to it exists in __init__ (and no…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:117
· conf 1.00
[MINED108] `self.var_fast_list` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.var_fast_list`, but no assignment to it exists in __init__ (and no class-level…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:120
· conf 1.00
[MINED108] `self.entry_source` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.entry_source`, but no assignment to it exists in __init__ (and no class-level f…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:125
· conf 1.00
[MINED108] `self.entry_output` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.entry_output`, but no assignment to it exists in __init__ (and no class-level f…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:185
· conf 1.00
[MINED108] `self.list_parts` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.list_parts`, but no assignment to it exists in __init__ (and no class-level fallb…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:188
· conf 1.00
[MINED108] `self.on_partition_select` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.on_partition_select`, but no assignment to it exists in __init__ (and no…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:189
· conf 1.00
[MINED108] `self.list_parts` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.list_parts`, but no assignment to it exists in __init__ (and no class-level fallb…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:191
· conf 1.00
[MINED108] `self.txt_hex` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.txt_hex`, but no assignment to it exists in __init__ (and no class-level fallback). …
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:198
· conf 1.00
[MINED108] `self.tree` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.tree`, but no assignment to it exists in __init__ (and no class-level fallback). This r…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:211
· conf 1.00
[MINED108] `self.context_menu` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.context_menu`, but no assignment to it exists in __init__ (and no class-level f…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:223
· conf 1.00
[MINED108] `self.var_autoscroll` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.var_autoscroll`, but no assignment to it exists in __init__ (and no class-lev…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:224
· conf 1.00
[MINED108] `self.var_pause` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.var_pause`, but no assignment to it exists in __init__ (and no class-level fallbac…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:233
· conf 1.00
[MINED108] `self.txt_log` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.txt_log`, but no assignment to it exists in __init__ (and no class-level fallback). …
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:246
· conf 1.00
[MINED108] `self.lbl_status` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.lbl_status`, but no assignment to it exists in __init__ (and no class-level fallb…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:248
· conf 1.00
[MINED108] `self.prog` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.prog`, but no assignment to it exists in __init__ (and no class-level fallback). This r…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:255
· conf 1.00
[MINED108] `self.entry_ext` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.entry_ext`, but no assignment to it exists in __init__ (and no class-level fallbac…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:260
· conf 1.00
[MINED108] `self.entry_max_mb` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.entry_max_mb`, but no assignment to it exists in __init__ (and no class-level f…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:264
· conf 1.00
[MINED108] `self.var_skip_archives` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.var_skip_archives`, but no assignment to it exists in __init__ (and no cla…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:265
· conf 1.00
[MINED108] `self.var_skip_existing` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.var_skip_existing`, but no assignment to it exists in __init__ (and no cla…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:266
· conf 1.00
[MINED108] `self.var_skip_videos` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.var_skip_videos`, but no assignment to it exists in __init__ (and no class-l…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:267
· conf 1.00
[MINED108] `self.var_export_deleted` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.var_export_deleted`, but no assignment to it exists in __init__ (and no c…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:268
· conf 1.00
[MINED108] `self.var_export_active` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.var_export_active`, but no assignment to it exists in __init__ (and no cla…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/gui.py:269
· conf 1.00
[MINED108] `self.var_show_deleted_only` used but never assigned in __init__: Method `_setup_ui` of class `PyDDEUGui` reads `self.var_show_deleted_only`, but no assignment to it exists in __init__ (an…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/monitor.py:181
· conf 1.00
[MINED108] `self._should_process_line` used but never assigned in __init__: Method `run` of class `LinuxKernelMonitor` reads `self._should_process_line`, but no assignment to it exists in __init__ (a…
MINED108
self.attribute used but never assigned in __init__
CWE-476
pyddeu/monitor.py:184
· conf 1.00
[MINED108] `self._classify_message` used but never assigned in __init__: Method `run` of class `LinuxKernelMonitor` reads `self._classify_message`, but no assignment to it exists in __init__ (and no …
SEC128
Async function without await — fire-and-forget Promise (AI mistake)
pyddeu/state.py:202
· conf 1.00
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call invoked without `await` returns an unhandled Promise. The outer function resolves before the inner work comple…
SEC128
Async function without await — fire-and-forget Promise (AI mistake)
winui/PyDDEU.WinUI.Tests/FileLogSinkTests.cs:37
· conf 1.00
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call invoked without `await` returns an unhandled Promise. The outer function resolves before the inner work comple…
SEC128
Async function without await — fire-and-forget Promise (AI mistake)
winui/PyDDEU.WinUI.Tests/PythonBridgeClientTests.cs:56
· conf 1.00
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call invoked without `await` returns an unhandled Promise. The outer function resolves before the inner work comple…
COMP001
[COMP001] High cognitive complexity: Function `load_yfinance_data` has cognitive complexity 9 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand — nested branches, boolean chains, and recursion all weigh in. Breakdown: except=1, for=1, if=2, nested_bonus=3, or=2.
debug_partition.py:18
· conf 0.95
[COMP001] High cognitive complexity: Function `main` has cognitive complexity 20 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand — nested branche…
CORE_NO_CI
No CI/CD configuration found
No CI/CD configuration found
ERR001
[ERR001] Silent Exception Swallowing (and 2 more): Same pattern found in 2 additional files. Review if needed.
pyddeu/carve.py:58
· conf 1.00
[ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even in cleanup code, log at DEBUG level.
ERR001
[ERR001] Silent Exception Swallowing (and 2 more): Same pattern found in 2 additional files. Review if needed.
pyddeu/exporter.py:107
· conf 1.00
[ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even in cleanup code, log at DEBUG level.
ERR001
[ERR001] Silent Exception Swallowing (and 2 more): Same pattern found in 2 additional files. Review if needed.
pyddeu/imager.py:53
· conf 1.00
[ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even in cleanup code, log at DEBUG level.
MINED111
Bare except continues silently
debug_mbr.py:57
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
debug_partition.py:81
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:16
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:446
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:498
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:545
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:579
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:614
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:643
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:782
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:1084
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:1124
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:1626
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:2191
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:2480
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:2762
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:2919
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:2930
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:2998
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/gui.py:3004
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/mft.py:96
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/mft.py:142
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/monitor.py:216
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/monitor.py:287
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
MINED111
Bare except continues silently
pyddeu/platform.py:19
· conf 1.00
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
SEC136
AI-typical over-broad exception handler swallowing all errors
pyddeu/config.py:33
· conf 1.00
[SEC136] AI-typical over-broad exception handler swallowing all errors: Catch-all exception block that silently returns success or no-ops. AI agents reach for this pattern when a flaky test or an unf…
SEC136
AI-typical over-broad exception handler swallowing all errors
pyddeu/monitor.py:285
· conf 1.00
[SEC136] AI-typical over-broad exception handler swallowing all errors: Catch-all exception block that silently returns success or no-ops. AI agents reach for this pattern when a flaky test or an unf…
AIC003
Duplicated implementation block across source files
debug_mbr_v3.py:1
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
pyddeu/io/windows.py:294
· conf 0.86
Duplicated implementation block across source files
AIC003
Duplicated implementation block across source files
pyddeu/ntfs.py:9
· conf 0.86
Duplicated implementation block across source files
CORE_NO_LICENSE
No LICENSE file
No LICENSE file
COMP001
[COMP001] High cognitive complexity: Function `load_yfinance_data` has cognitive complexity 9 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand — nested branches, boolean chains, and recursion all weigh in. Breakdown: except=1, for=1, if=2, nested_bonus=3, or=2.
· conf 0.20
[COMP001] High cognitive complexity (and 17 more): Same pattern found in 17 additional files. Review if needed.
ERR001
[ERR001] Silent Exception Swallowing (and 2 more): Same pattern found in 2 additional files. Review if needed.
· conf 0.20
[ERR001] Silent Exception Swallowing (and 3 more): Same pattern found in 3 additional files. Review if needed.
MINED001
Bare Except Pass
CWE-755
· conf 0.20
[MINED001] Bare Except Pass (and 3 more): Same pattern found in 3 additional files. Review if needed.
MINED050
Stub Only Function
CWE-1188
· conf 0.20
[MINED050] Stub Only Function (and 3 more): Same pattern found in 3 additional files. Review if needed.
MINED050
Stub Only Function
CWE-1188
pyddeu/carve.py:59
· conf 1.00
[MINED050] Stub Only Function: Function declared but body is just pass, return None, raise NotImplementedError, or TODO comment.
MINED050
Stub Only Function
CWE-1188
pyddeu/exporter.py:108
· conf 1.00
[MINED050] Stub Only Function: Function declared but body is just pass, return None, raise NotImplementedError, or TODO comment.
MINED050
Stub Only Function
CWE-1188
pyddeu/imager.py:54
· conf 1.00
[MINED050] Stub Only Function: Function declared but body is just pass, return None, raise NotImplementedError, or TODO comment.
MINED051
Csharp Null Forgive
CWE-476
winui/PyDDEU.WinUI/Models/FileTreeModels.cs:90
· conf 1.00
[MINED051] Csharp Null Forgive: x! tells compiler "definitely not null" — bypasses nullable check. NRE risk if wrong.
Reading from rp.scan + rp.finding + rp.rule (unified schema, R78 series). Legacy data path unchanged. Compare with /scan/aab09880-7cd6-4c65-85c8-ab406a0c8e77/.