Sunshine fork: an enhanced sunshine, a self-hosted game streaming host for Moonlight with HDR10/HDR Vivid, virtual displays, advanced audio, optimized encoders, and a modern control panel.
This report summarizes scanner evidence for AlkaidLab/foundation-sunshine, a C++ project with 7,571 GitHub stars. SynthScan examined 305,516 lines of code across 1068 source files, recording 536 pattern matches distributed across 13 syntactic categories. The legacy adjusted pattern signal is 2.0 (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.
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.
Can maintainers explain intent, assumptions, and trade-offs? 494 finding(s).
Are imports declared and package/API names verified? 21 finding(s).
Are wrappers, guards, and repeated structures necessary? 82 finding(s).
Which changes need focused human review? 536 finding(s).
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.
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.
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.
The scanner identified 536 distinct pattern matches across 13 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.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/vtouch_poc.cpp | 41 | #define _UNICODE | COMMENT |
| LOW | tools/qiin-tabtip.cpp | 1 | /** | COMMENT |
| LOW | tools/audio.cpp | 1 | /** | COMMENT |
| LOW | tools/sunshinesvc.cpp | 1 | /** | COMMENT |
| LOW | tools/test_args.cpp | 1 | /** | COMMENT |
| LOW | tools/test_args.cpp | 21 | #include <cstring> | COMMENT |
| LOW | tools/vdd_frame_channel_probe.cpp | 1 | #define WIN32_LEAN_AND_MEAN | COMMENT |
| LOW | tools/mat-capture/position_cache.h | 1 | #pragma once | COMMENT |
| LOW | tools/mat-capture/quantum_v4_assembler.h | 1 | #pragma once | COMMENT |
| LOW | tools/mat-live/publisher.h | 1 | #pragma once | COMMENT |
| LOW | tools/mat-live/live_check.cpp | 1 | // Real native pipe only. No file input, generated source, audio device changes, | COMMENT |
| LOW | tools/sonic-mat-live/bridge.h | 1 | #pragma once | COMMENT |
| LOW | tools/sonic-mat-live/plugin_tap.cpp | 1 | // Reuse the native-validated paired pre-submit/lifecycle recorder unchanged. | COMMENT |
| LOW | tools/sonic-mat-live/components.h | 1 | #pragma once | COMMENT |
| LOW | tools/sonic-mat-live/spatial_probe.cpp | 1 | #define NOMINMAX | COMMENT |
| LOW | tests/unit/test_ds5_config.cpp | 1 | /** | COMMENT |
| LOW | tests/unit/test_webhook_auth.cpp | 1 | /** | COMMENT |
| LOW | tests/unit/test_remote_usb_host_controller.cpp | 1 | /** | COMMENT |
| LOW | tests/unit/test_pyrowave.cpp | 1 | /** | COMMENT |
| LOW | tests/unit/test_pairing_policy.cpp | 1 | #include <filesystem> | COMMENT |
| LOW | tests/unit/test_image_enhancement_config.cpp | 1 | /** | COMMENT |
| LOW | tests/unit/test_authored_ir.cpp | 1 | #include <algorithm> | COMMENT |
| LOW | tests/unit/test_loopback_usbip_bridge.cpp | 1 | /** | COMMENT |
| LOW | tests/unit/test_client_fingerprint.cpp | 1 | /** | COMMENT |
| LOW | tests/unit/test_file_mapping_ws_network.cpp | 1 | /** | COMMENT |
| LOW | tests/unit/test_crypto.cpp | 1 | /** | COMMENT |
| LOW | tests/unit/test_dlssnr_nvenc.cpp | 1 | /** SPDX-License-Identifier: GPL-3.0-only | COMMENT |
| LOW | tests/unit/test_confighttp_routes.cpp | 1 | /** | COMMENT |
| LOW | tests/unit/platform/windows/test_nvprefs.cpp | 1 | /** @file test_nvprefs.cpp | COMMENT |
| LOW | tests/unit/platform/windows/test_hdr_encoding.cpp | 1 | #include <gtest/gtest.h> | COMMENT |
| LOW | tests/tools/test_beast_http.cpp | 1 | /** | COMMENT |
| LOW | tests/tools/controller_handoff_probe.py | 21 | reset_handler = source[start:source.index(" class deinit_t", start)] | COMMENT |
| LOW | tests/tools/test_webhook_transport.cpp | 1 | /** | COMMENT |
| LOW | tests/tools/vmouse_send_diag.cpp | 1 | #define WIN32_LEAN_AND_MEAN | COMMENT |
| LOW | tests/tools/reverse_tunnel_probe.cpp | 1 | // Standalone driver for the production tunnel service. The synthetic helper | COMMENT |
| LOW | tests/tools/test_http_safety.cpp | 1 | /** | COMMENT |
| LOW | tests/tools/vmouse_probe.cpp | 1 | #define WIN32_LEAN_AND_MEAN | COMMENT |
| LOW | tests/mat-live/live_session_client.c | 1 | /* Full production LiStartConnection + native MAT callbacks + H.264 decoding. | COMMENT |
| LOW | .github/workflows/main.yml | 361 | with: | COMMENT |
| LOW | third-party/glad/include/KHR/khrplatform.h | 101 | */ | COMMENT |
| LOW | third-party/glad/include/EGL/eglplatform.h | 161 | #if defined(__cplusplus) | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 41 | #ifndef GLAD_PLATFORM_WIN32 | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 61 | #define GLAD_PLATFORM_EMSCRIPTEN 0 | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 81 | #endif | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 101 | #define GLAD_API_CALL __declspec(dllexport) extern | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 121 | #define GLAD_API_PTR APIENTRY | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 161 | #define EGL_BAD_CONFIG 0x3005 | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 181 | #define EGL_COLOR_BUFFER_TYPE 0x303F | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 201 | #define EGL_DISPLAY_SCALING 10000 | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 221 | #define EGL_GREEN_SIZE 0x3023 | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 241 | #define EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 261 | #define EGL_OPENVG_API 0x30A1 | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 281 | #define EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400 | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 301 | #define EGL_TRUE 1 | COMMENT |
| LOW | third-party/glad/include/glad/egl.h | 581 | #endif | COMMENT |
| LOW | third-party/glad/include/glad/gl.h | 21 | * --api='gl:compatibility=4.6' --extensions='' c --loader --mx | COMMENT |
| LOW | third-party/glad/include/glad/gl.h | 41 | #endif | COMMENT |
| LOW | third-party/glad/include/glad/gl.h | 61 | #endif | COMMENT |
| LOW | third-party/glad/include/glad/gl.h | 81 | COMMENT | |
| LOW | third-party/glad/include/glad/gl.h | 101 | #ifdef GLAD_INTERNAL_HAVE_WINAPIFAMILY | COMMENT |
| 342 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src_assets/common/assets/web/composables/useApps.js | 31 | function loadEnabledGameLibrarySkillIds() { | CODE |
| LOW | src_assets/common/assets/web/composables/useApps.js | 52 | function saveEnabledGameLibrarySkillIds(skillIds) { | CODE |
| LOW | …assets/common/assets/web/composables/useSetupWizard.js | 17 | function hasSavedLanguageThisSession() { | CODE |
| LOW | …assets/common/assets/web/composables/useAiDiagnosis.js | 76 | function buildLocalDiagnosticsSummary(diagnostics) { | CODE |
| LOW | src_assets/common/assets/web/config/resources.js | 196 | export function resolveRandomResourceHref(resource, randomValue = Math.random()) { | CODE |
| LOW⚡ | …c_assets/common/assets/web/utils/nativeRtxHdrBridge.js | 9 | export function normalizeControlPanelOrigin(url) { | CODE |
| LOW⚡ | …c_assets/common/assets/web/utils/nativeRtxHdrBridge.js | 18 | export function resolveControlPanelOrigin(referrer, ancestorOrigin) { | CODE |
| LOW⚡ | …c_assets/common/assets/web/utils/nativeRtxHdrBridge.js | 24 | export function isTrustedRtxHdrBridgeMessage(event, parentWindow, controlPanelOrigin) { | CODE |
| LOW | src_assets/common/assets/web/utils/aiLocale.js | 73 | export function buildLocalizedInstruction(locale = getCurrentLocale()) { | CODE |
| LOW | src_assets/common/assets/web/utils/aiProxyFetch.js | 1 | export function isSunshineUnavailableError(error) { | CODE |
| LOW | src_assets/common/assets/web/utils/aiProxyFetch.js | 5 | export async function refreshSunshineProxyTarget() { | CODE |
| LOW | src_assets/common/assets/web/utils/steamApi.js | 142 | export async function searchSteamCoversWithDetails(name, maxResults = 20) { | CODE |
| LOW | src_assets/common/assets/web/utils/steamApi.js | 527 | export async function getSteamGridDBCoversBySteamId(steamAppId, gridOptions = {}) { | CODE |
| LOW | src_assets/common/assets/web/utils/gameMetadataAi.js | 92 | function buildMetadataSystemPrompt(locale = getCurrentLocale()) { | CODE |
| LOW | src_assets/common/assets/web/utils/coverSelectionAi.js | 123 | export function pickFallbackCoverCandidate(app, candidates) { | CODE |
| LOW | src_assets/common/assets/web/utils/coverSelectionAi.js | 148 | function buildCoverSelectionPrompt(locale = getCurrentLocale()) { | CODE |
| LOW | src_assets/common/assets/web/utils/focus.js | 47 | export function resolveDialogTeleportTarget(element, fallback = 'body') { | CODE |
| LOW | src_assets/common/assets/web/utils/helpers.js | 136 | export function installExternalLinkHandler( | CODE |
| LOW | …ssets/common/assets/web/utils/agents/core/agentCore.js | 21 | export function createCapabilityFromSkill(skill, capability = {}) { | CODE |
| LOW | …ssets/common/assets/web/utils/agents/core/agentCore.js | 89 | export function getSelectableAgentCapabilities(capabilities = []) { | CODE |
| LOW | …ssets/common/assets/web/utils/agents/core/agentCore.js | 93 | export function getDefaultEnabledSkillIds(capabilities = []) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 81 | export function registerGameLibrarySkillExtension(extension = {}) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 85 | export function getGameLibraryCapabilities() { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 93 | export function getGameLibrarySelectableCapabilities(capabilities = getGameLibraryCapabilities()) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 97 | export function getDefaultEnabledGameLibrarySkillIds(capabilities = getGameLibraryCapabilities()) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 101 | export function normalizeGameLibrarySkillIds(skillIds, capabilities = getGameLibraryCapabilities()) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 105 | export function getGameLibraryCapabilityIcon(skillId, capabilities = getGameLibraryCapabilities()) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 109 | export function getGameLibraryCapabilityLabel(skillId, options = {}) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 116 | export function createDefaultGameLibrarySkills(options = {}) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 125 | export function createGameLibraryCuratorAgent(options = {}) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 142 | export async function runGameLibraryCuratorAgent(apps, options = {}) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 149 | export function applyGameLibraryOverrides(apps) { | CODE |
| LOW⚡ | …eb/utils/agents/gameLibrary/gameLibraryCuratorAgent.js | 157 | export async function enhanceGameLibraryMetadata(apps) { | CODE |
| LOW | …utils/agents/gameLibrary/policies/reviewQueuePolicy.js | 30 | export function getGameResourceReviewReasons(app, options = {}) { | CODE |
| LOW | …s/agents/gameLibrary/skills/scanOverrideMemorySkill.js | 5 | export function createScanOverrideMemorySkill(options = {}) { | CODE |
| LOW | …utils/agents/gameLibrary/skills/coverSelectionSkill.js | 31 | export function createCoverSelectionSkill(options = {}) { | CODE |
| LOW | …s/agents/gameLibrary/skills/gameTitleNormalizeSkill.js | 12 | export function createGameTitleNormalizeSkill(options = {}) { | CODE |
| LOW⚡ | …ssets/web/utils/agents/diagnostics/diagnosticsAgent.js | 82 | export function registerDiagnosticsSkillExtension(extension = {}) { | CODE |
| LOW⚡ | …ssets/web/utils/agents/diagnostics/diagnosticsAgent.js | 86 | export function getDiagnosticsCapabilities() { | CODE |
| LOW⚡ | …ssets/web/utils/agents/diagnostics/diagnosticsAgent.js | 94 | export function getDiagnosticsSelectableCapabilities(capabilities = getDiagnosticsCapabilities()) { | CODE |
| LOW⚡ | …ssets/web/utils/agents/diagnostics/diagnosticsAgent.js | 98 | export function getDefaultEnabledDiagnosticsSkillIds(capabilities = getDiagnosticsCapabilities()) { | CODE |
| LOW⚡ | …ssets/web/utils/agents/diagnostics/diagnosticsAgent.js | 102 | export function normalizeDiagnosticsSkillIds(skillIds, capabilities = getDiagnosticsCapabilities()) { | CODE |
| LOW⚡ | …ssets/web/utils/agents/diagnostics/diagnosticsAgent.js | 106 | export function getDiagnosticsCapabilityIcon(skillId, capabilities = getDiagnosticsCapabilities()) { | CODE |
| LOW⚡ | …ssets/web/utils/agents/diagnostics/diagnosticsAgent.js | 110 | export function getDiagnosticsCapabilityLabel(skillId, options = {}) { | CODE |
| LOW⚡ | …ssets/web/utils/agents/diagnostics/diagnosticsAgent.js | 117 | export function createDefaultDiagnosticsSkills(options = {}) { | CODE |
| LOW | …utils/agents/diagnostics/skills/logRemediationSkill.js | 91 | export function createRemediationSuggestions(findings = []) { | CODE |
| LOW | …utils/agents/diagnostics/skills/logRemediationSkill.js | 116 | export function createLogRemediationSkill(options = {}) { | CODE |
| LOW | src_assets/common/assets/web/components/SetupWizard.vue | 477 | function detectInitialWizardLocale() { | CODE |
| LOW | src_assets/common/assets/web/components/SetupWizard.vue | 486 | function markLanguageSavedForReload() { | CODE |
| LOW | src_assets/common/assets/web/configs/tabs/General.vue | 32 | function handleCommandOrderChanged(newOrder) { | CODE |
| LOW | …s/web/configs/tabs/audiovideo/DisplayDeviceOptions.vue | 123 | function scheduleHdrRuntimeStatusRefresh() { | CODE |
| LOW | tests/tools/test_cmake_configuration.py | 65 | def test_debug_assertions_survive_both_generators(self): | CODE |
| LOW | tests/tools/test_cmake_configuration.py | 78 | def test_presets_keep_parent_test_install_rules_intact(self): | CODE |
| LOW | tests/tools/test_cmake_configuration.py | 88 | def test_system_boost_path_defines_all_consumed_components(self): | CODE |
| LOW | tests/tools/test_cmake_configuration.py | 105 | def test_stale_boost_redirect_restores_cached_targets_on_reconfigure(self): | CODE |
| LOW | tests/tools/test_cmake_configuration.py | 126 | def test_web_ui_is_incremental_and_recovers_missing_outputs(self): | CODE |
| LOW | tests/tools/test_cmake_configuration.py | 162 | def test_asset_copies_preserve_paths_edits_additions_and_removals(self): | STRING |
| LOW | tests/tools/test_cmake_configuration.py | 189 | def test_wayland_tracks_xml_and_reports_first_command_failure(self): | STRING |
| LOW | scripts/validate-i18n.js | 169 | function isChineseWebhookPayloadKey(key, localeFile) { | CODE |
| LOW | scripts/validate-i18n.js | 183 | function shouldSkipTranslationCheck(key, value, localeFile) { | CODE |
| 1 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/tools/test_reverse_tunnel.py | 157 | except (ssl.SSLError, ConnectionError): | CODE |
| HIGH | tests/tools/test_reverse_tunnel.py | 185 | except (ConnectionError, ssl.SSLError): | CODE |
| HIGH | tests/tools/test_reverse_tunnel.py | 116 | except ConnectionResetError: | CODE |
| HIGH | tests/tools/test_reverse_tunnel.py | 169 | except (ConnectionError, ssl.SSLError): | CODE |
| HIGH | tests/tools/test_reverse_tunnel.py | 247 | except (ConnectionError, OSError): | CODE |
| HIGH | tests/mat-live/operator_process_test.py | 34 | except RuntimeError: | CODE |
| HIGH | tests/mat-live/operator_process_test.py | 40 | except subprocess.TimeoutExpired: | CODE |
| HIGH | tests/mat-live/ticket_preflight.py | 41 | except ConnectionResetError: | CODE |
| HIGH | scripts/_locale.py | 103 | except FileNotFoundError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/README_I18N.md | 101 | #### Step 1: Add keys to en.json | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 113 | #### Step 2: Sync to other locales | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 123 | #### Step 3: Format all files | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 131 | #### Step 4: Translate placeholders | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 135 | #### Step 5: Validate | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 143 | #### Step 6: Commit changes | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 156 | #### Step 1: Check for missing keys in en.json | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 164 | #### Step 2: Add missing keys to en.json | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 172 | #### Step 3: Review and update English translations | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 176 | #### Step 4: Sync to all locales | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 184 | #### Step 5: Format all files | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 190 | #### Step 6: Validate | COMMENT |
| LOW⚡ | scripts/README_I18N.md | 198 | #### Step 7: Commit changes | COMMENT |
| LOW | src/assets/abr_prompt.md | 16 | ### Step 1: Determine base target by interaction type (within allowed range) | COMMENT |
| LOW | src/assets/abr_prompt.md | 22 | ### Step 2: Adjust for visual complexity (apply to the base range) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/tools/controller_handoff_probe.py | 105 | assert(slot.id == -1 && slot.gamepad_state.buttonFlags == 0); | CODE |
| HIGH | tests/tools/controller_handoff_probe.py | 125 | assert(platf::writes.size() == count && slot.gamepad_state.buttonFlags == A_FLAG); | CODE |
| HIGH | tests/tools/controller_handoff_probe.py | 149 | assert(previous_release_job->cancelled && latest_release_job != previous_release_job); | CODE |
| HIGH | tests/tools/controller_handoff_probe.py | 152 | assert(platf::writes.size() == count && slot.home_release_timeout_id == latest_release_job); | CODE |
| HIGH | tests/tools/controller_handoff_probe.py | 170 | assert(input->input_stopped && home_job->cancelled && back_job->cancelled); | CODE |
| HIGH | tests/tools/controller_handoff_probe.py | 172 | assert(slot.gamepad_state.buttonFlags == 0 && platf::writes.back().buttonFlags == 0); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/mat-live/negotiation_test.py | 80 | except Exception as error: | CODE |
| MEDIUM | tests/mat-live/negotiation_test.py | 55 | def serve(): | CODE |
| LOW⚡ | tests/mat-live/live_verify.py | 369 | except Exception as error: | CODE |
| LOW⚡ | tests/mat-live/live_verify.py | 378 | except Exception as e: | CODE |
| LOW⚡ | tests/mat-live/live_verify.py | 383 | except Exception as e: | CODE |
| LOW⚡ | tests/mat-live/live_verify.py | 389 | except Exception: | CODE |
| LOW⚡ | tests/mat-live/live_verify.py | 394 | except Exception as e: | CODE |
| LOW⚡ | tests/mat-live/live_verify.py | 401 | except Exception as error: | CODE |
| LOW⚡ | tests/mat-live/live_verify.py | 408 | except Exception as error: | CODE |
| LOW | tests/mat-live/android/session.py | 19 | except Exception as primary: | CODE |
| LOW | tests/mat-live/android/session.py | 22 | except Exception as cleanup: | CODE |
| LOW | tests/mat-live/android/verify.py | 103 | except Exception as error: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/mat-live/host_support.py | 8 | CODE | |
| LOW | tests/mat-live/host_support.py | 11 | CODE | |
| LOW | tests/mat-live/host_support.py | 12 | CODE | |
| LOW | tests/mat-live/host_support.py | 13 | CODE | |
| LOW | tests/mat-live/host_support.py | 15 | CODE | |
| LOW | tests/mat-live/host_support.py | 16 | CODE | |
| LOW | tests/mat-live/host_support.py | 17 | CODE | |
| LOW | tests/mat-live/host_support.py | 18 | CODE | |
| LOW | tests/mat-live/host_support.py | 19 | CODE | |
| LOW | tests/mat-live/host_support.py | 20 | CODE | |
| LOW | tests/mat-live/host_support.py | 21 | CODE | |
| LOW | tests/mat-live/host_support.py | 22 | CODE | |
| LOW | tests/mat-live/host_support.py | 24 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/tools/run_usb_tunnel_e2e.py | 19 | CODE | |
| LOW | tests/tools/test_reverse_tunnel.py | 46 | CODE | |
| LOW | tests/tools/run_usb_control_vm_e2e.py | 25 | CODE | |
| LOW | tests/mat-live/preflight_exit_test.py | 10 | CODE | |
| LOW | tests/mat-live/host_support.py | 44 | CODE | |
| LOW | tests/mat-live/negotiation_test.py | 12 | CODE | |
| LOW | tests/mat-live/negotiation_test.py | 55 | CODE | |
| LOW | tests/mat-live/live_verify.py | 107 | CODE | |
| LOW | tests/mat-live/watchdog_test.py | 38 | CODE | |
| LOW | scripts/_locale.py | 45 | CODE | |
| LOW | scripts/update_clang_format.py | 26 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | tools/hidmaestro-core-patch/PayloadTool/Program.cs | 102 | var profileDocument = System.Text.Json.Nodes.JsonNode.Parse(File.ReadAllText(args[2]))!.AsObject(); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src_assets/macos/misc/uninstall_pkg.sh | 25 | # check if directory is empty... could just use ${DIRECTORIES} here if pkgutils added the `/` prefix | COMMENT |
| MEDIUM | tests/unit/test_video_dolby_vision.cpp | 335 | // A few dark pixels retain the robust first percentile instead of forcing black. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/format-i18n.js | 11 | * node scripts/format-i18n.js --check # Check if files are properly formatted (for CI) | COMMENT |
| LOW | .github/workflows/sign-and-repackage.yml | 113 | # Check if cargo already exists | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | scripts/linux_build.sh | 402 | # Create the package | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/tools/test_http_safety.cpp | 204 | std::ofstream(directory / "assets/box.png") << "placeholder"; | CODE |