Open source Granola AI Alternative
This report summarizes scanner evidence for fastrepl/anarlog, a Rust project with 9,708 GitHub stars. SynthScan examined 1,113,753 lines of code across 5970 source files, recording 1511 pattern matches distributed across 14 syntactic categories. The legacy adjusted pattern signal is 2.1 (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? 1423 finding(s).
Are imports declared and package/API names verified? 54 finding(s).
Are wrappers, guards, and repeated structures necessary? 1270 finding(s).
Which changes need focused human review? 1511 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 1511 distinct pattern matches across 14 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 | plugins/db/js/index.ts | 93 | export function isCloudsyncActivityDeferredError(error: unknown) { | CODE |
| LOW | plugins/db/js/index.ts | 168 | export async function getRecurringMeetingHistory( | CODE |
| LOW | plugins/db/js/index.ts | 248 | export async function getOrCreateE2eeDeviceIdentity( | CODE |
| LOW | plugins/db/js/index.ts | 364 | export async function suspendCloudsyncForSignOut(): Promise<void> { | CODE |
| LOW | plugins/db/js/index.ts | 368 | export async function suspendCloudsyncAfterAuthLoss(): Promise<void> { | CODE |
| LOW | scripts/gguf_reader.py | 10 | def download_and_execute_script(url, args): | CODE |
| LOW | packages/provider-validation/src/index.ts | 22 | export function providerCredentialIdentity(credential: ProviderCredential) { | CODE |
| LOW | packages/provider-validation/src/index.ts | 26 | export function usesDeferredProviderAuthentication( | CODE |
| LOW | packages/provider-validation/src/index.ts | 44 | export async function verifyProviderCredentials( | CODE |
| LOW | packages/ui/src/lib/toast-gesture.ts | 7 | export function appToastSwipeDismissDirection( | CODE |
| LOW | packages/db-react/src/index.ts | 250 | export function createUseDrizzleLiveQuery(client: LiveQueryClient) { | CODE |
| LOW | packages/utils/src/session.ts | 101 | function hasMeaningfulTiptapContent(node: TiptapNode): boolean { | CODE |
| LOW | packages/supabase/src/attachment-backups.ts | 56 | export function createAttachmentBackupClient(input: { | CODE |
| LOW⚡ | packages/supabase/src/attachment-backups.ts | 297 | export function isAttachmentBackupDependencyAppeared(error: unknown) { | CODE |
| LOW⚡ | packages/supabase/src/attachment-backups.ts | 305 | export function isAttachmentBackupDeleteCancelled(error: unknown) { | CODE |
| LOW⚡ | packages/supabase/src/attachment-backups.ts | 313 | export function isAttachmentBackupDeleteTooLate(error: unknown) { | CODE |
| LOW | packages/supabase/src/profile.ts | 42 | export function getProviderProfileImageUrl( | CODE |
| LOW | packages/editor/src/task-storage.tsx | 30 | export function createInMemoryTaskStorage(): TaskStorage { | CODE |
| LOW | packages/editor/src/image-markdown.ts | 34 | function serializeImageTitleMetadata({ | CODE |
| LOW | packages/editor/src/note/index.tsx | 267 | export function shouldReplaceEditorContent({ | CODE |
| LOW | packages/editor/src/note/index.tsx | 311 | export function getEditorCompositionWaitMs( | CODE |
| LOW | packages/editor/src/note/index.tsx | 325 | function createCompositionStatePlugin( | CODE |
| LOW | packages/editor/src/note/index.tsx | 355 | function createSessionMentionDropPlugin(config: SessionMentionDropConfig) { | CODE |
| LOW | packages/editor/src/note/keymap.ts | 698 | function insertParagraphBeforeFirstListItem(itemType: NodeType): Command { | CODE |
| LOW | packages/editor/src/note/linked-item-open-behavior.tsx | 8 | export function useLinkedItemOpenBehavior() { | CODE |
| LOW | packages/editor/src/note/trailing-empty-line-click.ts | 6 | export function trailingEmptyLineClickPlugin() { | CODE |
| LOW | packages/editor/src/note/trailing-empty-line-click.ts | 19 | export function handleTrailingEmptyLineMouseDown( | CODE |
| LOW | packages/editor/src/chat/attachment-limits.ts | 10 | export function estimateImageDataUrlBytes(size: number, mimeType: string) { | CODE |
| LOW | packages/editor/src/plugins/clipboard.ts | 31 | function fragmentTextBetweenBlocks(fragment: Fragment) { | CODE |
| LOW | packages/editor/src/plugins/comment-anchors.ts | 137 | function dispatchCommentAnchorsMeta( | CODE |
| LOW | packages/editor/src/plugins/comment-anchors.ts | 171 | export function getCommentAnchorScreenPositions( | CODE |
| LOW | packages/editor/src/plugins/clip-paste.ts | 37 | function extractHtmlAttributeValue( | CODE |
| LOW | packages/editor/src/plugins/hashtag.ts | 111 | function buildHashtagDecorationSet(doc: PMNode) { | CODE |
| LOW | packages/editor/src/plugins/hashtag.test.ts | 46 | function getHashtagDecorationCount(state: EditorState) { | CODE |
| LOW | packages/editor/src/plugins/image-trailing-paragraph.ts | 31 | export function imageTrailingParagraphPlugin() { | CODE |
| LOW | packages/editor/src/plugins/image-trailing-paragraph.ts | 58 | function getImageTrailingParagraphInsertions( | CODE |
| LOW | packages/editor/src/plugins/changed-ranges.ts | 41 | export function getChangedTextblockRanges( | CODE |
| LOW | packages/editor/src/plugins/changed-ranges.ts | 91 | function getTextblockRangesForRange(doc: PMNode, range: ChangedRange) { | CODE |
| LOW | packages/editor/src/node-views/mention-view.tsx | 62 | function getMentionFacehashBgClass(name: string) { | CODE |
| LOW | packages/editor/src/node-views/attachment-resolver.tsx | 20 | export function useAttachmentEditingEnabled() { | CODE |
| LOW | packages/editor/src/markdown/parser.ts | 224 | function tableCellParagraphsPlugin(md: MarkdownIt) { | CODE |
| LOW | packages/editor/src/widgets/format-toolbar.tsx | 54 | export function createSelectionVirtualElement( | CODE |
| LOW | packages/editor/src/widgets/format-toolbar.tsx | 73 | export function selectionTouchesTitleHeading(state: EditorState): boolean { | CODE |
| LOW⚡ | .github/scripts/test_check_license_boundary.py | 41 | def test_accepts_one_way_enterprise_boundary(self) -> None: | CODE |
| LOW⚡ | .github/scripts/test_check_license_boundary.py | 44 | def test_rejects_rust_path_from_community_to_enterprise(self) -> None: | CODE |
| LOW⚡ | .github/scripts/test_check_license_boundary.py | 54 | def test_rejects_workspace_rust_dependency_by_enterprise_package_name(self) -> None: | CODE |
| LOW | .github/scripts/test_check_license_boundary.py | 66 | def test_rejects_virtual_workspace_rust_dependency_on_enterprise_path(self) -> None: | CODE |
| LOW | .github/scripts/test_check_license_boundary.py | 76 | def test_rejects_javascript_dependency_on_enterprise_package(self) -> None: | CODE |
| LOW | .github/scripts/test_check_license_boundary.py | 89 | def test_rejects_javascript_alias_for_enterprise_package(self) -> None: | CODE |
| LOW | .github/scripts/test_check_license_boundary.py | 107 | def test_rejects_javascript_workspace_path_into_enterprise(self) -> None: | CODE |
| LOW | .github/scripts/test_check_license_boundary.py | 116 | def test_rejects_javascript_root_paths_without_dot_prefix(self) -> None: | CODE |
| LOW | .github/scripts/test_check_license_boundary.py | 132 | def test_rejects_mismatched_commercial_notices(self) -> None: | CODE |
| LOW | .github/scripts/test_deploy_api_drain.py | 31 | def test_classifies_serving_and_drained_machines(): | CODE |
| LOW | .github/scripts/test_deploy_api_drain.py | 54 | def test_reads_cordon_from_metadata_when_top_level_flag_is_absent(): | CODE |
| LOW | .github/scripts/test_deploy_api_drain.py | 64 | def test_checks_passing_requires_every_reported_check(): | CODE |
| LOW | .github/scripts/test_deploy_api_drain.py | 88 | def test_image_ref_uses_the_fly_registry_tag(): | CODE |
| LOW | .github/scripts/test_deploy_api_drain.py | 109 | def test_stop_config_reads_graceful_shutdown_settings(): | CODE |
| LOW | .github/scripts/test_deploy_api_drain.py | 119 | def test_replacement_config_updates_image_without_mutating_source(): | CODE |
| LOW | .github/scripts/test_deploy_api_drain.py | 150 | def test_replacement_config_rejects_volume_mounts(): | CODE |
| LOW | .github/scripts/test_deploy_api_drain.py | 171 | def test_replacement_config_rejects_unhealthy_hosts(): | CODE |
| 1176 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | apps/desktop/src/i18n/locales/sl/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/sk/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ur/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/sw/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/sd/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/uz/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/pl/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/vi/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/sq/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/sv/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ga/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/he/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ms/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/km/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/mt/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/hy/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/am/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/nn/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/be/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/da/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/mr/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/kk/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/no/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ky/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/gu/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/mg/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/mn/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/mi/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ja/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/el/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ig/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/lv/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/oc/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/lb/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/it/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ca/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/is/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/cs/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/te/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ru/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/tl/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/tk/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/xh/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ro/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/yo/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/zu/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/so/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/sa/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/yi/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/pt/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ps/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/su/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/zh/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/uk/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/sr/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/pa/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/sn/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/si/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ml/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| HIGH | apps/desktop/src/i18n/locales/ku/messages.ts | 1 | /*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"-8PP0T\":[\"Match case\"] | COMMENT |
| 49 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | crates/audio-device/src/lib.rs | 321 | COMMENT | |
| LOW | …owhisper-client/src/adapter/openai_compatible_batch.rs | 101 | start: f64, | COMMENT |
| LOW | crates/owhisper-client/src/adapter/openrouter/mod.rs | 101 | /// A `provider.options.<slug>` passthrough request, per | COMMENT |
| LOW | crates/detect/src/error.rs | 1 | #[derive(Debug, thiserror::Error)] | COMMENT |
| LOW | crates/template-app-legacy/src/lib.rs | 21 | #[serde(rename = "enhance.user")] | COMMENT |
| LOW | crates/google-mail/src/types.rs | 81 | pub format: Option<MessageFormat>, | COMMENT |
| LOW | crates/google-mail/src/types.rs | 121 | COMMENT | |
| LOW | crates/google-mail/src/types.rs | 201 | pub value: String, | COMMENT |
| LOW | crates/google-mail/src/types.rs | 261 | COMMENT | |
| LOW | crates/google-mail/src/types.rs | 341 | #[cfg_attr(feature = "specta", derive(Type))] | COMMENT |
| LOW | crates/google-mail/src/types.rs | 381 | #[cfg_attr(feature = "utoipa", derive(ToSchema))] | COMMENT |
| LOW | crates/owhisper-interface/src/openapi.rs | 1 | use utoipa::OpenApi; | COMMENT |
| LOW | crates/owhisper-interface/src/openapi.rs | 21 | num_speakers: Option<u32>, | COMMENT |
| LOW | crates/owhisper-interface/src/lib.rs | 141 | #[serde(default = "ListenParams::default_sample_rate")] | COMMENT |
| LOW | crates/db-app/src/e2ee/chunks.rs | 1 | //! Large JSON array columns sync as fixed-size chunks. An append then re-seals | COMMENT |
| LOW | crates/calendar-interface/src/lib.rs | 81 | /// Provider-normalized attendance evidence for automatic meeting actions. | COMMENT |
| LOW | crates/calendar-interface/src/lib.rs | 121 | /// Apple: participant.isCurrentUser, Google: attendee.self. | COMMENT |
| LOW | crates/overlay-kit/src/lib.rs | 1 | //! Generic, brand-agnostic macOS overlay primitives: non-activating panels, | COMMENT |
| LOW | crates/transcript/src/processor.rs | 21 | /// 1. Words are finalized (with state `Pending` or `Final`) | COMMENT |
| LOW | crates/outlook-calendar/src/types.rs | 221 | #[derive(Debug, Clone, Serialize, Deserialize)] | COMMENT |
| LOW | crates/outlook-calendar/src/types.rs | 241 | } | COMMENT |
| LOW | crates/outlook-calendar/src/types.rs | 321 | #[derive(Debug, Clone, Serialize, Deserialize)] | COMMENT |
| LOW | crates/outlook-calendar/src/types.rs | 361 | #[cfg_attr(feature = "utoipa", derive(ToSchema))] | COMMENT |
| LOW | crates/outlook-calendar/src/types.rs | 421 | #[derive(Debug, Clone, Serialize, Deserialize)] | COMMENT |
| LOW | crates/outlook-calendar/src/types.rs | 501 | pub original_start_time_zone: Option<String>, | COMMENT |
| LOW | crates/outlook-calendar/src/types.rs | 521 | #[serde(rename_all = "camelCase")] | COMMENT |
| LOW | crates/outlook-calendar/src/types.rs | 561 | COMMENT | |
| LOW | crates/google-calendar/src/types.rs | 241 | #[derive(Debug, Clone, Serialize, Deserialize)] | COMMENT |
| LOW | crates/google-calendar/src/types.rs | 261 | #[cfg_attr(feature = "specta", derive(Type))] | COMMENT |
| LOW | crates/google-calendar/src/types.rs | 281 | COMMENT | |
| LOW | crates/google-calendar/src/types.rs | 321 | pub password: Option<String>, | COMMENT |
| LOW | crates/google-calendar/src/types.rs | 401 | #[cfg_attr(feature = "utoipa", derive(ToSchema))] | COMMENT |
| LOW | crates/google-calendar/src/types.rs | 441 | #[derive(Debug, Clone, Serialize, Deserialize)] | COMMENT |
| LOW | crates/google-calendar/src/types.rs | 501 | #[cfg_attr(feature = "specta", derive(Type))] | COMMENT |
| LOW | crates/google-calendar/src/types.rs | 561 | #[serde(default)] | COMMENT |
| LOW | crates/google-calendar/src/types.rs | 661 | COMMENT | |
| LOW | crates/google-calendar/src/types.rs | 681 | pub struct EventPerson { | COMMENT |
| LOW | crates/google-calendar/src/types.rs | 721 | COMMENT | |
| LOW | crates/google-calendar/src/types.rs | 741 | #[cfg_attr(feature = "specta", derive(Type))] | COMMENT |
| LOW | crates/listener-core/src/events.rs | 61 | #[derive(serde::Serialize, serde::Deserialize, Clone)] | COMMENT |
| LOW | crates/pyannote-local/src/pipeline.rs | 21 | pub step_seconds: f32, | COMMENT |
| LOW | crates/listener2-core/src/batch/diarize.rs | 21 | pub(super) const LOCAL_DIARIZATION_PROVIDER: &str = "pyannote-local"; | COMMENT |
| LOW | crates/listener2-core/src/batch/diarize.rs | 61 | } | COMMENT |
| LOW | crates/jina/src/search.rs | 21 | #[schemars(description = "Country code for geolocation")] | COMMENT |
| LOW | crates/jina/src/reader.rs | 21 | pub wait_for_selector: Option<Vec<String>>, | COMMENT |
| LOW | crates/whisper/src/lib.rs | 1 | // https://github.com/openai/whisper/blob/ba3f3cd/whisper/tokenizer.py#L10-L128 | COMMENT |
| LOW | plugins/fs2/src/manifest.rs | 1 | // Single source of truth for this plugin's Tauri commands. build.rs includes | COMMENT |
| LOW | plugins/export/src/manifest.rs | 1 | // Single source of truth for this plugin's Tauri commands. build.rs includes | COMMENT |
| LOW | .agents/skills/gitbutler/references/examples.md | 81 | # Output shows: | COMMENT |
| LOW | .agents/skills/gitbutler/references/examples.md | 201 | COMMENT | |
| LOW | .agents/skills/gitbutler/references/examples.md | 301 | ## Example 9: Fixing History Before Pushing | COMMENT |
| LOW | .agents/skills/gitbutler/references/examples.md | 401 | # 9c1f2ab 2026-01-02 [SQUASH] Squashed commits | COMMENT |
| LOW | supabase/config.default.toml | 61 | # Specifies an ordered list of seed files to load during db reset. | COMMENT |
| LOW | supabase/config.default.toml | 101 | # sender_name = "Admin" | COMMENT |
| LOW | supabase/config.default.toml | 121 | # The base URL of your website. Used as an allow-list for redirects and for constructing URLs used | COMMENT |
| LOW | supabase/config.default.toml | 161 | token_verifications = 30 | COMMENT |
| LOW | supabase/config.default.toml | 181 | # Controls the minimum amount of time that must pass before sending another signup confirmation or password reset email. | COMMENT |
| LOW | supabase/config.default.toml | 201 | # content_path = "./supabase/templates/invite.html" | COMMENT |
| LOW | supabase/config.default.toml | 221 | # 4152127777 = "123456" | COMMENT |
| LOW | packages/mobile-bridge-rn/ios/MobileBridge.h | 1 | // Generated by uniffi-bindgen-react-native | COMMENT |
| 1 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | .github/scripts/test_deploy_api_drain.py | 1131 | except DeployError: | CODE |
| HIGH | .github/scripts/test_deploy_api_drain.py | 345 | except DeployError: | CODE |
| HIGH | .github/scripts/test_deploy_api_drain.py | 369 | except DeployError: | CODE |
| HIGH | .github/scripts/test_deploy_api_drain.py | 412 | except DeployError: | CODE |
| HIGH | .github/scripts/test_deploy_api_drain.py | 1083 | except DeployError: | CODE |
| HIGH | .github/scripts/test_deploy_api_drain.py | 1106 | except DeployError: | CODE |
| HIGH | .github/scripts/test_deploy_api_drain.py | 744 | except DeployError: | CODE |
| HIGH | .github/scripts/test_deploy_api_drain.py | 856 | except DeployError: | CODE |
| HIGH | .github/scripts/test_deploy_api_drain.py | 969 | except deploy_api_drain.DeployError: | CODE |
| HIGH | .github/scripts/verify_api_continuity.py | 296 | except httpx.HTTPError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | crates/supabase-auth/src/session.rs | 185 | "email": "user@example.com", | CODE |
| LOW | crates/supabase-auth/src/session.rs | 212 | assert_eq!(user.email.as_deref(), Some("user@example.com")); | CODE |
| LOW | crates/supabase-auth/src/session.rs | 274 | "email": "user@example.com", | CODE |
| LOW | crates/supabase-auth/src/refresh/tests.rs | 21 | "email": "user@example.com", | CODE |
| LOW | crates/detect/src/meeting_ax/tests/message_parsing.rs | 440 | "John Jeong: @Artem lorem ipsum. Friday at 5:50\u{202f}PM.", | CODE |
| LOW | crates/detect/src/meeting_ax/tests/message_parsing.rs | 443 | "@Artem lorem ipsum", | CODE |
| LOW | …ple-calendar/src/fixture/data/default/base/events.json | 27 | "name": "John Doe", | CODE |
| LOW | crates/api-crm/src/providers/salesforce.rs | 103 | "Name": "Jane Doe", | CODE |
| LOW | crates/api-crm/src/providers/salesforce.rs | 111 | assert_eq!(contact.name.as_deref(), Some("Jane Doe")); | CODE |
| LOW | crates/api-crm/src/providers/close.rs | 104 | "name": "Jane Doe", | CODE |
| LOW | crates/api-crm/src/providers/close.rs | 112 | assert_eq!(contact.name.as_deref(), Some("Jane Doe")); | CODE |
| LOW | crates/api-crm/src/providers/pipedrive.rs | 113 | "name": "Jane Doe", | CODE |
| LOW | crates/api-crm/src/providers/pipedrive.rs | 121 | assert_eq!(contact.name.as_deref(), Some("Jane Doe")); | CODE |
| LOW | crates/api-nango/src/routes/webhook.rs | 307 | serde_json::json!({"id": "user@example.com", "summary": "Test User"}), | CODE |
| LOW | crates/api-nango/src/routes/webhook.rs | 344 | "account_identity": "user@example.com" | CODE |
| LOW | crates/template-app/src/enhance.rs | 248 | name: "John Doe".to_string(), | CODE |
| LOW | crates/template-app/src/enhance.rs | 273 | speaker: "John Doe".to_string(), | CODE |
| LOW | crates/nango/src/webhook.rs | 192 | "endUserEmail": "user@example.com", | CODE |
| LOW | crates/nango/src/webhook.rs | 206 | assert_eq!(end_user.end_user_email.as_deref(), Some("user@example.com")); | CODE |
| LOW | crates/pyannote-cloud/openapi.gen.json | 864 | "example": "John Doe" | CODE |
| LOW | crates/buffer/src/lib.rs | 426 | assert!(html.contains(r#"data-label="John Doe""#)); | CODE |
| LOW | plugins/tracing/tests/integration.rs | 70 | !content.contains("user@example.com"), | CODE |
| LOW | plugins/tracing/tests/integration.rs | 132 | email = "admin@example.org", | CODE |
| LOW | plugins/calendar/src/storage/connection_sync.rs | 1740 | "Jane Doe".to_string(), | CODE |
| LOW | plugins/calendar/src/storage/connection_sync.rs | 1756 | assert_eq!(display_names, ["Jane Doe", "", "Simon Goldstein"]); | CODE |
| LOW | plugins/calendar/src/storage/identity.rs | 279 | ("Jane Doe", false), | CODE |
| LOW | plugins/calendar/src/storage/identity.rs | 301 | assert_eq!(identity.name, "Jane Doe"); | CODE |
| LOW | packages/editor/src/plugins/placeholder.ts | 17 | export const placeholderPluginKey = new PluginKey("placeholder"); | CODE |
| LOW | …/calendar/components/oauth/calendar-selection.test.tsx | 62 | source: "user@example.com", | CODE |
| LOW | apps/desktop/src/contacts/identity.test.ts | 25 | deriveContactIdentity({ name: "Jane Doe", email: "jd@acme.com" }), | CODE |
| LOW | apps/desktop/src/contacts/identity.test.ts | 27 | name: "Jane Doe", | CODE |
| LOW | apps/desktop/src/contacts/identity.test.ts | 49 | ).toEqual({ name: "Jane Doe", nameSource: "email" }); | CODE |
| LOW | apps/desktop/src/contacts/identity.test.ts | 58 | ["Jane Doe", false], | CODE |
| LOW | apps/desktop/src/automations/engine.test.ts | 97 | user: { is_anonymous: false, email: "user@example.com" }, | CODE |
| LOW | apps/desktop/src/services/enhancer/storage.test.ts | 328 | "INSERT INTO session_documents (id, session_id, kind, title, body, created_at, updated_at) VALUES ('legacy', 'se | CODE |
| LOW | apps/desktop/src/services/enhancer/storage.test.ts | 339 | "UPDATE session_documents SET body = 'Late synced edit', updated_at = 'later' WHERE id = 'placeholder'", | CODE |
| LOW | apps/desktop/src/session/content-queries.test.ts | 26 | owner_email: "user@example.com", | CODE |
| LOW | apps/desktop/src/session/content-queries.test.ts | 105 | ownerEmail: "user@example.com", | CODE |
| LOW | apps/api/src/observability.rs | 652 | KeyValue::new("component", "Jane Doe"), | CODE |
| LOW | apps/api/src/observability.rs | 740 | patient = "Jane Doe", | CODE |
| LOW | apps/api/src/observability.rs | 752 | assert!(!output.contains("Jane Doe")); | CODE |
| LOW | apps/stripe/src/trial-email-payload.test.ts | 18 | email: "user@example.com", | CODE |
| LOW | apps/stripe/src/trial-email-payload.test.ts | 34 | email: "user@example.com", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | crates/audacity/src/lib.rs | 197 | except Exception as exc: | CODE |
| MEDIUM | crates/audacity/src/lib.rs | 194 | def worker(): | CODE |
| LOW | scripts/gguf_reader.py | 25 | except Exception as e: | CODE |
| MEDIUM | scripts/gguf_reader.py | 10 | def download_and_execute_script(url, args): | CODE |
| LOW | scripts/verify-packaged-cli.py | 132 | except Exception: | CODE |
| LOW | scripts/qa/verify_linux_audio_tracks.py | 484 | except Exception as error: | CODE |
| LOW | .github/scripts/verify_api_continuity.py | 93 | except Exception as error: | CODE |
| LOW | .github/scripts/verify_api_continuity.py | 109 | except Exception as error: | CODE |
| LOW | .github/scripts/verify_api_continuity.py | 144 | except Exception as error: | CODE |
| LOW | .github/scripts/verify_api_continuity.py | 174 | except Exception as error: | CODE |
| LOW | .github/scripts/verify_api_continuity.py | 191 | except Exception as error: | CODE |
| MEDIUM | .github/scripts/verify_api_continuity.py | 97 | def receive(): | CODE |
| LOW | .github/scripts/verify_cloudsync_e2ee.py | 658 | except Exception as error: | CODE |
| LOW | .github/scripts/verify_cloudsync_e2ee.py | 760 | except Exception as error: | CODE |
| LOW⚡ | .github/scripts/deploy_api_drain.py | 558 | except Exception: | CODE |
| LOW⚡ | .github/scripts/deploy_api_drain.py | 562 | except Exception as rollback_error: | CODE |
| LOW⚡ | .github/scripts/deploy_api_drain.py | 572 | except Exception as rollback_error: | CODE |
| LOW | .github/scripts/deploy_api_drain.py | 585 | except Exception as rollback_error: | CODE |
| LOW | .github/scripts/deploy_api_drain.py | 605 | except Exception as error: | CODE |
| LOW | .github/scripts/deploy_api_drain.py | 633 | except Exception as error: | CODE |
| LOW⚡ | .github/scripts/deploy_api_drain.py | 841 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | enterprise/control-plane/src/zoom.rs | 1353 | let external_id = self.checkpoint.job.meeting.external_id.as_ref().unwrap(); | CODE |
| CRITICAL | examples/plugins/hello-world/src/main.tsx | 87 | ctx.events.tauri.listener.captureLifecycleEvent.listen(({ payload }) => { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/verify-packaged-cli.py | 13 | CODE | |
| LOW | .github/scripts/test_deploy_api_drain.py | 917 | CODE | |
| LOW | .github/scripts/test_deploy_api_drain.py | 995 | CODE | |
| LOW | .github/scripts/verify_api_continuity.py | 251 | CODE | |
| LOW | .github/scripts/verify_api_continuity.py | 355 | CODE | |
| LOW | .github/scripts/verify_api_continuity.py | 133 | CODE | |
| LOW | .github/scripts/verify_api_continuity.py | 178 | CODE | |
| LOW | .github/scripts/test_verify_cloudsync_e2ee.py | 282 | CODE | |
| LOW | .github/scripts/test_verify_cloudsync_e2ee.py | 299 | CODE | |
| LOW | .github/scripts/check_license_boundary.py | 90 | CODE | |
| LOW | .github/scripts/test_verify_api_continuity.py | 38 | CODE | |
| LOW | .github/scripts/test_verify_api_continuity.py | 162 | CODE | |
| LOW | .github/scripts/deploy_api_drain.py | 528 | CODE | |
| LOW | .github/scripts/deploy_api_drain.py | 612 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | crates/transcript/src/processor.rs | 224 | // ── Generic correction API ────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/transcript/src/processor.rs | 311 | // ── Internal ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | .agents/skills/gitbutler/references/examples.md | 195 | # ──────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | crates/pyannote-local/eval/fetch_datasets.py | 17 | CODE | |
| LOW | scripts/pre_build.py | 9 | CODE | |
| LOW | scripts/pre_build.py | 10 | CODE | |
| LOW | .github/scripts/test_check_license_boundary.py | 3 | CODE | |
| LOW | .github/scripts/verify_cloudsync_e2ee.py | 3 | CODE | |
| LOW | .github/scripts/check_license_boundary.py | 3 | CODE | |
| LOW | .github/scripts/deploy_api_drain.py | 16 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | crates/embedding/src/error.rs | 31 | #[error("embedding model returned non-finite values")] | COMMENT |
| MEDIUM | .github/reports/legal-review/2026-04.md | 19 | ### 2. New third-party STT provider scaffolding: SmallestAI | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | .github/scripts/test_verify_cloudsync_e2ee.py | 108 | ' "first_page_seconds": null, "empty_calls_before_first_page": 9,' | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | apps/desktop/src/stt/useKeywords.test.ts | 90 | print("hello") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | crates/data/scripts/resamples.sh | 3 | # Check if input file is provided | COMMENT |