iOS & tvOS multi-emulator frontend, supporting various Atari, Bandai, NEC, Nintendo, Sega, SNK and Sony console systems… Get Started: https://wiki.provenance-emu.com |
This report summarizes scanner evidence for Provenance-Emu/Provenance, a C++ project with 6,388 GitHub stars. SynthScan examined 3,584,356 lines of code across 13289 source files, recording 21056 pattern matches distributed across 22 syntactic categories. The legacy adjusted pattern signal is 5.5 (Moderate 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.
Can maintainers explain intent, assumptions, and trade-offs? 20465 finding(s).
Are imports declared and package/API names verified? 68 finding(s).
Are wrappers, guards, and repeated structures necessary? 651 finding(s).
Which changes need focused human review? 21056 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 21056 distinct pattern matches across 22 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 | .swiftlint.yml | 141 | # | COMMENT |
| LOW | Dangerfile.swift | 81 | // Info.plist file shouldn't change often. Leave warning if it changes. | COMMENT |
| LOW | PVPatching/Tests/PVPatchingTests/BPSPatcherTests.swift | 221 | COMMENT | |
| LOW | PVPatching/Sources/PVPatching/PatchEntry.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/PatchArtifact.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/PatchApplier.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/PatchHashing.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/PatchableCore.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/PatchCache.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/PatchFormat.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/PVPatching.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/PatchMetadata.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/Patchers/PPFPatcher.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/Patchers/PPFPatcher.swift | 21 | COMMENT | |
| LOW | PVPatching/Sources/PVPatching/Patchers/PPFPatcher.swift | 41 | /// - Optional "@BEGIN_FILE" / "@END_FILE" block data suffix | COMMENT |
| LOW | PVPatching/Sources/PVPatching/Patchers/UPSPatcher.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/Patchers/UPSPatcher.swift | 21 | /// - Output size (VLI) | COMMENT |
| LOW | PVPatching/Sources/PVPatching/Patchers/BPSPatcher.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/Patchers/BPSPatcher.swift | 21 | /// - Target size (VLI) | COMMENT |
| LOW | …atching/Sources/PVPatching/Patchers/PatchCreator.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/Patchers/IPSPatcher.swift | 1 | // | COMMENT |
| LOW | PVPatching/Sources/PVPatching/Patchers/IPSPatcher.swift | 21 | /// - If length == 0: RLE record — repeat count (2 bytes BE), byte value (1 byte) | COMMENT |
| LOW | PVPatching/Sources/PVPatching/Patchers/IPSPatcher.swift | 41 | /// - Returns: `true` if the extension is `ips32` (case-insensitive). | COMMENT |
| LOW | PVHelp/Sources/PVHelp/WikiNavigationTree.swift | 41 | // Lowercase: `isBlocked` compares against `path.lowercased()`, so an entry | COMMENT |
| LOW | PVAppIntents/Sources/PVAppIntents/AppGroupID.swift | 1 | // | COMMENT |
| LOW | PVAppIntents/Sources/PVAppIntents/AppGroupID.swift | 21 | import PVLibrarySnapshot | COMMENT |
| LOW | …nts/Sources/PVAppIntents/Widget/WidgetDataWriter.swift | 1 | // | COMMENT |
| LOW | …nts/Sources/PVAppIntents/Widget/WidgetDataWriter.swift | 21 | // Re-exported so that host-app code importing PVAppIntents (e.g. PVUIBase's | COMMENT |
| LOW | …nts/Sources/PVAppIntents/Widget/WidgetDataWriter.swift | 61 | public static let shared = WidgetDataWriter() | COMMENT |
| LOW | …nts/Sources/PVAppIntents/Widget/WidgetDataWriter.swift | 161 | COMMENT | |
| LOW | …urces/PVAppIntents/Shortcuts/ProvenanceShortcuts.swift | 1 | // | COMMENT |
| LOW | …urces/PVAppIntents/Shortcuts/ProvenanceShortcuts.swift | 141 | // AddCheatIntent is available as a manual shortcut but not registered here. | COMMENT |
| LOW | …VAppIntents/Intents/ContinueMostRecentGameIntent.swift | 1 | // | COMMENT |
| LOW | …ources/PVAppIntents/Intents/PlayRandomGameIntent.swift | 1 | // | COMMENT |
| LOW | …urces/PVAppIntents/Intents/ListRecentGamesIntent.swift | 1 | // | COMMENT |
| LOW | …ents/Sources/PVAppIntents/Intents/AppIntentError.swift | 1 | // | COMMENT |
| LOW | …nts/Sources/PVAppIntents/Intents/SaveStateIntent.swift | 1 | // | COMMENT |
| LOW | …ources/PVAppIntents/Intents/TakeScreenshotIntent.swift | 1 | // | COMMENT |
| LOW | …s/Sources/PVAppIntents/Intents/FocusFilterIntent.swift | 1 | // | COMMENT |
| LOW | …Sources/PVAppIntents/Intents/SearchLibraryIntent.swift | 1 | // | COMMENT |
| LOW | …urces/PVAppIntents/Intents/GetLibraryStatsIntent.swift | 1 | // | COMMENT |
| LOW | …ts/Sources/PVAppIntents/Intents/LaunchGameIntent.swift | 1 | // | COMMENT |
| LOW | …ources/PVAppIntents/Intents/ToggleFavoriteIntent.swift | 1 | // | COMMENT |
| LOW | …ents/Sources/PVAppIntents/Intents/AddCheatIntent.swift | 1 | // | COMMENT |
| LOW | …Sources/PVAppIntents/Intents/LoadSaveStateIntent.swift | 1 | // | COMMENT |
| LOW | …tents/Sources/PVAppIntents/Entities/EntityStores.swift | 1 | // | COMMENT |
| LOW | …Intents/Sources/PVAppIntents/Entities/GameEntity.swift | 1 | // | COMMENT |
| LOW | …tents/Sources/PVAppIntents/Entities/SystemEntity.swift | 1 | // | COMMENT |
| LOW | …ts/Sources/PVAppIntents/Entities/SaveStateEntity.swift | 1 | // | COMMENT |
| LOW | …ources/PVLibrarySnapshot/LibrarySnapshotAppGroup.swift | 1 | // | COMMENT |
| LOW | …ppIntents/Sources/PVLibrarySnapshot/LibraryIndex.swift | 1 | // | COMMENT |
| LOW | …/Sources/PVLibrarySnapshot/LibrarySnapshotReader.swift | 1 | // | COMMENT |
| LOW | …/Sources/PVLibrarySnapshot/LibrarySnapshotReader.swift | 21 | // dozen small structs. No Realm, no schema migration, no file locking, no | COMMENT |
| LOW | …ts/Sources/PVLibrarySnapshot/LibraryArtworkShape.swift | 1 | // | COMMENT |
| LOW | …ts/Sources/PVLibrarySnapshot/LibrarySnapshotGame.swift | 1 | // | COMMENT |
| LOW | …ts/Sources/PVLibrarySnapshot/LibrarySnapshotGame.swift | 21 | public let title: String | COMMENT |
| LOW | …ts/Sources/PVLibrarySnapshot/LibrarySnapshotKeys.swift | 1 | // | COMMENT |
| LOW | …ts/Sources/PVLibrarySnapshot/LibrarySnapshotKeys.swift | 41 | public static let systemCount = "widget.systemCount" | COMMENT |
| LOW | …ts/Sources/PVLibrarySnapshot/LibrarySnapshotKeys.swift | 61 | COMMENT | |
| LOW | PVLookup/Package.swift | 41 | COMMENT | |
| 19918 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …urces/PVLibrary/WebServer/PVWebFileEventObserver.swift | 148 | // ── ROM file ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …urces/PVLibrary/WebServer/PVWebFileEventObserver.swift | 216 | // ── Save state file ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …urces/PVLibrary/WebServer/PVWebFileEventObserver.swift | 234 | // ── BIOS file ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ces/PVLibrary/Cloud Sync/iCloud/CloudSyncManager.swift | 1394 | // ── Task 1: ROM metadata (highest priority, serial) ────────────── | COMMENT |
| MEDIUM | …ces/PVLibrary/Cloud Sync/iCloud/CloudSyncManager.swift | 1409 | // ── Task 2: Per-game artwork tasks (chained after metadata) ────── | COMMENT |
| MEDIUM | …ces/PVLibrary/Cloud Sync/iCloud/CloudSyncManager.swift | 1422 | // ── Task 3: Save state changes (chained after metadata) ────────── | COMMENT |
| MEDIUM | …ry/Cloud Sync/iCloud/CloudKit/CloudKitRomsSyncer.swift | 2103 | // ── Phase 1: Batch HTTP re-downloads (fast, no DB queries) ────────── | COMMENT |
| MEDIUM | …ry/Cloud Sync/iCloud/CloudKit/CloudKitRomsSyncer.swift | 2116 | // ── Phase 2: Skip DB-heavy artwork lookups during sync ────────────── | COMMENT |
| MEDIUM | …ry/Cloud Sync/iCloud/CloudKit/CloudKitRomsSyncer.swift | 2125 | // ── Phase 3: CloudKit CKAsset for custom artwork ──────────────────── | COMMENT |
| MEDIUM | …oreLoader/RetroArch/PVDynamicLibretroCoreScanner.swift | 17 | // ──────────────────── | COMMENT |
| MEDIUM | …oreLoader/RetroArch/PVDynamicLibretroCoreScanner.swift | 31 | // ───────────────────────────────────────── | COMMENT |
| MEDIUM | …oreLoader/RetroArch/PVDynamicLibretroCoreScanner.swift | 214 | // ── Load disk cache ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | …oreLoader/RetroArch/PVDynamicLibretroCoreScanner.swift | 218 | // ── Partition candidates into cache-hits and misses ──────────────── | COMMENT |
| MEDIUM | …oreLoader/RetroArch/PVDynamicLibretroCoreScanner.swift | 245 | // ── Probe cache misses concurrently ─────────────────────────────── | COMMENT |
| MEDIUM | …oreLoader/RetroArch/PVDynamicLibretroCoreScanner.swift | 293 | // ── Merge results into in-memory store ──────────────────────────── | COMMENT |
| MEDIUM | …oreLoader/RetroArch/PVDynamicLibretroCoreScanner.swift | 470 | // ── Locate native-arch Mach-O slice (handles fat binaries) ──────────── | COMMENT |
| MEDIUM | …oreLoader/RetroArch/PVDynamicLibretroCoreScanner.swift | 490 | // ── Walk load commands to find __TEXT,__cstring ─────────────────────── | COMMENT |
| MEDIUM | …oreLoader/RetroArch/PVDynamicLibretroCoreScanner.swift | 525 | // ── Collect all C strings from __cstring ────────────────────────────── | COMMENT |
| MEDIUM | …rVC/PVEmulatorViewController+CompanionController.swift | 229 | // ── Button diffs ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | …rVC/PVEmulatorViewController+CompanionController.swift | 243 | // ── Axis diffs ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ces/PVUIBase/PVEmulatorVC/PauseTileMenuViewModel.swift | 79 | // ── GAME section ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ces/PVUIBase/PVEmulatorVC/PauseTileMenuViewModel.swift | 456 | // ── CORE section (dynamic, per-core) ──────────────────────────── | COMMENT |
| MEDIUM | PVUI/Sources/PVUIBase/PVEmulatorVC/RetroMenuView.swift | 1478 | // ── SKIN SELECTION ────────────────────────────────────────── | COMMENT |
| MEDIUM | PVUI/Sources/PVUIBase/PVEmulatorVC/RetroMenuView.swift | 1509 | // ── BUTTON CONTROLS ───────────────────────────────────────── | COMMENT |
| MEDIUM | PVUI/Sources/PVUIBase/PVEmulatorVC/RetroMenuView.swift | 1542 | // ── TOOLS ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …onController/CompanionLayouts/ColecoVisionLayout.swift | 53 | // ── Main row: action buttons flanking the numpad ─────── | COMMENT |
| MEDIUM | …onController/CompanionLayouts/ColecoVisionLayout.swift | 74 | // ── D-pad ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …ionController/CompanionLayouts/DOSKeyboardLayout.swift | 70 | // ── Mouse trackpad ──────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …ionController/CompanionLayouts/DOSKeyboardLayout.swift | 76 | // ── Quick-access row ────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …ionController/CompanionLayouts/DOSKeyboardLayout.swift | 81 | // ── Full QWERTY keyboard ────────────────────────────── | COMMENT |
| MEDIUM | …anionController/CompanionLayouts/Atari5200Layout.swift | 57 | // ── Top: side-panel buttons ────────────────────────── | COMMENT |
| MEDIUM | …anionController/CompanionLayouts/Atari5200Layout.swift | 68 | // ── Middle: numpad + joystick ───────────────────────── | COMMENT |
| MEDIUM | …anionController/CompanionLayouts/Atari5200Layout.swift | 91 | // ── Bottom: fire buttons ───────────────────────────── | COMMENT |
| MEDIUM | …anionController/CompanionLayouts/TrackballLayout.swift | 60 | // ── Trackball ───────────────────────────────────────── | COMMENT |
| MEDIUM | …anionController/CompanionLayouts/TrackballLayout.swift | 63 | // ── Fire button ────────────────────────────────────── | COMMENT |
| MEDIUM | PVUI/Sources/PVUIBase/SwiftUI/BootupViewRetroWave.swift | 187 | // ── Progress block — fixed height so layout never shifts ────────────── | COMMENT |
| MEDIUM | …ces/PVUIBase/SwiftUI/KeyboardHUD/KeyboardHUDView.swift | 8 | // ── Read-only, always ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ces/PVUIBase/SwiftUI/KeyboardHUD/KeyboardHUDView.swift | 17 | // ── Placement ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …Sources/PVUIBase/SwiftUI/KeyboardHUD/InputLegend.swift | 8 | // ── Why this file is so cautious about naming ────────────────────────────── | COMMENT |
| MEDIUM | …/SwiftUI/DeltaSkins/Models/DeltaSkinInputHandler.swift | 202 | // ── Extended function buttons (Manic skin parity) ────────────────────── | COMMENT |
| MEDIUM | …/SwiftUI/DeltaSkins/Models/DeltaSkinInputHandler.swift | 306 | // ──────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/audits/audit_localization.sh | 17 | # ─── Helpers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/audits/audit_localization.sh | 58 | # ─── Source tree roots ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/audits/audit_localization.sh | 104 | # ─── 1. Hardcoded SwiftUI Text("…") ───────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/audits/audit_localization.sh | 143 | # ─── 2. NSLocalizedString usage ───────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/audits/audit_localization.sh | 179 | # ─── 3. Existing .strings file coverage ───────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/audits/audit_localization.sh | 227 | # ─── 3b. String Catalog (.xcstrings) coverage ──────────────────────────────── | COMMENT |
| MEDIUM | Scripts/audits/audit_localization.sh | 252 | # ─── 5. Gap analysis ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/audits/audit_localization.sh | 322 | # ─── 6. Summary table ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | Scripts/ci/setup-github-project.sh | 22 | # ── Check project scope ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | Scripts/ci/setup-github-project.sh | 30 | # ── Get org node ID ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | Scripts/ci/setup-github-project.sh | 35 | # ── Create project ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/ci/setup-github-project.sh | 50 | # ── Make project public ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/ci/setup-github-project.sh | 61 | # ── Add custom fields ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/ci/setup-github-project.sh | 131 | # ── Add issues to project ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/ci/setup-github-project.sh | 162 | # ── Summary ─────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/tests/test-ci-init-submodules.sh | 82 | # ── good tree ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/tests/test-ci-init-submodules.sh | 121 | # ── broken tree (the 2026-10-06 failure) ───────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/tests/test-ci-init-submodules.sh | 154 | # ── report ordering ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | Scripts/release/bump-version.sh | 19 | # ── Parse arguments ─────────────────────────────────────────────────────────── | COMMENT |
| 391 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …urces/PVSwiftUI/Consoles/GamesDisplayOptionsView.swift | 117 | // Core controls (kept separate as requested) | COMMENT |
| HIGH | …gents/skills/swift-concurrency/references/core-data.md | 315 | ### Problem with auto-generated code | COMMENT |
| HIGH | …rk/tvos-arm64/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …rk/tvos-arm64/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …_64-simulator/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …_64-simulator/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …_64-simulator/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …_64-simulator/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …st/libavformat.framework/Versions/A/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …st/libavformat.framework/Versions/A/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …ork/ios-arm64/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …ork/ios-arm64/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …rk/tvos-arm64/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …rk/tvos-arm64/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …_64-simulator/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …_64-simulator/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …64/libavformat.framework/Versions/A/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …64/libavformat.framework/Versions/A/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …_64-simulator/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …_64-simulator/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …st/libavformat.framework/Versions/A/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …st/libavformat.framework/Versions/A/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …ork/ios-arm64/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …ork/ios-arm64/libavformat.framework/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …64/libavformat.framework/Versions/A/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …64/libavformat.framework/Versions/A/Headers/avformat.h | 1245 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …/emuThree/lib/libavformat.framework/Headers/avformat.h | 1357 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …/emuThree/lib/libavformat.framework/Headers/avformat.h | 1357 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …_64-simulator/libavformat.framework/Headers/avformat.h | 1357 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …_64-simulator/libavformat.framework/Headers/avformat.h | 1357 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …s-arm64_armv7/libavformat.framework/Headers/avformat.h | 1357 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | …s-arm64_armv7/libavformat.framework/Headers/avformat.h | 1357 | #define AVFMT_FLAG_AUTO_BSF 0x200000 ///< Add bitstream filters as requested by the muxer | COMMENT |
| HIGH | Cores/emuThree/lib/vma/src/Tests.cpp | 3652 | // Check that there are 2 blocks preallocated as requested. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Dangerfile.swift | 86 | warn("Plist changed, don't forget to localize your plist values") | CODE |
| LOW | …VSwiftUI/RootView/PVRootViewNavigationController.swift | 224 | // Don't forget to remove the observer when it's no longer needed | COMMENT |
| LOW | …-video-glide64mk2/src/Glide64/Help/Glide64 Readme.html | 59 | <DIV align=left><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: #00b050; LINE-HEIGHT: 115%; FONT-FAMILY: Verdana; mso- | CODE |
| MEDIUM | …ins/Video/gliden64/src/inc/freetype/include/fterrors.h | 64 | /* Here is a simple example: */ | COMMENT |
| MEDIUM | …ins/Video/gliden64/src/inc/freetype/include/freetype.h | 1110 | /* probably never want this except for demonstration purposes. */ | COMMENT |
| LOW | …o/gliden64/src/inc/freetype/include/internal/ftrfork.h | 36 | /* Don't forget to increment the number if you add a new guessing rule. */ | COMMENT |
| LOW | …PP/cmake/ffmpeg/appletvos/include/libavcodec/version.h | 152 | /* XXX: don't forget to drop the -vismv documentation */ | COMMENT |
| LOW | …make/ffmpeg/ios/universal/include/libavcodec/version.h | 152 | /* XXX: don't forget to drop the -vismv documentation */ | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/it_IT.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/ja_JP.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/fa_IR.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/vi_VN.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/ro_RO.ini | 117 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/es_ES.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/pl_PL.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/th_TH.ini | 117 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/nl_NL.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/gr_EL.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/tg_PH.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/ko_KR.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/he_IL.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/en_US.ini | 140 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/sv_SE.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/id_ID.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/jv_ID.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/zh_TW.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/ms_MY.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/fi_FI.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/zh_CN.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/hr_HR.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/az_AZ.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/uk_UA.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/es_LA.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/hu_HU.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/no_NO.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/dr_ID.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/da_DK.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/pt_BR.ini | 140 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/gl_ES.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/he_IL_invert.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/ru_RU.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/ar_AE.ini | 124 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/tr_TR.ini | 116 | # EN: If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/cz_CZ.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/lo_LA.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/lt-LT.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/ca_ES.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/pt_PT.ini | 140 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| MEDIUM | Cores/PPSSPP/cmake/assets/lang/bg_BG.ini | 116 | # If your language does not show well with the default font, you can use Font to specify a different one. | COMMENT |
| LOW | Cores/PPSSPP/gfx_es2/thin3d_gl.cpp | 1433 | // Don't forget to make sure fbo_standard_z_depth() matches. | COMMENT |
| LOW | Cores/emuThree/lib/vma/include/vk_mem_alloc.h | 16842 | // At the end, don't forget to: | COMMENT |
| LOW | Cores/emuThree/lib/vma/include/vk_mem_alloc.h | 18895 | // At the end, don't forget to destroy it! | COMMENT |
| LOW | Cores/emuThree/lib/vma/include/vk_mem_alloc.h | 18930 | // At the end, don't forget to destroy it! | COMMENT |
| LOW | Cores/emuThree/lib/vma/include/vk_mem_alloc.h | 680 | To prepare for this possibility, don't forget to add appropriate flags like | CODE |
| LOW | Cores/emuThree/lib/vma/include/vk_mem_alloc.h | 2678 | don't forget to free them. | CODE |
| LOW | Cores/emuThree/lib/vma/include/vk_mem_alloc.h | 2725 | don't forget to free it as well. | CODE |
| LOW | Cores/emuThree/lib/vma/include/vk_mem_alloc.h | 16879 | Don't forget to destroy your buffer and allocation objects when no longer needed: | CODE |
| LOW | Cores/emuThree/lib/vma/include/vk_mem_alloc.h | 18041 | If you allocated a new object to be used as the custom pointer, don't forget to delete that object before freeing the al | CODE |
| MEDIUM | …es/emuThree/lib/vma/docs/html/custom_memory_pools.html | 214 | <p>In a pool that uses linear algorithm, you still need to free all the allocations individually, e.g. by using <a class | CODE |
| LOW | …/emuThree/lib/vma/docs/html/group__group__virtual.html | 409 | <p>If you keep pointer to some additional metadata associated with your virtual allocation in its <code>pUserData</code> | CODE |
| 8 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | iCloudBrowser/iCloudBrowser/Store.swift | 33 | print("Error: \(error)") | CODE |
| MEDIUM | iCloudBrowser/iCloudBrowser/Store.swift | 51 | print("Error: \(error)") | CODE |
| MEDIUM⚡ | PVCheevos/README.md | 106 | print("Error: \(error)") | CODE |
| MEDIUM⚡ | PVCheevos/README.md | 115 | print("Error: \(error)") | CODE |
| MEDIUM⚡ | PVCheevos/README.md | 123 | print("Error: \(error)") | CODE |
| MEDIUM | PVCheevos/README.md | 136 | print("Error: \(error)") | CODE |
| MEDIUM | PVCheevos/README.md | 150 | print("Error: \(error)") | CODE |
| MEDIUM | PVCheevos/README.md | 161 | print("Error: \(error)") | CODE |
| MEDIUM | PVCheevos/README.md | 172 | print("Error: \(error)") | CODE |
| MEDIUM⚡ | PVCheevos/README.md | 187 | print("Error: \(error)") | CODE |
| MEDIUM⚡ | PVCheevos/README.md | 195 | print("Error: \(error)") | CODE |
| MEDIUM⚡ | PVCheevos/README.md | 203 | print("Error: \(error)") | CODE |
| MEDIUM | …Sources/PVFileSystem/iCloud/Syncers/CommonSyncer.swift | 28 | print("Error checking if file is in iCloud: \(error)") | CODE |
| MEDIUM | …Sources/PVFileSystem/iCloud/Syncers/CommonSyncer.swift | 55 | print("Error checking if iCloud file needs download: \(error)") | CODE |
| MEDIUM | PVUI/Tests/PVUIBaseTests/PVUIBaseTests.swift | 1805 | print("Error: \(error.localizedDescription)") | STRING |
| MEDIUM | …troller/PVEmulatorViewController+DeltaSkinDirect.swift | 15 | print("Error setting up Delta Skin: \(error)") | CODE |
| MEDIUM | PVUI/Sources/PVUIBase/PVEmulatorVC/RetroMenuView.swift | 2637 | print("Error loading skins: \(error)") | CODE |
| MEDIUM | …SwiftUI/AudioVisualization/MetalWaveformRenderer.swift | 149 | print("Error creating Metal library: \(error)") | STRING |
| MEDIUM | …PVUIBase/SwiftUI/ArtworkSearch/ArtworkDetailView.swift | 324 | print("Error loading image after retries: \(error)") | CODE |
| MEDIUM | …/Sources/PVUIBase/SwiftUI/Components/IconManager.swift | 50 | print("Error changing app icon: \(error.localizedDescription)") | CODE |
| MEDIUM | …I/Sources/PVUIBase/SwiftUI/Components/SwiftImage.swift | 184 | print("Error clearing disk cache: \(error)") | CODE |
| MEDIUM | …Base/SwiftUI/Components/RetroWave/RetroDebugView.swift | 1545 | print("Error loading skins: \(error)") | CODE |
| MEDIUM | …UIBase/SwiftUI/DeltaSkins/AI/DeltaSkinAIEnhancer.swift | 105 | print("Error detecting game context: \(error)") | CODE |
| MEDIUM | …se/SwiftUI/DeltaSkins/Views/DeltaSkinScreensView.swift | 100 | print("Error loading skin image: \(error)") | CODE |
| MEDIUM | …kins/Views/SkinSelection/SystemSkinSelectionView.swift | 1060 | print("Error deleting skin: \(error)") | CODE |
| MEDIUM | …Skins/Views/Deprecated/DeltaSkinWithEmulatorView.swift | 294 | print("Error loading skin image: \(error)") | CODE |
| MEDIUM | …UI/GameMoreInfoUI/Drivers/RealmGameLibraryDriver.swift | 131 | print("Error updating game: \(error)") | CODE |
| MEDIUM | …Sources/PVSwiftUI/App Delegate/PVAppDelegate+JIT.swift | 106 | print("Error: Failed to Contact AltJIT\n") | CODE |
| MEDIUM | …App Delegate/Scenes/EmulationScene/EmulatorScene.swift | 584 | print("Error setting up Delta Skin: \(error)") | CODE |
| MEDIUM | …Sources/PVSwiftUI/Settings/Views/TopShelfLogView.swift | 306 | print("Error clearing log file: \(error.localizedDescription)") | CODE |
| MEDIUM | …skills/swift-concurrency/references/async-sequences.md | 143 | print("Error: \(error)") | CODE |
| MEDIUM | PVLogging/Sources/Disabled/ProvenanceLogging.swift | 95 | print("Error creating log directory: \(error)") | CODE |
| MEDIUM | PVLogging/Sources/Disabled/ProvenanceLogging.swift | 142 | print("Error deleting old log file: \(error)") | CODE |
| LOW | Scripts/audits/audit_controls.py | 244 | except Exception: | CODE |
| LOW | Scripts/audits/scan_ios_binaries.py | 59 | except Exception as e: | CODE |
| MEDIUM | Scripts/audits/scan_ios_binaries.py | 185 | print(f"Error: Path '{args.path}' does not exist") | CODE |
| LOW | Scripts/ci/ci-core-manifest.py | 102 | except Exception as exc: # malformed plist shouldn't kill the run | CODE |
| LOW | Scripts/release/setup-release-secrets.py | 604 | except Exception as exc: | CODE |
| LOW | Scripts/release/setup-release-secrets.py | 775 | except Exception as exc: # a broken check must not mask the others | CODE |
| LOW | Scripts/generators/update_core_versions.py | 140 | except Exception: | CODE |
| LOW | Scripts/generators/update_core_versions.py | 175 | except Exception: | CODE |
| MEDIUM⚡ | Scripts/generators/generate_core_lists.py | 766 | print(f"Error: manifest not found at {path}", file=sys.stderr) | CODE |
| MEDIUM⚡ | Scripts/generators/generate_core_lists.py | 772 | print(f"Error: failed to parse YAML from {path}", file=sys.stderr) | CODE |
| LOW | Scripts/generators/generate_core_lists.py | 518 | except Exception as e: | CODE |
| LOW | Scripts/generators/generate_cheatdb.py | 264 | except Exception as e: | CODE |
| LOW | Scripts/generators/generate_cheatdb.py | 499 | except Exception as e: | CODE |
| MEDIUM | Scripts/generators/generate_cheatdb.py | 784 | print(f"Error: {cht_dir} is not a directory", file=sys.stderr) | CODE |
| LOW⚡ | Scripts/generators/generate_licenses.py | 47 | except Exception as exc: # noqa: BLE001 | CODE |
| LOW | Scripts/generators/generate_licenses.py | 289 | except Exception as exc: # noqa: BLE001 | CODE |
| MEDIUM | Scripts/generators/generate_uti_declarations.py | 646 | print(f"Error: systems.plist not found at {systems_plist_path}", file=sys.stderr) | CODE |
| MEDIUM⚡ | Scripts/generators/auto_translate.py | 40 | print("Error: anthropic package not installed. Run: pip install anthropic", file=sys.stderr) | CODE |
| MEDIUM⚡ | Scripts/generators/auto_translate.py | 313 | print(f"Error: --strings-file must be a relative path, got: {sf!r}", file=sys.stderr) | CODE |
| MEDIUM⚡ | Scripts/generators/auto_translate.py | 316 | print(f"Error: --strings-file contains path traversal: {sf!r}", file=sys.stderr) | CODE |
| MEDIUM⚡ | Scripts/generators/auto_translate.py | 319 | print(f"Error: --strings-file must match **/en.lproj/*.strings, got: {sf!r}", file=sys.stderr) | CODE |
| MEDIUM⚡ | Scripts/generators/auto_translate.py | 324 | print("Error: ANTHROPIC_API_KEY environment variable not set.", file=sys.stderr) | CODE |
| LOW | Scripts/generators/auto_translate.py | 358 | except Exception as exc: # noqa: BLE001 | CODE |
| LOW | Scripts/maint/server.py | 72 | except Exception as error: # surface any failure in the job's log | CODE |
| MEDIUM | Packages/RxRealm/README.md | 163 | print("Error \(error.localizedDescription) while saving objects \(String(describing: elements))") | CODE |
| MEDIUM | Packages/RxRealm/README.md | 165 | print("Error \(error.localizedDescription) while opening realm.") | CODE |
| MEDIUM | …/RxRealm/Examples/RxRealmDemo-iOS/ViewController.swift | 79 | print("Error \(error.localizedDescription) while saving objects \(String(describing: elements))") | CODE |
| 9 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Dependencies/FFMpeg/create_xcframeworks.rb | 29 | def collect_framework_variants(framework_name) | CODE |
| LOW | Dependencies/FFMpeg/create_xcframeworks.rb | 53 | def create_unified_xcframework(framework_name, variants) | CODE |
| LOW⚡ | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2380 | def test_changes_with_submodule_head(self): | CODE |
| LOW⚡ | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2383 | def test_changes_with_nested_submodule(self): | CODE |
| LOW⚡ | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2386 | def test_submodule_init_state_does_not_change_key(self): | CODE |
| LOW⚡ | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2391 | def test_changes_with_script_and_toolchain(self): | CODE |
| LOW⚡ | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2399 | def test_changes_with_xcode_and_sdk(self): | CODE |
| LOW⚡ | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2403 | def test_changes_with_moltenvk_slice(self): | CODE |
| LOW⚡ | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2411 | def test_dolphin_flags_and_profile(self): | CODE |
| LOW | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2441 | def test_miss_builds_moves_and_links(self): | CODE |
| LOW | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2466 | def test_force_rebuilds_over_existing_symlink(self): | CODE |
| LOW⚡ | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2481 | def test_missing_product_fails(self): | CODE |
| LOW⚡ | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2487 | def test_print_key_matches_compute_key(self): | CODE |
| LOW⚡ | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2497 | def test_slice_from_platform_name(self): | CODE |
| LOW | docs/superpowers/plans/2026-10-10-dev-workspace.md | 2630 | def normalize_submodule_status(text: str) -> str: | CODE |
| LOW | Extensions/Spotlight/IndexRequestHandler.swift | 25 | public final class IndexRequestHandler: CSIndexExtensionRequestHandler { | CODE |
| LOW | Scripts/tests/test_generate_uti_declarations.py | 183 | def test_hand_added_utis_preserved_untouched_and_in_order(self): | STRING |
| LOW | Scripts/tests/test_generate_uti_declarations.py | 201 | def test_unrelated_formatting_survives(self): | STRING |
| LOW | Scripts/tests/test_generate_uti_declarations.py | 208 | def test_generator_utis_are_updated_and_added_without_removals(self): | STRING |
| LOW | Scripts/tests/test_generate_uti_declarations.py | 235 | def test_document_types_merge_by_name(self): | STRING |
| LOW | Scripts/tests/test_generate_uti_declarations.py | 245 | def test_missing_and_empty_arrays_are_created(self): | STRING |
| LOW | Scripts/tests/test_generate_uti_declarations.py | 258 | def test_stale_system_types_are_reported_only_with_prune_and_never_deleted(self): | STRING |
| LOW | Scripts/tests/test_generate_uti_declarations.py | 268 | def test_second_run_changes_nothing(self): | STRING |
| LOW⚡ | Scripts/tests/test_generate_uti_declarations.py | 289 | def test_any_stale_plist_fails_the_whole_check(self): | STRING |
| LOW⚡ | Scripts/tests/test_generate_uti_declarations.py | 297 | def test_missing_plist_is_an_error_not_a_pass(self): | STRING |
| LOW⚡ | Scripts/tests/test_generate_uti_declarations.py | 301 | def test_check_requires_plists(self): | STRING |
| LOW⚡ | Scripts/tests/test_check_pbxproj_sources.py | 54 | def test_new_file_beside_compiled_sources_is_flagged(self): | STRING |
| LOW⚡ | Scripts/tests/test_check_pbxproj_sources.py | 57 | def test_referenced_files_pass_even_when_not_compiled(self): | STRING |
| LOW⚡ | Scripts/tests/test_check_pbxproj_sources.py | 60 | def test_synchronized_group_covers_its_files(self): | STRING |
| LOW⚡ | Scripts/tests/test_check_pbxproj_sources.py | 63 | def test_directories_without_compiled_sources_are_ignored(self): | STRING |
| LOW⚡ | Scripts/tests/test_check_pbxproj_sources.py | 66 | def test_non_source_files_and_manifests_are_ignored(self): | STRING |
| LOW⚡ | Scripts/tests/test_check_pbxproj_sources.py | 71 | def test_project_dir_path_moves_the_source_root(self): | STRING |
| LOW | Scripts/tests/test_check_pbxproj_sources.py | 83 | def test_quoted_strings_comments_and_trailing_commas(self): | STRING |
| LOW | Scripts/tests/test_generate_cheatdb_dat.py | 23 | def test_atari_jaguar_maps_for_libretro_cht(self): | CODE |
| LOW | Scripts/tests/test_generate_cheatdb_dat.py | 29 | def test_parentheses_inside_quoted_rom_name(self): | CODE |
| LOW | Scripts/tests/test_generate_cheatdb_dat.py | 67 | def test_multiple_rom_lines_last_stem_wins(self): | STRING |
| LOW⚡ | Scripts/tests/test_generate_cheatdb_dat.py | 85 | def test_dat_stem_strips_track_and_regions(self): | STRING |
| LOW⚡ | Scripts/tests/test_generate_cheatdb_dat.py | 89 | def test_fuzzy_short_cht_title_with_japanese_hint(self): | STRING |
| LOW⚡ | Scripts/tests/test_generate_cheatdb_dat.py | 98 | def test_fuzzy_ambiguous_region_without_hint_returns_none(self): | STRING |
| LOW⚡ | Scripts/tests/test_generate_cheatdb_dat.py | 106 | def test_fuzzy_exact_still_preferred(self): | STRING |
| LOW | Scripts/release/setup-release-secrets.py | 195 | def create_item_from_template(payload: dict) -> None: | CODE |
| LOW | Scripts/release/setup-release-secrets.py | 706 | def _check_signing_identities() -> tuple[bool, str]: | CODE |
| LOW⚡ | Scripts/generators/generate_default_skins.py | 334 | def make_portrait_representation( | CODE |
| LOW | Scripts/generators/generate_default_skins.py | 358 | def make_landscape_representation( | CODE |
| LOW | Scripts/generators/generate_cheatdb.py | 227 | def _flycast_address_cheat_line(data, index): | CODE |
| LOW | Scripts/generators/generate_cheatdb.py | 345 | def _extract_region_hint_from_cht_stem(lookup_stem: str) -> Optional[str]: | CODE |
| LOW | Scripts/generators/generate_cheatdb.py | 360 | def _dat_key_matches_region_hint(dat_key: str, hint: str) -> bool: | CODE |
| LOW⚡ | Scripts/generators/generate_licenses.py | 52 | def _normalise_string_or_list(value: Any) -> Optional[list[str]]: | CODE |
| LOW | Scripts/generators/generate_uti_declarations.py | 167 | def build_system_extension_map(systems: list) -> dict: | CODE |
| LOW | Scripts/generators/scrape_skin_catalog.py | 562 | def _scrape_litritt_hosted_dir(system_name, system_path, source_name, skins): | CODE |
| LOW | Scripts/maint/test_maint.py | 17 | def test_single_star_stays_in_one_segment(self): | CODE |
| LOW | Scripts/maint/test_maint.py | 21 | def test_double_star_crosses_segments(self): | CODE |
| LOW | Scripts/maint/test_maint.py | 337 | def test_repo_registry_loads_and_names_real_files(self): | CODE |
| LOW | Scripts/maint/test_maint.py | 356 | def test_every_script_in_repo_is_registered(self): | CODE |
| LOW | Scripts/maint/test_maint.py | 361 | def test_rejects_foreign_host_and_missing_token(self): | CODE |
| LOW | Scripts/maint/test_maint.py | 400 | def test_bind_server_skips_a_port_in_use(self): | CODE |
| LOW⚡ | Scripts/maint/test_maint.py | 106 | def test_current_when_outputs_newer_than_inputs(self): | STRING |
| LOW⚡ | Scripts/maint/test_maint.py | 109 | def test_stale_when_input_changes_after_outputs(self): | STRING |
| LOW⚡ | Scripts/maint/test_maint.py | 116 | def test_input_committed_in_the_same_second_is_still_newer(self): | STRING |
| LOW⚡ | Scripts/maint/test_maint.py | 121 | def test_script_named_in_run_is_an_implicit_input(self): | STRING |
| 68 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …ources/PVLibrary/Importer/Models/ImportQueueItem.swift | 375 | // This might not be robust for all error types but is a common approach. | COMMENT |
| MEDIUM | …er/Services/GameImporter/GameImporterFileService.swift | 108 | // Standardize URLs for robust path comparison | COMMENT |
| MEDIUM | …mporter/Services/GameImporter/GameImporter+Utils.swift | 34 | // Use a more robust check that handles race conditions better | COMMENT |
| MEDIUM | …mporter/Services/GameImporter/GameImporter+Utils.swift | 134 | return linkedFile.fileName.lowercased() == filenameLowercased // Or more robust ID check | CODE |
| MEDIUM | …/PVLibrary/Cloud Sync/iCloud/CloudSyncLogManager.swift | 526 | // Use regex for more robust parsing | COMMENT |
| MEDIUM | …ry/Cloud Sync/iCloud/CloudKit/CloudKitRomsSyncer.swift | 3103 | // Use a more robust approach with retry logic | COMMENT |
| MEDIUM | …d Sync/iCloud/CloudKit/CloudKitNonDatabaseSyncer.swift | 414 | // A more robust solution might involve sending errors back or using a nonis | COMMENT |
| MEDIUM | …ces/PVUIBase/PVEmulatorVC/AirPlayRoutePickerView.swift | 51 | // Find the internal UIButton recursively to be robust across iOS | COMMENT |
| MEDIUM | …es/PVUIBase/SwiftUI/Imports/StatusMessageManager.swift | 311 | // MARK: - CloudKit Sync Operations (Ensure these are robust and cover existing logic if any) | COMMENT |
| MEDIUM | …ces/PVUIBase/SwiftUI/DeltaSkins/Models/DeltaSkin.swift | 908 | // Handle optional extended edges with more robust null checking | COMMENT |
| MEDIUM | …/Sources/PVSwiftUI/Home/AllSaveStatesBrowserView.swift | 246 | // scrolls into view, providing seamless infinite scroll. | COMMENT |
| MEDIUM | …ources/PVLibRetro/PVThinLibretroCore+SystemFiles.swift | 249 | /// This enables a seamless upgrade path: users who already have system files | COMMENT |
| LOW | …rk/tvos-arm64/libavformat.framework/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …_64-simulator/libavformat.framework/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …_64-simulator/libavformat.framework/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …st/libavformat.framework/Versions/A/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …ork/ios-arm64/libavformat.framework/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …rk/tvos-arm64/libavformat.framework/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …_64-simulator/libavformat.framework/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …64/libavformat.framework/Versions/A/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …_64-simulator/libavformat.framework/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …st/libavformat.framework/Versions/A/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …ork/ios-arm64/libavformat.framework/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| MEDIUM | …ptopp.xcframework/ios-arm64/Headers/cryptopp/elgamal.h | 131 | /// to utilize 1.3.14.7.2.1.1. Prior to DL_PublicKey_ElGamal, the ElGamal | COMMENT |
| MEDIUM | …ptopp.xcframework/ios-arm64/Headers/cryptopp/elgamal.h | 147 | /// to utilize 1.3.14.7.2.1.1. Prior to DL_PrivateKey_ElGamal, the ElGamal | COMMENT |
| MEDIUM | …ptopp.xcframework/ios-arm64/Headers/cryptopp/elgamal.h | 162 | /// to utilize 1.3.14.7.2.1.1. Prior to DL_PrivateKey_ElGamal, the ElGamal | COMMENT |
| MEDIUM | …ptopp.xcframework/ios-arm64/Headers/cryptopp/elgamal.h | 178 | /// to utilize 1.3.14.7.2.1.1. Prior to DL_PrivateKey_ElGamal, the ElGamal | COMMENT |
| LOW | …64/libavformat.framework/Versions/A/Headers/avformat.h | 1229 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| MEDIUM | Scripts/dev/run_harness.sh | 3 | # the dev harness against a ROM and copies its outputs to build/harness/<Scheme>/. | COMMENT |
| MEDIUM | Scripts/dev/run_harness.sh | 7 | # Exit: 0 success, 1 harness error (error.txt) or missing outputs, 2 usage/setup error. | COMMENT |
| MEDIUM | Scripts/dev/run_harness.sh | 54 | # --console-pty blocks until the app exits; the harness calls exit() when it is done. | COMMENT |
| MEDIUM | …tives/Sources/PVPrimitives/Util/FuzzyGameMatcher.swift | 90 | /// which is robust against word-order differences. | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 345 | # Sed substitution that helps us do robust quoting. It backslashifies | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 5631 | # Sed substitution that helps us do robust quoting. It backslashifies | COMMENT |
| LOW | …/cmake/ffmpeg/appletvos/include/libavformat/avformat.h | 1420 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …ke/ffmpeg/ios/universal/include/libavformat/avformat.h | 1420 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| MEDIUM | …SPP/PVPPSSPPCore/ppsspp/glslang/GlslangToSpvPPSSPP.cpp | 5002 | // TODO: It would be more robust to do a full recursive verification of the types satisfying SPIR-V rules. | COMMENT |
| MEDIUM | …Core/ppsspp/glslang/MachineIndependent/ParseHelper.cpp | 8021 | // for the parameter to the constructor (passed to this function). Essentially, it converts | COMMENT |
| MEDIUM | …res/emuThree/PVEmuThreeCore/emuThree/vk_rasterizer.cpp | 1232 | // Process lighting LUTs in batches to better utilize NEON registers | COMMENT |
| LOW | …/emuThree/lib/libavformat.framework/Headers/avformat.h | 1338 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …_64-simulator/libavformat.framework/Headers/avformat.h | 1338 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| LOW | …s-arm64_armv7/libavformat.framework/Headers/avformat.h | 1338 | #define AVFMT_FLAG_NOFILLIN 0x0010 ///< Do not infer any values from other values, just return what is stored in the | COMMENT |
| MEDIUM | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 2 | # test_helpers.sh — shared test harness utilities | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | PVCheevos/README.md | 62 | webAPIKey: "your_api_key" | CODE |
| HIGH | PVCheevos/README.md | 217 | webAPIKey: "your_api_key", | CODE |
| HIGH⚡ | PVCheevos/README.md | 319 | swift run ra-cli -u your_username -k your_api_key | CODE |
| HIGH⚡ | PVCheevos/README.md | 325 | swift run ra-cli -u your_username -k your_api_key -c awards | CODE |
| HIGH⚡ | PVCheevos/README.md | 327 | swift run ra-cli -u your_username -k your_api_key -c game | CODE |
| HIGH⚡ | PVCheevos/README.md | 332 | export RA_API_KEY=your_api_key | CODE |
| HIGH | PVCheevos/LOGIN-GUIDE.md | 241 | ra-cli -u your_username -k your_api_key -c profile | CODE |
| HIGH | PVCheevos/LOGIN-GUIDE.md | 245 | export RA_API_KEY=your_api_key | CODE |
| HIGH | PVCheevos/CLI-DEMO.md | 29 | swift run ra-cli -u your_username -k your_api_key | CODE |
| HIGH | PVCheevos/CLI-DEMO.md | 32 | swift run ra-cli -u your_username -k your_api_key -c profile | CODE |
| HIGH | PVCheevos/CLI-DEMO.md | 57 | swift run ra-cli -u your_username -k your_api_key -c awards | CODE |
| HIGH | PVCheevos/CLI-DEMO.md | 83 | swift run ra-cli -u your_username -k your_api_key -c social | CODE |
| HIGH | PVCheevos/CLI-DEMO.md | 107 | swift run ra-cli -u your_username -k your_api_key -c game | CODE |
| HIGH | PVCheevos/CLI-DEMO.md | 139 | swift run ra-cli -u your_username -k your_api_key -c achievement | CODE |
| HIGH | PVCheevos/CLI-DEMO.md | 172 | swift run ra-cli -u your_username -k your_api_key -c all | CODE |
| HIGH | PVCheevos/CLI-DEMO.md | 188 | export RA_API_KEY=your_api_key | CODE |
| HIGH | PVCheevos/Examples/BasicUsage.swift | 13 | webAPIKey: "your_api_key" | CODE |
| HIGH | PVCheevos/Examples/BasicUsage.swift | 19 | webAPIKey: "your_api_key" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | rename_moltenvk.sh | 59 | # Create a temporary file for the new plist | COMMENT |
| MEDIUM | PVUI/Sources/PVUIBase/Navigation/LibraryNavigator.swift | 205 | /// ## Creating an additional provider | COMMENT |
| MEDIUM | Dependencies/FFMpeg/create_xcframeworks.rb | 7 | # Define the framework names | COMMENT |
| MEDIUM | …endencies/LzhArchive/Sources/lhasa/test/test_common.sh | 19 | # This file contains common definitions for use across the | COMMENT |
| MEDIUM | Scripts/dev/dylibsToFramework.sh | 20 | # Create the framework structure | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 77 | # This file is dual licensed under the terms of the MIT license | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 1541 | # This file is dual licensed under the terms of the MIT license | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 1559 | # This file is a library for parsing options in your shell scripts along | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 2807 | # This function is only a basic sanity check; it will hardly flush out | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 2817 | # This function implements the same check as func_lalib_p without | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 2840 | # This function is only a basic sanity check; it will hardly flush out | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 2850 | # This function is only a basic sanity check; it will hardly flush out | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 2875 | # This function is only a basic sanity check; it will hardly flush out | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 3015 | # Create a libtool object file (analogous to a ".la" file), | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 7938 | # Create the object directory. | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 10519 | # Create the old-style object. | COMMENT |
| MEDIUM | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 10539 | # Create an invalid libtool object if no PIC, so that we don't | COMMENT |
| MEDIUM | Cores/Dolphin/convert_to_object_libs.sh | 32 | # Create a backup | COMMENT |
| MEDIUM⚡ | Cores/PPSSPP/cmake/assets/compat.ini | 5 | # This file is not meant to be user-editable, although is kept as a separate ini | COMMENT |
| MEDIUM | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 113 | # Create a mock 'xxd' that returns the PK zip magic for files ending in .zip | COMMENT |
| MEDIUM | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 132 | # Create a mock 'xxd' that always returns non-zip magic (simulates corrupt/HTML files) | COMMENT |
| MEDIUM | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 141 | # Create a mock 'curl' that always succeeds and writes a valid PK\x03\x04 zip to the output file | COMMENT |
| MEDIUM | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 161 | # Create a mock 'curl' that always fails (returns non-zero exit) | COMMENT |
| MEDIUM | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 172 | # Create a mock 'curl' that writes HTML (404 page) to output but exits 0 | COMMENT |
| MEDIUM⚡ | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 191 | # Create a mock 'file' command that identifies all files as Mach-O | COMMENT |
| MEDIUM⚡ | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 200 | # Create a mock 'file' command that identifies files as HTML/text (corrupt) | COMMENT |
| MEDIUM⚡ | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 209 | # Create a mock 'codesign' that always succeeds silently | COMMENT |
| MEDIUM⚡ | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 218 | # Create a mock 'vtool' that always succeeds silently | COMMENT |
| MEDIUM | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 231 | # Create a mock 'lipo' that copies input to output | COMMENT |
| MEDIUM | CoresRetro/RetroArch/scripts/tests/test_helpers.sh | 250 | # Create a mock 'unzip' that creates a fake .dylib from each zip | COMMENT |
| MEDIUM⚡ | CoresRetro/RetroArch/scripts/tests/test_get_modules.sh | 26 | # Create a fake HTML "404" file masquerading as a zip | COMMENT |
| MEDIUM | CoresRetro/RetroArch/scripts/tests/test_get_modules.sh | 633 | # Create a mock unzip that records calls *and* arguments, then writes tvos dylibs. | COMMENT |
| MEDIUM⚡ | …sRetro/RetroArch/scripts/tests/test_make_frameworks.sh | 24 | # Create a fake framework directory that mirrors what the script would produce | COMMENT |
| MEDIUM⚡ | …sRetro/RetroArch/scripts/tests/test_make_frameworks.sh | 260 | # Create a minimal fw.tmpl in the given dir | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …Services/GameImporter/GameImporterSystemsService.swift | 160 | /// Step 1: Check if file is already in a system directory (fastest check) | COMMENT |
| LOW⚡ | …Services/GameImporter/GameImporterSystemsService.swift | 166 | /// Step 2: Extension-based filtering (cheapest - no DB queries) | COMMENT |
| LOW | …Services/GameImporter/GameImporterSystemsService.swift | 191 | /// Step 3: If we have limited systems from extension, search PVLookup within those systems only | COMMENT |
| LOW | …Services/GameImporter/GameImporterSystemsService.swift | 214 | /// Step 5: If multiple systems from extension, try database + filename-based matching to narrow down | COMMENT |
| LOW | …Services/GameImporter/GameImporterSystemsService.swift | 254 | /// Step 6: No extension match - if MD5 available, do wider MD5-only search (no filename) | COMMENT |
| LOW⚡ | …Services/GameImporter/GameImporterSystemsService.swift | 268 | /// Step 7: Fallback to filename-based system matching (if no extension match) | COMMENT |
| LOW⚡ | …Services/GameImporter/GameImporterSystemsService.swift | 277 | /// Step 8: Return whatever we found (may be empty) | COMMENT |
| LOW⚡ | …ervices/GameImporter/GameImporterDatabaseService.swift | 421 | // Step 1: Fetch game from Realm (sync) | COMMENT |
| LOW⚡ | …ervices/GameImporter/GameImporterDatabaseService.swift | 430 | // Step 2: Do async metadata lookup | COMMENT |
| LOW⚡ | …ervices/GameImporter/GameImporterDatabaseService.swift | 440 | // Step 3: Write back to Realm and mirror to SwiftData (epic #2510). | COMMENT |
| LOW | …ervices/GameImporter/GameImporterDatabaseService.swift | 470 | // Step 1: Fetch and validate game from Realm (sync) | COMMENT |
| LOW⚡ | …ervices/GameImporter/GameImporterDatabaseService.swift | 485 | // Step 2: Download artwork (async) | COMMENT |
| LOW⚡ | …ervices/GameImporter/GameImporterDatabaseService.swift | 489 | // Step 3: Write back to Realm and mirror to SwiftData (epic #2510). | COMMENT |
| LOW | …rary/Importer/Services/GameImporter/GameImporter.swift | 2538 | // Step 1: Sync Realm work - get game info, move file, update database | COMMENT |
| LOW | …rary/Importer/Services/GameImporter/GameImporter.swift | 2612 | // Step 2: Async work outside Realm closure | COMMENT |
| LOW | …rary/Importer/Services/GameImporter/GameImporter.swift | 3589 | // Step 1: Query Realm and identify matches (on main actor but just reads) | COMMENT |
| LOW | …rary/Importer/Services/GameImporter/GameImporter.swift | 3692 | // Step 2: Batch update games that need local file info (single write transaction) | COMMENT |
| LOW⚡ | …/Importer/Services/GameImporter/GameImporter+m3u.swift | 187 | // Step 1: Import the M3U file and find the corresponding game | COMMENT |
| LOW⚡ | …/Importer/Services/GameImporter/GameImporter+m3u.swift | 190 | // Step 2: Consolidate all files under this game | COMMENT |
| LOW⚡ | …r/Services/GameImporter/FastArtworkLookupService.swift | 120 | // Step 1: exact title with system (most precise) | COMMENT |
| LOW⚡ | …r/Services/GameImporter/FastArtworkLookupService.swift | 129 | // Step 2: exact title without system filter (broader) | COMMENT |
| LOW⚡ | …r/Services/GameImporter/FastArtworkLookupService.swift | 137 | // Step 3: MD5 → ROM metadata title → artwork search | COMMENT |
| LOW⚡ | …ibrary/DirectoryWatcher/ArchiveZipSupportChecker.swift | 226 | // Step 1: Check if file is already in a system directory | COMMENT |
| LOW⚡ | …ibrary/DirectoryWatcher/ArchiveZipSupportChecker.swift | 231 | // Step 2: Extension-based filtering | COMMENT |
| LOW⚡ | …ibrary/DirectoryWatcher/ArchiveZipSupportChecker.swift | 240 | // Step 3: Try filename-based matching | COMMENT |
| LOW⚡ | …urces/PVLibrary/Cloud Sync/GameFileStatusService.swift | 255 | // Step 1: Build file index from a single directory enumeration. In | COMMENT |
| LOW⚡ | …urces/PVLibrary/Cloud Sync/GameFileStatusService.swift | 265 | // Step 2: Derive a filename → [relativePaths] multimap from the same | COMMENT |
| LOW | …ud Sync/iCloud/CloudKit/CloudKitSaveStatesSyncer.swift | 1139 | // Step 1: Sync Realm work - find game and existing save state | COMMENT |
| LOW | …ud Sync/iCloud/CloudKit/CloudKitSaveStatesSyncer.swift | 1192 | // Step 2: Handle existing or create new (async work) | COMMENT |
| LOW | …ud Sync/iCloud/CloudKit/CloudKitSaveStatesSyncer.swift | 1242 | // Step 3: Apply metadata and cache artwork | COMMENT |
| LOW | …UI/Sources/PVUIBase/Import/SaveStateDropDelegate.swift | 124 | // Step 1: Fetch the Realm object on the main actor (Realm is not thread-safe). | COMMENT |
| LOW | …UI/Sources/PVUIBase/Import/SaveStateDropDelegate.swift | 137 | // Step 2: Run the actual unzip + copy work off the main actor to | COMMENT |
| LOW | …wiftUI/Components/RetroWave/RetroGameLibraryView.swift | 982 | // Step 1: Collect game info on main thread (fast Realm query) | COMMENT |
| LOW | …wiftUI/Components/RetroWave/RetroGameLibraryView.swift | 1006 | // Step 2: Do file system scanning on background thread (no Realm access) | COMMENT |
| LOW | …wiftUI/Components/RetroWave/RetroGameLibraryView.swift | 1056 | // Step 3: Batch update Realm on main thread | COMMENT |
| LOW | …es/PVSwiftUI/Settings/Views/CloudKitOnDemandView.swift | 111 | // Step 1: Fetch CloudKit Record details (metadata, not necessarily assets) | COMMENT |
| LOW | …urces/PVSwiftUI/Import/SaveImportMatchingService.swift | 69 | // Step 1: MD5 exact match (meaningful only for .zip/.pvsave bundles with a manifest) | COMMENT |
| LOW | …urces/PVSwiftUI/Import/SaveImportMatchingService.swift | 86 | // Step 2: Filename heuristic across all library games | COMMENT |
| LOW | Scripts/generators/SKIN_CATALOG_CONTRIBUTING.md | 158 | ### Step 1: Generate a unique ID | COMMENT |
| LOW⚡ | Scripts/generators/SKIN_CATALOG_CONTRIBUTING.md | 176 | ### Step 2: Edit catalog_seed.json | COMMENT |
| LOW⚡ | Scripts/generators/SKIN_CATALOG_CONTRIBUTING.md | 182 | ### Step 3: Validate JSON | COMMENT |
| LOW⚡ | Scripts/generators/SKIN_CATALOG_CONTRIBUTING.md | 188 | ### Step 4: Sync to app resources | COMMENT |
| LOW | …PSSPP/PVPPSSPPCore/ppsspp/glslang/SpvBuilderPPSSPP.cpp | 3335 | // Step 2: Construct a matrix from that array. | COMMENT |
| LOW | …SPP/PVPPSSPPCore/ppsspp/glslang/GlslangToSpvPPSSPP.cpp | 4973 | // NOTE: This function can handle any store request; if it's not special it | COMMENT |
| LOW | …Sources/MednafenRcheevosObjC/MednafenRcheevosClient.mm | 281 | // Step 1: Login. | COMMENT |
| LOW | …Sources/MednafenRcheevosObjC/MednafenRcheevosClient.mm | 293 | // Step 2: Load game. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …Services/GameImporter/GameImporterSystemsService.swift | 160 | /// Step 1: Check if file is already in a system directory (fastest check) | COMMENT |
| LOW⚡ | …Services/GameImporter/GameImporterSystemsService.swift | 166 | /// Step 2: Extension-based filtering (cheapest - no DB queries) | COMMENT |
| LOW | …Services/GameImporter/GameImporterSystemsService.swift | 191 | /// Step 3: If we have limited systems from extension, search PVLookup within those systems only | COMMENT |
| LOW | …Services/GameImporter/GameImporterSystemsService.swift | 214 | /// Step 5: If multiple systems from extension, try database + filename-based matching to narrow down | COMMENT |
| LOW | …Services/GameImporter/GameImporterSystemsService.swift | 254 | /// Step 6: No extension match - if MD5 available, do wider MD5-only search (no filename) | COMMENT |
| LOW⚡ | …Services/GameImporter/GameImporterSystemsService.swift | 268 | /// Step 7: Fallback to filename-based system matching (if no extension match) | COMMENT |
| LOW⚡ | …Services/GameImporter/GameImporterSystemsService.swift | 277 | /// Step 8: Return whatever we found (may be empty) | COMMENT |
| LOW⚡ | …ervices/GameImporter/GameImporterDatabaseService.swift | 421 | // Step 1: Fetch game from Realm (sync) | COMMENT |
| LOW⚡ | …ervices/GameImporter/GameImporterDatabaseService.swift | 430 | // Step 2: Do async metadata lookup | COMMENT |
| LOW⚡ | …ervices/GameImporter/GameImporterDatabaseService.swift | 440 | // Step 3: Write back to Realm and mirror to SwiftData (epic #2510). | COMMENT |
| LOW | …ervices/GameImporter/GameImporterDatabaseService.swift | 470 | // Step 1: Fetch and validate game from Realm (sync) | COMMENT |
| LOW⚡ | …ervices/GameImporter/GameImporterDatabaseService.swift | 485 | // Step 2: Download artwork (async) | COMMENT |
| LOW⚡ | …ervices/GameImporter/GameImporterDatabaseService.swift | 489 | // Step 3: Write back to Realm and mirror to SwiftData (epic #2510). | COMMENT |
| LOW | …rary/Importer/Services/GameImporter/GameImporter.swift | 2538 | // Step 1: Sync Realm work - get game info, move file, update database | COMMENT |
| LOW | …rary/Importer/Services/GameImporter/GameImporter.swift | 2612 | // Step 2: Async work outside Realm closure | COMMENT |
| LOW | …rary/Importer/Services/GameImporter/GameImporter.swift | 3589 | // Step 1: Query Realm and identify matches (on main actor but just reads) | COMMENT |
| LOW | …rary/Importer/Services/GameImporter/GameImporter.swift | 3692 | // Step 2: Batch update games that need local file info (single write transaction) | COMMENT |
| LOW⚡ | …/Importer/Services/GameImporter/GameImporter+m3u.swift | 187 | // Step 1: Import the M3U file and find the corresponding game | COMMENT |
| LOW⚡ | …/Importer/Services/GameImporter/GameImporter+m3u.swift | 190 | // Step 2: Consolidate all files under this game | COMMENT |
| LOW⚡ | …r/Services/GameImporter/FastArtworkLookupService.swift | 120 | // Step 1: exact title with system (most precise) | COMMENT |
| LOW⚡ | …r/Services/GameImporter/FastArtworkLookupService.swift | 129 | // Step 2: exact title without system filter (broader) | COMMENT |
| LOW⚡ | …r/Services/GameImporter/FastArtworkLookupService.swift | 137 | // Step 3: MD5 → ROM metadata title → artwork search | COMMENT |
| LOW⚡ | …ibrary/DirectoryWatcher/ArchiveZipSupportChecker.swift | 226 | // Step 1: Check if file is already in a system directory | COMMENT |
| LOW⚡ | …ibrary/DirectoryWatcher/ArchiveZipSupportChecker.swift | 231 | // Step 2: Extension-based filtering | COMMENT |
| LOW⚡ | …ibrary/DirectoryWatcher/ArchiveZipSupportChecker.swift | 240 | // Step 3: Try filename-based matching | COMMENT |
| LOW⚡ | …urces/PVLibrary/Cloud Sync/GameFileStatusService.swift | 255 | // Step 1: Build file index from a single directory enumeration. In | COMMENT |
| LOW⚡ | …urces/PVLibrary/Cloud Sync/GameFileStatusService.swift | 265 | // Step 2: Derive a filename → [relativePaths] multimap from the same | COMMENT |
| LOW | …ud Sync/iCloud/CloudKit/CloudKitSaveStatesSyncer.swift | 1139 | // Step 1: Sync Realm work - find game and existing save state | COMMENT |
| LOW | …ud Sync/iCloud/CloudKit/CloudKitSaveStatesSyncer.swift | 1192 | // Step 2: Handle existing or create new (async work) | COMMENT |
| LOW | …ud Sync/iCloud/CloudKit/CloudKitSaveStatesSyncer.swift | 1242 | // Step 3: Apply metadata and cache artwork | COMMENT |
| LOW | …UI/Sources/PVUIBase/Import/SaveStateDropDelegate.swift | 124 | // Step 1: Fetch the Realm object on the main actor (Realm is not thread-safe). | COMMENT |
| LOW | …UI/Sources/PVUIBase/Import/SaveStateDropDelegate.swift | 137 | // Step 2: Run the actual unzip + copy work off the main actor to | COMMENT |
| LOW | …wiftUI/Components/RetroWave/RetroGameLibraryView.swift | 982 | // Step 1: Collect game info on main thread (fast Realm query) | COMMENT |
| LOW | …wiftUI/Components/RetroWave/RetroGameLibraryView.swift | 1006 | // Step 2: Do file system scanning on background thread (no Realm access) | COMMENT |
| LOW | …wiftUI/Components/RetroWave/RetroGameLibraryView.swift | 1056 | // Step 3: Batch update Realm on main thread | COMMENT |
| LOW | …es/PVSwiftUI/Settings/Views/CloudKitOnDemandView.swift | 111 | // Step 1: Fetch CloudKit Record details (metadata, not necessarily assets) | COMMENT |
| LOW | …rces/PVSwiftUI/Settings/Views/SpotlightDebugView.swift | 413 | // The attributeSet might be nil, so we need to check if it exists | COMMENT |
| LOW | …urces/PVSwiftUI/Import/SaveImportMatchingService.swift | 69 | // Step 1: MD5 exact match (meaningful only for .zip/.pvsave bundles with a manifest) | COMMENT |
| LOW | …urces/PVSwiftUI/Import/SaveImportMatchingService.swift | 86 | // Step 2: Filename heuristic across all library games | COMMENT |
| LOW | …PSSPP/PVPPSSPPCore/ppsspp/glslang/SpvBuilderPPSSPP.cpp | 3335 | // Step 2: Construct a matrix from that array. | COMMENT |
| LOW | …sis-Plus-GX/Sources/libgenesisplus/libretro/libretro.c | 2607 | /* otherwise, we assume this is for saving and we need to check if SRAM data has been modified */ | COMMENT |
| LOW | …Sources/MednafenRcheevosObjC/MednafenRcheevosClient.mm | 281 | // Step 1: Login. | COMMENT |
| LOW | …Sources/MednafenRcheevosObjC/MednafenRcheevosClient.mm | 293 | // Step 2: Load game. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | …form/Conversion/Extensions/SaveState+PVSaveState.swift | 74 | let path = save.game.file.fileName.saveStatePath.deletingPathExtension().appendingPathComponent(save.file.fi | CODE |
| CRITICAL | …WebUploader.bundle/Contents/Resources/js/jquery.min.js | 4 | },a,b,arguments.length>1)},show:function(){return Wb(this,!0)},hide:function(){return Wb(this)},toggle:function(a){retur | CODE |
| CRITICAL | Cores/emuThree/lib/vma/docs/html/jquery.js | 67 | set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value | CODE |
| CRITICAL | Cores/emuThree/lib/vma/docs/html/jquery.js | 107 | )&&(t.left+=l+i+h):0<r&&(0<(o=t.left-e.collisionPosition.marginLeft+l+i+h-o)||D(o)<r)&&(t.left+=l+i+h)},top:function(t,e | CODE |
| CRITICAL | …Sources/MednafenGameCore/MednafenGameCore+Cheats.swift | 69 | if game.pointee.CheatInfo.pointee.CheatFormatInfo.pointee.size() > 0 { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | update_bundleid.sh | 29 | # Check if Versions directory exists | COMMENT |
| LOW | rename_moltenvk.sh | 15 | # Check if binary exists | COMMENT |
| LOW | rename_moltenvk.sh | 33 | # Check if Versions directory exists | COMMENT |
| LOW | …endencies/LzhArchive/Sources/lhasa/test/test_common.sh | 125 | # Read file modification time. | COMMENT |
| LOW | …endencies/LzhArchive/Sources/lhasa/test/test_common.sh | 135 | # Read file permissions. | COMMENT |
| LOW | Provenance/Resources/createVersionHeader.sh | 44 | # Write file only if content has changed (preserves timestamps for incremental builds) | COMMENT |
| LOW | Scripts/audits/check-pr-reviews.sh | 30 | # Check if it's a real review or just a summary | COMMENT |
| LOW | Scripts/audits/check-pr-reviews.sh | 51 | # Check if review is stale (commit after review) | COMMENT |
| LOW | Scripts/audits/spm-validate.sh | 79 | # Check if failure is due to no tests vs actual test failure | COMMENT |
| LOW | Scripts/build-phases/setup_env.sh | 638 | # Print message & reset text attributes | COMMENT |
| LOW | Scripts/dev/dylibsToFramework.sh | 9 | # Check if the minimum number of arguments is provided | COMMENT |
| LOW | Scripts/dev/create_ci_target.rb | 39 | # Check if CI target already exists | COMMENT |
| LOW | Scripts/dev/ralph-loop.sh | 109 | # Check if there are changes to commit | COMMENT |
| LOW | Scripts/generators/generate_core_lists.py | 135 | # Check if it's a full "key: value" on one line | COMMENT |
| LOW | Scripts/generators/generate_cheatdb.py | 558 | # Check if this matches any of our known system names | COMMENT |
| LOW | .github/auto_assign.yml | 14 | # Set 0 to add all the reviewers (default: 0) | COMMENT |
| LOW | .github/workflows/repo-health.yml | 207 | # Check if there's actually a PR for this issue (linked or branch named agent/issue-N) | COMMENT |
| LOW | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 379 | # Check if we can use backslash as IFS='\' separator, and set | COMMENT |
| LOW | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 666 | # Set func_arith_result to the result of evaluating TERMs. | COMMENT |
| LOW | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 690 | # Set func_basename_result to FILE with everything up to and including | COMMENT |
| LOW | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 856 | # Set func_len_result to the length of STRING. STRING may not | COMMENT |
| LOW | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 1074 | # Set func_relative_path_result to the relative path from SRCDIR to DSTDIR. | COMMENT |
| LOW | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 4294 | # Check if any of the arguments is a wrapper script. | COMMENT |
| LOW | Cores/Mupen64Plus/Sources/libpng/png/ltmain.sh | 10242 | # Loop over the list of objects to be linked. | COMMENT |
| LOW⚡ | Cores/Mupen64Plus/Sources/libpng/png/ci/ci_lint.sh | 27 | # Set it to the empty string if the shellcheck program is unavailable. | COMMENT |
| LOW⚡ | Cores/Mupen64Plus/Sources/libpng/png/ci/ci_lint.sh | 33 | # Set it to the empty string if the editorconfig-checker program is unavailable. | COMMENT |
| LOW⚡ | Cores/Mupen64Plus/Sources/libpng/png/ci/ci_lint.sh | 39 | # Set it to the empty string if the yamllint program is unavailable. | COMMENT |
| LOW | Cores/Dolphin/build_dolphin_core.sh | 449 | # Check if dylibs exist | COMMENT |
| LOW | …esRetro/RetroArch/scripts/make_frameworks_retroarch.sh | 25 | # Check if the minimum number of arguments is provided | COMMENT |
| LOW | CoresRetro/RetroArch/scripts/make_frameworks.sh | 10 | # Check if the minimum number of arguments is provided | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …idgeRetro/Sources/retro/libretro-common/glsym/glgen.py | 25 | CODE | |
| LOW | …dgeRetro/Sources/retro/libretro-common/glsym/rglgen.py | 25 | CODE | |
| LOW | Scripts/audits/audit_controls.py | 40 | CODE | |
| LOW | Scripts/audits/diff_systems_plists.py | 30 | CODE | |
| LOW | Scripts/ci/ci-core-manifest.py | 24 | CODE | |
| LOW | Scripts/tests/test_generate_cheatdb_dat.py | 5 | CODE | |
| LOW | Scripts/release/setup-release-secrets.py | 29 | CODE | |
| LOW | Scripts/generators/generate_contributors.py | 6 | CODE | |
| LOW | Scripts/generators/generate_contributors.py | 11 | CODE | |
| LOW | Scripts/generators/update_core_versions.py | 22 | CODE | |
| LOW | Scripts/generators/update_core_versions.py | 26 | CODE | |
| LOW | Scripts/generators/generate_default_skins.py | 16 | CODE | |
| LOW | Scripts/generators/generate_licenses.py | 26 | CODE | |
| LOW | Scripts/generators/generate_uti_declarations.py | 40 | CODE | |
| LOW | Scripts/generators/auto_translate.py | 28 | CODE | |
| LOW | Scripts/maint/test_maint.py | 8 | CODE | |
| LOW | Scripts/maint/server.py | 7 | CODE | |
| LOW | Scripts/maint/maint.py | 21 | CODE | |
| LOW | Scripts/cores/build_slice.py | 26 | CODE | |
| LOW | Scripts/cores/tests/test_build_slice.py | 3 | CODE | |
| LOW | .github/scripts/test_scheduled_workflow_staleness.py | 12 | CODE | |
| LOW | .github/scripts/scheduled-workflow-staleness.py | 23 | CODE | |
| LOW | .github/actions/testflight-distribute/distribute.py | 40 | CODE | |
| LOW | …Plus/Sources/libpng/png/contrib/pngexif/pngexifinfo.py | 12 | CODE | |
| LOW | …Plus/Sources/libpng/png/contrib/pngexif/pngexifinfo.py | 12 | CODE | |
| LOW | …Plus/Sources/libpng/png/contrib/pngexif/pngexifinfo.py | 12 | CODE | |
| LOW | …n64Plus/Sources/libpng/png/contrib/pngexif/exifinfo.py | 12 | CODE | |
| LOW | …n64Plus/Sources/libpng/png/contrib/pngexif/exifinfo.py | 12 | CODE | |
| LOW | …n64Plus/Sources/libpng/png/contrib/pngexif/exifinfo.py | 12 | CODE | |
| LOW | …n64Plus/Sources/libpng/png/contrib/pngexif/bytepack.py | 12 | CODE | |
| LOW | …n64Plus/Sources/libpng/png/contrib/pngexif/bytepack.py | 12 | CODE | |
| LOW | …n64Plus/Sources/libpng/png/contrib/pngexif/bytepack.py | 12 | CODE | |
| LOW | Cores/Dolphin/build_dolphin_core.py | 18 | CODE | |
| LOW | Cores/Dolphin/build_dolphin_core.py | 18 | CODE | |
| LOW | Cores/Dolphin/build_dolphin_core.py | 18 | CODE | |
| LOW | Cores/Dolphin/build_dolphin_core.py | 18 | CODE | |
| LOW | Cores/Dolphin/build_dolphin_core.py | 18 | CODE | |
| LOW | Cores/Dolphin/cmake/xcode_absolute_path_to_relative.py | 2 | CODE | |
| LOW | Cores/PPSSPP/cmake/xcode_absolute_path_to_relative.py | 2 | CODE | |
| LOW | CoresRetro/RetroArch/scripts/update_core_licenses.py | 21 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Scripts/audits/check_pbxproj_sources.py | 99 | CODE | |
| LOW | Scripts/audits/check_pbxproj_sources.py | 182 | CODE | |
| LOW | Scripts/audits/check_pbxproj_sources.py | 118 | CODE | |
| LOW | Scripts/audits/audit_controls.py | 97 | CODE | |
| LOW | Scripts/audits/audit_controls.py | 273 | CODE | |
| LOW | Scripts/audits/audit_controls.py | 345 | CODE | |
| LOW | Scripts/audits/diff_systems_plists.py | 85 | CODE | |
| LOW | Scripts/audits/scan_ios_binaries.py | 64 | CODE | |
| LOW | Scripts/audits/scan_ios_binaries.py | 90 | CODE | |
| LOW | Scripts/ci/ci-core-manifest.py | 71 | CODE | |
| LOW | Scripts/ci/ci-core-manifest.py | 159 | CODE | |
| LOW | Scripts/release/setup-release-secrets.py | 671 | CODE | |
| LOW | Scripts/generators/update_core_versions.py | 222 | CODE | |
| LOW | Scripts/generators/update_core_versions.py | 385 | CODE | |
| LOW | Scripts/generators/generate_core_lists.py | 55 | CODE | |
| LOW | Scripts/generators/generate_core_lists.py | 81 | CODE | |
| LOW | Scripts/generators/generate_core_lists.py | 615 | CODE | |
| LOW | Scripts/generators/generate_core_lists.py | 642 | CODE | |
| LOW | Scripts/generators/generate_core_lists.py | 96 | CODE | |
| LOW | Scripts/generators/generate_core_lists.py | 671 | CODE | |
| LOW | Scripts/generators/generate_default_skins.py | 135 | CODE | |
| LOW | Scripts/generators/generate_cheatdb.py | 247 | CODE | |
| LOW | Scripts/generators/generate_licenses.py | 181 | CODE | |
| LOW | Scripts/generators/scrape_skin_catalog.py | 254 | CODE | |
| LOW | Scripts/generators/scrape_skin_catalog.py | 362 | CODE | |
| LOW | Scripts/generators/scrape_skin_catalog.py | 457 | CODE | |
| LOW | Scripts/maint/test_maint.py | 337 | CODE | |
| LOW | Scripts/maint/server.py | 95 | CODE | |
| LOW | Scripts/maint/server.py | 122 | CODE | |
| LOW | Scripts/maint/maint.py | 306 | CODE | |
| LOW | Scripts/maint/maint.py | 436 | CODE | |
| LOW | Scripts/maint/maint.py | 518 | CODE | |
| LOW | Scripts/maint/maint.py | 843 | CODE | |
| LOW | Scripts/cores/build_slice.py | 144 | CODE | |
| LOW | .github/scripts/test_scheduled_workflow_staleness.py | 286 | CODE | |
| LOW | .github/scripts/scheduled-workflow-staleness.py | 74 | CODE | |
| LOW | .github/scripts/scheduled-workflow-staleness.py | 183 | CODE | |
| LOW | …Plus/Sources/libpng/png/contrib/pngexif/pngexifinfo.py | 54 | CODE | |
| LOW | …n64Plus/Sources/libpng/png/contrib/pngexif/exifinfo.py | 170 | CODE | |
| LOW | Cores/Dolphin/cmake/xcode_absolute_path_to_relative.py | 81 | CODE | |
| LOW | Cores/PPSSPP/cmake/xcode_absolute_path_to_relative.py | 82 | CODE | |
| LOW | …/emuThree/lib/vma/tools/GpuMemDumpVis/GpuMemDumpVis.py | 142 | CODE | |
| LOW | …/emuThree/lib/vma/tools/GpuMemDumpVis/GpuMemDumpVis.py | 190 | CODE | |
| LOW | CoresRetro/RetroArch/scripts/update_core_licenses.py | 269 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | PVLookup/Scripts/generate_cheatdb_if_needed.sh | 8 | # Usage: | COMMENT |
| LOW | …port/Sources/PVQuickLookSupport/GameMetadataCard.swift | 19 | /// Usage example: | COMMENT |
| LOW | Scripts/release/bump-version.sh | 4 | # Usage: | COMMENT |
| LOW | Scripts/release/capture-gameplay-screenshots.sh | 11 | # Usage: | COMMENT |
| LOW | Scripts/release/release.sh | 7 | # Usage: | COMMENT |
| LOW | Scripts/release/media-assets.sh | 13 | # Usage: | COMMENT |
| LOW | Cores/Mupen64Plus/project.yml | 4 | ## Usage: | COMMENT |
| LOW | Cores/PicoDrive/generate_package_sources.sh | 10 | # Usage: | COMMENT |
| LOW | CoresRetro/RetroArch/scripts/local-dylibs.sh | 14 | # Usage: | COMMENT |
| LOW | CoresRetro/RetroArch/scripts/check-dylib-updates.sh | 4 | # Usage: | COMMENT |
| LOW | CoresRetro/RetroArch/scripts/update-dylib-pins.sh | 4 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | TODO.md | 172 | - [ ] **Epic 10: DriverKit & USB Peripherals** (#3201) — PVUSBManager + DriverKit scaffold + StoreKit IAP done; remainin | CODE |
| MEDIUM | …/plans/2026-10-07-programmatic-touch-overlay-phase1.md | 112 | ### Task 1: Package scaffold and core model types | COMMENT |
| MEDIUM | …powers/specs/2026-05-29-thin-wrapper-netplay-design.md | 386 | ### 6.1 MVP (small — finishes existing scaffolding) | COMMENT |
| MEDIUM | .github/workflows/ai-review.yml | 11 | # fix_ai_review → fixer pushes → push triggers ai-review.yml again (event-driven) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | Scripts/release/asc_certs.py | 152 | except (OSError, subprocess.TimeoutExpired): | CODE |
| HIGH | Scripts/release/asc_certs.py | 120 | except (ValueError, AttributeError): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | Scripts/maint/maint.py | 708 | "command -v python3 >/dev/null 2>&1 || exit 0\n" | CODE |
| HIGH | .github/scripts/scheduled-workflow-staleness.py | 330 | `conclusion` is null) are never mistaken for anything. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …er/Services/GameImporter/GameImporterFileService.swift | 40 | //TODO: implement me | COMMENT |
| LOW | PVCoreBridgeRetro/Sources/retro/retroarch.h | 26 | // TODO: Fix logging | COMMENT |
| LOW | …ources/Plugins/Video/gliden64/src/uCodes/ZSortBOSS.cpp | 528 | // TODO: implement light vertex if ever needed | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Dependencies/LzhArchive/Sources/lhasa/lib/lha_reader.c | 91 | // created immediately - instead, "placeholder" files are created | COMMENT |
| LOW | Dependencies/LzhArchive/Sources/lhasa/lib/lha_reader.c | 731 | * Create a "placeholder" symbolic link. | COMMENT |
| LOW | Dependencies/LzhArchive/Sources/lhasa/lib/lha_reader.c | 734 | * immediately, create a "placeholder" empty file to go in its place, and | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Scripts/maint/maint.py | 291 | def update_state(mutator: Callable[[dict], None]) -> None: | CODE |