AI Slop Code RIsk Monitor

themactep/thingino-firmware

Open-source firmware for Ingenic SoC IP cameras

4.2 Low pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for themactep/thingino-firmware, a Shell project with 2,196 GitHub stars. SynthScan examined 323,680 lines of code across 1073 source files, recording 971 pattern matches distributed across 17 syntactic categories. The legacy adjusted pattern signal is 4.2 (Low pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

4.2
Adjusted Signal
4.2
Raw Pattern Score
100%
Time Factor
2026-10-11
Last Push
2.2K
Stars
Shell
Language
323.7K
Lines of Code
1.1K
Files
971
Pattern Hits
2026-10-12
Scan Date
0.04
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 8.6/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 724 finding(s).

Hallucinated Dependency & Supply Chain Risk 1.2/100 · LOW

Are imports declared and package/API names verified? 23 finding(s).

Agent Over-Engineering Ratio 10.6/100 · LOW

Are wrappers, guards, and repeated structures necessary? 263 finding(s).

PR Review Velocity Impact 21.0/100 · LOW

Which changes need focused human review? 971 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 0HIGH 40MEDIUM 178LOW 753

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 971 distinct pattern matches across 17 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. 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 configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Decorative Section Separators164 hits · 514 pts
SeverityFileLineSnippetContext
MEDIUMdocs/thingino/tools/snmp/thingino-snmp-monitor.sh267# ── mDNS discovery helpers ─────────────────────────────────────────────COMMENT
MEDIUMdocs/thingino/tools/snmp/thingino-snmp-monitor.sh311 # ── Try mDNS first ────────────────────────────────────────────────COMMENT
MEDIUMdocs/thingino/tools/snmp/thingino-snmp-monitor.sh325 # ── Fall back to network scan ─────────────────────────────────────COMMENT
MEDIUMdocs/dev/plugin-system.md176 // ── Navigation ──────────────────────────────────────────────────COMMENT
MEDIUM⚡docs/dev/plugin-system.md214 // ── Scripts ─────────────────────────────────────────────────────COMMENT
MEDIUM⚡docs/dev/plugin-system.md222 // ── Stylesheets ──────────────────────────────────────────────────COMMENT
MEDIUM⚡docs/dev/plugin-system.md229 // ── Preview-page injection ──────────────────────────────────────COMMENT
MEDIUMdocs/dev/plugin-system.md242 // ── Feature flags ────────────────────────────────────────────────COMMENT
MEDIUMdocs/dev/plugin-system.md251 // ── CGI endpoints ────────────────────────────────────────────────COMMENT
MEDIUMdocs/dev/plugin-system.md263 // ── Pages ────────────────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/sei-overlay.py241# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/sei-overlay.py243# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/sei-overlay.py251# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/sei-overlay.py253# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py37# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py39# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py133# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py135# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py202# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py204# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py444# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py446# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py460# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py462# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py539 # ── Write standalone subtitle file, no encode ────────────COMMENT
MEDIUMscripts/sei-overlay.py568 # ── Generate ASS subtitle file ─────────────────────────────────COMMENT
MEDIUMscripts/sei-overlay.py577 # ── Build ffmpeg command ───────────────────────────────────────COMMENT
MEDIUMscripts/test-snmpd.sh39# ── header ──────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/test-snmpd.sh52# ── SNMPv2-MIB system group ─────────────────────────────────────────COMMENT
MEDIUMscripts/test-snmpd.sh71# ── IF-MIB ──────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/test-snmpd.sh85# ── IP-MIB ─────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/test-snmpd.sh99# ── HOST-RESOURCES-MIB ─────────────────────────────────────────────COMMENT
MEDIUMscripts/test-snmpd.sh130# ── UCD-SNMP-MIB: memory ───────────────────────────────────────────COMMENT
MEDIUMscripts/test-snmpd.sh138# ── UCD-SNMP-MIB: disks ────────────────────────────────────────────COMMENT
MEDIUMscripts/test-snmpd.sh158# ── UCD-SNMP-MIB: load ─────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/test-snmpd.sh178# ── UCD-SNMP-MIB: system stats ─────────────────────────────────────COMMENT
MEDIUM⚡scripts/test-snmpd.sh185# ── Agent's own SNMP counters ──────────────────────────────────────COMMENT
MEDIUM⚡scripts/test-snmpd.sh191# ── Full walk stats ────────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/test-snmpd.sh195# ── Summary ─────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/update_packages.py93# ── Release bundle helpers ──────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/sei-rtsp.py390# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/sei-rtsp.py392# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/sei-rtsp.py563 # ── Sanity check ───────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/sei-rtsp.py575 # ── Font ────────────────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/sei-rtsp.py579 # ── Shared state ────────────────────────────────────────────────COMMENT
MEDIUM⚡scripts/sei-rtsp.py582 # ── Print‑only mode ─────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py64# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py66# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py97# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py99# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py210# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py212# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py334# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py336# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py409# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py411# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py504# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py506# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py522# ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/sei-rtsp.py524# ──────────────────────────────────────────────────────────────────────COMMENT
104 more matches not shown…
Over-Commented Block566 hits · 356 pts
SeverityFileLineSnippetContext
LOWbuild-container.sh1#!/bin/bashCOMMENT
LOWdocs/thingino/tools/snmp/thingino-snmp-monitor.sh1#!/bin/bashCOMMENT
LOWdocs/thingino/tools/snmp/thingino-snmp-monitor.sh21# Config: ~/.config/thingino/monitor.confCOMMENT
LOWdocs/rfc/rfc6458.txt5921 #include <netinet/in.h>COMMENT
LOWdocs/rfc/rfc6458.txt6081 or without modification, is permitted pursuant to, and subjectCOMMENT
LOWdocs/rfc/rfc6716.txt9181COMMENT
LOWdocs/rfc/rfc6716.txt9201 ###/vlb4b/zM4H/T8+rteo54f+T4/PjF/z3LT5vYIkAi2YJCAASCqylxq4MnlsDqd4UCOMMENT
LOWdocs/rfc/rfc6716.txt9221 ###EfuUpEhgx9A7bYKGS9s/CJ0zDCTkCvU+Ao9GnYZA/bqn9o9W7tZxyOplGu2AeR7CCOMMENT
LOWdocs/rfc/rfc6716.txt9241 ###2R7RP/vzY//dA2350YF2kyvBI1wpC5H4usPKQC+advw0mC2YJGF2nl9I0ZtsLczOCOMMENT
LOWdocs/rfc/rfc6716.txt9261 ###axlOniesMP5qK2cN+QRjIwa+VFv6UNUbZ6cf09Am+ezsY6mwb2ehvThbFVgW2q7BCOMMENT
LOWdocs/rfc/rfc6716.txt9281 ###r/UrBZFOnrfXaOyCFBFmVFQRHzKxwA8rUZDrqnIx6t2WkhPTTqo5nqQOG1dr2hkpCOMMENT
LOWdocs/rfc/rfc6716.txt9301 ###F/8qWa6c74ng+8NX8tVGfZoSyjBHvqecb7X2lXwvR+12rrxnnG/teBvfZaKZnXpZCOMMENT
LOWdocs/rfc/rfc6716.txt9321 ###FGFsrU/+cKKVSVJfQfdNhISIpo/AYwWRaxhNLOi/gAJzoI5zDiMFQk8VQUYb4TqECOMMENT
LOWdocs/rfc/rfc6716.txt9341 ###5WtR5UsBUefGLhXTHY7gYJEszghVYwI9DdMQpaJajNQeHuw5vb5/VSJ9UxhjU908COMMENT
LOWdocs/rfc/rfc6716.txt9361 ###tNgndL8W3yICEfbrFEGc24OEP5RYeP+RmRNAhYaAf5VQR3IR8C4ca6BHJuWI6DHmCOMMENT
LOWdocs/rfc/rfc6716.txt9381 ###K25LR204/8leCpszb/EABJ3A75MpWO7t8Z6a4CEmaiUlHSaIpXq98C7olvm7TWAECOMMENT
LOWdocs/rfc/rfc6716.txt9401Valin, et al. Standards Track [Page 168]COMMENT
LOWdocs/rfc/rfc6716.txt9421 ###+jouKOsNrQim2iwITedFO0TXXFJN0ZWZ9qKZD4AsJ72ONrgGZrYsPIVwHiwQUofCCOMMENT
LOWdocs/rfc/rfc6716.txt9441 ###xekGj7BiWdCCRXoaF6Bxfor2b0m32ywLlplGK8YFFRkrxfJeJi3FS1FvvYIRBCgUCOMMENT
LOWdocs/rfc/rfc6716.txt9461COMMENT
LOWdocs/rfc/rfc6716.txt9481 ###rwxu/pz4v65XbbgU/7fWcD2v4v1Hxa1WGpVl/N8/4+fbdPhfNx3+NxG3d0as329fCOMMENT
LOWdocs/rfc/rfc6716.txt9501 ###uUXSb+0tkn6vt8isd7hFZrwzt8isIsYWSRfJOIQyi2WRk+xiJjlJl8jekulyxpbMCOMMENT
LOWdocs/rfc/rfc6716.txt9521 ###4AEjFivTM79/xZrlHHL2LUKAwns2QzvlPz/yn3iM6av48y779TlO0EGVNqVLkyZqCOMMENT
LOWdocs/rfc/rfc6716.txt9541 ###cIIMHP3NKsEEj9AcVo2/dOiP6IkOI+3maZw85Oz858r/RHr7487zWQE8IP/XapXkCOMMENT
LOWdocs/rfc/rfc6716.txt9561 ###k/yKWLchAPeujKXWZUOvKRdfhFf1Mg2fczXFy0BJFIiKiM2CNIQ8A6DUAIpjnlWMCOMMENT
LOWdocs/rfc/rfc6716.txt9581 ###F2eysQFfGo3aZz4Se07urgmn9Au5gARIYkOcG2gmZxyUd8iB5Mtr9PJOn4mADl7hCOMMENT
LOWdocs/rfc/rfc6716.txt9601 ###cVf11FWDPF75kOAwWr68LuRbSDpwMEIBisvIM1AaSwfvN/EjOprZAKf7u4YJHA0QCOMMENT
LOWdocs/rfc/rfc6716.txt9621 ###UiOISQbePZIO2AgiKv+dEGS1kAH8eYSi35/yryejCdtzPUA4shFl3mizUAXHWeY/COMMENT
LOWdocs/rfc/rfc6716.txt9641 ###YUD9K2AAhQH5QhSoPw0F6l+MAvVnQIG5t1T7Rz+DaKVUYPLrPMYgQ/TR1Z7xvqotCOMMENT
LOWdocs/rfc/rfc6716.txt9661 ###EjsXR6Rvhr0bAbJeo7aMNErh5PuYh1/e1kzmvci0+MiJzeaTE7OaLZaYE0y+beczCOMMENT
LOWdocs/rfc/rfc6716.txt9681Valin, et al. Standards Track [Page 173]COMMENT
LOWdocs/rfc/rfc6716.txt9701 ###HfoPW1/fc6t1z8XW6+uNw936umh9d92rHhxUsPWdyvrO/vohQcat7G2suTT2g0P8COMMENT
LOWdocs/rfc/rfc6716.txt9721 ###h2TCGJdTaLX8zjXVFnWhWp/8K0YIvFy4EqyQZsMe02m5Cy0PY0aIKSyGBTwhb/7ICOMMENT
LOWdocs/rfc/rfc6716.txt9741COMMENT
LOWdocs/rfc/rfc6716.txt9761 ###10CRRFpZZLJluJpYjSD20YE8QpIK2OutVqkNQhM4cRBTeFckN4LQUQOjHtNuILbdCOMMENT
LOWdocs/rfc/rfc6716.txt9781 ###EcAMY8PkaLOYIBwBtFr3yP4DkUfKMCQQ+Ki8bgMHB4JQd0rWIGSMCOIJ28KqC31mCOMMENT
LOWdocs/rfc/rfc6716.txt9801 ###VyXEzao281vNVujkJpZHCROxVrjlubW1mrvuutUmCuicKUzwBYAFMIjKP3Nh/DGCCOMMENT
LOWdocs/rfc/rfc6716.txt9821 ###JmgxOcmg1Hrfy4iJ+Dt7T2do62cr02OgeJ1rAIZAeLo99F4pGVWfxKXvWjcqGgOPCOMMENT
LOWdocs/rfc/rfc6716.txt9841 ###+ClXLdWoH7TCvmid7LzfbpJl2Hq1UVuDF1md0eTxtmbU045MBeA2zlq7Rxf5VC0xCOMMENT
LOWdocs/rfc/rfc6716.txt9861 ###Nvgc5QXTrUbChf6m11LaC63EYt2faYQP5dq9/r2Xy+ZQFDQ74zs4+YBFmcy41GKbCOMMENT
LOWdocs/rfc/rfc6716.txt9881 ###5FAlHtRNdtQRWJHx0Mt6WM16WMOHukeDMjVFp/NYXUdiJizEh2lBLM/lPJbXkViMCOMMENT
LOWdocs/rfc/rfc6716.txt9901 ###QXxu10zhu6Mp5kEfh83qiltz6xteo16tr2+sbVS96nqt4TVq1ep61VvT94BcQYw2COMMENT
LOWdocs/rfc/rfc6716.txt9921 ###Kri3PeJs0t7pXUmmASBN3wxU4BawtrWMUEyuiI5oztX1Dq3kE0Ijt5PeK1RLTsuOCOMMENT
LOWdocs/rfc/rfc6716.txt9941 ###mitc2R2JU10ijGIe4bPIV4CHrgETtjxCbiC4A9axf69zuOCYSsxC3MrZf5xCtck9COMMENT
LOWdocs/rfc/rfc6716.txt9961Valin, et al. Standards Track [Page 178]COMMENT
LOWdocs/rfc/rfc6716.txt9981 ###bmlvt7S3eyZ7O+cbkVk415IsTdD6If/iW5Fx2DEfOzkX3yi7OyA+xMRzwuM9ZML9COMMENT
LOWdocs/rfc/rfc6716.txt10001 ###QdYSf/PiAWxTUWR7GzYtNWZEMJK1ipoorRaApTh4hdF9fWcQIquK5reD8F9CNLlFCOMMENT
LOWdocs/rfc/rfc6716.txt10021COMMENT
LOWdocs/rfc/rfc6716.txt10041 ###NB1ILz5yPyRg5OK8RRXPiN4ktaI8JGxfKbyI7uVLDOl83u70l+B7cuPuT8Jx/x6PCOMMENT
LOWdocs/rfc/rfc6716.txt10061 ###RieA+fb/bsVbayT9v+vV2tL+f2n/v7T/X9r/L+3/l/b/S/v/pf3/17T/lzyPZaBvCOMMENT
LOWdocs/rfc/rfc6716.txt10081 ###ahkHRl3QaNKEAopvI2QsaoEbv/gFu76YtQyPJQGcmpm2v3UeASUQg+7Dxs7cTLNJCOMMENT
LOWdocs/rfc/rfc6716.txt10101 ###nvOyNKMZMs20zP0UgDtbe3kRnUE19V/Dl9KYEyB8Ku19mSgRBOMpaZKFuCouF+EoCOMMENT
LOWdocs/rfc/rfc6716.txt10121 ###vNWovNQWJKKCASWNhCM+3+yI0zLkPGkeXmh7BdqjXh4pazAU+jo45+StjS3z0SnbCOMMENT
LOWdocs/rfc/rfc6716.txt10141 ###ZKSNbBiZMZjHzQoH5BC8rMkT94H3ijIieHhzw8FArZtoVlB3ADun8Ijwj4q0aWryCOMMENT
LOWdocs/rfc/rfc6716.txt10161 ###bKCtH+5JLMPLfauJaoHW28nlctWydZgDW0gGx40a/vagfU/HM6T8GOsVC8VlRZ2HCOMMENT
LOWdocs/rfc/rfc6716.txt10181 ###a1JAgcILpyKXpY4pj7zhqSHDn3rl8uYLnfpoOh4DN9APB+jvPJRyp0+54HwxRYeuCOMMENT
LOWdocs/rfc/rfc6716.txt10201 ###XTI0TCQ8oruldHor7pSccZjO6HwO1ptvGF2ty1TdFxSAyaF+lPiM1i4qGHmuCAHkCOMMENT
LOWdocs/rfc/rfc6716.txt10221 ###hJwV5xcU2MljhZRJajFKcgdHQZnsL5VaQYe0Mk2HjfusG5VfGeAPQ7lnRRNGIGArCOMMENT
LOWdocs/rfc/rfc6716.txt10241Valin, et al. Standards Track [Page 183]COMMENT
LOWdocs/rfc/rfc6716.txt10261 ###llE4KunS7uzSqbbZsfW9DQk9G441gBbfmT1RGY4lMKOMbN+9zASA2b47YyZm+25mCOMMENT
506 more matches not shown…
Empty Error Handlers28 hits · 140 pts
SeverityFileLineSnippetContext
HIGHscripts/sei-overlay.py344except ValueError:CODE
HIGHscripts/sei-overlay.py422except ValueError:CODE
HIGHscripts/save_partition_info.py24except Exception:CODE
HIGHscripts/update_packages.py701except Exception:CODE
HIGHscripts/update_packages.py956except Exception:CODE
HIGHscripts/sei-rtsp.py727except OSError:CODE
HIGHscripts/sei-rtsp.py599except KeyboardInterrupt:CODE
HIGHscripts/sei-rtsp.py723except OSError:CODE
HIGHscripts/sei-rtsp.py628except Exception:CODE
HIGHscripts/sei-rtsp.py385except OSError:CODE
HIGHscripts/sei-rtsp.py133except (json.JSONDecodeError, UnicodeDecodeError):CODE
HIGHscripts/qemu-test/qemutest/netlab.py130except OSError:CODE
HIGHscripts/qemu-test/qemutest/netlab.py161except OSError:CODE
HIGHscripts/qemu-test/qemutest/netlab.py208except OSError:CODE
HIGHscripts/qemu-test/qemutest/netlab.py452except FileNotFoundError:CODE
HIGHscripts/qemu-test/qemutest/netlab.py123except OSError:CODE
HIGHscripts/qemu-test/qemutest/netlab.py199except OSError:CODE
HIGHscripts/qemu-test/qemutest/netlab.py330except OSError:CODE
HIGHscripts/qemu-test/qemutest/netlab.py309except OSError:CODE
HIGHscripts/qemu-test/qemutest/qmp.py58except OSError:CODE
HIGHscripts/qemu-test/qemutest/driver.py181except Exception:CODE
HIGHscripts/qemu-test/qemutest/driver.py57except Exception:CODE
HIGHscripts/qemu-test/qemutest/driver.py165except Exception:CODE
HIGHscripts/qemu-test/qemutest/driver.py227except Exception:CODE
HIGHscripts/qemu-test/qemutest/driver.py235except Exception:CODE
HIGHscripts/qemu-test/qemutest/driver.py279except OSError:CODE
HIGHpackage/thingino-webui/scripts/apply_asset_tag.py58except OSError:CODE
HIGHpackage/thingino-webui/scripts/apply_paranoid_mode.py58except OSError:CODE
Redundant / Tautological Comments53 hits · 83 pts
SeverityFileLineSnippetContext
LOWuser-menu.sh4 # Check if both dialog and Bash are installedCOMMENT
LOWbuild-container.sh130 # Check if CAMERA is already providedCOMMENT
LOWbuild-container.sh169 # Check if there's a previous selectionCOMMENT
LOWscripts/sei-overlay.py315 # Set PlayRes to match the display canvas so fontsize / marginsCOMMENT
LOWscripts/dl_buildroot_cache.sh10# Check if the required environment variables are setCOMMENT
LOWscripts/dl_buildroot_cache.sh46 # Check if BR2_DL_DIR existsCOMMENT
LOWscripts/test-snmpd.sh166 # Print valuesCOMMENT
LOWscripts/sd_card_flasher.sh62 # Check if file existsCOMMENT
LOWscripts/sd_card_flasher.sh68 # Check if file is readableCOMMENT
LOWscripts/sd_card_flasher.sh142 # Check if it's an SD cardCOMMENT
LOWscripts/sd_card_flasher.sh181 # Check if it's FAT (vfat/fat32)COMMENT
LOW⚡scripts/sd_card_flasher.sh262 # Check if mount point existsCOMMENT
LOW⚡scripts/sd_card_flasher.sh268 # Check if it's actually a mount pointCOMMENT
LOW⚡scripts/sd_card_flasher.sh274 # Check if it's writableCOMMENT
LOWscripts/list-spi-nor-chips.sh45# Check if the binary contains a U-Boot image header (IH_MAGIC = 0x27051956)COMMENT
LOWscripts/manage-package-overrides.sh101# Check if package has override in local.mkCOMMENT
LOWscripts/manage-package-overrides.sh112# Check if package has override but is disabled (commented)COMMENT
LOWscripts/manage-package-overrides.sh154 # Check if override already existsCOMMENT
LOWscripts/manage-package-overrides.sh246 # Check if override exists (enabled or disabled)COMMENT
LOWscripts/manage-package-overrides.sh259 # Check if it's a git repositoryCOMMENT
LOWscripts/manage-package-overrides.sh287 # Check if in detached HEAD stateCOMMENT
LOWscripts/manage-package-overrides.sh338# Check if a URL points to a GitHub repositoryCOMMENT
LOWscripts/manage-package-overrides.sh546 # Check if already has overrideCOMMENT
LOWscripts/manage-package-overrides.sh674 # Check if this package has an overrideCOMMENT
LOWscripts/manage-package-overrides.sh758 # Check if next arg is --all or a patternCOMMENT
LOWscripts/sd_card_monitor.sh66# Check if running as root for some operationsCOMMENT
LOWscripts/sd_card_monitor.sh79 # Check if device existsCOMMENT
LOW⚡scripts/sd_card_monitor.sh170 # Check if device is mountedCOMMENT
LOW⚡scripts/sd_card_monitor.sh176 # Check if device is in useCOMMENT
LOW⚡scripts/sd_card_monitor.sh182 # Check if device is writableCOMMENT
LOWscripts/sd_utils.sh36 $0 check /dev/mmcblk0 # Check if device is safe for writingCODE
LOWscripts/sd_utils.sh133# Check if device is safe for writingCOMMENT
LOWscripts/sd_utils.sh144 # Check if it's an SD cardCOMMENT
LOWscripts/sd_utils.sh150 # Check if ready for writingCOMMENT
LOWscripts/sd_utils.sh170 # Check if already mountedCOMMENT
LOWscripts/dep_check.sh16 # Check if the current directory path contains spaces.COMMENT
LOWscripts/dep_check.sh35 # Check if it's uutils coreutils (Rust rewrite)COMMENT
LOWscripts/dep_check.sh66 # Check if running on Alpine with muslCOMMENT
LOWscripts/dep_check.sh110# Check if sudo is availableCOMMENT
LOWscripts/select_camera.sh85# Check if there's a previous selection (only if no suggestion was accepted)COMMENT
LOWscripts/tftpd-server.sh104 # Check if container is already runningCOMMENT
LOWscripts/tftpd-server.sh193 # Check if container is runningCOMMENT
LOWscripts/tftpd-server.sh215 # Check if container existsCOMMENT
LOWscripts/tftpd-server.sh256 # Check if container existsCOMMENT
LOWscripts/menu/menu1-dev-sel.sh27# Check if we found any itemsCOMMENT
LOWscripts/menu/menu2-guided.sh153 # Set BR2_DL_DIR to $HOME/dl if it is not already defined before make ( we should do this in the makefile )COMMENT
LOWscripts/menu/menu2-guided.sh156 # Check if the directory exists, if not, create itCOMMENT
LOWpackage/strero/files/generate-ssl-certs.sh193 # Check if certificate and key files exist and are not emptyCOMMENT
LOWpackage/strero/files/generate-ssl-certs.sh204 # Check if certificate has PEM format markersCOMMENT
LOWpackage/thingino-webui/files/www/x/auth.sh25# Check if the client IP is in the trusted IP bypass list (webui.auth_bypass_ips).COMMENT
LOWpackage/thingino-webui/files/www/x/auth.sh105 # Check if API key file existsCOMMENT
LOWpackage/thingino-webui/files/www/x/auth.sh118# Check if user is authenticated (session OR API key)COMMENT
LOWpackage/thingino-webui/files/www/x/session.sh56 # Check if session file existsCOMMENT
Cross-Language Confusion11 hits · 65 pts
SeverityFileLineSnippetContext
HIGHscripts/qemu-test/qemutest/suites/wifi.py48 ">/dev/null && echo PORTAL_UHTTPD; pgrep -af uhttpd",CODE
HIGHscripts/qemu-test/qemutest/suites/wifi.py81 guest.run(f"ip addr add {SLIP_GUEST_IP} peer {SLIP_HOST_IP} dev sl0 2>/dev/null; "CODE
HIGHscripts/qemu-test/qemutest/suites/wifi.py229 "ip route add default via 10.0.2.2 2>/dev/null; true",CODE
HIGHscripts/qemu-test/qemutest/suites/onvif.py62 rc, out = guest.run(f"[ -r {path} ] && echo CREDSRC || true")CODE
HIGHscripts/qemu-test/qemutest/suites/net.py247 guest.run("killall syslogd 2>/dev/null; sleep 1; "CODE
HIGHscripts/qemu-test/qemutest/suites/net.py256 guest.run("killall syslogd 2>/dev/null; /etc/init.d/S01syslogd start "CODE
HIGHscripts/qemu-test/qemutest/suites/common.py87 ser.cmd("mkdir -p /root/.ssh && chmod 700 /root/.ssh", 1)CODE
HIGH⚡package/thingino-webui/scripts/apply_cdn_fallback.py40 "this.onerror=null;var l=document.createElement('link');l.rel='stylesheet';l.href='/a/vendor/montserrat.css';thiCODE
HIGH⚡package/thingino-webui/scripts/apply_cdn_fallback.py48 "this.onerror=null;var l=document.createElement('link');l.rel='stylesheet';l.href='/a/vendor/bootstrap.min.css';CODE
HIGH⚡package/thingino-webui/scripts/apply_cdn_fallback.py56 "this.onerror=null;var l=document.createElement('link');l.rel='stylesheet';l.href='/a/vendor/bootstrap-icons.minCODE
HIGH⚡package/thingino-webui/scripts/apply_cdn_fallback.py64 "this.onerror=null;var s=document.createElement('script');s.src='/a/vendor/bootstrap.bundle.min.js';document.heaCODE
Hyper-Verbose Identifiers37 hits · 37 pts
SeverityFileLineSnippetContext
LOWscripts/save_partition_info.py12def get_mtdparts_from_uboot_env(uboot_env_path):CODE
LOWscripts/update_packages.py230def check_git_working_directory() -> bool:CODE
LOWscripts/update_packages.py259def stash_uncommitted_changes() -> Optional[str]:CODE
LOWscripts/update_packages.py345def download_release_tarball_hash(repo_url: str, tag: str, package_name: str, version: str) -> Optional[Tuple[str, str]]CODE
LOWscripts/update_packages.py925def update_package_mk_version(mk_path: Path, package_name: str, old_version: str, new_version: str) -> bool:CODE
LOWscripts/backchannel-probe.py55def build_digest_authorization(CODE
LOWscripts/update-packages.py139def extract_tarball_name_from_hash(hash_text: str) -> str | None:CODE
LOWscripts/rtsp-backchannel-probe.py75def build_digest_authorization(CODE
LOWscripts/qemu-test/qemutest/suites/wifi.py110def test_provision_reboot_sta(ctx):CODE
LOWscripts/qemu-test/qemutest/suites/net.py172def test_dual_stack_listeners(ctx):CODE
LOWpackage/thingino-webui/files/www/a/control-bar.js90 function syncButtonBarCompactState() {CODE
LOWpackage/thingino-webui/files/www/a/preview.js106function formatPreviewHostWithPort(host, port, defaultPort) {CODE
LOWpackage/thingino-webui/files/www/a/preview.js127function markPreviewEndpointCopied(link) {CODE
LOWpackage/thingino-webui/files/www/a/preview.js259function updatePreviewEndpointState(msg) {CODE
LOWpackage/thingino-webui/files/www/a/preview.js289async function loadPreviewEndpointApiKey() {CODE
LOWpackage/thingino-webui/files/www/a/preview.js895async function fetchImagingStateFromAgent() {CODE
LOWpackage/thingino-webui/files/www/a/main.js108function invalidateAgentConfigCache() {CODE
LOWpackage/thingino-webui/files/www/a/main.js227function ensureDebugModalStructure() {CODE
LOWpackage/thingino-webui/files/www/a/main.js272function populateDebugModalContent() {CODE
LOWpackage/thingino-webui/files/www/a/main.js1085function cleanupHeartbeatResources() {CODE
LOWpackage/thingino-webui/files/www/a/main.js1746function ensureConfirmModalStructure() {CODE
LOWpackage/thingino-webui/files/www/a/main.js1801function resolveConfirmIntentClass(intent) {CODE
LOWpackage/thingino-webui/files/www/a/main.js2072function initPasswordRevealToggles(root = document) {CODE
LOWpackage/timps/files/www/motors-ui/preview-motors.js246function normalizePreviewControlMode(value) {CODE
LOWpackage/timps/files/www/motors-ui/config-motors.js40 function normalizePreviewControlMode(value) {CODE
LOWpackage/timps/files/www/motors-ui/config-motors.js81 function updateJoystickSensitivityInputs() {CODE
LOWpackage/timps/files/www/motors-ui/config-motors.js94 function updateDragSensitivityInputs() {CODE
LOWpackage/timps/files/www/a/timps-preview.js166function formatPreviewHostWithPort(host, port, defaultPort) {CODE
LOWpackage/timps/files/www/a/timps-preview.js178function markPreviewEndpointCopied(link) {CODE
LOWpackage/timps/files/www/a/timps-preview.js278function updatePreviewEndpointState(msg) {CODE
LOWpackage/prudynt-t/files/www/a/config-rtsp.js58 function updatePasswordFieldVisibility() {CODE
LOWpackage/prudynt-t/files/www/a/streamer-config.js233 async function detectSocAndPopulateModes() {CODE
LOW…/thingino-daynightd/files/www/a/config-photosensing.js56 function disablePhotosensingInputs() {CODE
LOW…/thingino-daynightd/files/www/a/config-photosensing.js227 async function saveDaynightScheduleParam(param) {CODE
LOWpackage/thingino-motors/files/www/a/preview-motors.js17function normalizePreviewControlMode(value) {CODE
LOWpackage/thingino-motors/files/www/a/config-motors.js29 function normalizePreviewControlMode(value) {CODE
LOWpackage/thingino-gpio/files/www/a/config-gpio.js174 function createStartupIndicatorCard() {CODE
Excessive Try-Catch Wrapping32 hits · 32 pts
SeverityFileLineSnippetContext
MEDIUMscripts/sei-overlay.py497 print(f"Error: input file not found: {args.input}", file=sys.stderr)CODE
LOWscripts/save_partition_info.py24 except Exception:CODE
LOWscripts/update_packages.py366 except Exception as e:CODE
LOWscripts/update_packages.py386 except Exception as e:CODE
LOWscripts/update_packages.py401 except Exception as e:CODE
LOWscripts/update_packages.py431 except Exception as e:CODE
LOWscripts/update_packages.py512 except Exception as e:CODE
LOWscripts/update_packages.py679 except Exception as e:CODE
LOWscripts/update_packages.py697 except Exception as e:CODE
LOWscripts/update_packages.py701 except Exception:CODE
LOWscripts/update_packages.py728 except Exception as e:CODE
LOWscripts/update_packages.py809 except Exception:CODE
LOWscripts/update_packages.py933 except Exception as e:CODE
LOWscripts/update_packages.py952 except Exception as e:CODE
LOWscripts/update_packages.py956 except Exception:CODE
LOWscripts/update_packages.py1104 except Exception:CODE
LOWscripts/update_packages.py1219 except Exception as e:CODE
MEDIUM⚡scripts/sei-rtsp.py568 print("Error: choose exactly one of --display, --rtsp, --file.", file=sys.stderr)CODE
MEDIUMscripts/sei-rtsp.py621def extract_thread():CODE
LOWscripts/sei-rtsp.py628 except Exception:CODE
LOWscripts/update-packages.py157 except Exception:CODE
LOWscripts/update-packages.py251 except Exception as e:CODE
LOWscripts/qemu-test/qemutest/probes.py38 except Exception as e:CODE
LOWscripts/qemu-test/qemutest/driver.py57 except Exception:CODE
LOWscripts/qemu-test/qemutest/driver.py165 except Exception:CODE
LOWscripts/qemu-test/qemutest/driver.py181 except Exception:CODE
LOWscripts/qemu-test/qemutest/driver.py227 except Exception:CODE
LOWscripts/qemu-test/qemutest/driver.py235 except Exception:CODE
LOWscripts/qemu-test/qemutest/driver.py273 except Exception as e:CODE
MEDIUMscripts/qemu-test/qemutest/driver.py224def cleanup(sig=None, frame=None):CODE
LOWscripts/qemu-test/qemutest/suites/usb.py40 except Exception:CODE
LOWscripts/qemu-test/qemutest/suites/usb.py51 except Exception:CODE
Example Usage Blocks16 hits · 24 pts
SeverityFileLineSnippetContext
LOWbuild-container.sh7# Usage:COMMENT
LOWdocs/thingino/tools/snmp/thingino-snmp-monitor.sh9# Usage:COMMENT
LOWscripts/check-plugins.sh4# Usage:COMMENT
LOWscripts/cfg-backup.sh5# Usage:COMMENT
LOWscripts/worktree.sh7# Usage:COMMENT
LOWscripts/generate_uboot_patch.sh26# Usage:COMMENT
LOWscripts/stitcher.sh8# Usage:COMMENT
LOWscripts/check-busybox-lopts.sh14# Usage:COMMENT
LOWscripts/mediamtx.sh4# Usage:COMMENT
LOWscripts/user-push.sh30# Usage:COMMENT
LOWscripts/prosody-test.sh10# Usage:COMMENT
LOWscripts/check-do-not-edit.sh7# Usage:COMMENT
LOWscripts/go2rtc.sh4# Usage:COMMENT
LOWscripts/make-bundle.sh5# Usage:COMMENT
LOW⚡scripts/sei-rtsp-go2rtc/run.sh34# Usage:COMMENT
LOWscripts/tts/batch.sh3# Usage:COMMENT
Structural Annotation Overuse14 hits · 23 pts
SeverityFileLineSnippetContext
LOWdocs/dev/adding-kernel-4.4-camera.md16## Step 1: Verify SOC SupportCOMMENT
LOWdocs/dev/adding-kernel-4.4-camera.md124## Step 2: Create Camera-Specific FilesCOMMENT
LOWdocs/dev/adding-kernel-4.4-camera.md195## Step 3: Create Device Tree FileCOMMENT
LOWdocs/dev/adding-kernel-4.4-camera.md387## Step 4: GPIO Pin MappingCOMMENT
LOWdocs/dev/adding-kernel-4.4-camera.md428## Step 5: Verify Pinctrl OptionsCOMMENT
LOWdocs/dev/adding-kernel-4.4-camera.md444## Step 6: Build and TestCOMMENT
LOWdocs/dev/adding-kernel-4.4-camera.md481## Step 7: Testing on HardwareCOMMENT
LOWscripts/backup_overlay.sh24# Step 1: Get camera image nameCOMMENT
LOW⚡scripts/backup_overlay.sh44# Step 2: Build output filenameCOMMENT
LOW⚡scripts/backup_overlay.sh52# Step 3: Stream overlay tarball directly from camera via SSH.COMMENT
LOW⚡scripts/backup_overlay.sh62# Step 4: Verify the tarballCOMMENT
LOWpackage/prudynt-t/docs/REMOTE_DEBUGGING_MANUAL.md36### Step 1: Prepare Development EnvironmentCOMMENT
LOWpackage/prudynt-t/docs/REMOTE_DEBUGGING_MANUAL.md59### Step 2: Start GDBserver on CameraCOMMENT
LOWpackage/prudynt-t/docs/REMOTE_DEBUGGING_MANUAL.md76### Step 3: Connect from Development MachineCOMMENT
Self-Referential Comments6 hits · 18 pts
SeverityFileLineSnippetContext
MEDIUMscripts/update_packages.py272 # Create a stash with a descriptive messageCOMMENT
MEDIUMscripts/update_packages.py483 # Create the commitCOMMENT
MEDIUMscripts/rootfs_script.sh84# Create a temporary fileCOMMENT
MEDIUMscripts/menu/menu1-dev-sel.sh10# Define a function to read items from a directoryCOMMENT
MEDIUM.github/workflows/buildroot-dl-cache.yaml186 # Create the rolling release once; refresh its notes on later runs. Never mark it 'latest'.COMMENT
MEDIUMpackage/thingino-webui/files/www/x/session.sh22# Create a new sessionCOMMENT
Deep Nesting21 hits · 16 pts
SeverityFileLineSnippetContext
LOWscripts/sei-overlay.py46CODE
LOWscripts/sei-overlay.py310CODE
LOWscripts/sei-overlay.py390CODE
LOWscripts/sei-overlay.py448CODE
LOWscripts/update_packages.py374CODE
LOWscripts/update_packages.py611CODE
LOWscripts/update_packages.py814CODE
LOWscripts/update_packages.py1126CODE
LOWscripts/sei-rtsp.py526CODE
LOWscripts/sei-rtsp.py112CODE
LOWscripts/sei-rtsp.py245CODE
LOWscripts/backchannel-probe.py123CODE
LOWscripts/render_template.py58CODE
LOWscripts/qemu-test/qemutest/netlab.py236CODE
LOWscripts/qemu-test/qemutest/netlab.py296CODE
LOWscripts/qemu-test/qemutest/netlab.py442CODE
LOWscripts/qemu-test/qemutest/netlab.py540CODE
LOWscripts/qemu-test/qemutest/driver.py61CODE
LOWscripts/qemu-test/qemutest/report.py24CODE
LOWscripts/qemu-test/qemutest/suites/onvif.py8CODE
LOWpackage/thingino-webui/scripts/assemble_plugins.py87CODE
AI Slop Vocabulary5 hits · 12 pts
SeverityFileLineSnippetContext
LOW⚡scripts/sei-rtsp.py398 # Might be a fontconfig name – just pass throughCOMMENT
MEDIUMscripts/qemu-test/run.sh2# Run the QEMU test harness for a thingino test profile.COMMENT
MEDIUMscripts/qemu-test/run.sh4# Usage: run.sh <profile> [extra harness args...]COMMENT
MEDIUMscripts/qemu-test/qemutest/netlab.py395# the RA default route well inside the harness poll window (a 30sCOMMENT
MEDIUMpackage/prudynt-t/scripts/prudynt-debug-helper.sh269 echo " $0 manual # Show comprehensive debugging manual"CODE
Unused Imports10 hits · 9 pts
SeverityFileLineSnippetContext
LOWscripts/sei-overlay.py30CODE
LOWscripts/save_partition_info.py6CODE
LOWscripts/update_packages.py12CODE
LOWscripts/update_package_inventory.py3CODE
LOWscripts/render_template.py21CODE
LOWscripts/render_template.py24CODE
LOWscripts/tts/kokoro/modules.py5CODE
LOWpackage/thingino-webui/scripts/assemble_plugins.py15CODE
LOWpackage/thingino-secureboop/ingenic_t31_spl_patcher.py18CODE
LOWpackage/thingino-secureboop/ingenic_bootrom_patcher.py70CODE
Verbosity Indicators4 hits · 8 pts
SeverityFileLineSnippetContext
LOWscripts/backup_overlay.sh24# Step 1: Get camera image nameCOMMENT
LOW⚡scripts/backup_overlay.sh44# Step 2: Build output filenameCOMMENT
LOW⚡scripts/backup_overlay.sh52# Step 3: Stream overlay tarball directly from camera via SSH.COMMENT
LOW⚡scripts/backup_overlay.sh62# Step 4: Verify the tarballCOMMENT
Magic Placeholder Names1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHpackage/thingino-webui/AUTHENTICATION.md161curl -H "X-API-Key: YOUR_API_KEY" http://CAMERA_IP/x/ch0.jpg -o snapshot.jpgCODE
AI Structural Patterns2 hits · 2 pts
SeverityFileLineSnippetContext
LOWscripts/update-packages.py123CODE
LOWscripts/tts/kokoro/istftnet.py376CODE
Fake / Example Data1 hit · 1 pts
SeverityFileLineSnippetContext
LOWpackage/thingino-webui/files/www/tool-send2-email.html90 <input type="email" class="form-control" id="email_to_address" name="email_to_address" placeholder="adCODE