Repository Analysis

onionshare/onionshare

Securely and anonymously share files, host websites, and chat with friends using the Tor network

15.3 Moderate AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of onionshare/onionshare, a Python project with 7,027 GitHub stars. SynthScan v2.0 examined 51,670 lines of code across 255 source files, recording 416 pattern matches distributed across 13 syntactic categories. The overall adjusted score of 15.3 places this repository in the Moderate AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

15.3
Adjusted Score
15.3
Raw Score
100%
Time Factor
2026-07-08
Last Push
7.0K
Stars
Python
Language
51.7K
Lines of Code
255
Files
416
Pattern Hits
2026-07-14
Scan Date
0.26
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 4HIGH 62MEDIUM 31LOW 319

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 416 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Cross-File Repetition62 hits · 310 pts
SeverityFileLineSnippetContext
HIGHdesktop/setup-freeze.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tor_settings_tab.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/main_window.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tor_connection.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/moat_dialog.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/__init__.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/gui_common.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/settings_tab.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/widgets.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/threads.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab_widget.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/update_checker.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/__main__.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/strings.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/__init__.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/server_status.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/tab.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/mode/mode_settings_widget.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/mode/__init__.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/mode/file_selection.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/mode/history.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/mode/receive_mode/__init__.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/mode/share_mode/__init__.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/mode/share_mode/threads.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/mode/chat_mode/__init__.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/mode/website_mode/__init__.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/setup.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/onionshare.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/__init__.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/censorship.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/mode_settings.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/common.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/meek.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/settings.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/onion.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/web/web.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/web/share_mode.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/web/send_base_mode.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/web/chat_mode.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/web/__init__.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/web/website_mode.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHcli/onionshare_cli/web/receive_mode.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/connection_tab.py0onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is freSTRING
HIGHdesktop/onionshare/tab/mode/__init__.py0returns the type of mode as a string (e.g. "share", "receive", etc.)STRING
HIGHdesktop/onionshare/tab/mode/receive_mode/__init__.py0returns the type of mode as a string (e.g. "share", "receive", etc.)STRING
HIGHdesktop/onionshare/tab/mode/share_mode/__init__.py0returns the type of mode as a string (e.g. "share", "receive", etc.)STRING
HIGHdesktop/onionshare/tab/mode/chat_mode/__init__.py0returns the type of mode as a string (e.g. "share", "receive", etc.)STRING
HIGHdesktop/onionshare/tab/mode/website_mode/__init__.py0returns the type of mode as a string (e.g. "share", "receive", etc.)STRING
HIGHdesktop/onionshare/tab/mode/__init__.py0return the string to put on the stop server button, if there's an auto-stop timerSTRING
HIGHdesktop/onionshare/tab/mode/receive_mode/__init__.py0return the string to put on the stop server button, if there's an auto-stop timerSTRING
HIGHdesktop/onionshare/tab/mode/share_mode/__init__.py0return the string to put on the stop server button, if there's an auto-stop timerSTRING
HIGHdesktop/onionshare/tab/mode/chat_mode/__init__.py0return the string to put on the stop server button, if there's an auto-stop timerSTRING
HIGHdesktop/onionshare/tab/mode/website_mode/__init__.py0return the string to put on the stop server button, if there's an auto-stop timerSTRING
HIGHdesktop/onionshare/tab/mode/__init__.py0the auto-stop timer expired, should we stop the server? returns a boolSTRING
HIGHdesktop/onionshare/tab/mode/receive_mode/__init__.py0the auto-stop timer expired, should we stop the server? returns a boolSTRING
HIGHdesktop/onionshare/tab/mode/share_mode/__init__.py0the auto-stop timer expired, should we stop the server? returns a boolSTRING
HIGHdesktop/onionshare/tab/mode/chat_mode/__init__.py0the auto-stop timer expired, should we stop the server? returns a boolSTRING
HIGHdesktop/onionshare/tab/mode/website_mode/__init__.py0the auto-stop timer expired, should we stop the server? returns a boolSTRING
HIGHdesktop/tests/test_gui_share.py0our custom 405 page should return for invalid methodsSTRING
HIGHdesktop/tests/test_gui_receive.py0our custom 405 page should return for invalid methodsSTRING
2 more matches not shown…
Hyper-Verbose Identifiers167 hits · 184 pts
SeverityFileLineSnippetContext
LOWdesktop/onionshare/tor_settings_tab.py522 def connection_type_bundled_toggled(self, checked):CODE
LOWdesktop/onionshare/tor_settings_tab.py532 def bridge_use_checkbox_state_changed(self):CODE
LOWdesktop/onionshare/tor_settings_tab.py545 def bridge_builtin_radio_toggled(self, checked):CODE
LOWdesktop/onionshare/tor_settings_tab.py554 def bridge_builtin_dropdown_changed(self, selection):CODE
LOWdesktop/onionshare/tor_settings_tab.py567 def bridge_moat_radio_toggled(self, checked):CODE
LOWdesktop/onionshare/tor_settings_tab.py576 def bridge_moat_button_clicked(self):CODE
LOWdesktop/onionshare/tor_settings_tab.py594 def bridge_custom_radio_toggled(self, checked):CODE
LOWdesktop/onionshare/tor_settings_tab.py603 def connection_type_automatic_toggled(self, checked):CODE
LOWdesktop/onionshare/tor_settings_tab.py613 def connection_type_control_port_toggled(self, checked):CODE
LOWdesktop/onionshare/tor_settings_tab.py627 def connection_type_socket_file_toggled(self, checked):CODE
LOWdesktop/onionshare/tor_settings_tab.py641 def authenticate_no_auth_toggled(self, checked):CODE
LOWdesktop/onionshare/main_window.py217 def tor_connection_open_tor_settings(self):CODE
LOWdesktop/onionshare/tor_connection.py141 def _canceled_connecting_to_tor(self):CODE
LOWdesktop/onionshare/connection_tab.py161 def first_launch_widget_connect_clicked(self):CODE
LOWdesktop/onionshare/connection_tab.py194 def _censorship_progress_update(self, progress, summary):CODE
LOWdesktop/onionshare/connection_tab.py214 def use_bridge_connect_clicked(self):CODE
LOWdesktop/onionshare/connection_tab.py704 def _detect_automatic_toggled(self):CODE
LOWdesktop/onionshare/moat_dialog.py200 def solution_lineedit_editing_finished(self):CODE
LOWdesktop/onionshare/settings_tab.py205 def close_forced_update_thread():CODE
LOWdesktop/onionshare/settings_tab.py325 def _update_autoupdate_timestamp(self, autoupdate_timestamp):CODE
LOWdesktop/onionshare/tab/server_status.py497 def show_url_qr_code_button_clicked(self):CODE
LOWdesktop/onionshare/tab/server_status.py505 def show_client_auth_qr_code_button_clicked(self):CODE
LOWdesktop/onionshare/tab/server_status.py515 def client_auth_toggle_button_clicked(self):CODE
LOWdesktop/onionshare/tab/tab.py402 def update_server_status_indicator(self):CODE
LOWdesktop/onionshare/tab/tab.py481 def set_server_status_indicator_stopped(self, label_text):CODE
LOWdesktop/onionshare/tab/tab.py492 def set_server_status_indicator_working(self, label_text):CODE
LOWdesktop/onionshare/tab/tab.py501 def set_server_status_indicator_started(self, label_text):CODE
LOWdesktop/onionshare/tab/mode/mode_settings_widget.py217 def persistent_checkbox_clicked(self):CODE
LOWdesktop/onionshare/tab/mode/mode_settings_widget.py232 def persistent_autostart_on_launch_checkbox_clicked(self):CODE
LOWdesktop/onionshare/tab/mode/mode_settings_widget.py238 def autostart_timer_checkbox_clicked(self):CODE
LOWdesktop/onionshare/tab/mode/mode_settings_widget.py248 def autostop_timer_checkbox_clicked(self):CODE
LOWdesktop/onionshare/tab/mode/__init__.py233 def get_stop_server_autostop_timer_text(self):CODE
LOWdesktop/onionshare/tab/mode/__init__.py239 def autostop_timer_finished_should_stop_server(self):CODE
LOWdesktop/onionshare/tab/mode/__init__.py391 def start_server_error_custom(self):CODE
LOWdesktop/onionshare/tab/mode/__init__.py497 def handle_request_upload_includes_message(self, event):CODE
LOWdesktop/onionshare/tab/mode/__init__.py503 def handle_request_upload_file_renamed(self, event):CODE
LOWdesktop/onionshare/tab/mode/__init__.py509 def handle_request_upload_message(self, event):CODE
LOWdesktop/onionshare/tab/mode/__init__.py515 def handle_request_upload_set_dir(self, event):CODE
LOWdesktop/onionshare/tab/mode/__init__.py521 def handle_request_upload_finished(self, event):CODE
LOWdesktop/onionshare/tab/mode/__init__.py527 def handle_request_upload_canceled(self, event):CODE
LOWdesktop/onionshare/tab/mode/__init__.py533 def handle_request_individual_file_started(self, event):CODE
LOWdesktop/onionshare/tab/mode/__init__.py545 def handle_request_individual_file_progress(self, event):CODE
LOWdesktop/onionshare/tab/mode/__init__.py555 def handle_request_individual_file_canceled(self, event):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py236 def disable_text_checkbox_clicked(self):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py246 def disable_files_checkbox_clicked(self):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py256 def webhook_url_checkbox_clicked(self):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py267 def webhook_url_editing_finished(self):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py276 def get_stop_server_autostop_timer_text(self):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py282 def autostop_timer_finished_should_stop_server(self):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py374 def handle_request_upload_includes_message(self, event):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py380 def handle_request_upload_file_renamed(self, event):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py393 def handle_request_upload_set_dir(self, event):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py406 def handle_request_upload_finished(self, event):CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py416 def handle_request_upload_canceled(self, event):CODE
LOWdesktop/onionshare/tab/mode/share_mode/__init__.py184 def autostop_sharing_checkbox_clicked(self):CODE
LOWdesktop/onionshare/tab/mode/share_mode/__init__.py192 def get_stop_server_autostop_timer_text(self):CODE
LOWdesktop/onionshare/tab/mode/share_mode/__init__.py198 def autostop_timer_finished_should_stop_server(self):CODE
LOWdesktop/onionshare/tab/mode/share_mode/__init__.py262 def start_server_error_custom(self):CODE
LOWdesktop/onionshare/tab/mode/chat_mode/__init__.py116 def get_stop_server_autostop_timer_text(self):CODE
LOWdesktop/onionshare/tab/mode/chat_mode/__init__.py122 def autostop_timer_finished_should_stop_server(self):CODE
107 more matches not shown…
Self-Referential Comments30 hits · 99 pts
SeverityFileLineSnippetContext
MEDIUMflatpak/generate-golang-dependencies.py8# Define the repositories, tags, and subfoldersCOMMENT
MEDIUMflatpak/generate-golang-dependencies.py18# Create the flatpak folder and subfoldersCOMMENT
MEDIUMdesktop/setup.py2# This file is used to build the Snapcraft and Flatpak packagesCOMMENT
MEDIUMdesktop/onionshare/main_window.py153 # Create the close warning dialog -- the dialog widget needs to be in the constructorCOMMENT
MEDIUMdesktop/onionshare/tab_widget.py56 # Define the new tab buttonCOMMENT
MEDIUMdesktop/onionshare/tab/tab.py214 # Create the timerCOMMENT
MEDIUMdesktop/onionshare/tab/tab.py228 # Create the close warning dialog -- the dialog widget needs to be in the constructorCOMMENT
MEDIUMdesktop/onionshare/tab/mode/file_selection.py287 # Create a new itemCOMMENT
MEDIUMdesktop/onionshare/tab/mode/file_selection.py331 # Create the item's widget and layoutsCOMMENT
MEDIUMdesktop/onionshare/tab/mode/receive_mode/__init__.py42 # Create the Web objectCOMMENT
MEDIUMdesktop/onionshare/tab/mode/share_mode/__init__.py48 # Create the Web objectCOMMENT
MEDIUMdesktop/onionshare/tab/mode/chat_mode/__init__.py43 # Create the Web objectCOMMENT
MEDIUMdesktop/onionshare/tab/mode/website_mode/__init__.py48 # Create the Web objectCOMMENT
MEDIUMcli/onionshare_cli/__init__.py319 # Create the Web objectCOMMENT
MEDIUMcli/onionshare_cli/onion.py227 # Create a torrc for this sessionCOMMENT
MEDIUMcli/onionshare_cli/onion.py241 # Create the torrcCOMMENT
MEDIUMcli/onionshare_cli/web/web.py154 # Define the web app routesCOMMENT
MEDIUMcli/onionshare_cli/web/web.py157 # Create the mode web object, which defines its own routesCOMMENT
MEDIUMcli/onionshare_cli/web/send_base_mode.py47 # Create a temporary dir to store gzip files inCOMMENT
MEDIUMcli/onionshare_cli/web/receive_mode.py409 # Create an history_id, attach it to the requestCOMMENT
MEDIUMcli/tests/test_cli_web_symlink.py24 # Create a unique temp directory for this test setupCOMMENT
MEDIUMcli/tests/test_cli_web_symlink.py27 # Create the secret file outside the shared directoryCOMMENT
MEDIUMcli/tests/test_cli_web_symlink.py32 # Create the shared directoryCOMMENT
MEDIUMcli/tests/test_cli_web_symlink.py36 # Create a normal file in the shared directoryCOMMENT
MEDIUMcli/tests/test_cli_web_symlink.py41 # Create a symlink to the secret inside the shared directoryCOMMENT
MEDIUMcli/tests/test_cli_web_symlink.py45 # Create a nested directory with files and symlinksCOMMENT
MEDIUMcli/tests/test_cli_web_symlink.py184 # Create a directory with only a symlink (no normal files)COMMENT
MEDIUMcli/tests/test_cli_web_symlink.py242 # Create a unique temp directory for this testCOMMENT
MEDIUMcli/tests/test_cli_web_symlink.py255 # Create a symlink to a directoryCOMMENT
MEDIUMcli/tests/test_cli_web_symlink.py259 # Create a normal fileCOMMENT
Excessive Try-Catch Wrapping53 hits · 56 pts
SeverityFileLineSnippetContext
LOWdesktop/onionshare/tor_connection.py213 except Exception as e:CODE
LOWdesktop/onionshare/moat_dialog.py301 except Exception as e:CODE
LOWdesktop/onionshare/moat_dialog.py362 except Exception as e:CODE
LOWdesktop/onionshare/threads.py109 except Exception as e:CODE
LOWdesktop/onionshare/threads.py258 except Exception:CODE
LOWdesktop/onionshare/update_checker.py147 except Exception as e:CODE
LOWdesktop/onionshare/update_checker.py210 except Exception as e:CODE
LOWdesktop/onionshare/tab/server_status.py227 except Exception:CODE
LOWdesktop/onionshare/tab/mode/__init__.py438 except Exception:CODE
LOWdesktop/onionshare/tab/mode/history.py258 except Exception:CODE
LOWcli/onionshare_cli/onionshare.py57 except Exception:CODE
LOWcli/onionshare_cli/__init__.py342 except Exception:CODE
LOWcli/onionshare_cli/mode_settings.py144 except Exception:CODE
LOWcli/onionshare_cli/common.py407 except Exception:CODE
LOWcli/onionshare_cli/common.py413 except Exception:CODE
LOWcli/onionshare_cli/common.py423 except Exception:CODE
LOWcli/onionshare_cli/meek.py167 except Exception:CODE
LOWcli/onionshare_cli/settings.py179 except Exception:CODE
LOWcli/onionshare_cli/settings.py185 except Exception:CODE
LOWcli/onionshare_cli/settings.py204 except Exception:CODE
LOWcli/onionshare_cli/onion.py249 except Exception:CODE
LOWcli/onionshare_cli/onion.py269 except Exception:CODE
LOWcli/onionshare_cli/onion.py280 except Exception:CODE
LOWcli/onionshare_cli/onion.py434 except Exception as e:CODE
LOWcli/onionshare_cli/onion.py500 except Exception:CODE
LOWcli/onionshare_cli/onion.py510 except Exception:CODE
LOWcli/onionshare_cli/onion.py524 except Exception:CODE
LOWcli/onionshare_cli/onion.py546 except Exception:CODE
LOWcli/onionshare_cli/onion.py553 except Exception:CODE
LOWcli/onionshare_cli/onion.py576 except Exception:CODE
LOWcli/onionshare_cli/onion.py655 except Exception:CODE
LOWcli/onionshare_cli/onion.py799 except Exception:CODE
LOWcli/onionshare_cli/onion.py820 except Exception:CODE
LOWcli/onionshare_cli/onion.py825 except Exception:CODE
LOWcli/onionshare_cli/onion.py868 except Exception:CODE
LOWcli/onionshare_cli/onion.py888 except Exception:CODE
LOWcli/onionshare_cli/onion.py901 except Exception:CODE
LOWcli/onionshare_cli/web/web.py55except Exception:CODE
LOWcli/onionshare_cli/web/web.py364 except Exception as e:CODE
LOWcli/onionshare_cli/web/share_mode.py376 except Exception:CODE
LOWcli/onionshare_cli/web/share_mode.py400 except Exception:CODE
LOWcli/onionshare_cli/web/send_base_mode.py344 except Exception:CODE
LOWcli/onionshare_cli/web/chat_mode.py86 except Exception as e:CODE
MEDIUMcli/onionshare_cli/web/chat_mode.py78def validate_username(self, username):CODE
LOWcli/onionshare_cli/web/receive_mode.py263 except Exception as e:CODE
LOWcli/onionshare_cli/web/receive_mode.py303 except Exception:CODE
LOWcli/onionshare_cli/web/receive_mode.py351 except Exception:CODE
LOWcli/onionshare_cli/web/receive_mode.py365 except Exception:CODE
LOWcli/onionshare_cli/web/receive_mode.py416 except Exception:CODE
LOWcli/onionshare_cli/web/receive_mode.py644 except Exception:CODE
LOWcli/tests/conftest.py113 except Exception:CODE
LOWcli/tests/test_cli_web.py407 except Exception:CODE
LOWcli/tests/test_cli_web.py429 except Exception:CODE
Deep Nesting46 hits · 45 pts
SeverityFileLineSnippetContext
LOWflatpak/poetry-to-requirements.py6CODE
LOWdesktop/onionshare/tor_settings_tab.py413CODE
LOWdesktop/onionshare/tor_settings_tab.py677CODE
LOWdesktop/onionshare/moat_dialog.py234CODE
LOWdesktop/onionshare/__init__.py140CODE
LOWdesktop/onionshare/gui_common.py558CODE
LOWdesktop/onionshare/threads.py201CODE
LOWdesktop/onionshare/tab_widget.py416CODE
LOWdesktop/onionshare/tab/server_status.py230CODE
LOWdesktop/onionshare/tab/server_status.py323CODE
LOWdesktop/onionshare/tab/server_status.py425CODE
LOWdesktop/onionshare/tab/tab.py241CODE
LOWdesktop/onionshare/tab/tab.py402CODE
LOWdesktop/onionshare/tab/tab.py514CODE
LOWdesktop/onionshare/tab/tab.py627CODE
LOWdesktop/onionshare/tab/tab.py640CODE
LOWdesktop/onionshare/tab/mode/mode_settings_widget.py190CODE
LOWdesktop/onionshare/tab/mode/__init__.py167CODE
LOWdesktop/onionshare/tab/mode/history.py385CODE
LOWdesktop/tests/test_gui_receive.py70CODE
LOWdesktop/tests/test_gui_receive.py277CODE
LOWdesktop/scripts/get-tor.py267CODE
LOWdesktop/scripts/macos-check-arch.py5CODE
LOWdesktop/scripts/build-windows.py61CODE
LOWdesktop/scripts/common.py5CODE
LOWcli/onionshare_cli/__init__.py37CODE
LOWcli/onionshare_cli/censorship.py228CODE
LOWcli/onionshare_cli/mode_settings.py85CODE
LOWcli/onionshare_cli/common.py321CODE
LOWcli/onionshare_cli/meek.py143CODE
LOWcli/onionshare_cli/settings.py199CODE
LOWcli/onionshare_cli/onion.py193CODE
LOWcli/onionshare_cli/onion.py804CODE
LOWcli/onionshare_cli/web/web.py85CODE
LOWcli/onionshare_cli/web/web.py186CODE
LOWcli/onionshare_cli/web/share_mode.py51CODE
LOWcli/onionshare_cli/web/share_mode.py303CODE
LOWcli/onionshare_cli/web/share_mode.py431CODE
LOWcli/onionshare_cli/web/send_base_mode.py73CODE
LOWcli/onionshare_cli/web/send_base_mode.py251CODE
LOWcli/onionshare_cli/web/send_base_mode.py292CODE
LOWcli/onionshare_cli/web/website_mode.py71CODE
LOWcli/onionshare_cli/web/receive_mode.py377CODE
LOWcli/onionshare_cli/web/receive_mode.py465CODE
LOWcli/onionshare_cli/web/receive_mode.py579CODE
LOWcli/tests/test_cli_web.py414CODE
Hallucination Indicators4 hits · 40 pts
SeverityFileLineSnippetContext
CRITICALdesktop/tests/gui_base_test.py110 tab.share_mode.server_status.file_selection.file_list.add_file(filename)CODE
CRITICALdesktop/tests/gui_base_test.py141 tab.website_mode.server_status.file_selection.file_list.add_file(filename)CODE
CRITICALdocs/gettext/_static/jquery.js2!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):fCODE
CRITICAL…share_cli/resources/static/js/jquery-3.7.1.slim.min.js2!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):fCODE
Unused Imports33 hits · 30 pts
SeverityFileLineSnippetContext
LOWdesktop/setup-freeze.py25CODE
LOWdesktop/onionshare/main_window.py21CODE
LOWdesktop/onionshare/__init__.py21CODE
LOWdesktop/onionshare/__init__.py31CODE
LOWdesktop/onionshare/settings_parent_tab.py1CODE
LOWdesktop/onionshare/settings_parent_tab.py3CODE
LOWdesktop/onionshare/settings_parent_tab.py6CODE
LOWdesktop/onionshare/settings_parent_tab.py7CODE
LOWdesktop/onionshare/settings_parent_tab.py8CODE
LOWdesktop/onionshare/settings_parent_tab.py11CODE
LOWdesktop/onionshare/tab/__init__.py21CODE
LOWdesktop/onionshare/tab/mode/receive_mode/__init__.py29CODE
LOWdesktop/tests/gui_base_test.py12CODE
LOWdesktop/tests/gui_base_test.py14CODE
LOWdesktop/scripts/get-tor.py2CODE
LOWdesktop/scripts/get-tor.py8CODE
LOWdesktop/scripts/build-windows.py2CODE
LOWdesktop/scripts/build-windows.py3CODE
LOWdesktop/scripts/build-macos.py8CODE
LOWdesktop/scripts/build-macos.py9CODE
LOWcli/onionshare_cli/onionshare.py21CODE
LOWcli/onionshare_cli/common.py26CODE
LOWcli/onionshare_cli/web/web.py20CODE
LOWcli/onionshare_cli/web/web.py25CODE
LOWcli/onionshare_cli/web/web.py26CODE
LOWcli/onionshare_cli/web/web.py30CODE
LOWcli/onionshare_cli/web/web.py30CODE
LOWcli/onionshare_cli/web/__init__.py21CODE
LOWcli/tests/test_cli_web_symlink.py2CODE
LOWcli/tests/test_cli_web_symlink.py7CODE
LOWcli/tests/test_cli_web_symlink.py9CODE
LOWcli/tests/test_cli_web.py8CODE
LOWcli/tests/test_cli.py1CODE
Redundant / Tautological Comments8 hits · 13 pts
SeverityFileLineSnippetContext
LOWdesktop/onionshare/tor_settings_tab.py418 # Check if autoconnect was enabledCOMMENT
LOWdesktop/onionshare/main_window.py273 # Check if color mode switched while onionshare was open, if so, ask user to restartCOMMENT
LOWdesktop/onionshare/tab_widget.py329 # Check if the last tab is closed, or there is only one tabCOMMENT
LOWdesktop/onionshare/tab/mode/history.py744 # Add it to the listCOMMENT
LOWcli/onionshare_cli/web/share_mode.py491 # Check if there's only 1 file and no foldersCOMMENT
LOWcli/onionshare_cli/web/receive_mode.py140 # Check if files were submitted when disabledCOMMENT
LOWcli/onionshare_cli/web/receive_mode.py299 # Open the fileCOMMENT
LOWcli/onionshare_cli/web/receive_mode.py553 # Check if file uploads are disabled - reject file streams earlyCOMMENT
Over-Commented Block7 hits · 7 pts
SeverityFileLineSnippetContext
LOWflatpak/snowflake/modules.txt41github.com/aws/aws-sdk-go-v2/credentials/ssocredsCOMMENT
LOWflatpak/snowflake/modules.txt121## explicitCOMMENT
LOWflatpak/snowflake/modules.txt321# github.com/stretchr/testify v1.11.1COMMENT
LOWflatpak/snowflake/modules.txt341## explicit; go 1.20COMMENT
LOWcli/onionshare_cli/web/receive_mode.py21import osCOMMENT
LOW.github/workflows/codeql-analysis.yml1# For most projects, this workflow file will not need changing; you simply needCOMMENT
LOW.github/workflows/codeql-analysis.yml41 # Initializes the CodeQL tools for scanning.COMMENT
AI Slop Vocabulary2 hits · 3 pts
SeverityFileLineSnippetContext
LOWcli/onionshare_cli/__init__.py284 # The assumption is that if we didn't just create the mode settings,COMMENT
LOWcli/onionshare_cli/onion.py780 # it would need to be in the format below. However, let's just set the private keyCOMMENT
Slop Phrases1 hit · 2 pts
SeverityFileLineSnippetContext
LOWcli/onionshare_cli/web/receive_mode.py305 # OnionShare is running, but if it does make sure to throw an errorCOMMENT
Fake / Example Data2 hits · 2 pts
SeverityFileLineSnippetContext
LOWdesktop/tests/gui_base_test.py65 "<html><body><p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laCODE
LOWdesktop/tests/gui_base_test.py65 "<html><body><p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laCODE
AI Structural Patterns1 hit · 1 pts
SeverityFileLineSnippetContext
LOWdesktop/onionshare/tab/mode/__init__.py165CODE