Build ultra fast, tiny, and cross-platform desktop apps with TypeScript, Zig, Rust, Go, or Odin.
This report summarizes scanner evidence for blackboardsh/electrobun, a Zig project with 12,992 GitHub stars. SynthScan examined 184,166 lines of code across 795 source files, recording 385 pattern matches distributed across 12 syntactic categories. The legacy adjusted pattern signal is 2.2 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
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? 335 finding(s).
Are imports declared and package/API names verified? 25 finding(s).
Are wrappers, guards, and repeated structures necessary? 260 finding(s).
Which changes need focused human review? 385 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 385 distinct pattern matches across 12 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⚡ | scripts/desktop-smoke/test_preflight.py | 32 | def test_valid_geometry_returns_one_integer_center(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_preflight.py | 40 | def test_unmapped_unviewable_and_unlaid_out_widgets_are_not_ready(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_preflight.py | 50 | def test_target_must_be_strictly_inside_root_and_screen(self): | CODE |
| LOW | scripts/desktop-smoke/test_preflight.py | 73 | def test_valid_center_cannot_be_a_configured_failsafe_point(self): | CODE |
| LOW | scripts/desktop-smoke/test_preflight.py | 220 | def test_delayed_geometry_receives_no_input_until_ready(self): | CODE |
| LOW | scripts/desktop-smoke/test_preflight.py | 231 | def test_ready_geometry_preserves_original_three_second_pumping(self): | CODE |
| LOW | scripts/desktop-smoke/test_preflight.py | 238 | def test_never_ready_times_out_without_input_or_capture(self): | CODE |
| LOW | scripts/desktop-smoke/test_preflight.py | 252 | def test_geometry_ready_at_or_after_the_deadline_receives_no_input(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_preflight.py | 263 | def test_xdotool_and_click_reuse_the_same_frozen_integer_center(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_preflight.py | 270 | def test_real_click_callback_is_still_required(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_preflight.py | 279 | def test_visible_probe_pixel_proof_is_still_required(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_preflight.py | 286 | def test_failsafe_exception_propagates_without_retry(self): | CODE |
| LOW | scripts/desktop-smoke/test_preflight.py | 299 | def test_diagnostic_write_or_destroy_failure_preserves_original_failsafe(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_picker.py | 41 | def test_picker_uses_beta_arrows_and_name_prompt(self): | STRING |
| LOW⚡ | scripts/desktop-smoke/test_picker.py | 45 | def test_stable_picker_omits_beta_flag(self): | STRING |
| LOW⚡ | scripts/desktop-smoke/test_picker.py | 49 | def test_init_failure_is_not_accepted(self): | STRING |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 48 | def test_present_text_short_circuits_remaining_ocr_passes(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 56 | def test_absence_requires_every_region_and_decreasing_subprocess_budgets(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 64 | def test_later_region_can_find_text_without_false_absence(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 69 | def test_slow_matching_or_empty_ocr_cannot_succeed_after_analysis_deadline(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 78 | def test_ocr_timeout_or_read_error_never_becomes_absence(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 219 | def test_timely_closed_frame_can_finish_analysis_after_response_deadline(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 227 | def test_presence_has_same_separate_capture_and_analysis_semantics(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 233 | def test_each_failed_observation_uses_a_fresh_frame_without_extending_deadlines(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 244 | def test_late_capture_is_rejected_before_ocr_even_when_it_shows_closed_dialog(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 252 | def test_capture_completed_exactly_at_response_deadline_is_eligible(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 257 | def test_analysis_overrun_cannot_pass_a_timely_closed_frame(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 265 | def test_slow_first_nonmatch_does_not_block_timely_presence_captures(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 274 | def test_arm_capture_and_ocr_costs_still_preserve_a_timely_later_frame(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 284 | def test_late_capture_cannot_replace_or_invalidate_an_earlier_matching_frame(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 292 | def test_poll_wait_is_clamped_and_no_capture_starts_at_expired_deadline(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 301 | def test_ocr_errors_and_capture_errors_preserve_failure_and_evidence(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 808 | def test_native_only_success_is_fixed_before_summary_and_adds_no_waits_or_screenshots(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 818 | def test_native_only_diagnostic_errors_preserve_original_assertion(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 825 | def test_native_only_thread_errors_preserve_both_outcomes_and_do_not_stop_later_evidence(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 848 | def test_native_only_rejects_a_window_outside_the_launched_process_tree(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 856 | def test_native_only_reused_hwnd_never_redirects_samples_or_crops_another_process(self): | CODE |
| LOW⚡ | scripts/desktop-smoke/test_desktop.py | 864 | def test_native_only_rejects_pid_reuse_between_discovery_and_the_first_state_read(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 90 | def test_expired_budget_never_starts_unbounded_zero_timeout_ocr(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 96 | def test_region_generation_time_counts_toward_analysis_deadline(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 107 | def test_empty_region_set_cannot_establish_absence(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 133 | def test_ocr_runs_off_caller_and_cancellation_prevents_another_pass_and_joins(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 314 | def test_app_crash_during_ocr_prevents_success(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 321 | def test_unfinished_analysis_is_cancelled_and_cannot_revise_a_deadline_failure(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 332 | def test_capture_error_cancels_pending_ocr_and_keeps_original_failure(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 341 | def test_cleanup_error_does_not_replace_capture_failure(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 442 | def test_presence_and_absence_observe_fresh_frames_after_exactly_one_original_click(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 454 | def test_later_failure_screenshot_cannot_replace_original_deadline_evidence(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 499 | def test_windows_observation_preserves_hwnd_width_and_child_hit_and_bounds_z_order(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 521 | def test_activation_records_original_calls_once_and_never_adds_input(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 589 | def test_diagnostics_are_opt_in_and_add_no_delay_to_original_assertion(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 603 | def test_diagnostic_read_and_capture_errors_preserve_original_failure(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 608 | def test_post_failure_never_follows_reused_hwnd_to_another_pid(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 797 | def test_native_only_failure_observes_after_original_assertion_and_keeps_late_paint_a_failure(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 836 | def test_native_only_disabled_or_nonwindows_has_no_diagnostic_side_effects(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 876 | def test_post_failure_observation_stops_when_its_remaining_time_cannot_cover_another_wait(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 933 | def test_dispatcher_and_direct_child_reads_filter_pid_and_preserve_full_hwnd(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 953 | def test_foreign_process_threads_cannot_establish_a_match(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 962 | def test_window_thread_enumeration_caps_native_reads_even_when_more_windows_exist(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 974 | def test_window_thread_enumeration_stops_on_a_cycle_without_rereading_the_owner(self): | CODE |
| 172 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kitchen/src/tests/session.test.ts | 61 | // // Just test that the call doesn't throw | COMMENT |
| LOW | kitchen/src/tests/session.test.ts | 81 | // category: "Session", | COMMENT |
| LOW | kitchen/src/tests/session.test.ts | 101 | COMMENT | |
| LOW | kitchen/src/tests/interactive/permissions.test.ts | 1 | // Interactive Permission Prompt Tests | COMMENT |
| LOW | package/src/native/macos/nativeWrapper.mm | 1 | /* | COMMENT |
| LOW | package/src/native/macos/nativeWrapper.mm | 21 | static bool wgpuDebugEnabled() { | COMMENT |
| LOW | package/src/native/macos/nativeWrapper.mm | 41 | #include "include/base/cef_logging.h" | COMMENT |
| LOW | package/src/native/macos/nativeWrapper.mm | 61 | #include <cstdint> | COMMENT |
| LOW | package/src/native/macos/nativeWrapper.mm | 81 | #include "../shared/glob_match.h" | COMMENT |
| LOW | package/src/native/macos/nativeWrapper.mm | 7441 | COMMENT | |
| LOW | package/src/native/win/nativeWrapper.cpp | 1 | #include <winsock2.h> // Must come before Windows.h | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 21 | #include <filesystem> | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 41 | #include <shobjidl.h> // For IFileOpenDialog | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 61 | #include "../shared/glob_match.h" | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 81 | #include "../shared/chromium_flags.h" | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 381 | #undef GetFirstChild | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 401 | #pragma pop_macro("GetNextSibling") | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 4181 | // NOTE: WebView2 visual masking is not supported. | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 5181 | } | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 12161 | COMMENT | |
| LOW | package/src/native/win/nativeWrapper.cpp | 13061 | // else: default titleBarStyle = WS_OVERLAPPEDWINDOW (standard window) | COMMENT |
| LOW | package/src/native/win/dcomp_compositor.h | 1 | // dcomp_compositor.h — DirectComposition GPU surface compositor for Windows | COMMENT |
| LOW | package/src/native/shared/windows_profile_paths.h | 1 | #ifndef ELECTROBUN_WINDOWS_PROFILE_PATHS_H | COMMENT |
| LOW | package/src/native/shared/cef_response_filter.h | 1 | // cef_response_filter.h - Cross-platform CEF response filter for preload script injection | COMMENT |
| LOW | package/src/native/shared/json_menu_parser.h | 1 | // json_menu_parser.h - Cross-platform simple JSON menu parser | COMMENT |
| LOW | package/src/native/shared/thread_safe_map.h | 1 | // thread_safe_map.h - Cross-platform thread-safe map template | COMMENT |
| LOW | package/src/native/shared/download_event.h | 1 | // download_event.h - Cross-platform download event structures | COMMENT |
| LOW | package/src/native/shared/windows_ui_test.cpp | 1 | #include <algorithm> | COMMENT |
| LOW | package/src/native/shared/permissions.h | 1 | // permissions.h - Cross-platform permission cache management | COMMENT |
| LOW | package/src/native/shared/navigation_rules.h | 1 | // navigation_rules.h - Cross-platform navigation rules checking | COMMENT |
| LOW | package/src/native/shared/asar.h | 1 | // asar.h - Cross-platform ASAR archive C FFI declarations | COMMENT |
| LOW | package/src/native/shared/shutdown_guard.h | 1 | // shutdown_guard.h - Cross-platform shutdown state management | COMMENT |
| LOW | package/src/native/shared/permissions_cef.h | 1 | // permissions_cef.h - CEF-aware permission helpers | COMMENT |
| LOW | package/src/native/shared/windows_utf.h | 1 | #ifndef ELECTROBUN_WINDOWS_UTF_H | COMMENT |
| LOW | package/src/native/shared/ffi_helpers.h | 1 | // ffi_helpers.h - Cross-platform FFI helper utilities | COMMENT |
| LOW | package/src/native/shared/webview_storage.h | 1 | // webview_storage.h - Cross-platform webview content storage | COMMENT |
| LOW | package/src/native/shared/cache_migration.h | 1 | // cache_migration.h - One-shot CEF cache folder wipe on Electrobun upgrades. | COMMENT |
| LOW | package/src/native/shared/cache_migration.h | 21 | // "old layout" that needs wiping. | COMMENT |
| LOW | package/src/native/shared/cache_migration.h | 41 | #include <exception> | COMMENT |
| LOW | package/src/native/shared/partition_context.h | 1 | // partition_context.h - Cross-platform CEF partition (CefRequestContext) management. | COMMENT |
| LOW | package/src/native/shared/partition_context.h | 21 | // - partition starts with "persist:" → cached per identifier; first call creates | COMMENT |
| LOW | package/src/native/shared/mime_types.h | 1 | // mime_types.h - Cross-platform MIME type detection | COMMENT |
| LOW | package/src/native/shared/glob_match.h | 1 | // glob_match.h - Cross-platform glob pattern matching utility | COMMENT |
| LOW | package/src/native/shared/chromium_flags.h | 1 | // chromium_flags.h - Cross-platform Chromium CLI flag passthrough | COMMENT |
| LOW | package/src/native/linux/wayland_pipewire_capture.cpp | 1 | #include "wayland_pipewire_capture.h" | COMMENT |
| LOW | package/src/native/linux/nativeWrapper.cpp | 1 | #include <gtk/gtk.h> | COMMENT |
| LOW | package/src/native/linux/nativeWrapper.cpp | 21 | #include <string> | COMMENT |
| LOW | package/src/native/linux/nativeWrapper.cpp | 41 | #include "../shared/deferred_navigation.h" | COMMENT |
| LOW | package/src/native/linux/nativeWrapper.cpp | 61 | #include "../shared/asar.h" | COMMENT |
| LOW | package/src/native/linux/nativeWrapper.cpp | 121 | static std::atomic<int> g_activeOperations{0}; | COMMENT |
| LOW | package/src/native/linux/nativeWrapper.cpp | 141 | #include "include/cef_context_menu_handler.h" | COMMENT |
| LOW | package/src/native/linux/nativeWrapper.cpp | 1961 | // Analyze toolkit based on class names | COMMENT |
| LOW | package/src/native/linux/wayland_screen_capture.cpp | 1 | #include "wayland_screen_capture.h" | COMMENT |
| LOW | …/src/native/linux/tests/window_resize_handles_test.cpp | 1 | #include <gtk/gtk.h> | COMMENT |
| LOW | package/src/shared/odin-version.ts | 1 | // Default Odin toolchain release used to compile Odin main processes. | COMMENT |
| LOW | package/src/shared/cottontail-version.ts | 1 | // Cottontail is an opt-in Electrobun application runtime. This is the | COMMENT |
| LOW | package/src/shared/warren/reactive.ts | 1 | // Warren — reactivity core. | COMMENT |
| LOW | package/src/shared/warren/jsx.ts | 1 | // Warren JSX core — renderer-agnostic. | COMMENT |
| LOW | package/src/preload/index.ts | 1 | // Electrobun Full Preload Script (for trusted webviews) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/desktop-smoke/picker.py | 34 | except Exception as error: | CODE |
| MEDIUM | scripts/desktop-smoke/picker.py | 25 | def read(): | CODE |
| LOW | scripts/desktop-smoke/preflight.py | 101 | except Exception as error: | CODE |
| LOW⚡ | scripts/desktop-smoke/preflight.py | 112 | except Exception as error: | CODE |
| LOW⚡ | scripts/desktop-smoke/preflight.py | 117 | except Exception: | CODE |
| LOW⚡ | scripts/desktop-smoke/preflight.py | 123 | except Exception: | CODE |
| MEDIUM | scripts/desktop-smoke/desktop.py | 257 | def record(self, label, handle, activation=None): | CODE |
| MEDIUM | scripts/desktop-smoke/desktop.py | 277 | def record_pointer(self, gui, label): | CODE |
| LOW⚡ | scripts/desktop-smoke/desktop.py | 1178 | except Exception as error: | CODE |
| LOW⚡ | scripts/desktop-smoke/desktop.py | 1183 | except Exception as capture_error: | CODE |
| LOW⚡ | scripts/desktop-smoke/desktop.py | 1190 | except Exception as diagnostic_failure: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 273 | except Exception as error: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 283 | except Exception as error: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 310 | except Exception as error: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 348 | except Exception as error: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 353 | except Exception as error: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 723 | except Exception as error: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 742 | except Exception as failure: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 846 | except Exception as error: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 855 | except Exception as error: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 891 | except Exception as error: | CODE |
| LOW | scripts/desktop-smoke/desktop.py | 943 | except Exception as error: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/desktop-smoke/test_desktop.py | 465 | def fake_user(self): | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 501 | user, target, child, other = self.fake_user() | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 522 | user, target, _, _ = self.fake_user() | CODE |
| LOW | scripts/desktop-smoke/test_desktop.py | 643 | user, handle, _, _ = WindowsDiagnosticTests().fake_user() | CODE |
| LOW | kitchen/src/tests/interactive/native-ui.test.tsx | 209 | <p style="-webkit-line-clamp: 2; display: -webkit-box; overflow: hidden">Line clamp: Lorem ipsum dolor sit amet, c | CODE |
| LOW | kitchen/src/tests/interactive/native-ui.test.tsx | 209 | <p style="-webkit-line-clamp: 2; display: -webkit-box; overflow: hidden">Line clamp: Lorem ipsum dolor sit amet, c | CODE |
| LOW | kitchen/src/playgrounds/host-message/index.html | 137 | <span class="placeholder">Waiting for messages from the nested webview...</span> | CODE |
| LOW | kitchen/src/playgrounds/quit-test/index.html | 55 | <span class="placeholder">Events will appear here...</span> | CODE |
| LOW | kitchen/src/playgrounds/quit-test/index.ts | 61 | eventLogEl.innerHTML = `<span class="placeholder">Events will appear here...</span>`; | CODE |
| LOW | kitchen/src/playgrounds/tray/index.html | 67 | <span class="placeholder">Tray events will appear here...</span> | CODE |
| LOW | kitchen/src/playgrounds/webview-settings/index.html | 55 | <div id="emptyMsg" class="placeholder">No webviews yet. Click "+ Add Webview" above.</div> | CODE |
| LOW | kitchen/src/playgrounds/shortcuts/index.html | 42 | <span class="placeholder">No shortcuts registered yet.</span> | CODE |
| LOW | kitchen/src/playgrounds/shortcuts/index.html | 49 | <span class="placeholder">Shortcut triggers will appear here...</span> | CODE |
| LOW | kitchen/src/playgrounds/shortcuts/index.ts | 126 | activeShortcutsEl.innerHTML = `<span class="placeholder">No shortcuts registered yet.</span>`; | CODE |
| LOW | kitchen/src/playgrounds/shortcuts/index.ts | 175 | eventLogEl.innerHTML = `<span class="placeholder">Shortcut triggers will appear here...</span>`; | CODE |
| LOW | kitchen/src/playgrounds/file-dialog/index.html | 69 | <span class="placeholder">No result yet. Click "Open File Dialog" to test.</span> | CODE |
| LOW | kitchen/src/playgrounds/file-dialog/index.html | 76 | <span class="placeholder">Previous results will appear here.</span> | CODE |
| LOW | kitchen/src/playgrounds/file-dialog/index.ts | 114 | historyBox.innerHTML = `<span class="placeholder">Previous results will appear here.</span>`; | CODE |
| LOW | kitchen/src/playgrounds/clipboard/index.html | 24 | <span class="placeholder">Click "Read Clipboard" to see contents...</span> | CODE |
| LOW | kitchen/src/playgrounds/clipboard/index.html | 27 | <span class="placeholder">Available formats will appear here...</span> | CODE |
| LOW | kitchen/src/playgrounds/clipboard/index.html | 50 | <span class="placeholder">Clipboard operations will appear here...</span> | CODE |
| LOW | kitchen/src/playgrounds/clipboard/index.ts | 49 | readResult.innerHTML = `<span class="placeholder">(empty or no text content)</span>`; | CODE |
| LOW | kitchen/src/playgrounds/clipboard/index.ts | 56 | formatsEl.innerHTML = `<span class="placeholder">No format information available</span>`; | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11677 | // Step 1: Init DComp compositor (visual tree) on main thread | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11687 | // Step 2: Get Dawn's DX12 device to find the DXGI adapter | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11694 | // Step 3: Create dedicated presentation D3D11 device on Dawn's adapter | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11737 | // Step 4: Create swap chain on the presentation device | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11747 | // Step 5: Create DX12 staging texture with shared access | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11770 | // Step 6: Create DXGI shared handle | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11779 | // Step 7: Set up bidirectional cross-device synchronization. EndAccess | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 11813 | // Step 8: Open shared handle on presentation device for CopyResource | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 11826 | // Step 9: Import into Dawn via SharedTextureMemory | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 11850 | // Step 10: Create WGPUTexture from SharedTextureMemory | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11677 | // Step 1: Init DComp compositor (visual tree) on main thread | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11687 | // Step 2: Get Dawn's DX12 device to find the DXGI adapter | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11694 | // Step 3: Create dedicated presentation D3D11 device on Dawn's adapter | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11737 | // Step 4: Create swap chain on the presentation device | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11747 | // Step 5: Create DX12 staging texture with shared access | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11770 | // Step 6: Create DXGI shared handle | COMMENT |
| LOW⚡ | package/src/native/win/nativeWrapper.cpp | 11779 | // Step 7: Set up bidirectional cross-device synchronization. EndAccess | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 11813 | // Step 8: Open shared handle on presentation device for CopyResource | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 11826 | // Step 9: Import into Dawn via SharedTextureMemory | COMMENT |
| LOW | package/src/native/win/nativeWrapper.cpp | 11850 | // Step 10: Create WGPUTexture from SharedTextureMemory | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | scripts/desktop-smoke/picker.py | 32 | except (EOFError, OSError): | CODE |
| HIGH | scripts/desktop-smoke/test_desktop.py | 1071 | except ProcessLookupError: | CODE |
| HIGH | scripts/desktop-smoke/desktop.py | 443 | except ProcessLookupError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/desktop-smoke/picker.py | 15 | CODE | |
| LOW | scripts/desktop-smoke/test_preflight.py | 197 | CODE | |
| LOW | scripts/desktop-smoke/test_desktop.py | 352 | CODE | |
| LOW | scripts/desktop-smoke/test_desktop.py | 629 | CODE | |
| LOW | scripts/desktop-smoke/test_desktop.py | 1038 | CODE | |
| LOW | scripts/desktop-smoke/test_desktop.py | 1163 | CODE | |
| LOW | scripts/desktop-smoke/test_desktop.py | 1183 | CODE | |
| LOW | scripts/desktop-smoke/test_desktop.py | 1306 | CODE | |
| LOW | scripts/desktop-smoke/preflight.py | 38 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 179 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 357 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 457 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 545 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 626 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 763 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 864 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 461 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 491 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 946 | CODE | |
| LOW | package/src/ui-core/testdata/images/gen.py | 46 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | scripts/desktop-smoke/desktop.py | 150 | $entry = [ordered]@{ threadId = $_.Id; startTimeUtc = $null } | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | kitchen/src/rust/webview_observations.rs | 137 | observations.record(18, "did-navigate", r#" { "url" : "views:\/\/test-harness\/index.html?q=\u2713", "extra": tr | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/desktop-smoke/test_desktop.py | 169 | CODE | |
| LOW | scripts/desktop-smoke/test_desktop.py | 629 | CODE | |
| LOW | scripts/desktop-smoke/desktop.py | 763 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/desktop-smoke/test_picker.py | 3 | CODE |