AI Slop Code Risk Monitor

libretro/RetroArch

SlopCodeMonitor badge for libretro/RetroArch Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.

2.7 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for libretro/RetroArch, a C project with 14,497 GitHub stars. SynthScan examined 2,814,665 lines of code across 5333 source files, recording 7394 pattern matches distributed across 19 syntactic categories. The legacy adjusted pattern signal is 2.7 (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.

2.7
Adjusted Signal
2.7
Raw Pattern Score
100%
Time Factor
2026-10-31
Last Push
14.5K
Stars
C
Language
2.8M
Lines of Code
5.3K
Files
7.4K
Pattern Hits
2026-10-31
Scan Date
0.04
HC Hit Rate

Risk Review · Payload v1

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

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 10.3/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 2.2/100 · LOW

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

Agent Over-Engineering Ratio 0.5/100 · LOW

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

PR Review Velocity Impact 14.7/100 · LOW

Which changes need focused human review? 7394 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 1HIGH 218MEDIUM 232LOW 6943

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 7394 distinct pattern matches across 19 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.

Over-Commented Block6700 hits · 5378 pts
SeverityFileLineSnippetContext
LOWconfig.def.h21#include <boolean.h>COMMENT
LOWconfig.def.h41#if defined(_3DS)COMMENT
LOWconfig.def.h61COMMENT
LOWconfig.def.h81#if defined(RARCH_MOBILE)COMMENT
LOWconfig.def.h101 * we need to extract to a user-writable directory on first boot.COMMENT
LOWconfig.def.h201#define DEFAULT_ACCESSIBILITY_NARRATOR_SPEECH_SPEED 5COMMENT
LOWconfig.def.h221#define DEFAULT_MOUSE_ENABLE trueCOMMENT
LOWconfig.def.h321#define DEFAULT_WINDOW_SAVE_POSITIONS falseCOMMENT
LOWconfig.def.h341#define DEFAULT_WINDOW_HEIGHT 720COMMENT
LOWconfig.def.h361COMMENT
LOWconfig.def.h421#define DEFAULT_MAX_SWAPCHAIN_IMAGES 3COMMENT
LOWconfig.def.h721#elif defined(RARCH_CONSOLE)COMMENT
LOWconfig.def.h761#define DEFAULT_CORE_SUGGEST_ALWAYS falseCOMMENT
LOWconfig.def.h781COMMENT
LOWconfig.def.h801COMMENT
LOWconfig.def.h821#define DEFAULT_INPUT_OVERLAY_MOUSE_SPEED 1.0fCOMMENT
LOWconfig.def.h841#include "menu/menu_defines.h"COMMENT
LOWconfig.def.h861#define DEFAULT_OZONE_FONT_SCALE_FACTOR_TITLE 1.0fCOMMENT
LOWconfig.def.h881#define DEFAULT_SETTINGS_SHOW_SAVING trueCOMMENT
LOWconfig.def.h901#define DEFAULT_QUICK_MENU_SHOW_CLOSE_CONTENT trueCOMMENT
LOWconfig.def.h921#define DEFAULT_QUICK_MENU_SHOW_INFORMATION trueCOMMENT
LOWconfig.def.h941#define DEFAULT_MENU_SHOW_EJECT_DISC trueCOMMENT
LOWconfig.def.h961#ifdef HAVE_MISTCOMMENT
LOWconfig.def.h1001#define DEFAULT_MENU_SCREENSAVER_ANIMATION MENU_SCREENSAVER_BLANKCOMMENT
LOWconfig.def.h1021#if defined(_3DS)COMMENT
LOWconfig.def.h1041#define DEFAULT_XMB_VERTICAL_FADE_FACTOR 100COMMENT
LOWconfig.def.h1061#define DEFAULT_XMB_THEME XMB_THEME_ELECTRIC_BLUECOMMENT
LOWconfig.def.h1081#define DEFAULT_SHOW_ADVANCED_SETTINGS trueCOMMENT
LOWconfig.def.h1101#define DEFAULT_RGUI_PARTICLE_EFFECT RGUI_PARTICLE_EFFECT_NONECOMMENT
LOWconfig.def.h1121#define DEFAULT_SORT_SAVEFILES_ENABLE trueCOMMENT
LOWconfig.def.h1141#define DEFAULT_MENU_TOGGLE_GAMEPAD_COMBO INPUT_COMBO_DOWN_Y_L_RCOMMENT
LOWconfig.def.h1161#define DEFAULT_OVERLAY_SHOW_INPUTS OVERLAY_SHOW_INPUT_TOUCHEDCOMMENT
LOWconfig.def.h1181COMMENT
LOWconfig.def.h1201#elif defined(PS2)COMMENT
LOWconfig.def.h1281#define DEFAULT_REFRESH_RATE (60 / 1.001f)COMMENT
LOWconfig.def.h1301#define DEFAULT_BOTTOM_FONT_COLOR 255COMMENT
LOWconfig.def.h1321#define DEFAULT_AUDIO_ENABLE_MENU_BGM falseCOMMENT
LOWconfig.def.h1401#define DEFAULT_NOTIFICATION_SHOW_NETPLAY_EXTRA falseCOMMENT
LOWconfig.def.h1501/* Default audio volume of the audio mixer in dB. (0.0 dB == unity gain). */COMMENT
LOWconfig.def.h1741/* Default to disabled on I/O-constrained platforms */COMMENT
LOWconfig.def.h1761#define DEFAULT_SAVESTATE_FILE_COMPRESSION trueCOMMENT
LOWconfig.def.h1821COMMENT
LOWconfig.def.h1961#define DEFAULT_ANALOG_OUTER_DEADZONE 0.0fCOMMENT
LOWconfig.def.h1981#if defined(ANDROID)COMMENT
LOWconfig.def.h2021#elseCOMMENT
LOWconfig.def.h2041#elseCOMMENT
LOWconfig.def.h2061#define DEFAULT_MENU_ICON_THUMBNAILS_DEFAULT 0COMMENT
LOWconfig.def.h2081COMMENT
LOWconfig.def.h2101#define DEFAULT_DESKTOP_MENU_SUGGEST_LOADED_CORE_FIRST falseCOMMENT
LOWconfig.def.h2121#define DEFAULT_CONTENT_RUNTIME_LOG falseCOMMENT
LOWconfig.def.h2141#if defined(_WIN32) && !defined(_XBOX) && !defined(__WINRT__)COMMENT
LOWconfig.def.h2161#if defined(ANDROID) || TARGET_OS_IPHONECOMMENT
LOWconfig.def.h2181#ifdef HAVE_VULKANCOMMENT
LOWconfig.def.h2201COMMENT
LOWconfig.def.h2221#elif defined(ANDROID_X86)COMMENT
LOWconfig.def.h2241#elif defined(__aarch64__)COMMENT
LOWconfig.def.h2261#endifCOMMENT
LOWconfig.def.h2281#elif _MSC_VER == 1310COMMENT
LOWconfig.def.h2301#define DEFAULT_BUILDBOT_SERVER_URL "http://buildbot.libretro.com/nightly/linux/armhf/latest/"COMMENT
LOWconfig.def.h2321#define DEFAULT_DISCORD_APP_ID "475456035851599874"COMMENT
6640 more matches not shown…
Cross-Language Confusion198 hits · 1215 pts
SeverityFileLineSnippetContext
HIGH⚡tools/settings_migrate_group.py833r = run("cd intl && python3 h2json.py msg_hash_us.h")STRING
HIGH⚡tools/settings_migrate_group.py836run("rm -rf /tmp/base && mkdir -p /tmp/base/intl /tmp/base/settings")STRING
HIGH⚡tools/settings_migrate_group.py840run("cd /tmp/base/intl && python3 h2json.py msg_hash_us.h")STRING
HIGHtools/stack_chain.py43 mkdir ci && cd ciSTRING
HIGHtools/ci_apt_check.py52 command -v x || sudo apt-get install -y -qq xCODE
HIGHtools/ci_apt_check.py70 'command -v x || sudo apt-get install -y -qq x']STRING
HIGHtools/msg_hash_name_harness.py152 put_escaped(s ? s : "(null)");CODE
HIGHtools/test_video_decode_interface.py44 assert(old.iface.open && old.iface.decode && old.iface.drain && old.iface.close);CODE
HIGHtools/test_video_decode_interface.py47 assert(current.decode_ex && current.drain_ex && current.get_frame);CODE
HIGH⚡tools/test_video_decode_interface.py62 assert(*position+n<=end && n+4<65536);CODE
HIGH⚡tools/test_video_decode_interface.py70 result=iface->get_gpu_frame(decoder,&gpu);assert(result==2 && readbacks==before);CODE
HIGH⚡tools/test_video_decode_interface.py72 assert(result==1 && gpu.image && gpu.width && gpu.height && gpu.abandon);CODE
HIGH⚡tools/test_video_decode_interface.py74 assert(iface->get_gpu_frame(decoder,&duplicate)==-1 && readbacks==before);CODE
HIGHtools/test_video_decode_interface.py104 assert(iface.get_frame==NULL || iface.get_frame(decoder,&frame)==-1);CODE
HIGHtools/test_video_decode_interface.py114 assert(n>0 && pos+n<=packet.size && au_size+n+4<1024*1024);CODE
HIGH⚡tools/test_video_decode_interface.py126 assert(result==0 || result==1);CODE
HIGH⚡tools/test_video_decode_interface.py130 assert(!frame.planes[0] && frame.width && frame.height && frame.hardware);CODE
HIGH⚡tools/test_video_decode_interface.py134 assert(iface.get_frame(decoder,&frame)==1 && readbacks==before+1);CODE
HIGH⚡tools/test_video_decode_interface.py157 assert(iface.get_frame(decoder,&frame)==1 && readbacks==before+1);CODE
HIGH⚡tools/test_video_decode_interface.py160 assert((deferred==2 || frame.planes[0]) && frame.hardware);shown++;CODE
HIGH⚡tools/test_video_decode_interface.py166 assert(!fake.errors && readbacks==(deferred==2?0:shown));CODE
HIGHtools/test_video_decode_interface.py177 gpu=decode_stream(argv[1],2);assert(eager==deferred && eager==gpu && eager==24);CODE
HIGHtools/ci_local.py1674 ("github.event.pull_request.number || github.ref", 'refs/heads/master'),CODE
HIGHtools/ci_local.py1676 ("matrix.n == '' && 15 || 40", 40.0),CODE
HIGHtools/ci_local.py1718 test "${{ matrix.a }}" = x || test "${{ matrix.extra }}" = moreCODE
HIGH⚡tools/gen_lbl_str.py82 self.push('defined(%s)' % s[7:].strip())CODE
HIGH⚡tools/gen_lbl_str.py84 self.push('!defined(%s)' % s[8:].strip())CODE
HIGH⚡tools/gen_lbl_str.py86 self.push(s[4:].strip())CODE
HIGHsamples/menu/entry_alloc/run.py15 end = s.index(' if (mlist && mlist->size)', start)CODE
HIGHsamples/menu/entry_alloc/run.py59 assert(!continued && !live && list.size == 1);CODE
HIGHsamples/gfx/d3d_p010_import/hdr_reference.py78 ' if (r[0] == depth && r[1] == full && r[2] == transfer',CODE
HIGHsamples/gfx/d3d_p010_import/hdr_reference.py79 ' && r[3] == y && r[4] == u && r[5] == v)', ' {',CODE
HIGHsamples/gfx/dxgi_present/run.py40 reuse_start = frontend.index(" if (vk->dxgi_presenter && ra_vulkan_dxgi_resize(")CODE
HIGH⚡samples/gfx/display_servers/resolution_result_test.py184 assert(applies == (i == 0 || i == 5 || i == 6));CODE
HIGH⚡samples/gfx/display_servers/resolution_result_test.py186 if (i == 1) assert(!tests && enumerated == 3);CODE
HIGH⚡samples/gfx/display_servers/resolution_result_test.py189 assert(!serv.modes && current_modes[0].dmDisplayFrequency == 60);CODE
HIGHsamples/gfx/display_servers/resolution_result_test.py200 assert(serv.modes && serv.modes->next);CODE
HIGHsamples/gfx/display_servers/resolution_result_test.py240 assert(!serv.modes && current_modes[0].dmDisplayFrequency == 144);CODE
HIGHsamples/gfx/display_servers/resolution_result_test.py267 assert(applies == (i == 0 || i == 5));CODE
HIGHsamples/gfx/display_servers/resolution_result_test.py309 assert(lease && current_modes[0].dmDisplayFrequency == 120);CODE
HIGHsamples/gfx/display_servers/resolution_result_test.py313 assert(!serv.modes && current_modes[0].dmDisplayFrequency == 75);CODE
HIGH⚡samples/gfx/display_servers/error_scope_test.py56 assert(trapped.xerrors == 2 && forwarded == 0);CODE
HIGH⚡samples/gfx/display_servers/error_scope_test.py58 assert(trapped.xerrors == 2 && forwarded == 1);CODE
HIGH⚡samples/gfx/display_servers/error_scope_test.py60 assert(x11_ml_error_handler(&own, &error) == 17 && forwarded == 2);CODE
HIGH⚡samples/gfx/display_servers/error_scope_test.py62 assert(x11_ml_error_handler(&other, &error) == 0 && forwarded == 2);CODE
HIGHsamples/gfx/display_servers/x11_refresh_lease_test.py103{ (void)d; (void)r; return o >= 10 && o <= 12 && !disconnected ? &output_info[o-10] : NULL; }CODE
HIGHsamples/gfx/display_servers/x11_refresh_lease_test.py106{ (void)d; (void)r; return c >= 100 && c <= 101 ? &heads[c-100] : NULL; }CODE
HIGHsamples/gfx/display_servers/x11_refresh_lease_test.py142 assert(head->x == x && head->y == y && head->rotation == rotation);CODE
HIGHsamples/gfx/display_servers/x11_refresh_lease_test.py143 assert(count == head->noutput && out == head->outputs);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py212 assert(owner_updates==2 && owner_changed && !video_driver_st.window_refresh_known);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py215 assert(owner_updates==3 && !owner_changed && video_driver_st.window_refresh_known);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py218 assert(owner_updates==4 && owner_changed && !video_media_refresh_output_changed);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py220 assert(owner_updates==4 && owner_resets==1);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py260 assert(lease && heads[0].mode==2 && heads[1].mode==1 && calls==1);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py268 assert(heads[0].mode==1 && heads[1].mode==1 && calls==2 && allocations==0);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py270 assert(lease && lease->crtc==101 && heads[0].mode==1 && heads[1].mode==2);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py272 assert(heads[0].mode==1 && heads[1].mode==1);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py274 assert(lease && heads[0].mode==4);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py280 assert(heads[0].mode==3 && calls==1);CODE
HIGH⚡samples/gfx/display_servers/x11_refresh_lease_test.py284 assert(heads[0].mode==2 && calls==1);CODE
138 more matches not shown…
AI Slop Vocabulary181 hits · 570 pts
SeverityFileLineSnippetContext
MEDIUMtools/settings_migrate_group.py705 # and the session harness and are exercised on real migrations.STRING
MEDIUMtools/companion_cocoa_test_macos.sh2# The Cocoa companion harness on a real Mac: the sameCOMMENT
MEDIUMtools/companion_cocoa_test.sh2# Regression harness for the Cocoa companion, on Linux: the realCOMMENT
MEDIUMtools/call_arity_check.py138 # A harness stub deliberately declares a platform function with aCOMMENT
MEDIUMtools/libretro-common-link-check.sh2# Builds every sample and tool harness in the tree that compiles a givenCOMMENT
MEDIUMtools/companion_win32_test.sh2# Regression harness for the Win32 companion, on Linux: the realCOMMENT
MEDIUMtools/companion_win32_test.sh65# on stderr is dropped; the harness prints to stdout.COMMENT
MEDIUMlibretro-db/samples/libretrodb/sweep.sh11# holding .rdb files and the matching harness sources adds theCOMMENT
MEDIUMsamples/settings/verbosity_toggle/build.sh2# Builds the menu verbosity-toggle transition harness.COMMENT
MEDIUMsamples/settings/verbosity_toggle/build.sh19# retroarch.c is recompiled here with main renamed, so the harness canCOMMENT
MEDIUMsamples/settings/verbosity_toggle/build.sh22# own command lines, taken from make -n, so the harness cannot driftCOMMENT
MEDIUMsamples/settings/verbosity_toggle/build.sh49# way, once for the harness itself, so both are built exactly the wayCOMMENT
MEDIUMsamples/settings/packed_rows/build.sh2# Builds the menu packed-row settings harness.COMMENT
MEDIUMsamples/settings/packed_rows/build.sh17# retroarch.c is recompiled here with main renamed, so the harness canCOMMENT
MEDIUMsamples/settings/packed_rows/build.sh20# own command lines, taken from make -n, so the harness cannot driftCOMMENT
MEDIUMsamples/settings/packed_rows/build.sh47# way, once for the harness itself, so both are built exactly the wayCOMMENT
MEDIUMsamples/tasks/exit_drain/build.sh2# Builds the exit-path task-drain harness.COMMENT
MEDIUMsamples/tasks/exit_drain/build.sh19# retroarch.c is recompiled here with main renamed, so the harness canCOMMENT
MEDIUMsamples/tasks/exit_drain/build.sh22# own command lines, taken from make -n, so the harness cannot driftCOMMENT
MEDIUMsamples/tasks/exit_drain/build.sh49# way, once for the harness itself, so both are built exactly the wayCOMMENT
MEDIUMsamples/tasks/content_load/build.sh2# Builds the staged content load harness.COMMENT
MEDIUMsamples/tasks/content_load/build.sh8# The harness is meant to run under a sanitizer, so the build it linksCOMMENT
MEDIUMsamples/tasks/content_load/build.sh20# from make -n, so the harness cannot drift from how the program isCOMMENT
MEDIUMsamples/tasks/content_load/build.sh67# The harness core: a plain shared library, no sanitizer, so that whatCOMMENT
MEDIUMsamples/runloop/frontend_overhead/build.sh2# Builds the frontend-overhead harness.COMMENT
MEDIUMsamples/runloop/frontend_overhead/build.sh8# The harness is meant to run under a sanitizer, so the build it linksCOMMENT
MEDIUMsamples/runloop/frontend_overhead/build.sh20# from make -n, so the harness cannot drift from how the program isCOMMENT
MEDIUMsamples/runloop/frontend_overhead/build.sh67# The harness core: a plain shared library, no sanitizer, so that whatCOMMENT
MEDIUMsamples/runloop/cloudsync_unload/build.sh2# Builds the cloud sync unload harness.COMMENT
MEDIUMsamples/runloop/cloudsync_unload/build.sh6# task_push_cloud_sync, so the harness sees each sync the frontendCOMMENT
MEDIUMsamples/runloop/content_closing/build.sh2# Builds the menu playlist navigation harness.COMMENT
MEDIUMsamples/runloop/content_closing/build.sh20# retroarch.c is recompiled here with main renamed, so the harness canCOMMENT
MEDIUMsamples/runloop/content_closing/build.sh23# own command lines, taken from make -n, so the harness cannot driftCOMMENT
MEDIUMsamples/runloop/content_closing/build.sh50# way, once for the harness itself, so both are built exactly the wayCOMMENT
MEDIUMsamples/frontend/log_atomicity/build.sh2# Builds the concurrent log-line integrity harness.COMMENT
MEDIUMsamples/frontend/log_atomicity/build.sh19# retroarch.c is recompiled here with main renamed, so the harness canCOMMENT
MEDIUMsamples/frontend/log_atomicity/build.sh22# own command lines, taken from make -n, so the harness cannot driftCOMMENT
MEDIUMsamples/frontend/log_atomicity/build.sh49# way, once for the harness itself, so both are built exactly the wayCOMMENT
MEDIUMsamples/frontend/logger_macros/build.sh2# Logger-macro capture harness: compiles verbosity.h under the fourCOMMENT
MEDIUMsamples/openxr/e2e/test_run.py11# Under another name: run.py imports the views harness's run module.COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh17# fragment grep is both correct and robust, where a whole-lineCOMMENT
MEDIUMsamples/network/command_frames/build.sh49# The harness core: a plain shared library, no sanitizer, so that whatCOMMENT
MEDIUMsamples/audio/mixer_retirement/build.sh2# Builds the mixer add-stream init-window harness.COMMENT
MEDIUMsamples/audio/mixer_retirement/build.sh19# retroarch.c is recompiled here with main renamed, so the harness canCOMMENT
MEDIUMsamples/audio/mixer_retirement/build.sh22# own command lines, taken from make -n, so the harness cannot driftCOMMENT
MEDIUMsamples/audio/mixer_retirement/build.sh49# way, once for the harness itself, so both are built exactly the wayCOMMENT
MEDIUMsamples/menu/monitor_index/build.sh2# Builds the Monitor Index dropdown harness.COMMENT
MEDIUMsamples/menu/monitor_index/build.sh17# taken from make -n, so the harness cannot drift away from how theCOMMENT
MEDIUMsamples/menu/playlists_scan/build.sh2# Builds the Playlists-tab Scan harness.COMMENT
MEDIUMsamples/menu/playlists_scan/build.sh15# retroarch.c is recompiled here with main renamed, so the harness canCOMMENT
MEDIUMsamples/menu/playlists_scan/build.sh18# own command lines, taken from make -n, so the harness cannot driftCOMMENT
MEDIUMsamples/menu/playlists_scan/build.sh46# way, once for the harness itself, so both are built exactly the wayCOMMENT
MEDIUMsamples/menu/ozone_sublabel_scroll/build.sh2# Builds the ozone sublabel scroll harness.COMMENT
MEDIUMsamples/menu/ozone_sublabel_scroll/build.sh5# built RetroArch with only main() replaced. The harness alsoCOMMENT
MEDIUMsamples/menu/core_info_page/build.sh2# Builds the core info page harness.COMMENT
MEDIUMsamples/menu/core_info_page/build.sh44# rarch_main() with the application up; the harness keeps that mainCOMMENT
MEDIUMsamples/menu/core_info_page/build.sh46# Elsewhere main() is retroarch.c's and the harness's own replaces it.COMMENT
MEDIUMsamples/menu/mouse_click/build.sh2# Builds the menu mouse harness.COMMENT
MEDIUMsamples/menu/mouse_click/build.sh17# retroarch.c is recompiled here with main renamed, so the harness canCOMMENT
MEDIUMsamples/menu/mouse_click/build.sh20# own command lines, taken from make -n, so the harness cannot driftCOMMENT
121 more matches not shown…
Deep Nesting157 hits · 142 pts
SeverityFileLineSnippetContext
LOWtools/rslc-hlsl-check.py38CODE
LOWtools/rslc-hlsl-check.py96CODE
LOWtools/settings_migrate_group.py99CODE
LOWtools/settings_migrate_group.py270CODE
LOWtools/rslc-corpus-check.py41CODE
LOWtools/rslc-corpus-check.py158CODE
LOWtools/cg2glsl.py45CODE
LOWtools/cg2glsl.py127CODE
LOWtools/cg2glsl.py323CODE
LOWtools/cg2glsl.py361CODE
LOWtools/cg2glsl.py651CODE
LOWtools/rslc-glsl-check.py42CODE
LOWtools/ci_apt_check.py27CODE
LOWtools/msg_hash_name_harness.py34CODE
LOWtools/packed_field_check.py27CODE
LOWtools/packed_field_check.py48CODE
LOWtools/packed_field_check.py60CODE
LOWtools/rslc-cafe-check.py47CODE
LOWtools/wdmks_abi_guids.py79CODE
LOWtools/call_arity_check.py43CODE
LOWtools/call_arity_check.py73CODE
LOWtools/call_arity_check.py88CODE
LOWtools/call_arity_check.py104CODE
LOWtools/ci_local.py109CODE
LOWtools/ci_local.py1551CODE
LOWtools/ci_local.py1911CODE
LOWtools/ci_local.py190CODE
LOWtools/ci_local.py323CODE
LOWtools/ci_local.py340CODE
LOWtools/ci_local.py395CODE
LOWtools/ci_local.py444CODE
LOWtools/ci_local.py484CODE
LOWtools/ci_local.py670CODE
LOWtools/ci_local.py709CODE
LOWtools/ci_local.py1470CODE
LOWtools/stack_budget.py311CODE
LOWtools/thread_read_audit.py180CODE
LOWtools/thread_read_audit.py221CODE
LOWtools/thread_read_audit.py363CODE
LOWtools/thread_read_audit.py396CODE
LOWtools/rslc-census.py120CODE
LOWtools/rslc-census.py280CODE
LOWtools/gen_lbl_str.py226CODE
LOWtools/gen_lbl_str.py79CODE
LOWtools/viewport_shadow_check.py41CODE
LOWtools/viewport_shadow_check.py70CODE
LOWtools/bitmapfont_convert.py59CODE
LOWtools/bitmapfont_convert.py85CODE
LOWtools/rslc-pp-check.py35CODE
LOWtools/rslc-pp-check.py87CODE
LOWtools/android_elf_alignment.py64CODE
LOWtools/ra_stress.py869CODE
LOWtools/ra_stress.py685CODE
LOWtools/vulkan_loader_generator.py11CODE
LOWintl/json2h.py36CODE
LOWintl/json2h.py236CODE
LOWintl/json2h.py272CODE
LOWintl/json2h.py293CODE
LOWintl/json2h.py338CODE
LOWintl/json2h.py43CODE
97 more matches not shown…
Decorative Section Separators45 hits · 135 pts
SeverityFileLineSnippetContext
MEDIUMtools/ci_local.py49# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py51# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py513# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py515# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py816# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py818# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py1018# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py1020# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py1439# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py1441# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py1620# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py1622# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ci_local.py1909# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py324# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py326# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py392# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py394# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py512# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py514# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py743# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py745# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py786# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py788# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py865# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py867# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py914# --------------------------------------------------------------------------COMMENT
MEDIUMtools/ra_stress.py916# --------------------------------------------------------------------------COMMENT
MEDIUMintl/json2h.py209# ---------------------------------------------------------------------------COMMENT
MEDIUMintl/json2h.py232# ---------------------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh110# ---------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh133# ---------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh142# ---------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh159# ---------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh170# ---------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh179# ---------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh191# ---------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh211# ---------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh266# ---------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh311# ---------------------------------------------------------------COMMENT
MEDIUMsamples/input/test_input/test_autoconf.sh376# ---------------------------------------------------------------COMMENT
MEDIUM.github/workflows/Apple.yml28 # ------------------------------------------------------------------COMMENT
MEDIUM.github/workflows/Apple.yml56 # ------------------------------------------------------------------COMMENT
MEDIUM.github/workflows/Apple.yml128 # ------------------------------------------------------------------COMMENT
MEDIUM.github/workflows/Apple.yml133 # ------------------------------------------------------------------COMMENT
MEDIUM…ns/example_translation/intl/core_option_translation.py487 # ------------------------------------------------------------------------------------COMMENT
Empty Error Handlers17 hits · 85 pts
SeverityFileLineSnippetContext
HIGHtools/rslc-hlsl-check.py85except OSError:CODE
HIGHtools/packed_field_check.py79except OSError:CODE
HIGHtools/call_arity_check.py134except OSError:CODE
HIGHtools/ci_local.py1195except (Unresolved, ExprError):CODE
HIGHtools/ci_local.py1354except (OSError, subprocess.TimeoutExpired):CODE
HIGHtools/stack_budget.py216except ValueError:CODE
HIGHtools/sublabel_map_check.py117except ValueError:CODE
HIGHtools/msvc2005_dialog_check.py50except AssertionError:CODE
HIGHsamples/openxr/e2e/run.py464except subprocess.TimeoutExpired:CODE
HIGHsamples/network/nfs_retro/fake_nfs42.py288except (EOFError, ConnectionError):CODE
HIGHsamples/network/cheevos_login/mock_ra_server.py76except (OSError, ssl.SSLError):CODE
HIGHsamples/network/cheevos_login/mock_ra_server.py81except OSError:CODE
HIGHsamples/gfx/menu_wine/swfb.py185except subprocess.TimeoutExpired:CODE
HIGHsamples/cores/video_views/e2e/run.py882except OSError:CODE
HIGHsamples/cores/video_views/e2e/run.py1069except subprocess.TimeoutExpired:CODE
HIGHlibretro-common/test/fuzz/relay.py16except OSError: passCODE
HIGHlibretro-common/test/fuzz/relay.py18except OSError: passCODE
Hyper-Verbose Identifiers32 hits · 32 pts
SeverityFileLineSnippetContext
LOWtools/settings_check_test.py42 def test_extract_keeps_call_order(self):CODE
LOWsamples/openxr/e2e/run.py852def check_tracked_recenter_eyes(res):CODE
LOWsamples/openxr/e2e/run.py860def check_tracked_recenter_paused(space, screens=True):CODE
LOWsamples/openxr/e2e/run.py935def check_tracked_runtime_recenter(res):CODE
LOWsamples/openxr/e2e/run.py1084def check_tracked_reinit_recentered(space):CODE
LOWsamples/openxr/e2e/run.py1114def check_tracked_reinit_resized(res):CODE
LOWsamples/openxr/e2e/run.py1136def check_tracked_recenter_unlocated(res):CODE
LOWsamples/openxr/e2e/run.py1143def check_tracked_reinit_paused(shown, space):CODE
LOWsamples/openxr/e2e/run.py2317def check_input_device_second(res):CODE
LOWsamples/openxr/e2e/run.py2370def check_input_hotkeys_separate(res):CODE
LOWsamples/openxr/e2e/run.py2478def check_input_sync_unfocused(res):CODE
LOWsamples/openxr/e2e/run.py3020def check_placement_follow_laser(res):CODE
LOWsamples/openxr/e2e/run.py3397def check_menu_click_rgui_views(res):CODE
LOWsamples/openxr/e2e/run.py4777def check_edit_release_moving(res):CODE
LOWsamples/openxr/e2e/run.py5135def check_edit_outlines_flush(res):CODE
LOWsamples/openxr/e2e/run.py8488def check_window_menu_overlay(res):CODE
LOWsamples/openxr/e2e/run.py8508def check_window_recenter_menu(res):CODE
LOWsamples/openxr/e2e/run.py8548def check_tracked_window_menu(res):CODE
LOWsamples/openxr/e2e/run.py8568def check_tracked_window_fallback(res):CODE
LOWsamples/openxr/e2e/run.py8594def check_tracked_flat_native(res):CODE
LOWsamples/gfx/drm_vkms_live/fetch_debs_test.py56 def test_stalled_mirror_uses_https_and_signed_index_hashes(self):STRING
LOWsamples/gfx/drm_vkms_live/fetch_debs_test.py69 def test_failed_or_bad_hash_download_fails(self):STRING
LOWsamples/gfx/drm_vkms_live/fetch_debs_test.py73 def test_missing_metadata_fails(self):STRING
LOWsamples/cores/video_views/e2e/test_wm_ready.py26 def test_waits_for_a_managed_client(self):CODE
LOWsamples/cores/video_views/e2e/test_wm_ready.py38 def test_identity_property_is_not_management(self):CODE
LOW⚡samples/cores/video_views/e2e/test_wm_ready.py51 def test_probe_timeout_releases_client(self):CODE
LOW⚡samples/cores/video_views/e2e/test_wm_ready.py58 def test_start_requires_probe_success(self):CODE
LOW⚡samples/cores/video_views/e2e/test_wm_ready.py68 def test_unresponsive_manager_is_released(self):CODE
LOWsamples/cores/video_views/e2e/test_wm_ready.py85 def test_exited_manager_cannot_borrow_readiness(self):CODE
LOWsamples/cores/video_views/e2e/test_wm_ready.py97 def test_exited_server_cannot_borrow_readiness(self):CODE
LOWsamples/cores/video_views/e2e/test_wm_ready.py111 def test_server_without_socket_is_killed_and_released(self):CODE
LOWpkg/emscripten/libretro-thread/libretro.worker.js24function handleNoReturnProxyFunction(func, args) {CODE
Excessive Try-Catch Wrapping20 hits · 23 pts
SeverityFileLineSnippetContext
LOWtools/cg2glsl.py691 except Exception as e:CODE
LOWtools/cg2glsl.py710 except Exception as e:CODE
MEDIUMtools/ci_local.py1494def add_file_text(self, path, via, depth):CODE
LOWtools/ci_local.py1859 except Exception as e:CODE
LOWtools/ci_local.py1878 except Exception as e:CODE
LOWtools/ci_local.py1897 except Exception as e:CODE
LOWtools/gen_lbl_str.py152 except Exception:CODE
LOWsamples/network/mcp_server/stdio_e2e.py227 except Exception:CODE
LOWsamples/cores/video_views/e2e/run.py1009 except Exception:CODE
LOWlibretro-common/tools/chd/chd_cd_test.py96 except Exception: mine=NoneCODE
MEDIUM…le_categories/conversion_scripts/v1_to_v2_converter.py413 print('An error occurred! Please make sure to use the complete v1 struct! (' + file + ')')CODE
MEDIUM…le_categories/conversion_scripts/v1_to_v2_converter.py418 print('Something went wrong with reading or writing files!')CODE
LOW…ions/example_translation/intl/crowdin_source_upload.py78 except Exception as e:CODE
LOW…/core_options/example_translation/intl/initial_sync.py87 except Exception as e:CODE
LOW…options/example_translation/intl/v1_to_v2_converter.py473 except Exception as e:CODE
LOW…ample_translation/intl/crowdin_translation_download.py78 except Exception as e:CODE
LOWlibretro-common/samples/net/rtmp/session_peer.py67 except Exception as error:CODE
LOWlibretro-common/samples/net/rtmp/session_peer.py95 except Exception:CODE
LOWlibretro-common/samples/net/rtmp/session_peer.py145 except Exception:CODE
MEDIUMlibretro-common/samples/net/rtmp/session_peer.py54def read_frames():CODE
Cross-File Repetition3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHlibretro-common/glsym/glgen.py0license statement applies to this file (xglgen.py) only. permission is hereby granted, free of charge, to any person obtSTRING
HIGHlibretro-common/glsym/rglgen.py0license statement applies to this file (xglgen.py) only. permission is hereby granted, free of charge, to any person obtSTRING
HIGHlibretro-common/glsym/xglgen.py0license statement applies to this file (xglgen.py) only. permission is hereby granted, free of charge, to any person obtSTRING
Unused Imports12 hits · 12 pts
SeverityFileLineSnippetContext
LOWtools/gen_d3d11_deferred_proxy.py5CODE
LOWtools/msg_hash_name_harness.py24CODE
LOWtools/msg_hash_name_harness.py57CODE
LOWtools/companion_gap_audit.py7CODE
LOWsamples/record/mediacodec_encode/draw_pixels.py4CODE
LOWsamples/record/mp4_mux/run.py5CODE
LOWsamples/network/nfs_retro/fake_nfs42.py19CODE
LOWsamples/gfx/menu_wine/run.py36CODE
LOWsamples/gfx/threaded_video/menu_framebuffer.py5CODE
LOWlibretro-common/glsym/glgen.py23CODE
LOWlibretro-common/glsym/xglgen.py23CODE
LOWlibretro-common/glsym/rglgen.py23CODE
Example Usage Blocks7 hits · 10 pts
SeverityFileLineSnippetContext
LOWtools/mingw_syntax_check.sh12# Usage:COMMENT
LOWtools/libretro-common-link-check.sh14# Usage:COMMENT
LOWtools/ci_configure_link_check.sh12# Usage:COMMENT
LOWtools/wiiu_syntax_check.sh13# Usage:COMMENT
LOW…input/test_input/testinput_device_reservation_test.cfg4# Usage:COMMENT
LOW…nput/test_input/testinput_device_reservation_test2.cfg4# Usage:COMMENT
LOW…/input/test_input/testinput_alternative_autoconfig.cfg4# Usage:COMMENT
Fake / Example Data8 hits · 10 pts
SeverityFileLineSnippetContext
LOWsamples/input/joypad_slots/joypad_slots_test.c121static const char *fake_name(void *data)CODE
LOWsamples/input/joypad_slots/joypad_slots_test.c133 fake_buttons, fake_axis, fake_name, NULL,CODE
LOW⚡libretro-common/test/string/test_stdstring.c182 "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam nec "CODE
LOW⚡libretro-common/test/string/test_stdstring.c182 "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam nec "CODE
LOW⚡libretro-common/test/string/test_stdstring.c191 "Lorem ipsum dolor sit amet, consectetur\n"CODE
LOW⚡libretro-common/test/string/test_stdstring.c191 "Lorem ipsum dolor sit amet, consectetur\n"CODE
LOW…ring/word_wrap_overflow_test/word_wrap_overflow_test.c81 "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam "CODE
LOW…ring/word_wrap_overflow_test/word_wrap_overflow_test.c81 "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam "CODE
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippetContext
CRITICAL…WebUploader.bundle/Contents/Resources/js/jquery.min.js4},a,b,arguments.length>1)},show:function(){return Wb(this,!0)},hide:function(){return Wb(this)},toggle:function(a){returCODE
Verbosity Indicators6 hits · 9 pts
SeverityFileLineSnippetContext
LOWui/drivers/cocoa/AppleTranslateBackend.swift845 // Step 1: Perform OCR (can run on background thread)COMMENT
LOWui/drivers/cocoa/AppleTranslateBackend.swift939 // Step 2: Translate if neededCOMMENT
LOWlibretro-common/vfs/vfs_implementation.c1996 /* We need to check if path is a directory */COMMENT
LOWlibretro-common/vfs/vfs_implementation.c2009 /* We need to check if path is a directory */COMMENT
LOWlibretro-common/vfs/vfs_implementation.c2021 /* We need to check if path is a directory */COMMENT
LOWlibretro-common/vfs/vfs_implementation.c2032 /* We need to check if path is a directory */COMMENT
Modern AI Meta-Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/Linux-samples-audio.yml1049 # and event-driven, one period per endpoint buffer, every periodCOMMENT
MEDIUM.github/workflows/scripts/hot-function-budget.sh19# runloop_iterate the frame's orchestrationCOMMENT
Structural Annotation Overuse2 hits · 3 pts
SeverityFileLineSnippetContext
LOWui/drivers/cocoa/AppleTranslateBackend.swift845 // Step 1: Perform OCR (can run on background thread)COMMENT
LOWui/drivers/cocoa/AppleTranslateBackend.swift939 // Step 2: Translate if neededCOMMENT
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOWqb/qb.init.sh70# Check if the next argument starts with a dashCOMMENT
AI Structural Patterns1 hit · 1 pts
SeverityFileLineSnippetContext
LOW…ns/example_translation/intl/core_option_translation.py438CODE
Overly Generic Function Names1 hit · 0 pts
SeverityFileLineSnippetContext
LOWsamples/gfx/slang_hdr_bindings/output_state.py132def helper(name):STRING