Repository Analysis

meshtastic/firmware

The official firmware for Meshtastic, an open-source, off-grid mesh communication system.

9.8 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of meshtastic/firmware, a C++ project with 7,920 GitHub stars. SynthScan v2.0 examined 251,234 lines of code across 1707 source files, recording 1764 pattern matches distributed across 17 syntactic categories. The overall adjusted score of 9.8 places this repository in the Low 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).

9.8
Adjusted Score
9.8
Raw Score
100%
Time Factor
2026-07-14
Last Push
7.9K
Stars
C++
Language
251.2K
Lines of Code
1.7K
Files
1.8K
Pattern Hits
2026-07-14
Scan Date
0.01
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 15MEDIUM 258LOW 1491

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 1764 distinct pattern matches across 17 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.

Over-Commented Block1380 hits · 1350 pts
SeverityFileLineSnippetContext
LOWvariants/rp2040/nibble_rp2040/variant.h1#define ARDUINO_ARCH_AVRCOMMENT
LOWvariants/rp2040/rp2040-lora/variant.h1// #define RADIOLIB_CUSTOM_ARDUINO 1COMMENT
LOWvariants/rp2040/rp2040-lora/variant.h21COMMENT
LOWvariants/rp2040/rp2040-lora/variant.h41#define LORA_DIO0 RADIOLIB_NC // No GPIO connectionCOMMENT
LOWvariants/rp2040/rpipico/variant.h1// #define RADIOLIB_CUSTOM_ARDUINO 1COMMENT
LOWvariants/rp2040/rpipico/variant.h21// ratio of voltage divider = 3.0 (R17=200k, R18=100k)COMMENT
LOWvariants/rp2040/rpipico/variant.h41#define LORA_DIO3 RADIOLIB_NCCOMMENT
LOWvariants/rp2040/seeed_xiao_rp2040/variant.h1#define ARDUINO_ARCH_AVRCOMMENT
LOWvariants/rp2040/seeed_xiao_rp2040/variant.h21#define SX126X_DIO1 27COMMENT
LOWvariants/rp2040/ec_catsniffer/variant.h1// #define RADIOLIB_CUSTOM_ARDUINO 1COMMENT
LOWvariants/rp2040/ec_catsniffer/variant.h21#define LORA_SCK 18COMMENT
LOWvariants/rp2040/senselora_rp2040/pins_arduino.h1#pragma onceCOMMENT
LOWvariants/rp2040/senselora_rp2040/pins_arduino.h21COMMENT
LOWvariants/rp2040/senselora_rp2040/variant.h1#define ARDUINO_ARCH_AVRCOMMENT
LOWvariants/rp2040/senselora_rp2040/variant.h21#define LORA_MISO PIN_SPI0_MISOCOMMENT
LOWvariants/rp2040/rak11310/pins_arduino.h21static const uint8_t A1 = PIN_A1;COMMENT
LOWvariants/rp2040/rak11310/pins_arduino.h41#define PIN_SPI1_SCK (10u)COMMENT
LOWvariants/rp2040/rak11310/variant.h1// #define RADIOLIB_CUSTOM_ARDUINO 1COMMENT
LOWvariants/rp2040/rak11310/variant.h21#define BATTERY_SENSE_RESOLUTION_BITS ADC_RESOLUTIONCOMMENT
LOWvariants/rp2040/rak11310/variant.h41#define LORA_DIO0 RADIOLIB_NCCOMMENT
LOWvariants/rp2040/rpipico-slowclock/variant.h1#define ARDUINO_ARCH_AVRCOMMENT
LOWvariants/rp2040/rpipico-slowclock/variant.h21#define USE_SH1106 1COMMENT
LOWvariants/rp2040/rpipico-slowclock/variant.h61COMMENT
LOWvariants/rp2040/rpipico-slowclock/variant.h81#define SX126X_CS LORA_CSCOMMENT
LOWvariants/rp2040/feather_rp2040_rfm95/variant.h1// #define RADIOLIB_CUSTOM_ARDUINO 1COMMENT
LOWvariants/rp2040/feather_rp2040_rfm95/variant.h21// #define BUTTON_NEED_PULLUPCOMMENT
LOWvariants/rp2040/feather_rp2040_rfm95/variant.h41#define LORA_MISO 8 // 12 10PCOMMENT
LOWvariants/rp2040/feather_rp2040_rfm95/variant.h61#endifCOMMENT
LOWvariants/rp2040/challenger_2040_lora/pins_arduino.h1#pragma onceCOMMENT
LOWvariants/rp2040/challenger_2040_lora/pins_arduino.h21COMMENT
LOWvariants/rp2040/challenger_2040_lora/variant.h1// Define SS for compatibility with libraries expecting a default SPI chip select pinCOMMENT
LOWvariants/rp2040/challenger_2040_lora/variant.h21#define LORA_RESET 13 // ResetCOMMENT
LOWvariants/rp2040/rpipicow/variant.h1// #define RADIOLIB_CUSTOM_ARDUINO 1COMMENT
LOWvariants/rp2040/rpipicow/variant.h21COMMENT
LOWvariants/rp2040/rpipicow/variant.h41#define LORA_DIO0 RADIOLIB_NCCOMMENT
LOWvariants/native/portduino-buildroot/variant.h1#define HAS_SCREEN 1COMMENT
LOWvariants/native/portduino/variant.h1#ifndef HAS_SCREENCOMMENT
LOWvariants/esp32c3/heltec_esp32c3/variant.h1#define BUTTON_PIN 9COMMENT
LOWvariants/esp32c3/heltec_esp32c3/variant.h21#define LORA_DIO1 3COMMENT
LOWvariants/esp32c3/m5stack-stamp-c3/variant.h1#define I2C_SDA 1COMMENT
LOWvariants/esp32c3/m5stack-stamp-c3/variant.h21#define LORA_MISO 5COMMENT
LOWvariants/esp32c3/m5stack-stamp-c3/variant.h41// #define SX126X_CS LORA_CSCOMMENT
LOWvariants/esp32c3/m5stack-stamp-c3/variant.h61// #define SX128X_BUSY LORA_BUSYCOMMENT
LOWvariants/esp32c3/diy/esp32c3_super_mini/variant.h1#ifndef _VARIANT_ESP32C3_SUPER_MINI_COMMENT
LOWvariants/esp32c3/diy/esp32c3_super_mini/variant.h21#undef GPS_TX_PINCOMMENT
LOWvariants/esp32c3/diy/esp32c3_super_mini/variant.h41#define LORA_MOSI (7)COMMENT
LOWvariants/esp32c3/heltec_hru_3601/variant.h1#define BUTTON_PIN 9COMMENT
LOWvariants/esp32c3/heltec_hru_3601/variant.h21#define SX126X_RESET LORA_RESETCOMMENT
LOWvariants/esp32c3/ai-c3/variant.h1#define SDA 0COMMENT
LOWvariants/esp32c3/ai-c3/variant.h21#define USE_SX1262COMMENT
LOWvariants/esp32c3/hackerboxes_esp32c3_oled/variant.h1#define BUTTON_PIN 9COMMENT
LOWvariants/esp32c3/hackerboxes_esp32c3_oled/variant.h21#define LORA_SCK 4COMMENT
LOWvariants/nrf54l15/nrf54l15dk/variant.h41 * P1.13 BTN0 - main user buttonCOMMENT
LOWvariants/nrf54l15/nrf54l15dk/variant.h61COMMENT
LOWvariants/nrf54l15/nrf54l15dk/variant.h81// TwoWire layer (src/platform/nrf54l15/Wire.cpp) resolves the device atCOMMENT
LOWvariants/esp32/m5stack_core/variant.h1// #define BUTTON_NEED_PULLUP // if set we need to turn on the internal CPU pullup during sleepCOMMENT
LOWvariants/esp32/m5stack_core/variant.h21#define LORA_MISO 19COMMENT
LOWvariants/esp32/m5stack_core/variant.h41#define TFT_OFFSET_X 0COMMENT
LOWvariants/esp32/nano-g1-explorer/variant.h1// #define BUTTON_NEED_PULLUP // if set we need to turn on the internal CPU pullup during sleepCOMMENT
LOWvariants/esp32/nano-g1-explorer/variant.h21#define LORA_DIO3 // Not connected on PCBCOMMENT
1320 more matches not shown…
Decorative Section Separators239 hits · 841 pts
SeverityFileLineSnippetContext
MEDIUMtools/lockdown_provision.py140# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py142# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py179# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py181# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py253# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py255# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py302# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py304# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py377# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py379# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py540# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/lockdown_provision.py542# ---------------------------------------------------------------------------COMMENT
MEDIUMvariants/nrf54l15/nrf54l15dk/variant.h51// ── SX1262 / E22-900M30S - all P2, HP domain (3.0 V) ────────────────────────COMMENT
MEDIUMvariants/nrf54l15/nrf54l15dk/variant.h67// ── LEDs (active HIGH) ───────────────────────────────────────────────────────COMMENT
MEDIUMvariants/nrf54l15/nrf54l15dk/variant.h72// ── Buttons (active LOW, internal pull-up) ───────────────────────────────────COMMENT
MEDIUMvariants/nrf54l15/nrf54l15dk/variant.h78// ── I2C bus (TWIM30, HP domain, 3.0 V) ──────────────────────────────────────COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h4// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h6// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h10// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h12// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h18// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h20// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h29// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h31// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h38// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h40// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h59// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h61// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h69// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h71// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h150// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h152// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h157// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h159// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h104// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h106// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h117// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h119// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h136// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h138// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h171// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_wio_tracker_L1/variant.h173// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h4// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h6// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h10// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h12// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h18// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h20// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h29// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h31// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h38// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h40// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h59// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h61// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h69// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h71// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h98// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h100// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h110// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
MEDIUMvariants/nrf52840/seeed_solar_node/variant.h112// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━COMMENT
179 more matches not shown…
Cross-File Repetition12 hits · 60 pts
SeverityFileLineSnippetContext
HIGHsrc/graphics/niche/Fonts/FreeSans6pt_Win1253.h00x27 */ 0xe0, /* '(' 0x28 */ 0x5a, 0xaa, 0x94, /* ')' 0x29 */ 0x89, 0x12, 0x49, 0x29, 0x00, /* '*' 0x2a */ 0x5e, 0x80, /STRING
HIGHsrc/graphics/niche/Fonts/FreeSans6pt_Win1250.h00x27 */ 0xe0, /* '(' 0x28 */ 0x5a, 0xaa, 0x94, /* ')' 0x29 */ 0x89, 0x12, 0x49, 0x29, 0x00, /* '*' 0x2a */ 0x5e, 0x80, /STRING
HIGHsrc/graphics/niche/Fonts/FreeSans6pt_Win1251.h00x27 */ 0xe0, /* '(' 0x28 */ 0x5a, 0xaa, 0x94, /* ')' 0x29 */ 0x89, 0x12, 0x49, 0x29, 0x00, /* '*' 0x2a */ 0x5e, 0x80, /STRING
HIGHsrc/graphics/niche/Fonts/FreeSans6pt_Win1252.h00x27 */ 0xe0, /* '(' 0x28 */ 0x5a, 0xaa, 0x94, /* ')' 0x29 */ 0x89, 0x12, 0x49, 0x29, 0x00, /* '*' 0x2a */ 0x5e, 0x80, /STRING
HIGHsrc/graphics/niche/Fonts/FreeSans9pt_Win1250.h00x27 */ 0xfe, /* '(' 0x28 */ 0x13, 0x26, 0x6c, 0xcc, 0xcc, 0xc4, 0x66, 0x23, 0x10, /* ')' 0x29 */ 0x8c, 0x46, 0x63, 0x33STRING
HIGHsrc/graphics/niche/Fonts/FreeSans9pt_Win1253.h00x27 */ 0xfe, /* '(' 0x28 */ 0x13, 0x26, 0x6c, 0xcc, 0xcc, 0xc4, 0x66, 0x23, 0x10, /* ')' 0x29 */ 0x8c, 0x46, 0x63, 0x33STRING
HIGHsrc/graphics/niche/Fonts/FreeSans9pt_Win1252.h00x27 */ 0xfe, /* '(' 0x28 */ 0x13, 0x26, 0x6c, 0xcc, 0xcc, 0xc4, 0x66, 0x23, 0x10, /* ')' 0x29 */ 0x8c, 0x46, 0x63, 0x33STRING
HIGHsrc/graphics/niche/Fonts/FreeSans9pt_Win1251.h00x27 */ 0xfe, /* '(' 0x28 */ 0x13, 0x26, 0x6c, 0xcc, 0xcc, 0xc4, 0x66, 0x23, 0x10, /* ')' 0x29 */ 0x8c, 0x46, 0x63, 0x33STRING
HIGHsrc/graphics/niche/Fonts/FreeSans12pt_Win1253.h00x27 */ 0xff, 0xa0, /* '(' 0x28 */ 0x08, 0x8c, 0x46, 0x31, 0x98, 0xc6, 0x31, 0x8c, 0x63, 0x08, 0x63, 0x08, 0x61, 0x0c, 0STRING
HIGHsrc/graphics/niche/Fonts/FreeSans12pt_Win1250.h00x27 */ 0xff, 0xa0, /* '(' 0x28 */ 0x08, 0x8c, 0x46, 0x31, 0x98, 0xc6, 0x31, 0x8c, 0x63, 0x08, 0x63, 0x08, 0x61, 0x0c, 0STRING
HIGHsrc/graphics/niche/Fonts/FreeSans12pt_Win1251.h00x27 */ 0xff, 0xa0, /* '(' 0x28 */ 0x08, 0x8c, 0x46, 0x31, 0x98, 0xc6, 0x31, 0x8c, 0x63, 0x08, 0x63, 0x08, 0x61, 0x0c, 0STRING
HIGHsrc/graphics/niche/Fonts/FreeSans12pt_Win1252.h00x27 */ 0xff, 0xa0, /* '(' 0x28 */ 0x08, 0x8c, 0x46, 0x31, 0x98, 0xc6, 0x31, 0x8c, 0x63, 0x08, 0x63, 0x08, 0x61, 0x0c, 0STRING
Excessive Try-Catch Wrapping25 hits · 36 pts
SeverityFileLineSnippetContext
LOWtools/lockdown_provision.py295 except Exception as exc: # noqa: BLE001 - best-effort logging onlyCODE
MEDIUMtools/lockdown_provision.py276def wrapped(fromRadioBytes):CODE
MEDIUMbin/generate_ci_matrix.py40 print(f"Error: Could not determine platform for environment '{pio_env}'")CODE
LOWbin/test_size_scripts.py596 except Exception as e:CODE
LOWbin/base64_to_hex.py8 except Exception as e:CODE
MEDIUMbin/base64_to_hex.py4def base64_to_hex_string(b64_string):CODE
MEDIUMbin/size_report.py328 print("Error: --enforce-budgets requires --budgets", file=sys.stderr)CODE
MEDIUMbin/size_report.py348 print(f"Error: baseline must be LABEL:PATH, got '{b}'", file=sys.stderr)CODE
LOWbin/generate_release_notes.py288 except Exception as e:CODE
MEDIUMbin/generate_release_notes.py305 print("Error: Could not find last release tag", file=sys.stderr)CODE
MEDIUMbin/generate_release_notes.py316 print(f"Error: Could not get PRs for range {last_tag}..{compare_ref}: {e}", file=sys.stderr)CODE
LOWbin/platformio-custom.py25 except Exception:CODE
LOWbin/platformio-custom.py65 except Exception as exc:CODE
LOWbin/platformio-custom.py180 except Exception:CODE
MEDIUMbin/platformio-custom.py20def infer_architecture(board_cfg):CODE
MEDIUMbin/platformio-custom.py177def get_project_option(name):CODE
LOWextra_scripts/nrf52_warm_region.py35 except Exception as exc: # tooling hiccup: warn loudly, don't wedge the buildCODE
LOWextra_scripts/nrf52_lto.py82 except Exception:CODE
LOWextra_scripts/nrf52_lto.py105 except Exception:CODE
LOWextra_scripts/nrf52_lto.py121 except Exception:CODE
LOWextra_scripts/nrf52_lto.py194 except Exception as exc: # tooling hiccup: warn loudly, don't wedge the buildCODE
LOWextra_scripts/nrf52_lto.py279 except Exception as exc: # tooling hiccup (e.g. an nm that can't read slim LTOCODE
MEDIUMextra_scripts/nrf52_lto.py79def _is_board_variant(node, path):CODE
MEDIUMextra_scripts/nrf52_lto.py118def _no_lto(node):CODE
LOW.github/workflows/pr_tests.yml165 except Exception as e:CODE
Structural Annotation Overuse17 hits · 33 pts
SeverityFileLineSnippetContext
LOWtest/test_packet_history/test_main.cpp523 // Step 1: We relay (directed to next_hop=0x55)COMMENT
LOWtest/test_packet_history/test_main.cpp527 // Step 2: Heard-back from 0xAA at hop_limit-1 → stores 0xAA in relayed_byCOMMENT
LOWtest/test_packet_history/test_main.cpp531 // Step 3: Router removes us from the relayer listCOMMENT
LOWtest/test_packet_history/test_main.cpp534 // Step 4: Sender falls back to flooding - same packet, NO_NEXT_HOP_PREFERENCE, from 0xAACOMMENT
LOWbin/eth-ota-upload.py109 # Step 1: AuthenticateCOMMENT
LOWbin/eth-ota-upload.py114 # Step 2: Send 12-byte MOTA header: magic(4) + size(4) + crc32(4)COMMENT
LOWsrc/mesh/NodeDB.cpp3569/// NOTE: This function might be called from an ISRCOMMENT
LOWsrc/mesh/eth/ethOTA.cpp154 // Step 1: Challenge-response authenticationCOMMENT
LOWsrc/mesh/eth/ethOTA.cpp159 // Step 2: Read 12-byte headerCOMMENT
LOWsrc/graphics/TFTDisplay.cpp1285 // Step 1: fill the whole row with the default colors. No per-pixelCOMMENT
LOWsrc/graphics/TFTDisplay.cpp1292 // Step 2: overprint each region overlapping this row, applied inCOMMENT
LOWsrc/graphics/TFTDisplay.cpp1333 // Step 1: Do a quick scan of 8 rows together. This allows fast-forwarding over unchanged screen areas.COMMENT
LOWsrc/graphics/TFTDisplay.cpp1353 // Step 2: Scan this row for changed span (first and last changed pixel).COMMENT
LOWsrc/graphics/TFTDisplay.cpp1393 // Step 3: Copy only the changed span into the pixel line buffer.COMMENT
LOWsrc/graphics/TFTDisplay.cpp1415 // Step 4: Send the changed pixels on this line to the screen as a single block transfer.COMMENT
LOWsrc/modules/HopScalingModule.cpp385 // Step 1: evict stale entries (not seen in any of the past 13 hours).COMMENT
LOWsrc/modules/HopScalingModule.cpp397 // Step 2: if still too full, double the sampling denominator and remove non-matching entries.COMMENT
Verbosity Indicators16 hits · 32 pts
SeverityFileLineSnippetContext
LOWtest/test_packet_history/test_main.cpp523 // Step 1: We relay (directed to next_hop=0x55)COMMENT
LOWtest/test_packet_history/test_main.cpp527 // Step 2: Heard-back from 0xAA at hop_limit-1 → stores 0xAA in relayed_byCOMMENT
LOWtest/test_packet_history/test_main.cpp531 // Step 3: Router removes us from the relayer listCOMMENT
LOWtest/test_packet_history/test_main.cpp534 // Step 4: Sender falls back to flooding - same packet, NO_NEXT_HOP_PREFERENCE, from 0xAACOMMENT
LOWbin/eth-ota-upload.py109 # Step 1: AuthenticateCOMMENT
LOWbin/eth-ota-upload.py114 # Step 2: Send 12-byte MOTA header: magic(4) + size(4) + crc32(4)COMMENT
LOWsrc/mesh/eth/ethOTA.cpp154 // Step 1: Challenge-response authenticationCOMMENT
LOWsrc/mesh/eth/ethOTA.cpp159 // Step 2: Read 12-byte headerCOMMENT
LOWsrc/graphics/TFTDisplay.cpp1285 // Step 1: fill the whole row with the default colors. No per-pixelCOMMENT
LOWsrc/graphics/TFTDisplay.cpp1292 // Step 2: overprint each region overlapping this row, applied inCOMMENT
LOWsrc/graphics/TFTDisplay.cpp1333 // Step 1: Do a quick scan of 8 rows together. This allows fast-forwarding over unchanged screen areas.COMMENT
LOWsrc/graphics/TFTDisplay.cpp1353 // Step 2: Scan this row for changed span (first and last changed pixel).COMMENT
LOWsrc/graphics/TFTDisplay.cpp1393 // Step 3: Copy only the changed span into the pixel line buffer.COMMENT
LOWsrc/graphics/TFTDisplay.cpp1415 // Step 4: Send the changed pixels on this line to the screen as a single block transfer.COMMENT
LOWsrc/modules/HopScalingModule.cpp385 // Step 1: evict stale entries (not seen in any of the past 13 hours).COMMENT
LOWsrc/modules/HopScalingModule.cpp397 // Step 2: if still too full, double the sampling denominator and remove non-matching entries.COMMENT
Hyper-Verbose Identifiers30 hits · 28 pts
SeverityFileLineSnippetContext
LOWtools/lockdown_provision.py184def read_passphrase_from_file(path: str) -> bytes:CODE
LOWtools/lockdown_provision.py258def install_notification_printer(iface) -> None:CODE
LOWbin/test_size_scripts.py78def test_collect_sizes_ram_bytes():CODE
LOWbin/test_size_scripts.py98def test_collect_sizes_non_int_ram_bytes_ignored():CODE
LOWbin/test_size_scripts.py112def test_collect_sizes_fallback_bin():CODE
LOWbin/test_size_scripts.py136def test_collect_sizes_skips_ota_littlefs():CODE
LOWbin/test_size_scripts.py160def test_collect_sizes_ignores_non_mt_json():CODE
LOWbin/test_size_scripts.py178def test_size_report_no_baseline():CODE
LOWbin/test_size_scripts.py195def test_size_report_with_baseline():CODE
LOWbin/test_size_scripts.py224def test_size_report_ram_columns():CODE
LOWbin/test_size_scripts.py248def test_size_report_ram_na_for_legacy_baseline():CODE
LOWbin/test_size_scripts.py269def test_size_report_ram_na_for_current_without_ram():CODE
LOWbin/test_size_scripts.py286def test_size_report_multiple_baselines():CODE
LOWbin/test_size_scripts.py308def test_size_report_new_target_no_baseline_entry():CODE
LOWbin/test_size_scripts.py324def test_size_report_all_unchanged():CODE
LOWbin/test_size_scripts.py338def test_budget_gate_under_budget():CODE
LOWbin/test_size_scripts.py365def test_budget_gate_over_ram_budget():CODE
LOWbin/test_size_scripts.py392def test_budget_gate_over_flash_budget():CODE
LOWbin/test_size_scripts.py416def test_budget_gate_env_not_built_fails_closed():CODE
LOWbin/test_size_scripts.py436def test_budget_report_env_not_built_shows_na():CODE
LOWbin/test_size_scripts.py455def test_budget_gate_missing_ram_metric_fails_closed():CODE
LOWbin/test_size_scripts.py475def test_budget_report_missing_ram_metric_shows_na():CODE
LOWbin/test_size_scripts.py494def test_budget_gate_empty_sizes_fails_closed():CODE
LOWbin/test_size_scripts.py514def test_budget_invalid_budget_rejected():CODE
LOWbin/test_size_scripts.py532def test_budget_render_without_enforce():CODE
LOWbin/test_size_scripts.py553def test_budget_enforce_requires_budgets():CODE
LOWbin/test_size_scripts.py565def test_collect_sizes_bad_args():CODE
LOWbin/test_size_scripts.py572def test_size_report_bad_baseline_format():CODE
LOWextra_scripts/nrf52_warm_region.py28def _assert_warm_region_clear(source, target, env):CODE
LOWextra_scripts/nrf52_lto.py186def _assert_isr_handlers_survived(source, target, env):CODE
AI Slop Vocabulary4 hits · 12 pts
SeverityFileLineSnippetContext
MEDIUMtest/test_radio/test_main.cpp184// Custom CR lower than preset: preset wins (higher is more robust)COMMENT
MEDIUM.github/workflows/test_native.yml51 # The Python harness sends exit_simulator and exits; the simulator isCOMMENT
MEDIUMsrc/security/EncryptedStorage.cpp1188 // triggers a block - so the policy is robust whether RTC is valid, neverCOMMENT
MEDIUMsrc/modules/OnScreenKeyboardModule.cpp188 // Build lines and leverage NotificationRenderer inverted box drawing for consistent styleCOMMENT
Redundant / Tautological Comments8 hits · 12 pts
SeverityFileLineSnippetContext
LOWbin/show-unmerged-prs.sh48# Check if gh CLI is availableCOMMENT
LOWbin/show-unmerged-prs.sh89 # Check if filter matchesCOMMENT
LOWbin/base64_to_hex.py11 # Check if the decoded result is exactly 32 bytesCOMMENT
LOWbin/base64_to_hex.py23 # Check if a Base64 string was provided in command line argumentsCOMMENT
LOWbin/eth-ota-upload.py47 # Check if already GZIP compressed (magic bytes 1f 8b)COMMENT
LOWbin/kill-github-actions.sh27# Check if gh CLI is installedCOMMENT
LOWbin/kill-github-actions.sh35# Check if authenticatedCOMMENT
LOW.github/workflows/build_firmware.yml73 # Check if OTA file existsCOMMENT
Deep Nesting11 hits · 11 pts
SeverityFileLineSnippetContext
LOWbin/analyze_map.py77CODE
LOWbin/uf2conv.py166CODE
LOWbin/uf2conv.py211CODE
LOWbin/uf2conv.py267CODE
LOWbin/size_report.py54CODE
LOWbin/size_report.py229CODE
LOWbin/collect_sizes.py22CODE
LOWbin/generate_release_notes.py295CODE
LOWextra_scripts/nrf54l15_linker.py28CODE
LOWextra_scripts/esp32_pre.py12CODE
LOWextra_scripts/nrf52_lto.py241CODE
Unused Imports10 hits · 10 pts
SeverityFileLineSnippetContext
LOWtools/lockdown_provision.py63CODE
LOWbin/analyze_map.py11CODE
LOWbin/analyze_map.py17CODE
LOWbin/_rewrite_proto_namespace.py17CODE
LOWbin/platformio-custom.py4CODE
LOWbin/platformio-custom.py10CODE
LOWbin/gen-fake-nodedb-seed.py35CODE
LOWbin/gen-fake-nodedb-seed.py40CODE
LOWbin/seed-json-to-proto.py18CODE
LOWextra_scripts/esp32_extra.py16CODE
Self-Referential Comments2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/release_channels.yml82 # Create a PR to bump version when a release is PublishedCOMMENT
MEDIUM.github/workflows/package_obs.yml80 # Create a temporary directory for osc checkoutCOMMENT
Cross-Language Confusion2 hits · 5 pts
SeverityFileLineSnippetContext
HIGHextra_scripts/nrf54l15_linker.py33 COMMAND = cmd.exe /C "cd /D DIR && arm-none-eabi-gcc.exe ... -o linker.cmd && cmake.exe -E cmake_transform_dSTRING
HIGHextra_scripts/nrf54l15_linker.py35 COMMAND = cd DIR && arm-none-eabi-gcc ... -o linker.cmd && cmake -E cmake_transform_depfile ...STRING
Modern AI Meta-Vocabulary2 hits · 5 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/main_matrix.yml393 # RAM/flash guardrails: fails CI when an env listed in bin/ram_budgets.jsonCOMMENT
MEDIUMsrc/graphics/niche/InkHUD/docs/README.md15 - [Event-Driven Rendering](#event-driven-rendering)CODE
Synthetic Comment Markers1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHsrc/graphics/VirtualKeyboard.cpp287 const int gapMidY = innerTop + (firstLineTop - innerTop) / 2 + 1; // shift down 1px as requestedCODE
Example Usage Blocks3 hits · 4 pts
SeverityFileLineSnippetContext
LOWbin/show-unmerged-prs.sh6# Usage:COMMENT
LOWbin/run-tests.sh10# Usage:COMMENT
LOWbin/test-native-docker.sh4# Usage:COMMENT
Fake / Example Data2 hits · 3 pts
SeverityFileLineSnippetContext
LOWsrc/graphics/niche/InkHUD/InkHUD.cpp562// in order to fill them with a "placeholder" pattern.COMMENT
LOWsrc/graphics/niche/InkHUD/WindowManager.cpp533// in order to fill them with a "placeholder" pattern.COMMENT