Open source Loom alternative. Beautiful, shareable screen recordings.
This report summarizes scanner evidence for CapSoftware/Cap, a Rust project with 24,185 GitHub stars. SynthScan examined 1,184,930 lines of code across 3378 source files, recording 1118 pattern matches distributed across 16 syntactic categories. The legacy adjusted pattern signal is 1.4 (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? 996 finding(s).
Are imports declared and package/API names verified? 96 finding(s).
Are wrappers, guards, and repeated structures necessary? 576 finding(s).
Which changes need focused human review? 1118 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 1118 distinct pattern matches across 16 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 | capcodec/bench/corpus/generate.py | 568 | def focus_largest_chrome_window(disp): | CODE |
| LOW | scripts/test-audio-intelligibility.py | 13 | def test_delayed_or_advanced_audio_scores_the_same_overlapping_speech(self): | CODE |
| LOW | scripts/test-audio-intelligibility.py | 30 | def test_input_and_output_use_the_same_trimmed_reference(self): | CODE |
| LOW⚡ | scripts/test-instant-mode-performance.py | 39 | def test_cpu_includes_the_first_measured_interval(self): | CODE |
| LOW⚡ | scripts/test-instant-mode-performance.py | 48 | def test_cpu_weights_unequal_intervals_and_sums_processes(self): | CODE |
| LOW⚡ | scripts/test-instant-mode-performance.py | 56 | def test_single_sample_has_cpu_but_no_counter_rate(self): | CODE |
| LOW⚡ | scripts/test-instant-mode-performance.py | 61 | def test_missing_process_or_sample_cannot_be_complete(self): | CODE |
| LOW⚡ | scripts/test-instant-mode-performance.py | 70 | def test_incomplete_phases_do_not_enter_comparison_aggregates(self): | CODE |
| LOW⚡ | scripts/test-instant-mode-performance.py | 79 | def test_encoder_descendants_are_counted_once(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 42 | def test_complete_events_require_order_and_saved_metadata(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 48 | def test_error_event_cannot_be_hidden_by_successful_stop(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 53 | def test_malformed_json_duplicate_keys_and_nonfinite_values_rejected(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 58 | def test_success_event_cannot_reference_a_different_project(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 62 | def test_zero_exit_and_error_log_is_not_clean_json(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 66 | def test_missing_requested_tracks_fail_even_if_cli_valid_is_true(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 71 | def test_existing_video_is_not_a_camera_or_audio_substitute(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 76 | def test_invalid_project_report_cannot_pass_from_existing_files(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 81 | def test_empty_artifact_and_path_escape_rejected(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 91 | def test_symlink_inside_project_cannot_hide_outside_artifact(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 100 | def test_duration_frozen_frame_count_and_missing_stream_rejected(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 106 | def test_silent_audio_is_not_a_pass(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 112 | def test_packet_timestamps_preserve_reordered_presentation_and_audio_preroll(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 122 | def test_duplicate_reversed_and_missing_packet_timestamps_fail(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 134 | def test_pending_and_failed_requirements_cannot_become_success(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 140 | def test_existing_root_is_never_replaced(self): | CODE |
| LOW⚡ | scripts/test-recording-reliability.py | 148 | def test_owned_timeout_cannot_be_reported_as_success(self): | CODE |
| LOW | scripts/test-recording-reliability.py | 160 | def test_nonzero_child_with_success_json_remains_failed(self): | CODE |
| LOW | scripts/test-capbench.py | 78 | def test_playback_picks_full_and_scrub_totals(self): | STRING |
| LOW | scripts/test-capbench.py | 88 | def test_playback_runs_with_failed_frames_are_invalid(self): | STRING |
| LOW | scripts/test-capbench.py | 100 | def test_decode_runs_with_failed_reads_are_invalid(self): | STRING |
| LOW | scripts/test-capbench.py | 107 | def test_fixture_inside_the_work_directory_is_not_deleted(self): | STRING |
| LOW | scripts/test-capbench.py | 120 | def test_binaries_inside_the_work_directory_are_not_deleted(self): | STRING |
| LOW | scripts/test-capbench.py | 135 | def test_labels_that_are_not_plain_file_names_are_rejected(self): | STRING |
| LOW | scripts/test-capbench.py | 147 | def test_startup_check_finds_missing_helpers(self): | STRING |
| LOW | scripts/test-capbench.py | 156 | def test_export_progress_timing(self): | STRING |
| LOW⚡ | scripts/test-capbench.py | 169 | def test_export_problem_rejects_broken_exports(self): | STRING |
| LOW⚡ | scripts/test-capbench.py | 178 | def test_exports_ffprobe_cannot_read_are_invalid(self): | STRING |
| LOW⚡ | scripts/test-capbench.py | 187 | def test_compare_flags_only_separated_changes(self): | STRING |
| LOW | scripts/test-capbench.py | 198 | def test_invalid_recordings_fail_the_run(self): | STRING |
| LOW | scripts/test-capbench.py | 206 | def test_runs_missing_a_metric_are_invalid(self): | STRING |
| LOW | scripts/test-capbench.py | 217 | def test_variant_env_is_scoped_per_label(self): | STRING |
| LOW | scripts/test-capbench.py | 223 | def test_job_accounts_child_process_cpu(self): | STRING |
| LOW | scripts/instant-mode-performance-macos.py | 391 | def set_camera_preview_state_action(state): | CODE |
| LOW | scripts/instant-mode-performance-macos.py | 395 | def load_camera_preview_state(recordings_dir): | CODE |
| LOW | scripts/instant-mode-performance-macos.py | 919 | def wait_for_recording_complete(project, timeout=45): | CODE |
| LOW | scripts/instant-mode-performance-macos.py | 1048 | def project_validation_errors( | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 50 | def test_witness_frame_does_not_hide_new_classes_or_larger_deltas(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 60 | def test_continuous_metrics_require_three_independent_runs(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 64 | def test_continuous_overlap_and_one_resolution_step_are_not_worse(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 70 | def test_continuous_separated_ranges_are_worse(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 73 | def test_signed_offsets_compare_magnitude(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 76 | def test_timing_metric_outside_recording_cases_uses_distribution(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 79 | def test_reporter_precision_is_preserved_for_each_timing_unit(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 92 | def test_fresh_crash_counts_use_frame_resolution(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 98 | def test_missing_metric_is_insufficient_not_zero(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 103 | def test_new_fresh_class_needs_consistent_occurrence(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 110 | def test_legacy_instant_telemetry_preserves_signed_interval(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 119 | def test_legacy_normalization_does_not_override_measurements_or_invent_sources(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 128 | def test_legacy_and_current_instant_records_compare_equally(self): | CODE |
| LOW⚡ | scripts/verify/test_diff.py | 135 | def test_lost_coverage_is_worse_for_passing_and_failing_baselines(self): | CODE |
| 490 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | crates/recording/src/studio_recording.rs | 981 | let scope = self.lifetime.lifecycle.0.scope.child_transaction(); | CODE |
| CRITICAL | crates/recording/src/studio_recording.rs | 982 | let lifetime_completion = self.lifetime.lifecycle.0.scope.task_completion(); | CODE |
| CRITICAL | crates/recording/src/instant_recording.rs | 397 | self.lifetime.lifecycle.0.scope.cancel(); | CODE |
| CRITICAL | crates/camera-directshow/src/lib.rs | 156 | .then(|| OsString::from_wide(self.Anonymous.Anonymous.Anonymous.bstrVal.deref())) | CODE |
| CRITICAL | crates/editor/src/preparing_handoff.rs | 446 | self.handoff.0.state.changed.send_replace(self.revision); | CODE |
| CRITICAL | crates/editor/src/preparing_audio/mixer.rs | 361 | self.sources.project.audio.isolation.strength(), | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 982 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1042 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1126 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1133 | storage.bucket.getObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1184 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1205 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1237 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1258 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1298 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1329 | storage.bucket.headObject.mock.calls.filter( | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1334 | storage.bucket.getObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1345 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1350 | storage.bucket.getObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1406 | reads: storage.bucket.getObject.mock.calls.filter(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1429 | storage.bucket.getObject.mock.calls.map(([key]) => key), | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1445 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1533 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1774 | storage.bucket.multipart.copyPart.mock.calls.filter( | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1798 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 1898 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2373 | storage.bucket.getInternalSignedObjectUrl.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2648 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2665 | const copied = storage.bucket.copyObject.mock.calls.at(-1)?.[1]; | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2687 | const preparedCopy = storage.bucket.copyObject.mock.calls.find(([, key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2714 | storage.bucket.headObject.mock.calls.filter(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2724 | const listedPrefixes = storage.bucket.listObjects.mock.calls.map( | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2748 | storage.bucket.getObject.mock.calls.filter( | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2767 | storage.bucket.getObject.mock.calls.some( | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2792 | storage.bucket.putObject.mock.calls.filter(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2819 | storage.bucket.putObject.mock.calls.some(([key]) => | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2865 | storage.bucket.headObject.mock.calls.filter( | CODE |
| CRITICAL | …ps/web/__tests__/unit/desktop-recording-source.test.ts | 2881 | storage.bucket.headObject.mock.calls.filter( | CODE |
| CRITICAL | apps/web/__tests__/unit/sso-billing.test.ts | 348 | mocks.stripe.checkout.sessions.retrieve.mockImplementation( | CODE |
| CRITICAL | apps/web/__tests__/unit/sso-billing.test.ts | 356 | mocks.stripe.checkout.sessions.create.mockImplementation( | CODE |
| CRITICAL | apps/web/__tests__/unit/sso-billing.test.ts | 380 | mocks.stripe.checkout.sessions.expire.mockImplementation( | CODE |
| CRITICAL | apps/web/__tests__/unit/sso-billing.test.ts | 392 | mocks.stripe.billingPortal.sessions.create.mockResolvedValue({ | CODE |
| CRITICAL | apps/web/__tests__/unit/sso-billing.test.ts | 971 | mocks.stripe.checkout.sessions.create.mockImplementationOnce(async () => { | CODE |
| CRITICAL | apps/web/__tests__/unit/sso-billing.test.ts | 1013 | mocks.stripe.checkout.sessions.expire.mockImplementationOnce( | CODE |
| CRITICAL | apps/web/__tests__/unit/sso-billing.test.ts | 1032 | mocks.stripe.checkout.sessions.create.mockRejectedValueOnce( | CODE |
| CRITICAL | apps/web/__tests__/unit/sso-billing.test.ts | 1049 | const keys = mocks.stripe.checkout.sessions.create.mock.calls.map( | CODE |
| CRITICAL | apps/web/__tests__/unit/sso-billing.test.ts | 1078 | const keys = mocks.stripe.checkout.sessions.create.mock.calls.map( | CODE |
| CRITICAL | apps/desktop-gpui/src/editor_window.rs | 12603 | camera_x: editor.project.camera.position.x.clone(), | CODE |
| CRITICAL | apps/desktop-gpui/src/editor_window.rs | 12604 | camera_y: editor.project.camera.position.y.clone(), | CODE |
| CRITICAL | apps/desktop-gpui/src/editor_sidebar.rs | 2350 | .or_else(|| self.sidebar.animated_gradient.library.last_used.clone()) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .config/hakari.toml | 1 | # This file contains settings for `cargo hakari`. | COMMENT |
| LOW | infra/sst.config.ts | 241 | // namespaceId: "846b080b86914e2ba666d35acee35c9a", | COMMENT |
| LOW | crates/cursor-info/src/windows.rs | 141 | // Self::ScrollWE => todo!(), | COMMENT |
| LOW | crates/d3d-adapter/src/lib.rs | 1 | // Pinned-adapter selection for D3D11 / MediaFoundation pipelines. | COMMENT |
| LOW | crates/enc-avfoundation/src/mp4.rs | 81 | AppendError(arc::R<ns::Exception>), | COMMENT |
| LOW | crates/enc-avfoundation/src/mp4.rs | 941 | // post-resume frame ties against its pts and gets bumped +1us — | COMMENT |
| LOW | crates/verify/expectations.toml | 1 | # Strict expected failures for the engine verification suite | COMMENT |
| LOW | crates/verify/expectations.toml | 21 | # machine stall during the case) | COMMENT |
| LOW | crates/verify/expectations.toml | 281 | # reaches Cap's capture callback and Cap drops nothing. GitHub-hosted runners | COMMENT |
| LOW | crates/verify/tests/editing.rs | 1 | //! Editing oracle: seeded random sequences of timeline edits (split, delete, | COMMENT |
| LOW | crates/verify/tests/crash.rs | 1 | //! Crash safety of fragmented Studio recording: the out-of-process muxer | COMMENT |
| LOW | crates/verify/tests/recording.rs | 1 | //! Real-capture recording oracle (macOS). | COMMENT |
| LOW | crates/verify/tests/recording.rs | 161 | const SYSTEM_AUDIO_STARTUP: f64 = 1.0; | COMMENT |
| LOW | crates/verify/tests/recording.rs | 961 | /// (before the recording started or after it stopped). | COMMENT |
| LOW | crates/verify/tests/recording.rs | 1501 | case.note(format!("artifacts kept at {}", scratch.display())); | COMMENT |
| LOW | crates/verify/tests/recording.rs | 3081 | kind: StreamKind, | COMMENT |
| LOW | crates/verify/tests/recording.rs | 4261 | .into_iter() | COMMENT |
| LOW | crates/verify/tests/captions.rs | 1 | //! Captions oracle, with no transcription model anywhere: | COMMENT |
| LOW | crates/verify/tests/captions.rs | 21 | //! - `editor_open`: opening a project in the editor engine migrates and | COMMENT |
| LOW | crates/verify/tests/edits/mod.rs | 1 | //! Random timeline edits shared by `editing.rs` and `captions.rs`. | COMMENT |
| LOW | crates/verify/src/stimulus.rs | 1 | //! Real-capture stimulus: a helper process (`cap-verify-stimulus`) that shows | COMMENT |
| LOW | crates/verify/src/stimulus.rs | 21 | /// (start, length) seconds after `go` during which the picture is held. | COMMENT |
| LOW | crates/verify/src/fixture.rs | 1 | //! Fixture projects. Every fixture is generated by code from a spec and a | COMMENT |
| LOW | crates/verify/src/video_code.rs | 1 | //! Video frame markers. | COMMENT |
| LOW | crates/verify/src/sentinel.rs | 1 | //! Machine-starvation sentinel for the engine suites. | COMMENT |
| LOW | crates/verify/src/sched.rs | 1 | //! Real-time scheduling for the verification suite's input sources. | COMMENT |
| LOW | crates/verify/src/model.rs | 1 | //! Reference timeline model: what every output frame must show. | COMMENT |
| LOW | crates/verify/src/audio_model.rs | 1 | //! Reference model and oracle for audio: where every source marker must be | COMMENT |
| LOW | crates/verify/src/audio_model.rs | 21 | //! - Stale-startup repair: a track whose recording-meta gap summary reports | COMMENT |
| LOW | crates/verify/src/audio_model.rs | 61 | /// residue can correlate. Real markers are heard at 0.05 or more. | COMMENT |
| LOW | crates/camera/src/lib.rs | 181 | } | COMMENT |
| LOW | crates/camera/src/lib.rs | 201 | Native(windows_core::Error), | COMMENT |
| LOW | crates/recording/tests/hardware_studio_recording.rs | 1 | #![cfg(target_os = "macos")] | COMMENT |
| LOW | crates/recording/tests/windows_loopback.rs | 1 | //! Real-endpoint validation of the WASAPI loopback capture path. | COMMENT |
| LOW | crates/recording/tests/sync_matrix.rs | 1 | //! Synthetic device matrix for A/V sync. | COMMENT |
| LOW | crates/recording/tests/sync_matrix.rs | 381 | // a second or more either way. When the source over-delivers several | COMMENT |
| LOW | crates/recording/tests/sync_matrix.rs | 441 | // 5% absolute slack for boundary effects. The sent term stays as a | COMMENT |
| LOW | crates/recording/tests/sync_matrix.rs | 1301 | }); | COMMENT |
| LOW | crates/recording/tests/sync_matrix.rs | 1321 | // | COMMENT |
| LOW | crates/recording/tests/sync_matrix.rs | 1721 | /// One retry for a failed video case. A cold system pays one-time costs | COMMENT |
| LOW | crates/recording/examples/screenshot-pack-benchmark.rs | 1 | //! Compares the macOS fast-capture pixel packers in `src/screenshot.rs` before and after the | COMMENT |
| LOW | …es/recording/examples/vt-hwframe-real-capture-check.rs | 1 | //! Real-hardware engagement check for the zero-copy VideoToolbox encoder | COMMENT |
| LOW | crates/recording/examples/recording-cli.rs | 21 | let _ = std::fs::create_dir("/tmp/bruh"); | COMMENT |
| LOW | …ates/recording/examples/vt-hwframe-encode-benchmark.rs | 1 | //! Fragmented-recording encoder benchmark: software-frame VideoToolbox input | COMMENT |
| LOW | crates/recording/examples/linux-x11-e2e.rs | 1 | //! Headless end-to-end verification for the native x11rb screen-capture path. | COMMENT |
| LOW | crates/recording/src/output_validation.rs | 101 | ValidationResult { | COMMENT |
| LOW | crates/recording/src/track_heal.rs | 1 | //! Load-time repair for recordings whose video tracks were stamped at the | COMMENT |
| LOW | crates/recording/src/track_heal.rs | 121 | /// Camera must exceed the reference span by at least this factor… | COMMENT |
| LOW | crates/recording/src/track_heal.rs | 281 | COMMENT | |
| LOW | crates/recording/src/log_redaction.rs | 1 | //! Scrubs credentials out of log text before it leaves the machine. | COMMENT |
| LOW | crates/recording/src/sources/audio_mixer.rs | 901 | #[cfg(not(any(target_os = "macos", windows)))] | COMMENT |
| LOW | crates/recording/src/sources/screen_capture/cadence.rs | 1 | //! Caps a capture source's delivered frame rate at the pipeline's nominal | COMMENT |
| LOW | crates/recording/src/sources/screen_capture/cadence.rs | 21 | //! are admitted against a deadline ladder that advances one nominal | COMMENT |
| LOW | crates/recording/src/output_pipeline/core.rs | 1061 | let gap = capture_elapsed.saturating_sub(sample_based_elapsed); | COMMENT |
| LOW | crates/recording/src/output_pipeline/core.rs | 1241 | (output, candidate > bound) | COMMENT |
| LOW | crates/recording/src/output_pipeline/core.rs | 1401 | } | COMMENT |
| LOW | crates/recording/src/output_pipeline/core.rs | 1421 | fn waited_for_frame(&mut self, waited: bool) { | COMMENT |
| LOW | crates/recording/src/output_pipeline/core.rs | 7841 | COMMENT | |
| LOW | crates/recording/src/output_pipeline/macos.rs | 1341 | // The thread exited with an error: the encoder mutex is | COMMENT |
| LOW | crates/recording/src/output_pipeline/frame_pacing.rs | 1 | //! Repeats the last frame while a Windows video source is stalled, so the | COMMENT |
| 310 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | capcodec/bench/speedcmp.py | 122 | except OSError: | CODE |
| HIGH | capcodec/bench/speedcmp.py | 135 | except OSError: | CODE |
| HIGH | capcodec/bench/speedcmp.py | 159 | except OSError: | CODE |
| HIGH | capcodec/bench/speedcmp.py | 97 | except OSError: | CODE |
| HIGH | capcodec/bench/corpus/generate.py | 486 | except OSError: | CODE |
| HIGH | capcodec/bench/harness/metrics.py | 337 | except BrokenPipeError: | CODE |
| HIGH | capcodec/bench/harness/runner.py | 93 | except OSError: | CODE |
| HIGH | capcodec/bench/harness/common.py | 165 | except psutil.Error: | CODE |
| HIGH | capcodec/bench/harness/adapters/capcodec.py | 85 | except json.JSONDecodeError: | CODE |
| HIGH | capcodec/bench/harness/adapters/__init__.py | 23 | except ImportError: | CODE |
| HIGH | capcodec/bench/harness/adapters/__init__.py | 28 | except ImportError: | CODE |
| HIGH | capcodec/bench/harness/adapters/browser.py | 48 | except psutil.Error: | CODE |
| HIGH | capcodec/bench/harness/adapters/browser.py | 46 | except psutil.Error: | CODE |
| HIGH | scripts/verify/retry.py | 62 | except json.JSONDecodeError: | CODE |
| HIGH | apps/cli/skill/cap-demo/lib/treat.py | 326 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | crates/cap-test/src/main.rs | 20 | #[command(about = "Unified testing harness for Cap", long_about = None)] | COMMENT |
| MEDIUM | crates/audio/src/bin/av-sync-check.rs | 184 | /// noise floor — does not swallow real events. `frac` of the robust p5..p95 | COMMENT |
| MEDIUM | crates/audio/src/bin/av-sync-check.rs | 193 | // Floor from a low percentile (robust to a few dark/quiet outliers); peak from | COMMENT |
| LOW | capcodec/bench/corpus/pages/data/inflate_c.js | 2 | '/* inflate.c -- zlib decompression\n * Copyright (C) 1995-2022 Mark Adler\n * For conditions of distribution and use, | CODE |
| LOW | capcodec/bench/corpus/pages/data/difflib_py.js | 2 | "\"\"\"\nModule difflib -- helpers for computing deltas between objects.\n\nFunction get_close_matches(word, possibilit | CODE |
| MEDIUM | scripts/linux-desktop-harness/launch-cap.sh | 2 | # Launches Cap in a throwaway profile with the harness hooks. Usage: | COMMENT |
| MEDIUM | scripts/linux-desktop-harness/run-desktop.sh | 12 | # the vgem/vkms faux devices this harness renders with (Mesa 26.2 on Arch; on | COMMENT |
| MEDIUM | scripts/linux-desktop-harness/run-desktop.sh | 14 | # the layer off). Real GPUs are not affected, so the harness (not Cap) turns | COMMENT |
| MEDIUM | scripts/linux-desktop-harness/gnome-up.sh | 19 | # a harness target to it the way gnome-session's own targets do. | COMMENT |
| MEDIUM | scripts/linux-desktop-harness/report.sh | 2 | # Summarise one harness run directory: results, harness actions, Cap's own | COMMENT |
| MEDIUM | scripts/linux-desktop-harness/scenario-start-stop.sh | 53 | # entry of the menu it opens, with the pointer. Otherwise the harness | COMMENT |
| MEDIUM | scripts/verify/plan.py | 386 | # stimulus, their whole dependency closure, and the harness itself. | COMMENT |
| MEDIUM | .github/workflows/verify-recording.yml | 11 | # the stimulus's dependency closure or the harness (scripts/verify/plan.py | COMMENT |
| MEDIUM | .github/workflows/linux-desktop-reliability.yml | 5 | # containers (scripts/linux-desktop-harness). Each case starts a Display | COMMENT |
| MEDIUM | .github/workflows/linux-desktop-reliability.yml | 42 | # A pull request from a fork that changes only this workflow or the harness | COMMENT |
| MEDIUM | .github/workflows/linux-desktop-reliability.yml | 553 | # two, the screen-share dialog waits for a pick the harness never makes. | COMMENT |
| MEDIUM | apps/cli/src/selftest/measure.rs | 6 | //! robust offset and drift statistics. Positive offset means audio is late. | COMMENT |
| MEDIUM | apps/cli/src/selftest/measure.rs | 319 | /// robust to slope noise on short runs than the per-minute rate. | COMMENT |
| MEDIUM | apps/cli/src/selftest/measure.rs | 329 | /// and computes robust statistics. The first event after settle is dropped: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | capcodec/bench/speedcmp.py | 89 | CODE | |
| LOW | capcodec/bench/speedcmp.py | 127 | CODE | |
| LOW | capcodec/bench/speedcmp.py | 305 | CODE | |
| LOW | capcodec/bench/scoreboard.py | 45 | CODE | |
| LOW | capcodec/bench/scoreboard.py | 73 | CODE | |
| LOW | capcodec/bench/corpus/scenarios.py | 196 | CODE | |
| LOW | capcodec/bench/corpus/playback.py | 167 | CODE | |
| LOW | capcodec/bench/corpus/generate.py | 547 | CODE | |
| LOW | capcodec/bench/corpus/generate.py | 767 | CODE | |
| LOW | capcodec/bench/corpus/generate.py | 1333 | CODE | |
| LOW | capcodec/bench/corpus/generate.py | 1420 | CODE | |
| LOW | capcodec/bench/corpus/sideinfo.py | 60 | CODE | |
| LOW | capcodec/bench/corpus/sideinfo.py | 196 | CODE | |
| LOW | capcodec/bench/corpus/sideinfo.py | 251 | CODE | |
| LOW | capcodec/bench/harness/metrics.py | 268 | CODE | |
| LOW | capcodec/bench/harness/runner.py | 477 | CODE | |
| LOW | capcodec/bench/harness/runner.py | 538 | CODE | |
| LOW | capcodec/bench/harness/runner.py | 577 | CODE | |
| LOW | capcodec/bench/harness/runner.py | 147 | CODE | |
| LOW | capcodec/bench/harness/runner.py | 172 | CODE | |
| LOW | capcodec/bench/harness/runner.py | 212 | CODE | |
| LOW | capcodec/bench/harness/runner.py | 265 | CODE | |
| LOW | capcodec/bench/harness/report.py | 29 | CODE | |
| LOW | capcodec/bench/harness/report.py | 180 | CODE | |
| LOW | capcodec/bench/harness/corpus.py | 142 | CODE | |
| LOW | capcodec/bench/harness/browser/server.py | 53 | CODE | |
| LOW | capcodec/tools/gen_tables.py | 98 | CODE | |
| LOW | scripts/test-audio-intelligibility.py | 13 | CODE | |
| LOW | scripts/capbench.py | 332 | CODE | |
| LOW | scripts/capbench.py | 631 | CODE | |
| LOW | scripts/capbench.py | 780 | CODE | |
| LOW | scripts/recording-reliability.py | 245 | CODE | |
| LOW | scripts/linux-desktop-harness/mutter-pointer.py | 37 | CODE | |
| LOW | scripts/verify/plan.py | 146 | CODE | |
| LOW | scripts/verify/floor.py | 34 | CODE | |
| LOW | scripts/verify/retry.py | 52 | CODE | |
| LOW | scripts/verify/retry.py | 67 | CODE | |
| LOW | scripts/verify/retry.py | 156 | CODE | |
| LOW | scripts/verify/perf-ab.py | 85 | CODE | |
| LOW | scripts/verify/summary.py | 21 | CODE | |
| LOW | scripts/verify/summary.py | 45 | CODE | |
| LOW | scripts/verify/summary.py | 64 | CODE | |
| LOW | scripts/verify/summary.py | 110 | CODE | |
| LOW | scripts/verify/summary.py | 127 | CODE | |
| LOW | scripts/verify/perf-build.py | 28 | CODE | |
| LOW | scripts/verify/diff.py | 56 | CODE | |
| LOW | scripts/verify/diff.py | 150 | CODE | |
| LOW | scripts/verify/diff.py | 219 | CODE | |
| LOW | scripts/verify/diff.py | 320 | CODE | |
| LOW | scripts/verify/mtime.py | 50 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | apps/web/app/install-cli.sh/route.ts | 69 | elif command -v sudo >/dev/null 2>&1; then | CODE |
| HIGH | apps/web/app/install-cli.sh/route.ts | 124 | elif [ -f "$APP_PATH" ]; then | CODE |
| HIGH | apps/web/app/install-cli.sh/route.ts | 159 | elif [ -n "$APP_PATH" ] && [ -w "$(dirname "$APP_PATH")" ]; then | CODE |
| HIGH | apps/web/app/install-cli.sh/route.ts | 161 | elif [ -w "/Applications" ]; then | CODE |
| HIGH | apps/web/app/install-cli.sh/route.ts | 218 | elif command -v dpkg >/dev/null 2>&1; then | CODE |
| HIGH | apps/web/app/install-cli.sh/route.ts | 274 | elif [ ! -d "$APP_PATH" ]; then | CODE |
| HIGH | apps/web/app/install-cli.sh/route.ts | 294 | elif ! find_linux_cli_target; then | CODE |
| HIGH | apps/web/app/install-cli.sh/route.ts | 319 | elif case ":$PATH:" in *:"$HOME_DIR/.local/bin":*) true ;; *) false ;; esac; then | CODE |
| HIGH | apps/web/app/install-cli.sh/route.ts | 371 | elif printf '\n# Added by the Cap CLI installer\n%s\n' "$EXPORT_LINE" >> "$PROFILE" 2>/dev/null; then | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | capcodec/bench/corpus/scenarios.py | 407 | "(() => { for (const a of document.querySelectorAll('#content p a')) { const r = a.getBoundingClientRect(); if ( | CODE |
| HIGH | capcodec/bench/corpus/scenarios.py | 415 | "(() => { for (const p of document.querySelectorAll('#content p')) { const r = p.getBoundingClientRect(); if (r. | CODE |
| HIGH | capcodec/bench/corpus/scenarios.py | 450 | "(() => { for (const a of document.querySelectorAll('#content a')) { const r = a.getBoundingClientRect(); if (r. | CODE |
| HIGH⚡ | capcodec/bench/corpus/sideinfo.py | 5 | {"frame": i, "t_ms": float, "dirty": [[x,y,w,h],...], "cursor": [x,y] | null, | STRING |
| HIGH⚡ | capcodec/bench/corpus/sideinfo.py | 6 | "scroll": [{"rect": [x,y,w,h], "dx": int, "dy": int, "id": str, "valid": bool | null, | STRING |
| HIGH⚡ | capcodec/bench/corpus/sideinfo.py | 7 | "align": "latency" | "realigned", "match": float | null}, ...]} | STRING |
| HIGH | scripts/recording-reliability.py | 203 | $r = [ordered]@{exitCode=$null;timedOut=$false;forcedCleanup=$false;cleanupComplete=$false;error=$null} | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | capcodec/bench/corpus/pages/common/board.js | 293 | ph.className = "placeholder"; | CODE |
| LOW | apps/web/__tests__/unit/space-page-round-trips.test.ts | 242 | email: "user@example.com", | CODE |
| LOW | apps/web/__tests__/unit/email-config.test.ts | 23 | email: "user@example.com", | CODE |
| LOW | apps/web/__tests__/unit/sso-settings.test.ts | 173 | email: "admin@example.com", | CODE |
| LOW | apps/web/__tests__/unit/share-audience.test.ts | 65 | audienceNames: ["Acme Inc", "Design", "Marketing", "Support"], | CODE |
| LOW | apps/web/__tests__/unit/folder-count.test.ts | 37 | email: "user@example.com", | CODE |
| LOW | apps/web/__tests__/unit/send-download-link.test.ts | 36 | const result = await sendDownloadLink("user@example.com"); | CODE |
| LOW | apps/web/__tests__/unit/send-download-link.test.ts | 47 | const result = await sendDownloadLink("user@example.com"); | CODE |
| LOW | apps/web/__tests__/unit/send-download-link.test.ts | 66 | const result = await sendDownloadLink("user@example.com"); | CODE |
| LOW | apps/web/__tests__/unit/folder-parent-location.test.ts | 70 | email: "user@example.com", | CODE |
| LOW | apps/web/__tests__/unit/signed-baa-card.test.ts | 109 | entityAddress: "123 Main Street", | CODE |
| LOW | …ps/web/__tests__/unit/account-deletion-request.test.ts | 131 | userEmail: "user@example.com", | CODE |
| LOW | …ps/web/__tests__/unit/account-deletion-request.test.ts | 139 | replyTo: "user@example.com", | CODE |
| LOW | …ps/web/__tests__/unit/account-deletion-request.test.ts | 164 | email: "user@example.com", | CODE |
| LOW | …ps/web/__tests__/unit/account-deletion-request.test.ts | 191 | email: "user@example.com", | CODE |
| LOW | apps/web/__tests__/unit/messenger-support-email.test.ts | 72 | email: "user@example.com", | CODE |
| LOW⚡ | apps/web/__tests__/unit/messenger-support-email.test.ts | 87 | userEmail: "user@example.com", | CODE |
| LOW⚡ | apps/web/__tests__/unit/messenger-support-email.test.ts | 96 | replyTo: "user@example.com", | CODE |
| LOW⚡ | apps/web/__tests__/unit/messenger-support-email.test.ts | 105 | userEmail: "user@example.com", | CODE |
| LOW | apps/web/__tests__/unit/messenger-support-email.test.ts | 128 | email: "user@example.com", | CODE |
| LOW | apps/web/__tests__/unit/messenger-support-email.test.ts | 162 | email: "user@example.com", | CODE |
| LOW | apps/web/__tests__/unit/messenger-support-email.test.ts | 182 | email: "user@example.com", | CODE |
| LOW | apps/mobile/src/auth/SignInPanel.test.tsx | 223 | expect(hasProp(tree, "placeholder", "tim@apple.com")).toBe(true); | CODE |
| LOW | apps/mobile/src/auth/SignInPanel.test.tsx | 310 | expect(hasProp(tree, "placeholder", "Enter your Organization ID...")).toBe( | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | capcodec/bench/corpus/generate.py | 401 | except Exception: | CODE |
| LOW | capcodec/bench/corpus/generate.py | 531 | except Exception as e: | CODE |
| LOW | capcodec/bench/corpus/generate.py | 874 | except Exception as e: | CODE |
| LOW | capcodec/bench/corpus/generate.py | 1490 | except Exception: | CODE |
| MEDIUM | capcodec/bench/corpus/generate.py | 398 | def screen_size(disp): | CODE |
| LOW | capcodec/bench/harness/runner.py | 310 | except Exception: | CODE |
| LOW | scripts/benchmark-instant-audio.py | 120 | except Exception as error: | CODE |
| LOW | scripts/linux-desktop-harness/atspi-press.py | 24 | except Exception: | CODE |
| LOW | scripts/linux-desktop-harness/atspi-press.py | 45 | except Exception: | CODE |
| LOW | apps/cli/skill/cap-demo/lib/treat.py | 326 | except Exception: | CODE |
| LOW | apps/cli/skill/cap-demo/lib/treat.py | 336 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .config/hakari.toml | 1 | # This file contains settings for `cargo hakari`. | COMMENT |
| MEDIUM | crates/workspace-hack/Cargo.toml | 1 | # This file is generated by `cargo hakari`. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | capcodec/bench/harness/metrics.py | 8 | CODE | |
| LOW | capcodec/bench/harness/metrics.py | 13 | CODE | |
| LOW | capcodec/bench/harness/adapters/browser.py | 102 | CODE | |
| LOW | scripts/verify/perf-build.py | 9 | CODE | |
| LOW | scripts/hero-clouds/render.py | 11 | CODE | |
| LOW | scripts/og-sky/render.py | 12 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | capcodec/bench/corpus/pages/data/inflate_c.js | 2 | '/* inflate.c -- zlib decompression\n * Copyright (C) 1995-2022 Mark Adler\n * For conditions of distribution and use, | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | crates/editor/PLAYBACK-BENCHMARKS.md | 70 | # Step 1: Create test recordings with outputs kept | COMMENT |
| LOW | crates/editor/PLAYBACK-BENCHMARKS.md | 73 | # Step 2: Validate playback of those recordings | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/workflows/validate-migration-journal.yml | 24 | # Check if journal exists in previous commit | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | apps/web/actions/videos/get-og-image.tsx | 69 | async function getData(videoId: Video.VideoId) { | CODE |