Repository Analysis

badabing2005/PixelFlasher

Pixel™ phone flashing GUI utility with features.

90.6 Strong AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of badabing2005/PixelFlasher, a Python project with 2,212 GitHub stars. SynthScan v2.0 examined 63,299 lines of code across 60 source files, recording 3968 pattern matches distributed across 15 syntactic categories. The overall adjusted score of 90.6 places this repository in the Strong 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).

90.6
Adjusted Score
90.6
Raw Score
100%
Time Factor
2026-07-13
Last Push
2.2K
Stars
Python
Language
63.3K
Lines of Code
60
Files
4.0K
Pattern Hits
2026-07-14
Scan Date
0.03
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 0HIGH 2MEDIUM 2730LOW 1236

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 3968 distinct pattern matches across 15 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.

Decorative Section Separators2342 hits · 4550 pts
SeverityFileLineSnippetContext
MEDIUMmagisk_modules.py68# ============================================================================COMMENT
MEDIUMmagisk_modules.py70# ============================================================================COMMENT
MEDIUMmagisk_modules.py76# ============================================================================COMMENT
MEDIUMmagisk_modules.py78# ============================================================================COMMENT
MEDIUMmagisk_modules.py435 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py437 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py441 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py443 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py495 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py497 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py504 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py506 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py510 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py512 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py531 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py533 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py552 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py554 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py571 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py573 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py590 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py592 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py645 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py647 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py651 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py653 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py671 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py673 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py755 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py757 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py824 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py826 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py843 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py845 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py883 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py885 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py911 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py913 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py953 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py955 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py959 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py961 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py965 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py967 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py1008 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py1010 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py1020 # ----------------------------------------------------------------------------COMMENT
MEDIUMmagisk_modules.py1022 # ----------------------------------------------------------------------------COMMENT
MEDIUMmagisk_modules.py1029 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py1031 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py51# ============================================================================COMMENT
MEDIUMmagisk_modules.py53# ============================================================================COMMENT
MEDIUMmagisk_modules.py309 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py311 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py421 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py423 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py459 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py461 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py940 # -----------------------------------------------COMMENT
MEDIUMmagisk_modules.py942 # -----------------------------------------------COMMENT
2282 more matches not shown…
Excessive Try-Catch Wrapping882 hits · 642 pts
SeverityFileLineSnippetContext
MEDIUMmagisk_modules.py513def onEnableZygisk(self, e):CODE
MEDIUMmagisk_modules.py534def onDisableZygisk(self, e):CODE
MEDIUMmagisk_modules.py555def onEnableDenylist(self, e):CODE
MEDIUMmagisk_modules.py574def onDisableDenylist(self, e):CODE
MEDIUMmagisk_modules.py593def onSuperuserAccess(self, e):CODE
MEDIUMmagisk_modules.py654def onSystemlessHosts(self, e):CODE
MEDIUMmagisk_modules.py674def onInstallPif(self, e):CODE
MEDIUMmagisk_modules.py758def onInstallZygiskModule(self, e):CODE
MEDIUMmagisk_modules.py846def onUninstallModule(self, e):CODE
MEDIUMmagisk_modules.py886def onUpdateModule(self, e):CODE
LOWmagisk_modules.py525 except Exception as e:CODE
LOWmagisk_modules.py546 except Exception as e:CODE
LOWmagisk_modules.py565 except Exception as e:CODE
LOWmagisk_modules.py584 except Exception as e:CODE
LOWmagisk_modules.py639 except Exception as e:CODE
LOWmagisk_modules.py665 except Exception as e:CODE
LOWmagisk_modules.py749 except Exception as e:CODE
LOWmagisk_modules.py818 except Exception as e:CODE
LOWmagisk_modules.py837 except Exception as e:CODE
LOWmagisk_modules.py877 except Exception as e:CODE
LOWmagisk_modules.py905 except Exception as e:CODE
MEDIUMphone.py327def get_path_from_details(self, details):CODE
MEDIUMphone.py408def init(self, mode):CODE
MEDIUMphone.py529def build(self):CODE
MEDIUMphone.py671def kmi(self):CODE
MEDIUMphone.py745def is_gki(self):CODE
MEDIUMphone.py759def magisk_path(self):CODE
MEDIUMphone.py779def root_version(self):CODE
MEDIUMphone.py796def ksu_path(self):CODE
MEDIUMphone.py816def ksu_next_path(self):CODE
MEDIUMphone.py836def sukisu_path(self):CODE
MEDIUMphone.py856def wild_ksu_path(self):CODE
MEDIUMphone.py876def apatch_path(self):CODE
MEDIUMphone.py1406def get_firmware_from_boot(self, sha1):CODE
MEDIUMphone.py1770def data_adb_backup(self, filename):CODE
MEDIUMphone.py2568def push_update_engine_client(self, local_filename = 'update_engine_client_r72',CODE
MEDIUMphone.py3119def stop_magisk(self):CODE
MEDIUMphone.py3131def _get_json_modules_common(self, solution_name):CODE
MEDIUMphone.py3492def _fetch_lsposed_modules(self):CODE
MEDIUMphone.py3725def mount_count(self):CODE
MEDIUMphone.py3745def magisk_denylist_enforced(self):CODE
MEDIUMphone.py3770def magisk_zygisk_enabled(self):CODE
MEDIUMphone.py3794def get_device_details(self):CODE
MEDIUMphone.py3945def reboot_recovery_interactive(self, timeout=60, hint='None'):CODE
MEDIUMphone.py4336def is_connected(self, device_id):CODE
MEDIUMphone.py4373def adb_wait_for(self, device_id='', timeout=60, wait_for=''):CODE
MEDIUMphone.py4408def fastboot_wait_for_bootloader(self, device_id='', timeout=60):CODE
MEDIUMphone.py4448def get_magisk_denylist(self):CODE
MEDIUMphone.py4487def install_apk(self, app, fastboot_included = False, owner_playstore = False, bCODE
MEDIUMphone.py4535def get_current_slot(self):CODE
MEDIUMphone.py4569def get_wm_size(self):CODE
MEDIUMphone.py4600def swipe_up(self, percentage=10):CODE
MEDIUMphone.py4625def set_active_slot(self, slot):CODE
MEDIUMphone.py4649def switch_slot(self, timeout=60):CODE
MEDIUMphone.py4686def erase_partition(self, partition):CODE
MEDIUMphone.py4711def lock_bootloader(self):CODE
MEDIUMphone.py4744def unlock_bootloader(self):CODE
MEDIUMphone.py4776def magisk_install_module(self, module):CODE
MEDIUMphone.py4825def magisk_run_module_action(self, dirname):CODE
MEDIUMphone.py4860def enable_magisk_module(self, dirname):CODE
822 more matches not shown…
Self-Referential Comments64 hits · 134 pts
SeverityFileLineSnippetContext
MEDIUMmagisk_modules.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMfile_editor.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMphone.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMcompile_po.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMlogcat.py4# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMlogcat.py96 ] # Create a grid of radio buttons with 2 rows, 4 columnsCODE
MEDIUMlogcat.py122 ] # Create a grid of checkboxes with 2 rows, 4 columnsCODE
MEDIUMlogcat.py177 ] # Create a horizontal row of radio buttonsCODE
MEDIUMwifi.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMconfig.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMdownload_progress.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMpackage_manager.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMpackage_manager.py1365 # Create a minimal package object for missing packagesCOMMENT
MEDIUMencode-bitmaps.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMencode-bitmaps.py217# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMmy_tools.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMmessage_box_ex.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMksu_asset_selector.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMapk.py1# This file is part of Androguard.COMMENT
MEDIUMconstants.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMpif_manager.py1317 # Create a simplified package manager dialogCOMMENT
MEDIUMpif_manager.py1928 # Create a custom dialog with tree control for selectionCOMMENT
MEDIUMpif_manager.py3326 # Create a new dictionary with the modified keysCOMMENT
MEDIUMpif_manager.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMpif_manager.py3304 # Define the mapping rulesCOMMENT
MEDIUMpf_modules.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMpf_modules.py3249 # Create the patch scriptSTRING
MEDIUMmagisk_downloads.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMAbout.py4# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMruntime.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMruntime.py3370 # Create a unique identifier from device, build_id, and urlCOMMENT
MEDIUMruntime.py2478 # Create a hash object using md5STRING
MEDIUMruntime.py2214 # Create a temporary file to write the nested zip dataSTRING
MEDIUMruntime.py5315 # Create a dictionary for each downloadSTRING
MEDIUMruntime.py10465 # Define the minimum safe versions for different ARB effected devicesSTRING
MEDIUMavbtool.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMcustom_controls.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMpartition_manager.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMbackup_manager.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMimages.py2# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMi18n.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMi18n.py323 # Create the directory if it doesn't existCOMMENT
MEDIUMset_version.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMcheck_translations.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMmanage_devices.py1# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMMain.py1531 # Create a dictionary to store menu_id -> (url, label) mappingsCOMMENT
MEDIUMMain.py1560 # Create the File menuCOMMENT
MEDIUMMain.py1563 # Create the Device menuCOMMENT
MEDIUMMain.py1566 # Create the Devices management menu (for enable/disable scanning)COMMENT
MEDIUMMain.py1570 # Create the Toolbar menuCOMMENT
MEDIUMMain.py1573 # Create the Dev Tools menuCOMMENT
MEDIUMMain.py1576 # Create the My Tools menuCOMMENT
MEDIUMMain.py1579 # Create the language menuCOMMENT
MEDIUMMain.py1582 # Create the Help menuCOMMENT
MEDIUMMain.py3727 # Define the rules engineCOMMENT
MEDIUMMain.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMMain.py1962 # Create an instance of GoogleImagesMenuCOMMENT
MEDIUMMain.py6893 # Create a new list (will be by value and not by reference)STRING
MEDIUMdevice_selector.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
MEDIUMadvanced_settings.py3# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasherCOMMENT
4 more matches not shown…
Deep Nesting257 hits · 133 pts
SeverityFileLineSnippetContext
LOWmagisk_modules.py312CODE
LOWmagisk_modules.py674CODE
LOWmagisk_modules.py758CODE
LOWmagisk_modules.py846CODE
LOWmagisk_modules.py968CODE
LOWphone.py5443CODE
LOWphone.py5559CODE
LOWphone.py356CODE
LOWphone.py408CODE
LOWphone.py449CODE
LOWphone.py645CODE
LOWphone.py685CODE
LOWphone.py896CODE
LOWphone.py931CODE
LOWphone.py1120CODE
LOWphone.py1182CODE
LOWphone.py1230CODE
LOWphone.py1280CODE
LOWphone.py1366CODE
LOWphone.py1474CODE
LOWphone.py1690CODE
LOWphone.py1725CODE
LOWphone.py1770CODE
LOWphone.py1819CODE
LOWphone.py1864CODE
LOWphone.py1892CODE
LOWphone.py1963CODE
LOWphone.py2137CODE
LOWphone.py2322CODE
LOWphone.py2391CODE
LOWphone.py2595CODE
LOWphone.py2637CODE
LOWphone.py2937CODE
LOWphone.py3083CODE
LOWphone.py3131CODE
LOWphone.py3256CODE
LOWphone.py3390CODE
LOWphone.py3409CODE
LOWphone.py3428CODE
LOWphone.py3447CODE
LOWphone.py3466CODE
LOWphone.py3492CODE
LOWphone.py3641CODE
LOWphone.py3666CODE
LOWphone.py3694CODE
LOWphone.py3725CODE
LOWphone.py3745CODE
LOWphone.py3770CODE
LOWphone.py3813CODE
LOWphone.py3874CODE
LOWphone.py3976CODE
LOWphone.py4020CODE
LOWphone.py4061CODE
LOWphone.py4121CODE
LOWphone.py4183CODE
LOWphone.py4265CODE
LOWphone.py4336CODE
LOWphone.py4373CODE
LOWphone.py4408CODE
LOWphone.py4487CODE
197 more matches not shown…
Over-Commented Block127 hits · 94 pts
SeverityFileLineSnippetContext
LOWmagisk_modules.py1#!/usr/bin/env pythonCOMMENT
LOWmagisk_modules.py21#COMMENT
LOWfile_editor.py1#!/usr/bin/env pythonCOMMENT
LOWfile_editor.py21#COMMENT
LOWphone.py1#!/usr/bin/env pythonCOMMENT
LOWphone.py21#COMMENT
LOWcompile_po.py1#!/usr/bin/env pythonCOMMENT
LOWcompile_po.py21#COMMENT
LOWlogcat.py1#!/usr/bin/env pythonCOMMENT
LOWlogcat.py21# along with this program. If not, see <https://www.gnu.org/licenses/>.COMMENT
LOWwifi.py1#!/usr/bin/env pythonCOMMENT
LOWwifi.py21#COMMENT
LOWwifi.py421 # -----------------------------------------------COMMENT
LOWconfig.py1#!/usr/bin/env pythonCOMMENT
LOWconfig.py21#COMMENT
LOWdownload_progress.py1#!/usr/bin/env pythonCOMMENT
LOWdownload_progress.py21#COMMENT
LOWpackage_manager.py1#!/usr/bin/env pythonCOMMENT
LOWpackage_manager.py21#COMMENT
LOWpackage_manager.py961 event.Skip()COMMENT
LOWrequirements.txt21polib>=1.1.1COMMENT
LOWencode-bitmaps.py1#!/usr/bin/env pythonCOMMENT
LOWencode-bitmaps.py21#COMMENT
LOWencode-bitmaps.py221# SPDX-License-Identifier: AGPL-3.0-or-laterCOMMENT
LOWencode-bitmaps.py241# display a "Source" link that leads users to an archive of the code. There areCOMMENT
LOWmy_tools.py1#!/usr/bin/env pythonCOMMENT
LOWmy_tools.py21#COMMENT
LOWmessage_box_ex.py1#!/usr/bin/env pythonCOMMENT
LOWmessage_box_ex.py21#COMMENT
LOWksu_asset_selector.py1#!/usr/bin/env pythonCOMMENT
LOWksu_asset_selector.py21#COMMENT
LOWapk.py1# This file is part of Androguard.COMMENT
LOWconstants.py1#!/usr/bin/env pythonCOMMENT
LOWconstants.py21#COMMENT
LOWpif_manager.py1#!/usr/bin/env pythonCOMMENT
LOWpif_manager.py21#COMMENT
LOWpf_modules.py1#!/usr/bin/env pythonCOMMENT
LOWpf_modules.py21#COMMENT
LOWpf_modules.py441 # '30c68c1c1a9814a724f47ca544f273b8097263677383046ddb7a0e8c26f7dc60',COMMENT
LOWpf_modules.py1801 # start = time.time()COMMENT
LOWpf_modules.py1821 # title = "Display is Locked!"COMMENT
LOWpf_modules.py1841 # device.stop_magisk()COMMENT
LOWpf_modules.py1861COMMENT
LOWpf_modules.py1881 # # if res != 0:COMMENT
LOWpf_modules.py1901 # # # For Pixel 6 this would be: adb shell input tap 830 417COMMENT
LOWpf_modules.py1921 # print("Aborting ...\n")COMMENT
LOWpf_modules.py1941 # if res.returncode == 1:COMMENT
LOWpf_modules.py1961 # # Sleep 2 secondsCOMMENT
LOWpf_modules.py1981 # print(f"Pulling {self.config.phone_path}/view3.xml from the phone ...")COMMENT
LOWpf_modules.py2001 # # For Pixel 6 this would be: adb shell input tap 574 210COMMENT
LOWpf_modules.py2021 # theCmd = f"\"{get_adb()}\" -s {device.id} shell input keyevent 66"COMMENT
LOWpf_modules.py2041 # print("ERROR: The device display is Locked!\nAborting ...\n")COMMENT
LOWpf_modules.py2061 # print(f"\n❌ {datetime.now():%Y-%m-%d %H:%M:%S} ERROR: Unable to pull {view4} from phone.")COMMENT
LOWpf_modules.py2081 # print("Sleeping 2 seconds to make sure the view is loaded ...")COMMENT
LOWpf_modules.py2101COMMENT
LOWpf_modules.py2121 # return -1COMMENT
LOWpf_modules.py6081# Function flash_phoneCOMMENT
LOWpf_modules.py7341 # !!!!!!!!!!!!COMMENT
LOWmagisk_downloads.py1#!/usr/bin/env pythonCOMMENT
LOWmagisk_downloads.py21#COMMENT
67 more matches not shown…
Hyper-Verbose Identifiers105 hits · 58 pts
SeverityFileLineSnippetContext
LOWphone.py601 def ro_boot_vbmeta_device_state(self):CODE
LOWphone.py611 def ro_boot_verifiedbootstate(self):CODE
LOWphone.py931 def _get_root_solution_version(self, solution_type):CODE
LOWphone.py1114 def current_device_props_as_json(self): # sourcery skip: use-joinCODE
LOWphone.py1557 def magisk_add_systemless_hosts(self):CODE
LOWphone.py1629 def magisk_modify_root_access(self, value):STRING
LOWphone.py2568 def push_update_engine_client(self, local_filename = 'update_engine_client_r72', file_path = "/data/local/tmp/updateSTRING
LOWphone.py2985 def apatch_next_app_version_code(self):STRING
LOWphone.py3005 def ksu_next_app_version_code(self):STRING
LOWphone.py3025 def wild_ksu_app_version_code(self):STRING
LOWphone.py3034 def get_uncached_magisk_app_version(self):STRING
LOWphone.py3041 def get_uncached_ksu_app_version(self):STRING
LOWphone.py3048 def get_uncached_ksu_next_app_version(self):STRING
LOWphone.py3055 def get_uncached_sukisu_app_version(self):STRING
LOWphone.py3062 def get_uncached_wild_ksu_app_version(self):STRING
LOWphone.py3069 def get_uncached_apatch_app_version(self):STRING
LOWphone.py3076 def get_uncached_apatch_next_app_version(self):STRING
LOWphone.py3224 def get_apatch_detailed_modules(self, refresh=False):STRING
LOWphone.py3240 def get_sukisu_detailed_modules(self, refresh=False):STRING
LOWphone.py3248 def get_wild_ksu_detailed_modules(self, refresh=False):STRING
LOWphone.py3256 def get_magisk_detailed_modules(self, refresh=False):STRING
LOWphone.py3945 def reboot_recovery_interactive(self, timeout=60, hint='None'):STRING
LOWphone.py4408 def fastboot_wait_for_bootloader(self, device_id='', timeout=60):STRING
LOWphone.py4940 def open_update_engine_logcat(self):STRING
LOWlogcat.py68 def _create_formatting_section(self):CODE
LOWpackage_manager.py1340 def add_missing_packages_for_simplified_mode(self, process_filter=None):CODE
LOWapk.py258def is_android_packages_binary(raw_buff):CODE
LOWpif_manager.py583 def setup_syntax_highlighting(self, stc_ctrl, format_type=None):CODE
LOWpif_manager.py632 def update_syntax_highlighting(self):CODE
LOWpif_manager.py2104 def process_factory_image_selection(self, image_url, source_label):CODE
LOWpif_manager.py2669 def process_active_pif_updated_value(self):CODE
LOWpf_modules.py2435 def ensure_root_app_installed(app_type='KernelSU') -> tuple:STRING
LOWpf_modules.py3103 def patch_kernelsu_lkm_script():STRING
LOWpf_modules.py6850 def reboot_device_to_bootloader():STRING
LOWpf_modules.py7236 def reboot_to_system_if_needed():STRING
LOWruntime.py625def get_selected_boot_partition() -> str | None:CODE
LOWruntime.py633def set_selected_boot_partition(value) -> None:CODE
LOWruntime.py871def get_firmware_hash_validity() -> bool:CODE
LOWruntime.py879def set_firmware_hash_validity(value) -> None:CODE
LOWruntime.py887def get_firmware_has_init_boot() -> bool:CODE
LOWruntime.py895def set_firmware_has_init_boot(value) -> None:CODE
LOWruntime.py3354def get_telegram_factory_images(max_pages=3):CODE
LOWruntime.py1340def get_favorite_pifs_file_path() -> str:STRING
LOWruntime.py1347def get_device_images_history_file_path() -> str:STRING
LOWruntime.py1368def get_wifi_history_file_path() -> str:STRING
LOWruntime.py1433def invalidate_devices_json_cache():STRING
LOWruntime.py1565def update_device_custom_label(device_id, custom_label):STRING
LOWruntime.py1597def update_all_devices_connection_status(connected_device_ids):STRING
LOWruntime.py1989def check_archive_contains_file(archive_file_path, file_to_check, nested=False, is_recursive=False):STRING
LOWruntime.py2023def check_zip_contains_file_fast(zip_file_path, file_to_check, nested=False, is_recursive=False):STRING
LOWruntime.py2060def check_file_pattern_in_zip_file(zip_file_path, pattern, return_all_matches=False):STRING
LOWruntime.py2123def check_zip_contains_file_lowmem(zip_file_path, file_to_check, nested=False, is_recursive=False):STRING
LOWruntime.py2295def get_playstore_user_coords(xmlfile):STRING
LOWruntime.py2435def print_user_interaction_message(mode):STRING
LOWruntime.py4484def get_latest_android_version(force_version=None):STRING
LOWruntime.py4626def get_fp_sp_from_ota_http_range(url, state=None, chunk_size=8*1024*1024, overlap=200) -> tuple[str | None, str | None]STRING
LOWruntime.py4796def get_fp_sp_from_incremental_remote_file(url, image_type, chunk_size=None, overlap=None, fallback_size=60*1024*1024, sSTRING
LOWruntime.py5152def fetch_canary_miner_catalog(catalog_path=None):STRING
LOWruntime.py5528def extract_date_from_google_version(version_string):STRING
LOWruntime.py6550 def process_system_vendor_product_images():STRING
45 more matches not shown…
Redundant / Tautological Comments77 hits · 40 pts
SeverityFileLineSnippetContext
LOWphone.py5286 # Check if package is in the outputSTRING
LOWphone.py3202 # Check if update is availableSTRING
LOWphone.py3504 # Check if database exists on deviceSTRING
LOWphone.py5598 # Check if device is enabled (unless scan_all is True)STRING
LOWphone.py5646 # Check if device is enabled (unless scan_all is True)STRING
LOWpackage_manager.py779 # Check if any packages are selected (checked)COMMENT
LOWmy_tools.py345 # Check if it's not the first itemCOMMENT
LOWmy_tools.py362 # Check if it's not the last itemCOMMENT
LOWapk.py291 # Check if this is actually an AXML file by verifying magic headerCOMMENT
LOWpif_manager.py1788 # Set focus to the custom version input and select all textCOMMENT
LOWpif_manager.py1886 # Check if window is still valid before proceedingCOMMENT
LOWpif_manager.py1892 # Check if we got valid resultsCOMMENT
LOWpif_manager.py1335 # Check if target already exists in local fileCOMMENT
LOWpif_manager.py1832 # Check if self.beta_pif_version is a two digit number then set force_version to that (int)COMMENT
LOWpif_manager.py1908 # Check if abort was triggered before handling exceptionCOMMENT
LOWpif_manager.py2115 # Check if window was closed (abort)COMMENT
LOWpif_manager.py2731 # Check if we should update favorite status (either create button enabled or TargetedFix module)COMMENT
LOWpif_manager.py3068 # Check if the line contains an '=' character split into key value pairCOMMENT
LOWpf_modules.py6610 # Check if the patch file is made by Magisk Zygote64_32STRING
LOWpf_modules.py780 # Check if the firmware file starts with image-* and warn the user or abortSTRING
LOWpf_modules.py900 # Check if it existsSTRING
LOWpf_modules.py2482 # Check if app is already installedSTRING
LOWpf_modules.py2621 # Check if installation was successfulSTRING
LOWpf_modules.py2657 # Check if installation was successfulSTRING
LOWpf_modules.py4323 # Check if the user canceledSTRING
LOWpf_modules.py4349 # Check if version_choice checkbox is selectedSTRING
LOWpf_modules.py4352 # Check if get_all checkbox is selectedSTRING
LOWpf_modules.py6125 # Check if we're flashing older OTASTRING
LOWruntime.py3064 # Check if ul_content is a BeautifulSoup TagCOMMENT
LOWruntime.py3418 # Check if we've reached content that's already in our cacheCOMMENT
LOWruntime.py3433 # Check if this content is already cached, but don't break yetCOMMENT
LOWruntime.py3442 # Check if this is a factory image announcementCOMMENT
LOWruntime.py1269 # Check if the full_ota column already exists in the PACKAGE tableSTRING
LOWruntime.py1403 # Check if we have a valid cached versionSTRING
LOWruntime.py2302 # Check if "Voice Search" is foundSTRING
LOWruntime.py2769 # Check if the file existsSTRING
LOWruntime.py2777 # Check if filename needs sanitizationSTRING
LOWruntime.py4933 # Check if we were abortedSTRING
LOWruntime.py4938 # Check if download is complete before attempting fallbackSTRING
LOWruntime.py4943 # Check if download ended with an error (e.g. timeout after all retries)STRING
LOWruntime.py6003 # Check if the XML contains the specific stringSTRING
LOWruntime.py6055 # Check if the XML contains the specific stringSTRING
LOWruntime.py6343 # Check if the buffer is empty (happens for Android packages binary format)STRING
LOWruntime.py8100 # Check if all required algorithms were foundSTRING
LOWruntime.py10560 # Check if device is a Pixel device and compare SPL values.STRING
LOWruntime.py1246 # Check if the patch_method and is_odin column already exists in the BOOT tableSTRING
LOWruntime.py2373 # Check if there is a match within the allowed shift rangeSTRING
LOWruntime.py4096 # Check if abort was triggered (but not if we got valid results - stop_event is set on success too)STRING
LOWruntime.py4145 # Check if abort was triggered (but not if we got valid results - stop_event is set on success too)STRING
LOWruntime.py4159 # Check if abort was triggered (but not if we got valid results - stop_event is set on success too)STRING
LOWruntime.py4442 # Check if the build is present in the zip_filename, if not print a warningSTRING
LOWruntime.py4603 # Check if we've reached a stable URL (no more redirects)STRING
LOWruntime.py4647 # Check if abort was triggeredSTRING
LOWruntime.py4656 # Check if we've reached the end of the fileSTRING
LOWruntime.py4855 # Check if we've processed everythingSTRING
LOWruntime.py5062 # Check if we've reached end of streamSTRING
LOWruntime.py5237 # Check if the text of the <h2> element should be skippedSTRING
LOWruntime.py5323 # Check if the download entry already exists, and only add it if it's a new entrySTRING
LOWruntime.py5342 # Check if we have valid beta data for OTASTRING
LOWruntime.py5358 # Check if we have valid beta data for FactorySTRING
17 more matches not shown…
Modern Structural Boilerplate47 hits · 35 pts
SeverityFileLineSnippetContext
LOWruntime.py298def set_app_language(value) -> None:CODE
LOWruntime.py315def set_config(value) -> None:CODE
LOWruntime.py331def set_window_shown(value) -> None:CODE
LOWruntime.py376def set_console_widget(widget) -> None:CODE
LOWruntime.py406def set_boot(value) -> None:CODE
LOWruntime.py422def set_labels(value) -> None:CODE
LOWruntime.py438def set_xiaomi(value) -> None:CODE
LOWruntime.py454def set_favorite_pifs(value) -> None:CODE
LOWruntime.py470def set_low_memory(value) -> None:CODE
LOWruntime.py486def set_android_versions(value) -> None:CODE
LOWruntime.py502def set_android_devices(value) -> None:CODE
LOWruntime.py518def set_env_variables(value) -> None:CODE
LOWruntime.py534def set_patched_with(value) -> None:CODE
LOWruntime.py550def set_db(value) -> None:CODE
LOWruntime.py601def set_verbose(value) -> None:CODE
LOWruntime.py617def set_a_only(value) -> None:CODE
LOWruntime.py633def set_selected_boot_partition(value) -> None:CODE
LOWruntime.py649def set_adb(value) -> None:CODE
LOWruntime.py665def set_puml_state(value) -> None:CODE
LOWruntime.py681def set_fastboot(value) -> None:CODE
LOWruntime.py697def set_adb_sha256(value) -> None:CODE
LOWruntime.py713def set_fastboot_sha256(value) -> None:CODE
LOWruntime.py729def set_phones(value) -> None:CODE
LOWruntime.py745def set_device_list(value) -> None:CODE
LOWruntime.py761def set_phone_id(value) -> None:CODE
LOWruntime.py792def set_system_codepage(value) -> None:CODE
LOWruntime.py808def set_magisk_package(value) -> None:CODE
LOWruntime.py824def set_linux_shell(value) -> None:CODE
LOWruntime.py840def set_ota(self, value) -> None:CODE
LOWruntime.py863def set_sdk_state(value) -> None:CODE
LOWruntime.py879def set_firmware_hash_validity(value) -> None:CODE
LOWruntime.py895def set_firmware_has_init_boot(value) -> None:CODE
LOWruntime.py911def set_rom_has_init_boot(value) -> None:CODE
LOWruntime.py927def set_dlg_checkbox_values(value) -> None:CODE
LOWruntime.py943def set_firmware_model(value) -> None:CODE
LOWruntime.py959def set_firmware_id(value) -> None:CODE
LOWruntime.py975def set_custom_rom_id(value) -> None:CODE
LOWruntime.py991def set_logfile(value) -> None:CODE
LOWruntime.py1007def set_pumlfile(value) -> None:CODE
LOWruntime.py1023def set_sdk_version(value) -> None:CODE
LOWruntime.py1039def set_image_mode(value) -> None:CODE
LOWruntime.py1055def set_image_path(value) -> None:CODE
LOWruntime.py1071def set_custom_rom_file(value) -> None:CODE
LOWruntime.py1087def set_message_box_title(value) -> None:CODE
LOWruntime.py1103def set_message_box_message(value) -> None:CODE
LOWruntime.py1295def set_config_file_path(value) -> None:STRING
LOWruntime.py1318def set_config_path(value) -> None:STRING
Unused Imports45 hits · 27 pts
SeverityFileLineSnippetContext
LOWmagisk_modules.py45CODE
LOWmagisk_modules.py46CODE
LOWfile_editor.py41CODE
LOWphone.py49CODE
LOWphone.py50CODE
LOWlogcat.py38CODE
LOWpayload_dumper.py10CODE
LOWwifi.py48CODE
LOWconfig.py42CODE
LOWpackage_manager.py51CODE
LOWmy_tools.py41CODE
LOWmy_tools.py42CODE
LOWmessage_box_ex.py43CODE
LOWapk.py19CODE
LOWpif_manager.py45CODE
LOWpf_modules.py43CODE
LOWpf_modules.py52CODE
LOWpf_modules.py52CODE
LOWpf_modules.py52CODE
LOWpf_modules.py52CODE
LOWpf_modules.py55CODE
LOWpf_modules.py61CODE
LOWmagisk_downloads.py42CODE
LOWmagisk_downloads.py49CODE
LOWmagisk_downloads.py50CODE
LOWAbout.py42CODE
LOWruntime.py91CODE
LOWruntime.py94CODE
LOWruntime.py94CODE
LOWruntime.py87CODE
LOWpartition_manager.py36CODE
LOWpartition_manager.py46CODE
LOWbackup_manager.py47CODE
LOWset_version.py39CODE
LOWmanage_devices.py35CODE
LOWMain.py49CODE
LOWMain.py55CODE
LOWMain.py60CODE
LOWMain.py70CODE
LOWMain.py80CODE
LOWMain.py85CODE
LOWMain.py92CODE
LOWMain.py93CODE
LOWadvanced_settings.py40CODE
LOWadvanced_settings.py41CODE
Docstring Block Structure2 hits · 10 pts
SeverityFileLineSnippetContext
HIGHphone.py2323 Pushes a file to the device. Args: local_file (str): Local file path. STRING
HIGHphone.py4266 Gets the state of a device. The method retrieves the state of a device identified by the given device STRING
AI Slop Vocabulary4 hits · 6 pts
SeverityFileLineSnippetContext
LOWpif_manager.py1888 # Window was destroyed, just returnCOMMENT
LOWavbtool.py634 # to rely on Crypto.PublicKey.RSA. Instead just use openssl(1) to verify.COMMENT
LOWavbtool.py1186 # Truncating to grow - just add a DONT_CARE section.COMMENT
LOWavbtool.py2957 # simpler - we just set the root to the partition.COMMENT
AI Structural Patterns9 hits · 5 pts
SeverityFileLineSnippetContext
LOWmessage_box_ex.py47CODE
LOWruntime.py6928CODE
LOWruntime.py8712CODE
LOWavbtool.py1354CODE
LOWavbtool.py1528CODE
LOWavbtool.py1696CODE
LOWavbtool.py1809CODE
LOWavbtool.py1923CODE
LOWavbtool.py4995CODE
Verbosity Indicators3 hits · 1 pts
SeverityFileLineSnippetContext
LOWruntime.py10525 # Step 1: Get the prefix portion, don't look into multiline stringsSTRING
LOWruntime.py10532 # Step 2: Get the longest candidate by searching all linesSTRING
LOWruntime.py10548 # Step 3: Filter out anything before the prefix in the longest candidateSTRING
Structural Annotation Overuse3 hits · 1 pts
SeverityFileLineSnippetContext
LOWruntime.py10525 # Step 1: Get the prefix portion, don't look into multiline stringsSTRING
LOWruntime.py10532 # Step 2: Get the longest candidate by searching all linesSTRING
LOWruntime.py10548 # Step 3: Filter out anything before the prefix in the longest candidateSTRING
Example Usage Blocks1 hit · 0 pts
SeverityFileLineSnippetContext
LOWruntime.py1627# Example usageSTRING