One SQL interface over APIs, files, and live sources — built for agents.
This report presents the forensic synthetic code analysis of withcoral/coral, a Rust project with 5,056 GitHub stars. SynthScan v2.0 examined 469,513 lines of code across 1391 source files, recording 699 pattern matches distributed across 12 syntactic categories. The overall adjusted score of 3.7 places this repository in the Likely human-written band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 699 distinct pattern matches across 12 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | crates/coral-engine/src/backends/file/tests.rs | 652 | // ── infer_schema_expand_dicts tests ────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 70 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 72 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 83 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 85 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 317 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 319 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | sources/community/firefox/browser_server.py | 17 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | sources/community/firefox/browser_server.py | 22 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | sources/community/firefox/browser_server.py | 260 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | sources/community/firefox/browser_server.py | 262 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 450 | # --------------------------------------------------------------------------- | STRING |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 452 | # --------------------------------------------------------------------------- | STRING |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 474 | # --------------------------------------------------------------------------- | STRING |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 476 | # --------------------------------------------------------------------------- | STRING |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 480 | # ------------------------------------------------------------------ | STRING |
| MEDIUM⚡ | sources/community/firefox/browser_server.py | 482 | # ------------------------------------------------------------------ | STRING |
| MEDIUM | sources/community/firefox/browser_server.py | 529 | # ------------------------------------------------------------------ | STRING |
| MEDIUM | sources/community/firefox/browser_server.py | 531 | # ------------------------------------------------------------------ | STRING |
| MEDIUM | sources/community/firefox/browser_server.py | 585 | # ------------------------------------------------------------------ | STRING |
| MEDIUM | sources/community/firefox/browser_server.py | 587 | # ------------------------------------------------------------------ | STRING |
| MEDIUM | sources/community/firefox/browser_server.py | 605 | # --------------------------------------------------------------------------- | STRING |
| MEDIUM | sources/community/firefox/browser_server.py | 607 | # --------------------------------------------------------------------------- | STRING |
| MEDIUM | sources/community/shortcut/manifest.yaml | 40 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 42 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 126 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 128 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 195 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 197 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 291 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 293 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 414 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 416 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 601 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 603 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 683 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/shortcut/manifest.yaml | 685 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 39 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 41 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 134 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 136 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 269 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 271 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 450 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 452 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 831 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 833 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 1031 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/discord/manifest.yaml | 1033 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/gemini/manifest.yaml | 22 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/gemini/manifest.yaml | 24 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/gemini/manifest.yaml | 111 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/gemini/manifest.yaml | 113 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/betterstack/manifest.yaml | 30 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/betterstack/manifest.yaml | 32 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/betterstack/manifest.yaml | 328 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/betterstack/manifest.yaml | 330 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/betterstack/manifest.yaml | 416 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/betterstack/manifest.yaml | 418 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | sources/community/betterstack/manifest.yaml | 650 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| 437 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | crates/coral-spec/src/error.rs | 1 | //! Source-spec-owned error types. | COMMENT |
| LOW | crates/coral-spec/src/lib.rs | 1 | //! Declarative source-spec parsing, validation, and normalized source models | COMMENT |
| LOW | crates/coral-spec/src/lib.rs | 21 | //! | COMMENT |
| LOW | crates/coral-spec/src/lib.rs | 41 | //! | COMMENT |
| LOW | crates/coral-spec/src/lib.rs | 61 | //! type: Utf8 | COMMENT |
| LOW | crates/coral-spec/src/inputs.rs | 21 | COMMENT | |
| LOW | crates/coral-spec/src/inputs.rs | 341 | /// How Coral sends the client secret to the token endpoint. | COMMENT |
| LOW | crates/coral-spec/src/inputs.rs | 361 | pub registration_url: String, | COMMENT |
| LOW | crates/coral-spec/src/common.rs | 101 | /// Stored as UTF-8 containing valid JSON. Hints to users and tooling | COMMENT |
| LOW | crates/coral-spec/src/common.rs | 461 | #[serde(flatten)] | COMMENT |
| LOW | crates/coral-spec/src/common.rs | 641 | #[serde(default)] | COMMENT |
| LOW | crates/coral-spec/src/backends/mod.rs | 1 | //! Backend-specific validated manifest models. | COMMENT |
| LOW | crates/coral-spec/src/backends/file.rs | 181 | #[must_use] | COMMENT |
| LOW | crates/coral-spec/src/v4/lookup_keys.rs | 1 | //! Heuristic inference of lookup key joinability for REST surfaces. | COMMENT |
| LOW | crates/coral-spec/src/v4/schema.rs | 221 | COMMENT | |
| LOW | crates/coral-spec/src/v4/schema.rs | 321 | #[serde(deny_unknown_fields)] | COMMENT |
| LOW | crates/coral-spec/src/v4/parameter_metadata.rs | 21 | COMMENT | |
| LOW | crates/coral-mcp/src/error.rs | 1 | //! Error surface for the Coral MCP stdio adapter. | COMMENT |
| LOW | crates/coral-mcp/src/lib.rs | 1 | //! `MCP` stdio server for Coral. | COMMENT |
| LOW | crates/coral-mcp/src/lib.rs | 101 | pub feedback_enabled: bool, | COMMENT |
| LOW | crates/coral-cli/src/query_error.rs | 1 | //! Structured error rendering for the `coral sql` command. | COMMENT |
| LOW | crates/coral-cli/src/source_ops.rs | 1721 | .interact()?; | COMMENT |
| LOW | crates/coral-cli/src/lib.rs | 121 | #[derive(Debug, Args)] | COMMENT |
| LOW | crates/coral-app/tests/telemetry_host_subscriber.rs | 1 | //! Pins the host-owned subscriber policy. | COMMENT |
| LOW | crates/coral-app/src/transport.rs | 61 | KeyRef::Binary(_) => None, | COMMENT |
| LOW | crates/coral-app/src/lib.rs | 1 | //! Internal local server composition for the Coral app. | COMMENT |
| LOW | crates/coral-app/src/lib.rs | 21 | //! - `credentials/` owns credential-set identity and credential material | COMMENT |
| LOW | crates/coral-app/src/bootstrap/error.rs | 21 | /// A requested source was not found in config. | COMMENT |
| LOW | crates/coral-app/src/bootstrap/error.rs | 61 | /// Provider-managed credential refresh failed during active source use. | COMMENT |
| LOW | crates/coral-app/src/bootstrap/error.rs | 81 | TomlEncode(#[from] toml::ser::Error), | COMMENT |
| LOW | crates/coral-app/src/bootstrap/error.rs | 121 | /// | COMMENT |
| LOW | crates/coral-app/src/bootstrap/server.rs | 401 | /// Returns the endpoint URI for this server. | COMMENT |
| LOW | crates/coral-app/src/sources/model.rs | 21 | } | COMMENT |
| LOW | crates/coral-app/src/telemetry/mod.rs | 381 | } | COMMENT |
| LOW | crates/coral-app/src/query/attribution.rs | 1 | //! Transport-free attribution for a query's originating context. | COMMENT |
| LOW | crates/coral-client/src/error.rs | 1 | //! Error surfaces for Coral client bootstrap and query result decoding. | COMMENT |
| LOW | crates/coral-client/src/lib.rs | 1 | //! Thin local transport bootstrap and shared query-result helpers for Coral. | COMMENT |
| LOW | crates/coral-client/src/lib.rs | 181 | /// Concretely, `Int64`, `UInt64`, and `Decimal{32,64,128,256}` leaves anywhere | COMMENT |
| LOW | crates/coral-client/src/status_error.rs | 21 | /// `domain = "coral.withcoral.com"`. | COMMENT |
| LOW | crates/coral-client/src/status_error.rs | 41 | /// Whether the error is transient and retrying may succeed. | COMMENT |
| LOW | crates/coral-client/src/search.rs | 481 | /// Converts a Universal Search response into the shared JSON shape used by | COMMENT |
| LOW | crates/coral-client/src/sources.rs | 21 | #[derive(Debug, thiserror::Error)] | COMMENT |
| LOW | crates/coral-client/src/sources.rs | 41 | /// The OAuth credential method did not include provider endpoints. | COMMENT |
| LOW | crates/coral-engine/src/types.rs | 1 | //! Canonical conversions between the coral-spec scalar vocabulary and | COMMENT |
| LOW | crates/coral-engine/src/lib.rs | 1 | //! Data-plane query engine for Coral. | COMMENT |
| LOW | crates/coral-engine/src/lib.rs | 21 | //! declarative source models consumed by this engine. | COMMENT |
| LOW | crates/coral-engine/src/lib.rs | 81 | }; | COMMENT |
| LOW | crates/coral-engine/src/lib.rs | 101 | table_filter: Option<&str>, | COMMENT |
| LOW | crates/coral-engine/src/composition.rs | 241 | ) -> Result<(), RequestAuthenticatorError> { | COMMENT |
| LOW | crates/coral-engine/src/composition.rs | 261 | ) -> Result<BTreeMap<String, String>, SourceInputResolverError>; | COMMENT |
| LOW | crates/coral-engine/src/composition.rs | 281 | /// Observes one successful query result. | COMMENT |
| LOW | crates/coral-engine/src/composition.rs | 301 | /// should abort. | COMMENT |
| LOW | crates/coral-engine/src/contracts/query_error.rs | 21 | /// | COMMENT |
| LOW | crates/coral-engine/src/contracts/query_error.rs | 521 | format!("'{}'", value.replace('\'', "''")) | COMMENT |
| LOW | crates/coral-engine/src/contracts/error.rs | 1 | //! Stable transport-neutral error contract for `coral-engine`. | COMMENT |
| LOW | crates/coral-engine/src/backends/mod.rs | 1 | //! Backend-specific source implementations and compilation into runtime sources. | COMMENT |
| LOW | crates/coral-engine/src/backends/mod.rs | 21 | //! | COMMENT |
| LOW | crates/coral-engine/src/backends/mod.rs | 41 | //! payload → row list via `ResponseSpec` (`RowStrategy::{Direct, | COMMENT |
| LOW | crates/coral-engine/src/backends/mcp/transport.rs | 1 | //! Per-instance MCP transport implementations. | COMMENT |
| LOW | crates/coral-engine/src/backends/mcp/fetch.rs | 201 | /// | COMMENT |
| 26 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | sources/community/firecrawl/README.md | 27 | export FIRECRAWL_API_KEY="fc-your-api-key" | CODE |
| HIGH | sources/community/cloudinary/README.md | 29 | printf '%s:%s' YOUR_API_KEY YOUR_API_SECRET | base64 | CODE |
| HIGH | sources/community/cloudinary/manifest.yaml | 23 | printf '%s:%s' YOUR_API_KEY YOUR_API_SECRET | base64 | CODE |
| HIGH | sources/community/mailchimp/README.md | 32 | MAILCHIMP_API_KEY=your-api-key \ | CODE |
| HIGH | sources/community/n8n/README.md | 26 | export N8N_API_KEY="<your-api-key>" | CODE |
| HIGH | sources/community/n8n/README.md | 180 | export N8N_API_KEY="<your-api-key>" | CODE |
| HIGH | sources/community/coralogix/README.md | 34 | export CORALOGIX_API_KEY="<your-api-key>" | CODE |
| HIGH | sources/community/coralogix/README.md | 199 | export CORALOGIX_API_KEY="<your-api-key>" | CODE |
| HIGH | sources/community/opsgenie/README.md | 17 | export OPSGENIE_API_KEY="<your-api-key>" | CODE |
| HIGH | sources/community/opsgenie/README.md | 111 | export OPSGENIE_API_KEY="<your-api-key>" | CODE |
| HIGH | sources/community/neynar/README.md | 20 | export NEYNAR_API_KEY=your-api-key-here | CODE |
| HIGH | sources/community/tavily/README.md | 26 | export TAVILY_API_KEY="tvly-your-api-key" | CODE |
| HIGH | sources/community/vapi/README.md | 20 | export VAPI_API_KEY=<your-api-key> | CODE |
| HIGH | sources/community/upstash/README.md | 92 | echo -n "you@example.com:your-api-key" | base64 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | sources/community/firefox/browser_server.py | 129 | def _profile_path_from_section(base_path: str, section: str, cfg: configparser.ConfigParser): | CODE |
| LOW⚡ | sources/community/firefox/browser_server.py | 139 | def _profile_path_from_install_default( | CODE |
| LOW | sources/community/firefox/browser_server.py | 159 | def _collect_install_default_candidates( | CODE |
| LOW | sources/community/ansible/tests/validate-fixtures.py | 80 | def validate_normalizer_workflow() -> None: | CODE |
| LOW | apps/ui/tests/ui/support/source-handlers.ts | 124 | export function sourceOAuthInstallHandlers() { | CODE |
| LOW | apps/ui/src/wax/components/typography/typography.tsx | 20 | function createTypographyComponent({ | CODE |
| LOW | apps/ui/src/lib/provider-icons.ts | 83 | export function providerIconNeedsDarkInvert(key: string): boolean { | CODE |
| LOW | apps/ui/src/lib/sources.ts | 116 | export async function createBundledSourceWithOAuth( | CODE |
| LOW | apps/ui/src/views/traces/use-timeline-tree.ts | 57 | export function flattenVisibleTimelineTree( | CODE |
| LOW | apps/ui/src/views/traces/http-span-detail.tsx | 131 | function inferGraphqlOperationType(query: string | undefined): string | undefined { | CODE |
| LOW | apps/ui/src/views/sources/source-install.tsx | 80 | function SourceInstallDialogContent({ | CODE |
| LOW | apps/ui/src/views/sources/source-detail.tsx | 62 | function SourceDetailDialogContent({ | CODE |
| LOW | apps/desktop/src/main/app-renderer.ts | 37 | export function registerAppSchemePrivileges(): void { | CODE |
| LOW | apps/desktop/src/main/app-renderer.ts | 184 | async function refreshServerSidecarEndpoint(resolveSidecarBaseUrl: () => Promise<string>): Promise<void> { | CODE |
| LOW | …ps/reef/app/wax/components/tooltip/tooltip.stories.tsx | 172 | render: function TruncationWithResizeStory() { | CODE |
| LOW | apps/reef/app/wax/components/picker/default-options.ts | 43 | export function buildSeverityPickerOptions( | CODE |
| LOW | apps/reef/app/wax/components/button/icon.tsx | 38 | export function SpinningIconImplementation(props: ImplementationProps) { | CODE |
| LOW | apps/reef/app/wax/components/typography/typography.tsx | 19 | function createTypographyComponent({ | CODE |
| LOW | …mponents/icon/custom-icons/chart-column-increasing.tsx | 3 | export function ChartColumnIncreasingIcon({ | CODE |
| LOW | apps/reef/app/components/sidebar/sidebar-state.ts | 3 | export function readSidebarCollapsedCookiePreference( | CODE |
| LOW | apps/reef/app/components/sidebar/sidebar-state.ts | 22 | export function readSidebarCollapsedCookieValue(cookieHeader: string | null | undefined): boolean { | CODE |
| LOW | apps/reef/app/components/sidebar/sidebar-state.ts | 26 | export function readSidebarCollapsedCookie(request: Request): boolean { | CODE |
| LOW | …ation-progress-bar/navigation-progress-bar.stories.tsx | 55 | function NavigationProgressBarStory() { | CODE |
| LOW | apps/reef/app/components/sources/source-catalog.ts | 36 | function filterSourceCatalogEntries(entries: SourceCatalogEntry[], search: string) { | CODE |
| LOW | apps/reef/app/components/sources/source-catalog.ts | 45 | function groupSourceCatalogSections(entries: SourceCatalogEntry[]): SourceCatalogSection[] { | CODE |
| LOW | apps/reef/app/__tests__/architecture.test.ts | 65 | function buildRouteDependencyGraph(routeFiles: string[]): Map<string, string[]> { | CODE |
| LOW | apps/reef/app/__tests__/architecture.test.ts | 107 | function containsInlineTailwindClasses(content: string): { found: boolean; lines: number[] } { | CODE |
| LOW | apps/reef/app/lib/provider-icons.ts | 85 | export function providerIconNeedsDarkInvert(key: string): boolean { | CODE |
| LOW | apps/reef/app/lib/sources.ts | 127 | export function toCatalogSourceInputSpecs(info: SourceInfo): CatalogSourceInputSpec[] { | CODE |
| LOW | apps/reef/app/lib/sources.ts | 180 | function toCatalogCredentialMethod(method: SourceCredentialMethod): CatalogSourceCredentialMethod { | CODE |
| LOW | apps/reef/app/lib/sources.ts | 210 | function toCatalogOAuthCredentialMethod( | CODE |
| LOW | apps/reef/app/lib/source-install-form.ts | 64 | export function firstMissingRequiredInput(info: SourceInfo, formData: FormData): string | null { | CODE |
| LOW | apps/reef/app/lib/source-install-form.ts | 97 | export function oauthCredentialRetrievalsFromForm( | CODE |
| LOW | apps/reef/app/lib/source-install-form.ts | 135 | function bindingsFromInstalledSource(source: Source, formData: FormData): InstallInput[] { | CODE |
| LOW | apps/reef/app/lib/source-install-form.ts | 148 | function submittedCredentialMethod( | CODE |
| LOW | apps/reef/app/lib/source-install-form.ts | 159 | function submittedCredentialMethodIndex( | CODE |
| LOW | apps/reef/app/lib/source-install-form.ts | 173 | function oauthCredentialInputsFromForm( | CODE |
| LOW | apps/reef/app/lib/source-install-form.ts | 186 | function firstMissingOAuthCredentialInput( | CODE |
| LOW | apps/reef/app/lib/schema-explorer.ts | 94 | export async function fetchTableColumnsFromCoral( | CODE |
| LOW | apps/reef/app/lib/source-oauth-install-stream.ts | 63 | export function oauthInstallEventToNdjson(event: OAuthInstallStreamEvent): string { | CODE |
| LOW | apps/reef/app/views/traces/use-timeline-tree.ts | 55 | export function flattenVisibleTimelineTree( | CODE |
| LOW | apps/reef/app/views/traces/http-span-detail.tsx | 130 | function inferGraphqlOperationType(query: string | undefined): string | undefined { | CODE |
| LOW | apps/reef/app/views/sources/source-install.tsx | 86 | function SourceInstallDialogContent({ | CODE |
| LOW | apps/reef/app/views/sources/source-detail.tsx | 107 | function SourceDetailDialogContent({ | CODE |
| LOW | apps/reef/app/views/sources/source-detail.tsx | 382 | function useSourceDetailActionState(entry: CatalogEntry, loadError: string | null) { | CODE |
| LOW | apps/reef/app/routes/sources.tsx | 26 | function isSourcesDetailNavigation(currentPath: string, nextPath: string) { | CODE |
| LOW | apps/reef/app/routes/source-oauth-install.ts | 90 | export function oauthInstallStreamResponse( | CODE |
| LOW | apps/reef/app/routes/source-oauth-install.ts | 123 | export async function relayOAuthInstallStreamEvents( | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | crates/coral-spec/src/backends/file.rs | 386 | TemplatePart::Token(_) => rendered.push_str("placeholder"), | CODE |
| LOW | crates/coral-app/tests/grpc/harness.rs | 348 | "name": "placeholder", | CODE |
| LOW | crates/coral-app/tests/grpc/source_lifecycle_tests.rs | 791 | value: "fake-token".to_string(), | CODE |
| LOW | crates/coral-app/tests/grpc/source_lifecycle_tests.rs | 982 | value: "fake-token".to_string(), | CODE |
| LOW | crates/coral-app/tests/grpc/source_lifecycle_tests.rs | 1124 | value: "fake-token".to_string(), | CODE |
| LOW | crates/coral-app/tests/grpc/source_lifecycle_tests.rs | 1192 | fs::write(secret_dir.join("secrets.env"), "SENTRY_TOKEN=fake-token\n").expect("write secrets"); | CODE |
| LOW | crates/coral-app/tests/grpc/catalog_discovery_tests.rs | 125 | assert_eq!(table.name, "placeholder"); | CODE |
| LOW | crates/coral-engine/tests/engine/catalog_tests.rs | 337 | "name": "placeholder", | CODE |
| LOW | crates/coral-engine/tests/engine/catalog_tests.rs | 641 | WHERE schema_name = 'searchy' AND table_name = 'placeholder' \ | CODE |
| LOW | crates/coral-engine/tests/engine/catalog_tests.rs | 676 | WHERE schema_name = 'searchy' AND table_name = 'placeholder'", | CODE |
| LOW | crates/coral-engine/tests/engine/catalog_tests.rs | 711 | "table_name": "placeholder", | CODE |
| LOW | crates/coral-engine/tests/engine/catalog_tests.rs | 731 | WHERE schema_name = 'searchy' AND table_name = 'placeholder' AND column_name = 'query'", | CODE |
| LOW | crates/coral-engine/tests/engine/catalog_tests.rs | 791 | ["issue_details", "placeholder"] | CODE |
| LOW | sources/core/openobserve/README.md | 12 | export OPENOBSERVE_USERNAME="user@example.com" | CODE |
| LOW | sources/community/sendgrid/README.md | 126 | WHERE email = 'user@example.com' | CODE |
| LOW | sources/community/sendgrid/README.md | 154 | WHERE email = 'user@example.com' | CODE |
| LOW | sources/community/helpscout/README.md | 141 | Other examples: `(number:123)`, `(email:"user@example.com")`, | CODE |
| LOW | sources/community/helpscout/manifest.yaml | 82 | parameter (for example tag:vip, (number:123), (email:"user@example.com")). | CODE |
| LOW | sources/community/loops/README.md | 105 | WHERE email = 'user@example.com' | CODE |
| LOW | xtask/src/perf.rs | 33 | #[arg(long, default_value = "coral-ci-fake-token")] | COMMENT |
| LOW | apps/ui/src/wax/components/icon.tsx | 13 | | 'placeholder' | CODE |
| LOW | apps/ui/src/wax/components/inputs/text/text-input.tsx | 49 | color={disabled ? 'disabled' : 'placeholder'} | CODE |
| LOW | …ps/reef/app/wax/components/tooltip/tooltip.stories.tsx | 216 | content="Full text: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt | CODE |
| LOW | …ps/reef/app/wax/components/tooltip/tooltip.stories.tsx | 216 | content="Full text: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt | CODE |
| LOW | …ps/reef/app/wax/components/tooltip/tooltip.stories.tsx | 230 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor | CODE |
| LOW | …ps/reef/app/wax/components/tooltip/tooltip.stories.tsx | 230 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor | CODE |
| LOW | apps/reef/app/wax/components/dialog/dialog.stories.tsx | 125 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor | CODE |
| LOW | apps/reef/app/wax/components/dialog/dialog.stories.tsx | 125 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor | CODE |
| LOW | apps/reef/app/wax/components/avatar/avatar.stories.tsx | 20 | name: 'John Doe', | CODE |
| LOW | apps/reef/app/wax/components/avatar/avatar.stories.tsx | 24 | <Avatar name="John Doe" src="https://i.pravatar.cc/150?u=john" /> | CODE |
| LOW | …f/app/wax/components/typography/typography.stories.tsx | 98 | <Typography.Body variant="placeholder">Body - placeholder</Typography.Body> | CODE |
| LOW | apps/reef/app/wax/components/inputs/text/text-input.tsx | 49 | color={disabled ? 'disabled' : 'placeholder'} | CODE |
| LOW | apps/reef/app/components/empty-page/empty-page.tsx | 24 | <Icon color="placeholder" name={iconName} size="30" /> | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | crates/coral-spec/src/udf/validation.rs | 47 | if self.raw.implementation.coral_sql.query.trim().is_empty() { | CODE |
| CRITICAL | apps/reef/app/lib/sources.ts | 167 | methods: input.input.value.credential.methods.map(toCatalogCredentialMethod), | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | crates/coral-app/tests/grpc.rs | 10 | #[path = "grpc/harness.rs"] | COMMENT |
| MEDIUM | …ates/coral-app/src/state/db/repositories/workspaces.rs | 106 | #[ignore = "set CORAL_TEST_POSTGRES_URL to run the shared repository harness against Postgres"] | COMMENT |
| MEDIUM | crates/coral-engine/tests/engine.rs | 18 | #[path = "engine/harness.rs"] | COMMENT |
| MEDIUM | xtask/src/docs/render.rs | 264 | // practice but we avoid `unreachable!` to keep the generator robust. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | sources/community/lynx/README.md | 24 | lynx manager init # downloads the embedding model + writes a default config (NO sources yet) | CODE |
| MEDIUM | sources/community/pinecone/README.md | 105 | ### List all indexes with their status and embedding model | COMMENT |
| MEDIUM | apps/reef/app/views/schema-explorer/schema-table.tsx | 24 | // Detail-panel scaffold for a selected table: title, description, required | COMMENT |
| MEDIUM | apps/reef/app/views/schema-explorer/schema.tsx | 54 | // Header + two-panel scaffold for the error state so it looks like the loaded page. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | sources/core/posthog/manifest.yaml | 4381 | expr: kind: path path: - slack_thread_key - name: slack_workspace_domain | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | sources/community/firefox/browser_server.py | 80 | except Exception: | CODE |
| LOW⚡ | sources/community/firefox/browser_server.py | 123 | except Exception as e: | CODE |
| LOW⚡ | sources/community/firefox/browser_server.py | 307 | except Exception as e: | CODE |
| LOW⚡ | sources/community/firefox/browser_server.py | 446 | except Exception as e: | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sources/community/firefox/browser_server.py | 425 | CODE | |
| LOW | sources/community/firefox/browser_server.py | 533 | CODE | |
| LOW | sources/community/ansible/tests/validate-fixtures.py | 45 | CODE | |
| LOW | …s/community/ansible/scripts/normalize-ansible-facts.py | 191 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sources/community/ansible/tests/validate-fixtures.py | 4 | CODE | |
| LOW | …s/community/ansible/scripts/normalize-ansible-facts.py | 7 | CODE |