Hold a key, speak, release — AI-polished text appears at your cursor in any app. Open-source voice input for macOS & Windows. (按住快捷键说话,松开即得润色后的文字)
This report summarizes scanner evidence for Open-Less/openless, a Rust project with 4,015 GitHub stars. SynthScan examined 587,777 lines of code across 1840 source files, recording 744 pattern matches distributed across 16 syntactic categories. The legacy adjusted pattern signal is 2.0 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 549 finding(s).
Are imports declared and package/API names verified? 8 finding(s).
Are wrappers, guards, and repeated structures necessary? 379 finding(s).
Which changes need focused human review? 744 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 744 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 |
|---|---|---|---|---|
| MEDIUM | openless-all/app/crates/micyou-infer/src/lib.rs | 68 | // ─── blob format constants (keep in sync with onnxref/compiler.py) ─────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-infer/src/lib.rs | 164 | // ─── little-endian reader ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-infer/src/lib.rs | 214 | // ─── graph ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-infer/src/lib.rs | 520 | // ─── session ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-infer/src/ops.rs | 1501 | // ─── AVX2+FMA runtime dispatch ───────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 126 | // ─── Shared STFT window helpers ─────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 152 | // ─── Compiled native models (pure Rust, no ONNX Runtime) ────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 187 | // ─── PureVox6 native noise suppression ──────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 357 | // ─── AEC7 native acoustic echo cancellation ────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 597 | // ─── AEC Delay Estimation and Alignment ─────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 670 | // ─── Speexdsp-style spectral subtraction noise suppression ────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 754 | // ─── Equalizer (10-band Biquad Peaking EQ) ────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 876 | // ─── Main DSP Processor ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 1266 | // ── AEC Acoustic Echo Cancellation ──────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 1364 | // ── Noise Reduction Dispatcher ────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 1414 | // ── RNNoise (nnnoiseless) ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 1606 | // ── Dereverb (delay-line comb filter, matching KMP DereverbEffect) ───── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 1655 | // ── AGC ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 1693 | // ── VAD ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 1715 | // ── Spectrum ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 2023 | // ─── Native model property tests ────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/openless-core/src/polish.rs | 3398 | // ──────────────── Conversation-aware polish chat message construction ──────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/openless-core/src/polish.rs | 3487 | // ───────── issue #609 F-05: golden/snapshot prompt tests ───────── | COMMENT |
| MEDIUM | openless-all/app/crates/openless-core/src/polish.rs | 3487 | // ───────── issue #609 F-05: golden/snapshot prompt tests ───────── | COMMENT |
| MEDIUM | openless-all/app/crates/openless-core/src/polish.rs | 4356 | // ───────── issue #609 F-02: prompt injection hardening ───────── | COMMENT |
| MEDIUM | openless-all/app/crates/openless-core/src/polish.rs | 4356 | // ───────── issue #609 F-02: prompt injection hardening ───────── | COMMENT |
| MEDIUM | openless-all/app/crates/openless-core/src/polish.rs | 4485 | // ─────────────────────── Cursor context ─────────────────────── | COMMENT |
| MEDIUM | openless-all/app/crates/openless-core/src/llm_gemini.rs | 503 | // ─────────────────────── internal helpers ─────────────────────── | COMMENT |
| MEDIUM | …-all/app/linux-egui/tests/zh_user_visible_baseline.txt | 267 | # ── 测试夹具(快捷键筛选回归测试里用来定位行/按钮的文案) ────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/popup_layer.rs | 56 | // ── pure decision core ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/popup_layer.rs | 258 | // ── compositor probe ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/popup_layer.rs | 271 | // ── wayland state ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/popup_layer.rs | 598 | // ── Vulkan/WGPU plumbing ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/popup_layer.rs | 814 | // ── runner ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/main.rs | 5329 | // ── Frontend bridge ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/cloud_sync_ui.rs | 352 | // ── Core(snake_case)───────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/cloud_sync_ui.rs | 388 | // ── Tauri 的 camelCase 键名 ────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/layout.rs | 20 | // ── Window geometry helpers ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/layout.rs | 113 | // ── App icon ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/layout.rs | 177 | // ── Window background ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/layout.rs | 220 | // ── Titlebar ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/layout.rs | 417 | // ── Resize handles ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/layout.rs | 531 | // ── Sidebar ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/layout.rs | 876 | // ── 合成器拖动留下的指针状态 ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/layout.rs | 980 | // ── Content panel ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/layout.rs | 1036 | // ── Shared helpers ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/vocab.rs | 39 | // ── Page-local UI state ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/vocab.rs | 66 | // ── Entry point ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/vocab.rs | 125 | // ── Tool row: tabs + select-all + expandable search ───────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/vocab.rs | 190 | // ── Word list ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/vocab.rs | 293 | // ── Tool row ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/vocab.rs | 539 | // ── Word chip ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/vocab.rs | 722 | // ── Bottom: quick add + presets ───────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/vocab.rs | 989 | // ── New-word modal (scoped to the right content pane) ─────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/vocab.rs | 1271 | // ── Small shared pieces ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/style.rs | 52 | // ── Header ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/style.rs | 106 | // ── List card ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/style.rs | 773 | // ── Notice ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | openless-all/app/linux-egui/src/ui/frontend/style.rs | 824 | // ── Editor ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …nless-all/app/linux-egui/src/ui/frontend/view_model.rs | 3 | // ── Page / Tab ────────────────────────────────────────────────────────────── | COMMENT |
| 105 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openless-all/app/crates/openless-capsule/src/siri_gl.rs | 1 | //! Siri-inspired audio visuals shared by the Vulkan eframe windows and the | COMMENT |
| LOW | openless-all/app/crates/openless-capsule/src/lib.rs | 221 | pub struct Frame { | COMMENT |
| LOW | openless-all/app/crates/micyou-infer/src/lib.rs | 21 | //! `tools/onnx-port` compiler in the experimental | COMMENT |
| LOW | openless-all/app/crates/micyou-infer/src/lib.rs | 41 | //! This repository ships only the runtime artifacts (VM + compiled blobs); | COMMENT |
| LOW | openless-all/app/crates/micyou-infer/src/ops.rs | 21 | //! f32; rounding points mirror the reference so streaming goldens stay | COMMENT |
| LOW | openless-all/app/crates/micyou-infer/src/ops.rs | 81 | } | COMMENT |
| LOW | openless-all/app/crates/micyou-infer/src/ops.rs | 121 | // branchless: fast_exp saturates at ~1.7e38, so (e-1)/(e+1) → 1.0 in f32 | COMMENT |
| LOW | openless-all/app/crates/micyou-dsp/src/lib.rs | 361 | #[cfg(feature = "noise-suppression")] | COMMENT |
| LOW | openless-all/app/crates/micyou-dsp/src/lib.rs | 881 | dry_delay: VecDeque<f32>, | COMMENT |
| LOW | openless-all/app/crates/micyou-dsp/src/lib.rs | 901 | purevox_load_failed: bool, | COMMENT |
| LOW | openless-all/app/crates/micyou-dsp/src/lib.rs | 941 | to_process_buf: Vec<f32>, | COMMENT |
| LOW | openless-all/app/crates/openless-core/src/prompts.rs | 1 | //! Shared prompt templates and untrusted-text envelope helpers. | COMMENT |
| LOW | openless-all/app/crates/openless-core/src/prompts.rs | 201 | /// an "ignore the instructions above" line in a shared document. | COMMENT |
| LOW | openless-all/app/crates/openless-core/src/prompts.rs | 501 | /// injected as a whole. | COMMENT |
| LOW | openless-all/app/crates/openless-core/src/audio_dsp.rs | 1 | //! Session-frozen speech enhancement, adapted from MicYou's 48 kHz DSP chain. | COMMENT |
| LOW | …-all/app/crates/openless-core/src/dictation_context.rs | 81 | /// `Some(true)` finishes the active capture as a quick note; | COMMENT |
| LOW | openless-all/app/crates/openless-core/src/net.rs | 1 | //! Shared HTTP clients + retrying request sender. | COMMENT |
| LOW | openless-all/app/crates/openless-core/src/net.rs | 201 | COMMENT | |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 81 | /// Shortcut actually pressed by simulated paste. macOS uses AX direct | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 121 | /// Default `Auto`: chosen by the front app frozen at session start. | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 141 | COMMENT | |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 181 | pub name: Option<String>, | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 261 | /// the card disappears it's as if nothing happened, and correcting the same | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 281 | /// taller than the screen is pointless. | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 301 | /// Why the insert failed. **Log-only, never rendered** — the card has no | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 421 | pub capsule_transcript_enabled: bool, | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 441 | #[serde(default)] | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 481 | /// `multimodal`, voice pipelines switch to the separately isolated | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 501 | /// Whether to use the system proxy (issue #869). Default true follows the | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 521 | /// Windows: whether TSF failure may fall back to batched Unicode | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 541 | )] | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 561 | /// Chinese output script preference (not exposed as a UI switch): | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 581 | /// Additional key held with the user-selected recording shortcut. Empty disables Ask. | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 601 | pub voice_edit_enabled: bool, | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 621 | /// the user picked custom but hasn't recorded a key yet. | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 641 | /// a disabled pack auto-enables and activates it. | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 661 | pub coding_agent_workdir: Option<String>, | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 681 | /// LAN remote-input service port. | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 701 | #[serde(default = "default_local_asr_mirror")] | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 721 | pub foundry_local_runtime_source: String, | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 741 | #[serde(default)] | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 761 | /// context so pronouns / incomplete sentences resolve correctly. | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 781 | pub theme_mode: ThemeMode, | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 801 | /// providers fall back to the one-shot path transparently. See the | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 821 | /// Windows TSF only: show the live ASR transcript in the target document as an | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 841 | #[serde(default)] | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 861 | /// only the Settings manual "check for updates" button works. | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 881 | /// 只选它、不选处理后时,主档案直接存原始 PCM(功能不受影响)。 | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 901 | #[serde(default)] | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 921 | /// Android: action assigned to each overlay swipe direction. | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 1281 | { | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 1701 | }) | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 2741 | fn default() -> Self { | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 2841 | /// Whether the session is in translation mode (user pressed Shift). The | COMMENT |
| LOW | …nless-all/app/crates/openless-core/src/shared_types.rs | 2861 | /// User's chosen capsule style (siri / classic). Sent with every state | COMMENT |
| LOW | …enless-all/app/crates/openless-core/src/style_packs.rs | 281 | /// audio callback thread. | COMMENT |
| LOW | …enless-all/app/crates/openless-core/src/style_packs.rs | 941 | // and replaces it with the runtime-built hotwords + typo-correction block. | COMMENT |
| LOW | openless-all/app/crates/openless-core/src/omni.rs | 1 | //! Model channel of the multimodal (Omni) recognition pipeline (issue #902). | COMMENT |
| LOW | openless-all/app/crates/openless-core/src/polish.rs | 41 | /// Connection hard cap for the polish client. Carries no business semantics (business | COMMENT |
| LOW | openless-all/app/crates/openless-core/src/polish.rs | 61 | Duration::from_secs(secs) | COMMENT |
| 268 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ndroid/frontend/components/AndroidPermissionsPanel.tsx | 57 | function persistAndroidOverlayPrefs(patch: Partial<UserPreferences>): Promise<AndroidPrefsSlice> { | CODE |
| LOW | …ndroid/frontend/components/AndroidPermissionsPanel.tsx | 767 | function AndroidAccessibilityStatusPill({ status }: { status: AndroidAccessibilityStatus | null }) { | CODE |
| LOW | …ndroid/frontend/components/AndroidPermissionsPanel.tsx | 789 | function resolveAccessibilityMessage(t: TFunction, key: string | null | undefined): string { | CODE |
| LOW | openless-all/app/android/frontend/lib/androidIpc.ts | 18 | export function requestAndroidOverlayPermission(): Promise<{ launched: boolean; message: string }> { | CODE |
| LOW | openless-all/app/android/frontend/lib/androidIpc.ts | 33 | export function getAndroidAccessibilityStatus(): Promise<AndroidAccessibilityStatus> { | CODE |
| LOW | openless-all/app/android/frontend/lib/androidIpc.ts | 42 | export function requestAndroidAccessibilityPermission(): Promise<{ | CODE |
| LOW | openless-all/app/android/frontend/lib/androidIpc.ts | 64 | export function requestAndroidShizukuPermission(): Promise<AndroidShizukuActionResult> { | CODE |
| LOW | openless-all/app/android/frontend/lib/androidIpc.ts | 78 | export function recoverAndroidAccessibility( | CODE |
| LOW | openless-all/app/android/frontend/lib/androidTypes.ts | 85 | export function normalizeAndroidOverlayTrigger( | CODE |
| LOW | …pp/android/frontend/lib/androidMicrophonePermission.ts | 7 | export async function checkAndroidMicrophoneAccess(): Promise<AppPermissionStatus> { | CODE |
| LOW | …pp/android/frontend/lib/androidMicrophonePermission.ts | 43 | export async function requestAndroidMicrophoneAccess(): Promise<AppPermissionStatus> { | CODE |
| LOW | openless-all/app/scripts/windows-symbol-pair.test.py | 43 | def test_guid_and_age_from_both_formats(self): | CODE |
| LOW | openless-all/app/scripts/windows-symbol-pair.test.py | 47 | def test_mismatch_rejected_and_matched_pair_hashed(self): | CODE |
| LOW | openless-all/app/scripts/windows-symbol-pair.test.py | 64 | def test_truncated_format_rejected(self): | CODE |
| LOW | openless-all/app/scripts/windows-symbol-pair.test.py | 71 | def test_missing_symbols_rejected(self): | CODE |
| LOW | openless-all/app/scripts/test-compare-audio-outputs.py | 11 | def test_exact_difference_and_truncation(self): | CODE |
| LOW⚡ | openless-all/app/scripts/test_sync_micyou.py | 37 | def test_same_pin_reproduces_exact_source_without_modifying_manifest(self): | CODE |
| LOW⚡ | openless-all/app/scripts/test_sync_micyou.py | 43 | def test_git_autocrlf_does_not_change_imported_bytes(self): | CODE |
| LOW⚡ | openless-all/app/scripts/test_sync_micyou.py | 50 | def test_new_upstream_fix_preserves_adapter_and_advances_pin(self): | CODE |
| LOW⚡ | openless-all/app/scripts/test_sync_micyou.py | 62 | def test_patch_conflict_leaves_every_file_untouched(self): | CODE |
| LOW⚡ | openless-all/app/scripts/test_sync_micyou.py | 71 | def test_check_never_changes_files(self): | CODE |
| LOW⚡ | openless-all/app/scripts/test_sync_micyou.py | 79 | def test_local_changes_and_pinned_corruption_are_not_overwritten(self): | CODE |
| LOW | openless-all/app/scripts/test_sync_micyou.py | 91 | def test_patch_cannot_escape_source_allowlist(self): | CODE |
| LOW | openless-all/app/scripts/macos-dmg-layout.test.py | 80 | def test_writer_preserves_version_one_and_complete_rgb_real_values(self): | CODE |
| LOW | openless-all/app/scripts/macos-dmg-layout.test.py | 91 | def test_each_missing_rgb_component_is_rejected(self): | CODE |
| LOW | openless-all/app/scripts/macos-dmg-layout.test.py | 98 | def test_non_real_or_non_white_component_is_rejected(self): | CODE |
| LOW | …i/src/asr/local/experimental/textstream/test_worker.py | 61 | def test_import_does_not_initialize_inference_or_capture(self): | CODE |
| LOW | …i/src/asr/local/experimental/textstream/test_worker.py | 66 | def test_cpu_budget_sleeps_for_cpu_work_but_not_gpu_wait(self) -> None: | CODE |
| LOW | …i/src/asr/local/experimental/textstream/test_worker.py | 85 | def test_background_cpu_during_wait_does_not_create_endless_debt(self) -> None: | CODE |
| LOW | …i/src/asr/local/experimental/textstream/test_worker.py | 103 | def test_native_thread_limits_are_bounded_before_imports(self) -> None: | CODE |
| LOW⚡ | …i/src/asr/local/experimental/textstream/test_worker.py | 115 | def test_metal_memory_leaves_room_for_capture_and_bounds_free_cache(self) -> None: | CODE |
| LOW⚡ | …i/src/asr/local/experimental/textstream/test_worker.py | 125 | def test_cpu_capacity_is_capped_even_when_many_cores_are_idle(self) -> None: | CODE |
| LOW⚡ | …i/src/asr/local/experimental/textstream/test_worker.py | 132 | def test_draft_is_revisable_and_final_comes_from_decoder(self): | CODE |
| LOW | …i/src/asr/local/experimental/textstream/test_worker.py | 213 | def test_feed_produces_draft_before_finish_and_final_is_refined(self): | CODE |
| LOW⚡ | …i/src/asr/local/experimental/textstream/test_worker.py | 232 | def test_missing_metal_never_silently_starts_cpu_inference(self) -> None: | CODE |
| LOW⚡ | …i/src/asr/local/experimental/textstream/test_worker.py | 237 | def test_eof_does_not_promote_a_draft(self): | CODE |
| LOW⚡ | …i/src/asr/local/experimental/textstream/test_worker.py | 242 | def test_missing_files_fail_before_any_server_or_model(self): | CODE |
| LOW⚡ | …i/src/asr/local/experimental/textstream/test_worker.py | 250 | def test_subscribers_are_bounded_and_slow_clients_receive_latest_snapshot(self): | CODE |
| LOW⚡ | …i/src/asr/local/experimental/textstream/test_worker.py | 258 | def test_sse_is_loopback_only_and_rejects_cross_site_controls(self): | CODE |
| LOW | openless-all/app/src/components/FloatingShell.tsx | 1085 | function HotkeyModeMigrationPrompt({ | CODE |
| LOW | openless-all/app/src/lib/translationTarget.ts | 20 | export function isTranslationTargetRedundant( | CODE |
| LOW | openless-all/app/src/lib/stackedLayout.ts | 2 | export function applyStackedLayoutFromPrefs(_stackedRowLayout?: boolean): void { | CODE |
| LOW | openless-all/app/src/lib/hotkeyRecorder.ts | 14 | export function createHotkeyRecorderState(): HotkeyRecorderState { | CODE |
| LOW | openless-all/app/src/lib/hotkeyRecorder.ts | 21 | export function updateHotkeyRecorderState( | CODE |
| LOW | openless-all/app/src/lib/hotkeyRecorder.ts | 116 | export function functionKeyPrimaryFromEvent(event: { code: string; key: string }): string | null { | CODE |
| LOW | openless-all/app/src/lib/stylePackZip.ts | 21 | export function isStylePackZipDialogCancellation(error: unknown): boolean { | CODE |
| LOW | openless-all/app/src/lib/stylePackZip.ts | 26 | export async function pickStylePackZipTargetPath( | CODE |
| LOW | openless-all/app/src/lib/desktopOnboarding.ts | 14 | export function getDesktopOnboardingState(): Promise<DesktopOnboardingState> { | CODE |
| LOW | openless-all/app/src/lib/desktopOnboarding.ts | 25 | export function setDesktopOnboardingFinished(finished: boolean): Promise<void> { | CODE |
| LOW | openless-all/app/src/lib/hotkeyMigration.ts | 7 | export function isHotkeyModeMigrationNoticeActive(): boolean { | CODE |
| LOW | openless-all/app/src/lib/hotkeyMigration.ts | 11 | export function shouldShowHotkeyModeMigrationPrompt( | CODE |
| LOW | openless-all/app/src/lib/motion.ts | 18 | function subscribeMotionPreference(listener: () => void) { | CODE |
| LOW | openless-all/app/src/lib/localAsr.ts | 12 | export function isLocalAsrModelSupportedOnOs( | CODE |
| LOW | openless-all/app/src/lib/localAsr.ts | 263 | export function getLocalAsrStorageSettings(): Promise<LocalAsrStorageSettings> { | CODE |
| LOW | openless-all/app/src/lib/localAsr.ts | 339 | export function cleanupIncompleteLocalAsrModel(modelId: string): Promise<void> { | CODE |
| LOW | openless-all/app/src/lib/localAsr.ts | 412 | export function setLocalAsrKeepLoadedSecs(seconds: number): Promise<void> { | CODE |
| LOW⚡ | openless-all/app/src/lib/localAsr.ts | 431 | export function getFoundryLocalAsrCatalog(): Promise<FoundryLocalAsrCatalogModel[]> { | CODE |
| LOW⚡ | openless-all/app/src/lib/localAsr.ts | 439 | export function setFoundryLocalAsrLanguageHint(languageHint: string): Promise<void> { | CODE |
| LOW⚡ | openless-all/app/src/lib/localAsr.ts | 443 | export function setFoundryLocalRuntimeSource(source: string): Promise<void> { | CODE |
| LOW⚡ | openless-all/app/src/lib/localAsr.ts | 447 | export function setFoundryLocalAsrKeepLoadedSecs(seconds: number): Promise<void> { | CODE |
| 132 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 38 | except Exception: | CODE |
| HIGH | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 110 | except Exception: | CODE |
| HIGH | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 211 | except Exception: | CODE |
| HIGH | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 215 | except Exception: | CODE |
| HIGH | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 291 | except Exception: | CODE |
| HIGH | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 304 | except Exception: | CODE |
| HIGH | …-tauri/src/asr/local/experimental/textstream/worker.py | 205 | except (BrokenPipeError, ConnectionResetError, OSError): | CODE |
| HIGH | …-tauri/src/asr/local/experimental/textstream/worker.py | 143 | except queue.Empty: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …nless-all/app/crates/openless-core/src/shared_types.rs | 656 | /// Permission mode: plan/default/acceptEdits/bypassPermissions. Default acceptEdits (auto-approve with guardrails). | COMMENT |
| MEDIUM | …s-all/app/crates/openless-core/src/streaming_insert.rs | 147 | /// Strips a fully echoed user-message scaffold from the model output. | COMMENT |
| MEDIUM | …nless-all/app/crates/openless-core/src/coding_agent.rs | 5 | //! Adapter; this module unifies commands, guardrails, temporary-file plans, | COMMENT |
| MEDIUM | openless-all/app/android/kotlin/README.md | 1 | # Android Kotlin scaffolding | COMMENT |
| MEDIUM | openless-all/app/src/components/Onboarding.tsx | 227 | // issue #470: purely event-driven, no high-frequency polling. Refresh on window | COMMENT |
| MEDIUM | …less-all/app/src/pages/settings/PermissionsSection.tsx | 103 | // issue #470: hotkey status became purely event-driven, removing the per-second poll and | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 88 | CODE | |
| LOW | openless-all/app/scripts/macos-dmg-layout.py | 136 | CODE | |
| LOW | openless-all/app/scripts/macos-dmg-layout.py | 170 | CODE | |
| LOW | openless-all/app/scripts/windows-symbol-pair.py | 22 | CODE | |
| LOW | openless-all/app/scripts/build-mobile-rime.py | 39 | CODE | |
| LOW | openless-all/app/scripts/test-native-capsule-macos.py | 53 | CODE | |
| LOW | …-tauri/src/asr/local/experimental/textstream/worker.py | 163 | CODE | |
| LOW | …-tauri/src/asr/local/experimental/textstream/worker.py | 227 | CODE | |
| LOW | …-tauri/src/asr/local/experimental/textstream/worker.py | 130 | CODE | |
| LOW | …-tauri/src/asr/local/experimental/textstream/worker.py | 165 | CODE | |
| LOW | openless-all/ios/scripts/validate-product.py | 35 | CODE | |
| LOW | openless-all/ios/scripts/package-ipa.py | 23 | CODE | |
| LOW | openless-all/ios/scripts/test-interface-resources.py | 56 | CODE | |
| LOW | openless-all/ios/scripts/prepare-core.py | 31 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 78 | return JSON.stringify(value ?? null); | CODE |
| HIGH | openless-all/app/scripts/test-windows-runtime-target.py | 43 | 'std::thread::spawn(move || drop(owner));', 'E0277'), | STRING |
| HIGH | openless-all/ios/scripts/validate-project.py | 106 | precondition(transparent > count / 2 && transparent < count, "Brand must retain its mark on actual transparency") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openless-all/app/scripts/harmony-signing-report.py | 106 | except Exception as error: # noqa: BLE001 - report, never raise | CODE |
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 33 | except Exception: | CODE |
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 38 | except Exception: | CODE |
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 110 | except Exception: | STRING |
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 160 | except Exception: | STRING |
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 211 | except Exception: | STRING |
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 215 | except Exception: | STRING |
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 291 | except Exception: | STRING |
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 304 | except Exception: | STRING |
| MEDIUM | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 29 | def get_clipboard_text() -> str | None: | CODE |
| LOW | openless-all/app/scripts/test-native-capsule-macos.py | 73 | except Exception as error: | CODE |
| MEDIUM | openless-all/app/scripts/test-native-capsule-macos.py | 64 | def sample(): | CODE |
| LOW | …-tauri/src/asr/local/experimental/textstream/worker.py | 358 | except Exception as error: # noqa: BLE001 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | openless-all/app/android/kotlin/OpenLessRime.kt | 56 | nextDictionaryCheck = now + java.util.concurrent.TimeUnit.DAYS.toMillis(1) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | openless-all/app/crates/micyou-dsp/src/lib.rs | 2083 | // numpy reference), so a loose 0.5 ratio threshold is a robust | COMMENT |
| MEDIUM | openless-all/app/src-tauri/src/selection.rs | 51 | /// On macOS we have no HWND equivalent; the closest robust fingerprint is the | COMMENT |
| MEDIUM | .github/workflows/ci.yml | 777 | # native runtime DLL entrypoint, the process exits before the test harness starts. Keep | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openless-all/app/scripts/linux-fcitx5-plugin/build.sh | 5 | # Usage: | COMMENT |
| LOW | scripts/bump-version.sh | 3 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openless-all/app/src-tauri/src/persistence/paths.rs | 94 | // Step 1: prune by age. Scan .wav only, consistent with step 2; files whose | COMMENT |
| LOW | openless-all/app/src-tauri/src/persistence/paths.rs | 118 | // Step 2: prune by count. Remaining wavs sorted by mtime descending; delete | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openless-all/app/src-tauri/src/persistence/paths.rs | 94 | // Step 1: prune by age. Scan .wav only, consistent with step 2; files whose | COMMENT |
| LOW | openless-all/app/src-tauri/src/persistence/paths.rs | 118 | // Step 2: prune by count. Remaining wavs sorted by mtime descending; delete | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openless-all/app/crates/openless-core/src/edit_plan.rs | 756 | replace: "user@example.com".into(), | CODE |
| LOW | …ess-all/app/src-tauri/src/asr/local/foundry_runtime.rs | 2524 | b"placeholder", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 5 | CODE | |
| LOW | …-tauri/src/asr/local/experimental/textstream/worker.py | 10 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …less-all/app/scripts/windows-openless-lifecycle-e2e.py | 17 | def set_clipboard_text(text: str | None) -> None: | CODE |