← Legacy view v2 (rp.*)

sayedjalalmosavi69-stack/gojobot

https://github.com/sayedjalalmosavi69-stack/GojoBot.git · lang: python · LOC: · source: user_submitted

Quality
43.5
Grade D
Security
100.0
Findings
11
0 critical · 2 high
Status
completed
May 26, 2026 22:20
medium: 4 low: 3 high: 2 info: 2
Top rules by occurrence
RuleSeverityCount
MINED050 Stub Only Function info 1
MINED063 Toctou Os Path Exists info 1
CORE_NO_LICENSE No LICENSE file low 1
MINED111 Bare except continues silently medium 1
MINED001 Bare Except Pass high 1
CORE_LARGE_FILES Average file size is 1080 lines (recommend <300) medium 1
ERR001 [ERR001] Silent Exception Swallowing (and 2 more): Same pat… info 1
CORE_NO_CI No CI/CD configuration found medium 1
COMP001 [COMP001] High cognitive complexity: Function `load_yfinanc… low 1
CORE_NO_TESTS No test files found high 1
First 11 findings (severity-sorted)
high CORE_NO_TESTS No test files found
No test files found
high MINED001 Bare Except Pass CWE-755
main.py:300 · conf 1.00
[MINED001] Bare Except Pass: except: pass or except Exception: pass — silently swallows everything including KeyboardInterrupt and bugs.
medium CORE_LARGE_FILES Average file size is 1080 lines (recommend <300)
Average file size is 731 lines (recommend <300)
medium CORE_NO_CI No CI/CD configuration found
No CI/CD configuration found
medium ERR001 [ERR001] Silent Exception Swallowing (and 2 more): Same pattern found in 2 additional files. Review if needed.
main.py:300 · conf 1.00
[ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even in cleanup code, log at DEBUG level.
medium MINED111 Bare except continues silently
main.py:58 · 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.
low 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.
main.py:269 · conf 0.95
[COMP001] High cognitive complexity: Function `welcome_new_member` has cognitive complexity 11 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand — …
low CORE_NO_LICENSE No LICENSE file
No LICENSE file
low SEC124 TOCTOU file access (os.access then open)
main.py:38 · conf 1.00
[SEC124] TOCTOU file access (os.access then open): Check-then-use file pattern (access/exists then open) lets an attacker swap the file between check and use (symlink attack). `mktemp` is deprecated …
info MINED050 Stub Only Function CWE-1188
main.py:301 · conf 1.00
[MINED050] Stub Only Function: Function declared but body is just pass, return None, raise NotImplementedError, or TODO comment.
info MINED063 Toctou Os Path Exists CWE-367
main.py:24 · conf 1.00
[MINED063] Toctou Os Path Exists: if os.path.exists(p): open(p) — file can be replaced/deleted between check and use.

Reading from rp.scan + rp.finding + rp.rule (unified schema, R78 series). Legacy data path unchanged. Compare with /scan/0cac70b6-01c5-4598-8013-754ba3cd5b6a/.