The leading workflow orchestration platform. Run stateful step functions and AI workflows on serverless, servers, or the edge.
This report summarizes scanner evidence for inngest/inngest, a Go project with 6,005 GitHub stars. SynthScan examined 603,057 lines of code across 3266 source files, recording 748 pattern matches distributed across 10 syntactic categories. The legacy adjusted pattern signal is 1.6 (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? 707 finding(s).
Are imports declared and package/API names verified? 26 finding(s).
Are wrappers, guards, and repeated structures necessary? 134 finding(s).
Which changes need focused human review? 748 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 748 distinct pattern matches across 10 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 | install.sh | 1 | #!/bin/sh | COMMENT |
| LOW | cliff.toml | 41 | #{ pattern = '<REPO>', replace = "https://github.com/orhun/git-cliff" }, | COMMENT |
| LOW | ui/packages/components/src/SQLEditor/types.ts | 1 | import type { Cache } from './hooks/useCache'; | COMMENT |
| LOW | …/packages/components/src/NewCodeBlock/NewCodeBlock.tsx | 61 | // new tab) -- e.g. turning known ID strings into links to their run/ | COMMENT |
| LOW | …/packages/components/src/NewCodeBlock/NewCodeBlock.tsx | 121 | COMMENT | |
| LOW | ui/packages/components/src/hooks/useSearchParams.ts | 1 | // | COMMENT |
| LOW | ui/packages/components/src/hooks/useCron.test.ts | 141 | COMMENT | |
| LOW | …s/components/src/RunDetailsV4/utils/traceConversion.ts | 581 | childrenSpans: toAttemptChildren(attempts), | COMMENT |
| LOW | …s/dev-server-ui/src/components/Insights/CellDetail.tsx | 101 | // A hinted value can be the column's own whole value (a bare scalar | COMMENT |
| LOW | …pps/dev-server-ui/src/components/Insights/pathHints.ts | 41 | // Column.Hint()/knownColumn.hint(). There's no separate plain `hint` | COMMENT |
| LOW | …pps/dev-server-ui/src/components/Insights/jsonSpans.ts | 1 | // ResolvedPathSegment is one step of a *concrete* path into a parsed JSON | COMMENT |
| LOW | …pps/dev-server-ui/src/components/Insights/jsonSpans.ts | 21 | // valueRange (by the property's own path, not its parent's) -- the | COMMENT |
| LOW | ui/apps/dashboard/src/utils/analyticsEvents.ts | 161 | // | COMMENT |
| LOW | …board/src/components/SeatOverage/SeatOverageWidget.tsx | 21 | COMMENT | |
| LOW | …components/NavigationV2/Announcements/announcements.ts | 1 | // Marketing-authored announcement cards shown in a small stack at the bottom of | COMMENT |
| LOW | …pps/dashboard/src/components/InsightsMetrics/colors.ts | 1 | // This design system's color tokens compile to CSS custom properties with | COMMENT |
| LOW | …rd/src/components/InsightsMetrics/useInsightsMetric.ts | 21 | // dedupes identical (query, variables) pairs, so multiple widgets reading | COMMENT |
| LOW | …dashboard/src/components/InsightsMetrics/RangePlot.tsx | 1 | import { useEffect, useMemo, useState } from 'react'; | COMMENT |
| LOW | …ps/dashboard/src/components/InsightsMetrics/queries.ts | 1 | import { graphql } from '@/gql'; | COMMENT |
| LOW | …rd/src/components/InsightsMetrics/CategoricalChart.tsx | 21 | items: InsightsMetricItem[] | undefined; | COMMENT |
| LOW | …rd/src/components/InsightsMetrics/CategoricalChart.tsx | 41 | borderColor?: string; | COMMENT |
| LOW | …rd/src/components/InsightsMetrics/CategoricalChart.tsx | 61 | // resolving a function slug to its human-readable name. Defaults to the | COMMENT |
| LOW | …rd/src/components/InsightsMetrics/CategoricalChart.tsx | 161 | // Overrides recharts' default per-entry color (a Bar's fill) with the | COMMENT |
| LOW | …ashboard/src/components/InsightsMetrics/TrendChart.tsx | 21 | COMMENT | |
| LOW | …ashboard/src/components/InsightsMetrics/TrendChart.tsx | 41 | type Props = { | COMMENT |
| LOW | …ashboard/src/components/InsightsMetrics/TrendChart.tsx | 61 | // for the fixed `series` form. | COMMENT |
| LOW | …ashboard/src/components/InsightsMetrics/TrendChart.tsx | 81 | allowDecimals?: boolean; | COMMENT |
| LOW | …ashboard/src/components/InsightsMetrics/TrendChart.tsx | 141 | key: string; | COMMENT |
| LOW | …ashboard/src/components/InsightsMetrics/TrendChart.tsx | 361 | name={s.label} | COMMENT |
| LOW | …shboard/src/components/InsightsMetrics/RankedTable.tsx | 21 | items: InsightsMetricItem[] | undefined; | COMMENT |
| LOW | …shboard/src/components/InsightsMetrics/RankedTable.tsx | 41 | // unique within its key). Omitted entirely if not given. | COMMENT |
| LOW | …apps/dashboard/src/components/InsightsMetrics/types.ts | 1 | // Plain domain types for the insightsMetric result shapes, deliberately | COMMENT |
| LOW | …apps/dashboard/src/components/InsightsMetrics/types.ts | 161 | } | COMMENT |
| LOW | cmd/duckdbbench/postgres_catalog.go | 21 | type postgresCatalogEnv struct { | COMMENT |
| LOW | cmd/duckdbbench/postgres_catalog.go | 81 | // overrides for one openMergeBenchDB call: a fresh MetadataSchema every | COMMENT |
| LOW | cmd/duckdbbench/quack_catalog_bench_test.go | 21 | // (pkg/db/duckdb/process.go's DuckLakeOptions.QuackCatalogAddr/ | COMMENT |
| LOW | cmd/duckdbbench/quack_catalog_bench_test.go | 81 | tb.Fatalf("DUCKLAKE_SELFBUILT_* path does not exist: %v", err) | COMMENT |
| LOW | cmd/duckdbbench/quack_catalog_bench_test.go | 241 | } | COMMENT |
| LOW | cmd/duckdbbench/merge_appender_bench_test.go | 141 | {Name: "started_at", Kind: driver.QuackColumnTimestampTZ}, | COMMENT |
| LOW | cmd/duckdbbench/merge_appender_bench_test.go | 201 | {"flat", flatInsertAppenderBatch}, | COMMENT |
| LOW | cmd/duckdbbench/sqlite_bench_test.go | 21 | // pinned build already supports it. It's otherwise a full DuckLake catalog | COMMENT |
| LOW | cmd/duckdbbench/sqlite_bench_test.go | 121 | } | COMMENT |
| LOW | cmd/duckdbbench/sqlite_bench_test.go | 141 | // writers already contend on DuckLake's own optimistic-concurrency conflicts | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 141 | } | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 181 | // mergeJSONPatchBatch upserts events the same way mergeUpsertBatch does, | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 201 | // the quack HTTP wire transport (not jsonlines-over-stdio, and not an | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 281 | // instead of one lifecycle stage sweeping the whole run range before the | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 301 | // and batches are applied in increasing tick order, so per-run write order | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 341 | } | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 361 | // generateInterleavedBatchesParallelN is generateInterleavedBatchesParallel | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 421 | // accountIDs instead of a fixed shard count), and every run in a block is | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 481 | } | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 521 | } | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 681 | // BenchmarkRunsQuery seeds every table once per benchRowCounts scale (per | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 821 | runQueryBenchmark(b, db, ctx, q.name, q.sql, nil) | COMMENT |
| LOW | cmd/duckdbbench/merge_bench_test.go | 841 | // maintenance call — a distinct operation from | COMMENT |
| LOW | cmd/duckdbbench/arrival_bench_test.go | 21 | // ticks apart and sweeping partition cardinality (benchPartitionCounts), | COMMENT |
| LOW | cmd/duckdbbench/arrival_bench_test.go | 41 | // queued-to-ended gap (see generateRandomArrivalEvents) — chosen so half of | COMMENT |
| LOW | cmd/duckdbbench/arrival_bench_test.go | 61 | // — generateRandomArrivalEvents' output, sorted and then consumed by | COMMENT |
| LOW | cmd/duckdbbench/arrival_bench_test.go | 121 | COMMENT | |
| 440 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …packages/components/src/SchemaViewer/rows/TupleRow.tsx | 55 | function collectAllExpandablePaths(node: SchemaNode): string[] { | CODE |
| LOW | …packages/components/src/SchemaViewer/rows/TableRow.tsx | 67 | function collectAllExpandablePaths(node: SchemaNode): string[] { | CODE |
| LOW | ui/packages/components/src/SchemaViewer/rows/utils.ts | 6 | export function collectAllExpandablePaths(node: SchemaNode): string[] { | CODE |
| LOW⚡ | …packages/components/src/SchemaViewer/transform/node.ts | 54 | function selectFirstStructuralSchema(schemas: JSONSchema[]): JSONSchema | undefined { | CODE |
| LOW⚡ | …packages/components/src/SchemaViewer/transform/node.ts | 63 | function selectFirstScalarExcludingNull(schemas: JSONSchema[]): JSONSchema | undefined { | CODE |
| LOW⚡ | …packages/components/src/SchemaViewer/transform/node.ts | 67 | function isScalarExcludingNullSchema(schema: JSONSchema): boolean { | CODE |
| LOW | …/packages/components/src/NewCodeBlock/NewCodeBlock.tsx | 137 | function applyMonacoLinkDecorations( | CODE |
| LOW | ui/packages/components/src/Resizable/split.ts | 18 | export function computeSplitPercentageFromEvent( | CODE |
| LOW | ui/packages/components/src/Resizable/split.ts | 114 | export function initializeSplitFromStorage( | CODE |
| LOW | ui/packages/components/src/RunDetailsV4/TimelineBar.tsx | 544 | function ExperimentHoverCardContent({ | CODE |
| LOW | ui/packages/components/src/RunDetailsV4/Timeline.tsx | 321 | function generateRunInngestSegments( | CODE |
| LOW | …s/components/src/RunDetailsV4/utils/traceConversion.ts | 215 | function getHTTPTimingFromMetadata(metadata?: SpanMetadata[]): HTTPTimingBreakdownData | null { | CODE |
| LOW | ui/packages/components/src/Select/Select.stories.tsx | 79 | function SelectWithSearchInputRender() { | CODE |
| LOW | …ts/src/FeatureEmptyState/ExperimentsEmptyStateView.tsx | 22 | export function ExperimentsEmptyStateView(props: ExperimentsEmptyStateViewProps) { | CODE |
| LOW | …dev-server-ui/src/components/Insights/InsightsPage.tsx | 98 | function getNewActiveTabAfterClose( | CODE |
| LOW | …components/Function/FunctionConfigurationContainer.tsx | 21 | export function FunctionConfigurationContainer({ | CODE |
| LOW | ui/apps/dev-server-ui/src/routes/__root.tsx | 66 | function isMonacoLoaderCancelation(reason: unknown): boolean { | CODE |
| LOW | ui/apps/dashboard/src/utils/environments.ts | 68 | export function getSortedBranchEnvironments( | CODE |
| LOW | ui/apps/dashboard/src/utils/environments.ts | 105 | export function getRecentBranchEnvironments( | CODE |
| LOW | ui/apps/dashboard/src/utils/environments.ts | 113 | export function getNonRecentBranchEnvironments( | CODE |
| LOW | ui/apps/dashboard/src/utils/analyticsEvents.ts | 136 | export function trackAssistantActionPerformed({ | CODE |
| LOW⚡ | ui/apps/dashboard/src/utils/analyticsEvents.ts | 308 | export function trackEmptyStatePromptCopied({ | CODE |
| LOW⚡ | ui/apps/dashboard/src/utils/analyticsEvents.ts | 316 | export function trackEmptyStateExampleCopied({ | CODE |
| LOW⚡ | ui/apps/dashboard/src/utils/analyticsEvents.ts | 324 | export function trackEmptyStateUpgradeClicked({ | CODE |
| LOW⚡ | ui/apps/dashboard/src/utils/analyticsEvents.ts | 332 | export function trackEmptyStateDocsLinkOpened({ | CODE |
| LOW | ui/apps/dashboard/src/utils/analyticsEvents.ts | 388 | export function trackScoringWeightUpdated({ | CODE |
| LOW | …nents/Insights/InsightsTabManager/InsightsTabsList.tsx | 32 | function getTabsWithUnsavedChanges( | CODE |
| LOW | …nts/Insights/InsightsTabManager/InsightsTabManager.tsx | 501 | function InsightsTabManagerInternal({ | CODE |
| LOW | …nts/Insights/InsightsTabManager/InsightsTabManager.tsx | 586 | function getNewActiveTabAfterClose( | CODE |
| LOW | …sTabPanelTemplatesTab/InsightsTabPanelTemplatesTab.tsx | 33 | export function InsightsTabPanelTemplatesTab() { | CODE |
| LOW | …PanelTemplatesTab/InsightsTabPanelTemplatesTabGrid.tsx | 11 | export function InsightsTabPanelTemplatesTabGrid() { | CODE |
| LOW | …PanelTemplatesTab/InsightsTabPanelTemplatesTabCard.tsx | 58 | export function InsightsTabPanelTemplatesTabCard({ | CODE |
| LOW | …HelperPanel/features/SchemaExplorer/useSchemasInUse.ts | 72 | function makeMapOfEventNameToSchema( | CODE |
| LOW | …anel/features/SchemaExplorer/SchemasContext/queries.ts | 9 | export function buildSchemaEntriesFromQueryData( | CODE |
| LOW | …anel/features/SchemaExplorer/SchemasContext/queries.ts | 30 | export function buildEntryFromLatestSchema( | CODE |
| LOW | …ghtsHelperPanel/features/InsightsChat/InsightsChat.tsx | 40 | function useRotatingLoadingMessage(isLoading: boolean): string { | CODE |
| LOW | …nents/Insights/InsightsDataTable/DiagnosticsBanner.tsx | 177 | function diagnosticIconForSeverity( | CODE |
| LOW | …Insights/InsightsDataTable/states/ResultsState/json.ts | 1 | export function getFormattedJSONObjectOrArrayString( | CODE |
| LOW | …sights/InsightsStateMachineContext/useFetchInsights.ts | 120 | function transformInsightsResponse( | CODE |
| LOW | …htsStateMachineContext/InsightsStateMachineContext.tsx | 42 | export function InsightsStateMachineContextProvider({ | CODE |
| LOW | …htsStateMachineContext/InsightsStateMachineContext.tsx | 105 | export function useInsightsStateMachineContext() { | CODE |
| LOW | …SQLEditor/InsightsSQLEditorSavedQueryActionsButton.tsx | 11 | export function InsightsSQLEditorSavedQueryActionsButton({ | CODE |
| LOW | …sightsSQLEditor/InsightsSQLEditorDownloadCSVButton.tsx | 17 | export function InsightsSQLEditorDownloadCSVButton({ | CODE |
| LOW | …sSQLEditor/InsightsSQLEditorQueryEditHistoryButton.tsx | 20 | export function InsightsSQLEditorQueryEditHistoryButton({ | CODE |
| LOW | …ghts/InsightsSQLEditor/InsightsSQLEditorQueryTitle.tsx | 13 | export function InsightsSQLEditorQueryTitle({ | CODE |
| LOW | …nents/Insights/InsightsSQLEditor/InsightsSQLEditor.tsx | 16 | function diagnosticSeverityToMonacoSeverity( | CODE |
| LOW | …ts/InsightsSQLEditor/InsightsSQLEditorResultsTitle.tsx | 14 | export function InsightsSQLEditorResultsTitle({ | CODE |
| LOW | …hts/InsightsSQLEditor/InsightsSQLEditorQueryButton.tsx | 28 | export function InsightsSQLEditorQueryButton() { | CODE |
| LOW | …InsightsSQLEditor/InsightsSQLEditorSaveQueryButton.tsx | 20 | export function InsightsSQLEditorSaveQueryButton({ | CODE |
| LOW | …/InsightsSQLEditor/hooks/useDownloadInsightsResults.ts | 175 | export function useDownloadInsightsResults( | CODE |
| LOW | …SQLEditor/hooks/useInsightsSQLEditorOnMountCallback.ts | 19 | export function useInsightsSQLEditorOnMountCallback(): UseInsightsSQLEditorOnMountCallbackReturn { | CODE |
| LOW | …Insights/InsightsSQLEditor/actions/markTemplateVars.ts | 84 | function assignTemplateVarsMarkers( | CODE |
| LOW | …ueryHelperPanel/QueryHelperPanelCollapsibleSection.tsx | 16 | export function QueryHelperPanelCollapsibleSection({ | CODE |
| LOW | …ts/QueryHelperPanel/QueryHelperPanelSectionContent.tsx | 18 | export function QueryHelperPanelSectionContent({ | CODE |
| LOW | …ts/QueryHelperPanel/QueryHelperPanelSectionContent.tsx | 80 | function QueryHelperPanelStaticMessage({ children }: React.PropsWithChildren) { | CODE |
| LOW | …ights/QueryHelperPanel/QueryHelperPanelSectionItem.tsx | 21 | export function QueryHelperPanelSectionItem({ | CODE |
| LOW | …ryHelperPanel/QueryHelperPanelSectionContentNoData.tsx | 9 | export function QueryHelperPanelSectionContentNoData({ | CODE |
| LOW | …/dashboard/src/components/Sandboxes/SandboxMetrics.tsx | 271 | function UnavailableSandboxMetrics({ | CODE |
| LOW | …shboard/src/components/OAuth/credentialEnvironments.ts | 5 | export function credentialEnvironmentOptions( | CODE |
| LOW | …/dashboard/src/components/OAuth/permissionSelection.ts | 34 | export function requestedPermissionLevels({ | CODE |
| 59 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | ui/apps/dashboard/src/queries/functions.ts | 137 | functions: res.data.workspace.workflows.data.map((fn) => { | CODE |
| CRITICAL | ui/apps/dashboard/src/queries/functions.ts | 337 | functions: res.data.workspace.workflows.data.map((fn) => { | CODE |
| CRITICAL | ui/apps/support/src/data/plain.ts | 1010 | threadRes.data.thread.customer.email.email.toLowerCase() !== | CODE |
| CRITICAL | ui/apps/support/src/data/plain.ts | 1362 | threadRes.data.thread.customer.email.email.toLowerCase() !== | CODE |
| CRITICAL | ui/apps/support/src/routes/_authed/case.$ticketId.tsx | 551 | !entry.node.actor.customer.email.email.match( | CODE |
| CRITICAL | pkg/devserver/service.go | 442 | d.Opts.Config.EventStream.Service.TopicName(), | CODE |
| CRITICAL | pkg/devserver/devserver.go | 630 | EventTopic: opts.Config.EventStream.Service.Concrete.TopicName(), | CODE |
| CRITICAL | pkg/devserver/devserver.go | 653 | executor.WithInvokeFailHandler(getInvokeFailHandler(ctx, pb, opts.Config.EventStream.Service.Concrete.TopicName())), | CODE |
| CRITICAL | pkg/devserver/devserver.go | 654 | executor.WithInvokeEventHandler(getInvokeEventHandler(ctx, pb, opts.Config.EventStream.Service.Concrete.TopicName())), | CODE |
| CRITICAL | pkg/execution/runner/runner.go | 178 | s.state, err = s.config.State.Service.Concrete.SingleClusterManager(ctx, nil) | CODE |
| CRITICAL | pkg/execution/executor/service.go | 190 | topicName := s.config.EventStream.Service.Concrete.TopicName() | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ghts/InsightsSQLEditor/hooks/useSQLCompletionConfig.ts | 70 | // NOTE: This function is called from fetchWithCache in useSQLCompletions | COMMENT |
| LOW | cmd/internal/config/config.go | 93 | // Step 1: Load config file (lowest priority) | COMMENT |
| LOW⚡ | cmd/internal/config/config.go | 128 | // Step 2: Load environment variables (higher priority than config files) | COMMENT |
| LOW⚡ | cmd/internal/config/config.go | 133 | // Step 3: Unmarshal the final configuration | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 784 | // Step 1: SDK registers the app normally | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 794 | // Step 2: Simulate the UI "Add App" flow (CreateApp mutation). | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 813 | // Step 3: SDK re-registers with the same request (same checksum). | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 818 | // Step 4: Assert that the placeholder was cleaned up. | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 849 | // Step 2: SDK registers (first time — placeholder has no name, so cleanup works) | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 859 | // Step 3: Simulate a server restart where pollSDKs recreates the placeholder | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 876 | // Step 4: SDK re-registers with the same checksum | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 880 | // Step 5: Assert that the placeholder was cleaned up | COMMENT |
| LOW | pkg/devserver/api_test.go | 837 | // Step 1: Simulate the `-u` flag creating a placeholder (pollSDKs initial loop) | COMMENT |
| LOW | pkg/devserver/api_test.go | 901 | // Step 1: User adds "http://myhost/api/inngest" via UI (no port). | COMMENT |
| LOW | pkg/devserver/api_test.go | 915 | // Step 2: SDK registers with the explicit default port in its URL. | COMMENT |
| LOW | pkg/execution/debounce/debounce.go | 977 | // NOTE: This function has a deadline to complete. If this fn doesn't complete within the deadline, | COMMENT |
| LOW⚡ | pkg/execution/queue/constraints_test.go | 967 | // Step 1: Generate constraint items from the backlog | COMMENT |
| LOW⚡ | pkg/execution/queue/constraints_test.go | 970 | // Step 2: Filter the constraint items to find the ones that would be limiting | COMMENT |
| LOW⚡ | pkg/execution/queue/constraints_test.go | 1040 | // Step 3: Convert the limiting constraints back to a queue constraint | COMMENT |
| LOW⚡ | pkg/execution/queue/constraints_test.go | 1043 | // Step 4: Verify the round trip matches expectations | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 111 | // Step 6: Release first lease | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 120 | // Step 7: Check capacity increased after release | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 132 | // Step 8: Release second lease | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 141 | // Step 9: Verify full capacity restored | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 243 | // Step 4: Advance time to allow rate limit recovery (emission interval = 60/5 = 12 seconds) | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 247 | // Step 5: Try acquisition again after time advancement | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 437 | // Step 1: First acquire with idempotency key | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 447 | // Step 2: Repeat same acquire with same idempotency key | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 458 | // Step 3: Test idempotent release | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 467 | // Step 4: Repeat same release | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 477 | // Step 5: Test idempotent extend | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 40 | // Step 1: Check capacity before acquisition | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 53 | // Step 2: Acquire 2 leases | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 75 | // Step 3: Check remaining capacity | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 87 | // Step 4: Extend the first lease | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 99 | // Step 5: Check capacity is still correct after extension | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 181 | // Step 1: Check initial capacity | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 195 | // Step 2: Acquire multiple leases to consume burst capacity | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 218 | // Step 3: Try immediate acquisition (should be rate limited) | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 269 | // Step 6: Release all leases and verify state | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 488 | // Step 6: Repeat same extend | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cmd/internal/config/config.go | 93 | // Step 1: Load config file (lowest priority) | COMMENT |
| LOW⚡ | cmd/internal/config/config.go | 128 | // Step 2: Load environment variables (higher priority than config files) | COMMENT |
| LOW⚡ | cmd/internal/config/config.go | 133 | // Step 3: Unmarshal the final configuration | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 784 | // Step 1: SDK registers the app normally | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 794 | // Step 2: Simulate the UI "Add App" flow (CreateApp mutation). | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 813 | // Step 3: SDK re-registers with the same request (same checksum). | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 818 | // Step 4: Assert that the placeholder was cleaned up. | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 849 | // Step 2: SDK registers (first time — placeholder has no name, so cleanup works) | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 859 | // Step 3: Simulate a server restart where pollSDKs recreates the placeholder | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 876 | // Step 4: SDK re-registers with the same checksum | COMMENT |
| LOW⚡ | pkg/devserver/api_test.go | 880 | // Step 5: Assert that the placeholder was cleaned up | COMMENT |
| LOW | pkg/devserver/api_test.go | 837 | // Step 1: Simulate the `-u` flag creating a placeholder (pollSDKs initial loop) | COMMENT |
| LOW | pkg/devserver/api_test.go | 901 | // Step 1: User adds "http://myhost/api/inngest" via UI (no port). | COMMENT |
| LOW | pkg/devserver/api_test.go | 915 | // Step 2: SDK registers with the explicit default port in its URL. | COMMENT |
| LOW⚡ | pkg/execution/queue/constraints_test.go | 967 | // Step 1: Generate constraint items from the backlog | COMMENT |
| LOW⚡ | pkg/execution/queue/constraints_test.go | 970 | // Step 2: Filter the constraint items to find the ones that would be limiting | COMMENT |
| LOW⚡ | pkg/execution/queue/constraints_test.go | 1040 | // Step 3: Convert the limiting constraints back to a queue constraint | COMMENT |
| LOW⚡ | pkg/execution/queue/constraints_test.go | 1043 | // Step 4: Verify the round trip matches expectations | COMMENT |
| LOW | pkg/execution/queue/lease_item.go | 109 | // Before we can do any work on the queue item, we need to check if all the constraints have capacity. | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 111 | // Step 6: Release first lease | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 120 | // Step 7: Check capacity increased after release | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 132 | // Step 8: Release second lease | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 141 | // Step 9: Verify full capacity restored | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 243 | // Step 4: Advance time to allow rate limit recovery (emission interval = 60/5 = 12 seconds) | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 247 | // Step 5: Try acquisition again after time advancement | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 437 | // Step 1: First acquire with idempotency key | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 447 | // Step 2: Repeat same acquire with same idempotency key | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 458 | // Step 3: Test idempotent release | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 467 | // Step 4: Repeat same release | COMMENT |
| LOW⚡ | pkg/constraintapi/lease_lifecycle_test.go | 477 | // Step 5: Test idempotent extend | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 40 | // Step 1: Check capacity before acquisition | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 53 | // Step 2: Acquire 2 leases | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 75 | // Step 3: Check remaining capacity | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 87 | // Step 4: Extend the first lease | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 99 | // Step 5: Check capacity is still correct after extension | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 181 | // Step 1: Check initial capacity | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 195 | // Step 2: Acquire multiple leases to consume burst capacity | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 218 | // Step 3: Try immediate acquisition (should be rate limited) | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 269 | // Step 6: Release all leases and verify state | COMMENT |
| LOW | pkg/constraintapi/lease_lifecycle_test.go | 488 | // Step 6: Repeat same extend | COMMENT |
| LOW | pkg/connect/state/lua/extend_lease.lua | 56 | -- If we have limited capacity, we track requests and we need to check if the request is still assigned to the worker. | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | pkg/expressions/unknown_test.go | 25 | // ── Equals ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 51 | // ── NotEquals ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 77 | // ── Less / LessEquals — direction matters ───────────────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 111 | // ── Greater / GreaterEquals — direction matters ─────────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 138 | // ── Add with unknown ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 160 | // ── size on unknown ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 180 | // ── @in with unknown (default branch) ───────────────────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 300 | // ── Equals with explicit null ───────────────────────────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 314 | // ── NotEquals with explicit null ────────────────────────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 328 | // ── null < "string" — ZeroValArgs with string zero value ──────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 344 | // ── null compared with uint — zeroVal "uint" branch ───────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 352 | // ── Less/Greater with null literal — ZeroValArgs replaces null with 0 ───── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 402 | // ── Null field values from activation ───────────────────────────────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 443 | // ── Logical OR: returns first truthy, or last value if all falsy ─────────── | COMMENT |
| MEDIUM | pkg/expressions/unknown_test.go | 544 | // ── Logical AND: returns first falsy, or last value if all truthy ────────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …shboard/src/components/Sessions/SessionsEmptyState.tsx | 24 | const PROMPT = `Read the docs about Inngest's sessions @https://www.inngest.com/docs/features/events-triggers/sessions a | CODE |
| MEDIUM | …rd/src/components/InsightsMetrics/CategoricalChart.tsx | 518 | // Absolutely positioned into the plot's own bottom-left corner — | COMMENT |
| MEDIUM | pkg/execution/driver/httpdriver/dnscache/dnscache.go | 328 | // should this utilize singleflight to reduce map lookups? | COMMENT |
| MEDIUM | pkg/execution/queue/kind.go | 5 | // Essentially a status that represents the backlog. | COMMENT |
| MEDIUM | pkg/execution/queue/backlog_normalization.go | 185 | // utilize | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …packages/components/src/RunDetailsV4/Timeline.test.tsx | 74 | orgName: 'Acme Corp', | CODE |
| LOW | …packages/components/src/RunDetailsV4/Timeline.test.tsx | 193 | orgName: 'Acme Corp', | CODE |
| LOW | …kages/components/src/RunDetailsV4/TimelineBar.test.tsx | 204 | render(<TimelineBar {...defaultProps} style="timing.server" orgName="Acme Corp" />, { | CODE |
| LOW | …ponents/src/RunDetailsV4/utils/traceConversion.test.ts | 54 | const result = traceToTimelineData(trace, { runID: 'run-1', orgName: 'Acme Corp' }); | CODE |
| LOW | …ponents/src/RunDetailsV4/utils/traceConversion.test.ts | 56 | expect(result.orgName).toBe('Acme Corp'); | CODE |
| LOW | docs/api_v2_examples.json | 365 | "email": "user@example.com", | CODE |
| LOW | docs/api-docs/src/lib/openapi-curl.ts | 195 | if (schema.format === 'email') return 'user@example.com'; | CODE |
| LOW | pkg/api/v2/README.md | 1096 | "email": "user@example.com" | CODE |
| LOW | pkg/connect/auth/jwt_test.go | 60 | ID: "fake-token", | CODE |
| LOW | pkg/connect/auth/jwt_test.go | 85 | ID: "fake-token", | CODE |
| LOW | pkg/connect/auth/jwt_test.go | 110 | ID: "fake-token", | CODE |
| LOW | pkg/connect/auth/jwt_test.go | 133 | ID: "fake-token", | CODE |
| LOW | pkg/connect/auth/jwt_test.go | 160 | ID: "fake-token", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | ui/packages/components/src/MCP/Setup.tsx | 178 | code={`export ${bearerTokenEnvVar}=<your-api-key>`} | CODE |
| HIGH | docs/api-docs/src/lib/openapi-curl.ts | 135 | return `${scheme.name}: YOUR_API_KEY`; | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pkg/duckdb/tracing/tracing.go | 57 | // TODO: implement this somehow | COMMENT |