The open-source, cross-platform API client for GraphQL, REST, WebSockets, SSE and gRPC. With Cloud, Local and Git storage.
This report summarizes scanner evidence for Kong/insomnia, a TypeScript project with 40,105 GitHub stars. SynthScan examined 325,756 lines of code across 1911 source files, recording 424 pattern matches distributed across 12 syntactic categories. The legacy adjusted pattern signal is 3.8 (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? 289 finding(s).
Are imports declared and package/API names verified? 98 finding(s).
Are wrappers, guards, and repeated structures necessary? 254 finding(s).
Which changes need focused human review? 424 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 424 distinct pattern matches across 12 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 |
|---|---|---|---|---|
| CRITICAL | …s/fix-scripting-feature/references/objects/response.md | 40 | - `pm.response.to.have.status(200)`, `pm.response.to.have.header('Content-Type')`, `pm.response.to.have.jsonBody('key')` | CODE |
| CRITICAL | packages/insomnia/src/main/network/curl.test.ts | 41 | const call = electron.ipcMain.handle.mock.calls.find(([channel]) => channel === 'curl.open'); | CODE |
| CRITICAL | packages/insomnia/src/main/network/curl.test.ts | 43 | const findManyCall = electron.ipcMain.handle.mock.calls.find(([channel]) => channel === 'curl.event.findMany'); | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 388 | "displayValue": "insomnia.request.url.urlObject.searchParams.append()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 389 | "name": "insomnia.request.url.urlObject.searchParams.append()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 390 | "value": "insomnia.request.url.urlObject.searchParams.append()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 393 | "displayValue": "insomnia.request.url.urlObject.searchParams.delete()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 394 | "name": "insomnia.request.url.urlObject.searchParams.delete()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 395 | "value": "insomnia.request.url.urlObject.searchParams.delete()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 398 | "displayValue": "insomnia.request.url.urlObject.searchParams.get()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 399 | "name": "insomnia.request.url.urlObject.searchParams.get()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 400 | "value": "insomnia.request.url.urlObject.searchParams.get()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 403 | "displayValue": "insomnia.request.url.urlObject.searchParams.getAll()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 404 | "name": "insomnia.request.url.urlObject.searchParams.getAll()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 405 | "value": "insomnia.request.url.urlObject.searchParams.getAll()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 408 | "displayValue": "insomnia.request.url.urlObject.searchParams.has()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 409 | "name": "insomnia.request.url.urlObject.searchParams.has()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 410 | "value": "insomnia.request.url.urlObject.searchParams.has()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 413 | "displayValue": "insomnia.request.url.urlObject.searchParams.set()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 414 | "name": "insomnia.request.url.urlObject.searchParams.set()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 415 | "value": "insomnia.request.url.urlObject.searchParams.set()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 418 | "displayValue": "insomnia.request.url.urlObject.searchParams.sort()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 419 | "name": "insomnia.request.url.urlObject.searchParams.sort()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 420 | "value": "insomnia.request.url.urlObject.searchParams.sort()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 423 | "displayValue": "insomnia.request.url.urlObject.searchParams.entries()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 424 | "name": "insomnia.request.url.urlObject.searchParams.entries()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 425 | "value": "insomnia.request.url.urlObject.searchParams.entries()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 428 | "displayValue": "insomnia.request.url.urlObject.searchParams.forEach()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 429 | "name": "insomnia.request.url.urlObject.searchParams.forEach()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 430 | "value": "insomnia.request.url.urlObject.searchParams.forEach()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 433 | "displayValue": "insomnia.request.url.urlObject.searchParams.keys()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 434 | "name": "insomnia.request.url.urlObject.searchParams.keys()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 435 | "value": "insomnia.request.url.urlObject.searchParams.keys()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 438 | "displayValue": "insomnia.request.url.urlObject.searchParams.values()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 439 | "name": "insomnia.request.url.urlObject.searchParams.values()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 440 | "value": "insomnia.request.url.urlObject.searchParams.values()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 443 | "displayValue": "insomnia.request.url.urlObject.searchParams.toString()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 444 | "name": "insomnia.request.url.urlObject.searchParams.toString()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 445 | "value": "insomnia.request.url.urlObject.searchParams.toString()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 733 | "displayValue": "insomnia.response.originalRequest.url.urlObject.toString()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 734 | "name": "insomnia.response.originalRequest.url.urlObject.toString()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 735 | "value": "insomnia.response.originalRequest.url.urlObject.toString()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 793 | "displayValue": "insomnia.response.originalRequest.url.urlObject.searchParams.append()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 794 | "name": "insomnia.response.originalRequest.url.urlObject.searchParams.append()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 795 | "value": "insomnia.response.originalRequest.url.urlObject.searchParams.append()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 798 | "displayValue": "insomnia.response.originalRequest.url.urlObject.searchParams.delete()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 799 | "name": "insomnia.response.originalRequest.url.urlObject.searchParams.delete()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 800 | "value": "insomnia.response.originalRequest.url.urlObject.searchParams.delete()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 803 | "displayValue": "insomnia.response.originalRequest.url.urlObject.searchParams.get()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 804 | "name": "insomnia.response.originalRequest.url.urlObject.searchParams.get()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 805 | "value": "insomnia.response.originalRequest.url.urlObject.searchParams.get()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 808 | "displayValue": "insomnia.response.originalRequest.url.urlObject.searchParams.getAll()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 809 | "name": "insomnia.response.originalRequest.url.urlObject.searchParams.getAll()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 810 | "value": "insomnia.response.originalRequest.url.urlObject.searchParams.getAll()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 813 | "displayValue": "insomnia.response.originalRequest.url.urlObject.searchParams.has()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 814 | "name": "insomnia.response.originalRequest.url.urlObject.searchParams.has()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 815 | "value": "insomnia.response.originalRequest.url.urlObject.searchParams.has()" | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 818 | "displayValue": "insomnia.response.originalRequest.url.urlObject.searchParams.set()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 819 | "name": "insomnia.response.originalRequest.url.urlObject.searchParams.set()", | CODE |
| CRITICAL⚡ | …a-scripting-environment/src/autocomplete-snippets.json | 820 | "value": "insomnia.response.originalRequest.url.urlObject.searchParams.set()" | CODE |
| 22 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packages/insomnia-inso/src/scripts/docs.ts | 30 | function generateSubcommandsMarkdown( | CODE |
| LOW | …kages/insomnia-inso/src/commands/lint-specification.ts | 37 | async function assertResolvesToPublicHost(hostname: string): Promise<void> { | CODE |
| LOW | packages/insomnia/src/ui/analytics.ts | 35 | export function readPendingImportAttribution(): ImportAttribution { | CODE |
| LOW | packages/insomnia/src/ui/organization-utils.ts | 141 | export async function getKonnectOrganizationEscapeRoute(organizationId: string): Promise<string | null> { | CODE |
| LOW | packages/insomnia/src/ui/organization-utils.ts | 170 | export async function updateLocalProjectToRemote({ | CODE |
| LOW | packages/insomnia/src/ui/organization-utils.ts | 241 | export function findMigrationTargetSpaceId(organizations: Organization[]): string { | CODE |
| LOW | packages/insomnia/src/ui/organization-utils.ts | 246 | export async function migrateProjectsUnderOrganization(personalOrganizationId: string, sessionId: string) { | CODE |
| LOW | …kages/insomnia/src/ui/utils/render-realtime-connect.ts | 24 | export async function renderRealtimeConnectPayload({ | CODE |
| LOW | packages/insomnia/src/ui/utils/remote-projects.ts | 18 | export function groupRemoteFilesByProjectId( | CODE |
| LOW | packages/insomnia/src/ui/utils/grpc.ts | 20 | export function getGrpcConnectionErrorDetails(error: Error) { | CODE |
| LOW | packages/insomnia/src/ui/components/keydown-binder.ts | 54 | export function useDocBodyKeyboardShortcuts( | CODE |
| LOW | packages/insomnia/src/ui/components/time-from-now.tsx | 51 | export function convertEpochToMilliseconds(epoch: number) { | CODE |
| LOW | …ject-navigation-sidebar/use-navigation-sidebar-data.ts | 12 | export function useProjectNavigationSidebarData( | CODE |
| LOW | …/insomnia/src/ui/components/settings/import-export.tsx | 128 | async function writeExportedFileToFileSystem(filename: string, data: string) { | CODE |
| LOW | …nsomnia/src/ui/components/modals/cli-preview-modal.tsx | 8 | function generateCommandArgumentsForRequests( | CODE |
| LOW | …src/ui/components/modals/git-project-staging-modal.tsx | 153 | function stripRedundantPushErrorPrefix(error: string) { | CODE |
| LOW | …src/ui/components/modals/git-project-staging-modal.tsx | 160 | function getGitHubProtectedBranchTip(error: string): string | null { | CODE |
| LOW | …omnia/src/ui/components/modals/import-modal/shared.tsx | 185 | function getWorkspaceCountsByScope(workspaces: { scope?: string }[], scanResult: ScanResult) { | CODE |
| LOW | …ponents/modals/visual-diff/request-group-diff-card.tsx | 64 | export function folderDiscardConfirmMessage(diff: EntityDiff): string | undefined { | CODE |
| LOW | …src/ui/components/modals/invite-modal/invite-modal.tsx | 628 | async function revalidateCurrentUserRoleAndPermissionsInOrg(organizationId: string) { | CODE |
| LOW | …s/insomnia/src/ui/components/templating/tag-editor.tsx | 219 | function convertLegacyCredentialTag(legacyCredentialId: string, argIndex: number) { | CODE |
| LOW | …s/.client/codemirror/normalize-irregular-whitespace.ts | 31 | export function normalizeIrregularWhitespace(text: string) { | CODE |
| LOW | …a/src/ui/components/.client/codemirror/code-editor.tsx | 90 | function setEditorValueWithTruncation( | CODE |
| LOW | …mponents/.client/codemirror/extensions/autocomplete.ts | 130 | function completeIfAfterTagOrVarOpen(cm: CodeMirror.Editor) { | CODE |
| LOW⚡ | …lient/codemirror/extensions/variable-source-tooltip.ts | 64 | export function subscribeVariableSourceTooltip(listener: Listener): () => void { | CODE |
| LOW⚡ | …lient/codemirror/extensions/variable-source-tooltip.ts | 69 | export function getVariableSourceTooltipState(): VariableSourceTooltipState | null { | CODE |
| LOW⚡ | …lient/codemirror/extensions/variable-source-tooltip.ts | 77 | export function isVariableSourceTooltipInside(element: HTMLElement | null): boolean { | CODE |
| LOW⚡ | …lient/codemirror/extensions/variable-source-tooltip.ts | 82 | export function setHoveredVariableSourceTarget(target: HTMLElement | null) { | CODE |
| LOW⚡ | …lient/codemirror/extensions/variable-source-tooltip.ts | 86 | export function hideVariableSourceTooltip() { | CODE |
| LOW⚡ | …lient/codemirror/extensions/variable-source-tooltip.ts | 95 | export function scheduleHideVariableSourceTooltip() { | CODE |
| LOW | …lient/codemirror/extensions/variable-source-tooltip.ts | 126 | function isTargetCoveredByOpenModal(target: HTMLElement) { | CODE |
| LOW | …lient/codemirror/extensions/variable-source-tooltip.ts | 131 | export function showVariableSourceTooltip(options: VariableSourceTooltipState) { | CODE |
| LOW | …insomnia/src/ui/components/git/git-oauth-auth-utils.ts | 16 | export function isOAuthAccessTokenExpired(credential: GitCredentials | null | undefined): boolean { | CODE |
| LOW | …insomnia/src/ui/components/git/git-oauth-auth-utils.ts | 37 | export function shouldShowConfigureGitHubAppLink( | CODE |
| LOW | packages/insomnia/src/ui/hooks/use-remote-files.ts | 24 | export function useRemoteBackendProjectsInvalidation(organizationId: string): void { | CODE |
| LOW | packages/insomnia/src/ui/hooks/use-remote-files.ts | 66 | export function useRemoteFilesByProjectId(organizationId: string, projects: Project[]): Map<string, InsomniaFile[]> { | CODE |
| LOW | packages/insomnia/src/ui/hooks/use-remote-files.ts | 79 | export function useUnsyncedFilesForProject( | CODE |
| LOW | …insomnia/src/ui/hooks/use-organization-storage-rule.ts | 21 | export function useOrganizationStorageRule(organizationIdParam?: string): StorageRules { | CODE |
| LOW | …insomnia/src/ui/hooks/use-organization-storage-rule.ts | 35 | export function useInvalidateOrganizationStorageRule() { | CODE |
| LOW | …es/insomnia/src/ui/hooks/use-organization-features.tsx | 34 | export function useOrganizationPermissions(organizationIdParam?: string) { | CODE |
| LOW | …nsomnia/src/ui/hooks/use-realtime-connection-events.ts | 10 | export function useRealtimeConnectionEvents({ | CODE |
| LOW | …/src/ui/hooks/use-realtime-connection-notifications.ts | 7 | export function useRealtimeConnectionNotifications({ | CODE |
| LOW | packages/insomnia/src/__mocks__/@grpc/grpc-js.ts | 87 | export function makeGenericClientConstructor() { | CODE |
| LOW | packages/insomnia/src/konnect/api.ts | 145 | export async function fetchKonnectOrganizationId(pat: string, signal?: AbortSignal): Promise<string | undefined> { | CODE |
| LOW | …s/insomnia/src/konnect/migrate-konnect-organization.ts | 31 | async function listMigratableKonnectProjects(accountId: string): Promise<{ | CODE |
| LOW | …s/insomnia/src/konnect/migrate-konnect-organization.ts | 52 | export async function detectKonnectOrgMigration({ accountId }: { accountId: string }): Promise<KonnectMigrationPlan> { | CODE |
| LOW | …s/insomnia/src/konnect/migrate-konnect-organization.ts | 92 | export async function migrateKonnectProjectsIfUnambiguous(accountId: string): Promise<KonnectMigrationPlan> { | CODE |
| LOW | packages/insomnia/src/konnect/expression-parser.ts | 35 | export function extractFieldsFromExpression(expression: string): ExtractedRouteFields { | CODE |
| LOW | packages/insomnia/src/plugins/index.ts | 67 | async function discoverUserPluginExports( | CODE |
| LOW | packages/insomnia/src/plugins/index.ts | 80 | function buildUserPluginModuleFromManifest(pluginName: string, manifest: PluginExportManifest): Plugin['module'] { | CODE |
| LOW | packages/insomnia/src/plugins/index.ts | 403 | async function ensureSandboxEngineLoadedBeforePlugins(): Promise<void> { | CODE |
| LOW | packages/insomnia/src/network/network.ts | 77 | export function getOrInheritHeaders({ | CODE |
| LOW | packages/insomnia/src/network/network.ts | 743 | export async function tryToExecuteAfterResponseScript(context: RequestAndContextAndResponse) { | CODE |
| LOW | packages/insomnia/src/network/send-request.node.ts | 38 | export async function getSendRequestCallbackMemDb( | CODE |
| LOW | packages/insomnia/src/basic-components/utils/index.ts | 32 | export function getBackgroundColorClasses(color: ButtonColor) { | CODE |
| LOW | packages/insomnia/src/common/project.ts | 272 | export async function getProjectsWithGitRepositories({ | CODE |
| LOW | packages/insomnia/src/common/api-specs.ts | 65 | export function resolveComponentSchemaRefs(spec: ParsedApiSpec, methodInfo: Record<string, any>) { | CODE |
| LOW | packages/insomnia/src/common/app-data.ts | 98 | function findOrganizationAndProjectIdForWorkspace( | CODE |
| LOW | packages/insomnia/src/common/app-data.ts | 113 | function findOrganizationFromWorkspaceId(queryClient: QueryClient, workspaceId: string): string | undefined { | CODE |
| LOW | packages/insomnia/src/common/app-data.ts | 124 | function invalidateIfOrganizationDataUncached(queryClient: QueryClient, organizationId: string): boolean { | CODE |
| 157 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | packages/insomnia/src/konnect/transform.ts | 5 | // ─── Template injection sanitisation ───────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/transform.ts | 55 | // ─── Proxy environment variables ───────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/transform.ts | 115 | // ─── Path handling ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/transform.ts | 231 | // ─── Header / path-parameter merging ───────────────────────────────────────── | COMMENT |
| MEDIUM | …kages/insomnia/src/konnect/__tests__/transform.test.ts | 13 | // ─── sanitizeRoute ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …kages/insomnia/src/konnect/__tests__/transform.test.ts | 232 | // ─── deriveProxyVarDefaults ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …kages/insomnia/src/konnect/__tests__/transform.test.ts | 330 | // ─── generatePathPlaceholder ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | …kages/insomnia/src/konnect/__tests__/transform.test.ts | 422 | // ─── mergeHeaders ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …kages/insomnia/src/konnect/__tests__/transform.test.ts | 459 | // ─── mergePathParameters ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …kages/insomnia/src/konnect/__tests__/transform.test.ts | 478 | // ─── konnectHeadersChanged ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …kages/insomnia/src/konnect/__tests__/transform.test.ts | 514 | // ─── pathParametersChanged ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 18 | // ─── Helpers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 127 | // ─── Feature: HTTP Route Sync ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 475 | // ─── Feature: Request Naming ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 566 | // ─── Feature: Re-sync ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 993 | // ─── Feature: Idempotent Sync (Route Keying) ────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 1073 | // ─── Feature: gRPC Route Sync ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 1301 | // ─── Feature: WebSocket Route Sync ─────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 1489 | // ─── Feature: L4 (Stream) Routes — Skipped ─────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 1515 | // ─── Feature: SNI-Only Routes ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 1544 | // ─── Feature: Collection (Workspace) Naming ───────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 1596 | // ─── Feature: Environment Variable Mapping ──────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 1730 | // ─── Feature: Control Plane (Project) Naming ──────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 1780 | // ─── Feature: Wildcard and Edge-Case Hosts ──────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 1832 | // ─── Feature: Expression-Based Routes ────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/sync.test.ts | 2135 | // ─── Feature: Multi-Region Control Plane Sync ──────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/api.test.ts | 11 | // ─── Helpers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/api.test.ts | 61 | // ─── validatePat ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/api.test.ts | 117 | // ─── fetchAllControlPlanes — page-number pagination ────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/api.test.ts | 238 | // ─── fetchAllServices — offset pagination ──────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/api.test.ts | 307 | // ─── fetchRoutesForService — offset pagination ────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/api.test.ts | 387 | // ─── Retry logic (fetchWithRetry, tested through exported functions) ───────── | COMMENT |
| MEDIUM | packages/insomnia/src/konnect/__tests__/api.test.ts | 564 | // ─── fetchKonnectOrganizationId ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/insomnia/src/sync/git/repo-file-watcher.ts | 813 | // ── Check if file still exists and is not a symlink ────────────── | COMMENT |
| MEDIUM⚡ | packages/insomnia/src/sync/git/repo-file-watcher.ts | 831 | // ── Fast-path: mtime unchanged → skip ──────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/insomnia/src/sync/git/repo-file-watcher.ts | 841 | // ── Read file ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/insomnia/src/sync/git/repo-file-watcher.ts | 850 | // ── Content-hash dedup: skip if this is our own write ──────────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packages/insomnia-inso/src/scripts/macos-pkg.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | packages/insomnia/types/react-aria-components.d.ts | 1 | // `disallowTypeAhead` is missing from `ListBoxProps` typings in every published | COMMENT |
| LOW | packages/insomnia/src/routes.ts | 1 | import { flatRoutes } from '@react-router/fs-routes'; | COMMENT |
| LOW | …rc/ui/components/key-value-editor/key-value-editor.tsx | 101 | // The persisted pairs (everything that lives in the data model and shows up in diffs). | COMMENT |
| LOW | …tors/environment-key-value-editor/key-value-editor.tsx | 81 | return [...byId.values()]; | COMMENT |
| LOW | …src/ui/components/modals/git-project-staging-modal.tsx | 141 | // rendering nothing. | COMMENT |
| LOW | …src/ui/components/modals/git-project-staging-modal.tsx | 321 | acceptedDragTypes: ['insomnia:git-commit-item'], | COMMENT |
| LOW | …ui/components/.client/codemirror/editor-state-cache.ts | 1 | import type CodeMirror from 'codemirror'; | COMMENT |
| LOW | …omponents/.client/codemirror/editor-history-cleanup.ts | 1 | import { useEffect } from 'react'; | COMMENT |
| LOW | packages/insomnia/src/ui/worker/templating.worker.ts | 21 | // This Worker builds and caches its own Liquid engine (see `~/ui/templating/worker`), including | COMMENT |
| LOW | …ckages/insomnia/src/scripting/quickjs-script-engine.ts | 241 | COMMENT | |
| LOW | …plugins/__tests__/sandbox-engine-preload-order.test.ts | 1 | // Regression test for `getPlugins()`'s eager sandbox-engine warm-up | COMMENT |
| LOW | …__/plugin-load-order-quickjs-module-resolution.test.ts | 1 | // `sandbox-engine-preload-order.test.ts` and `../../templating/sandbox/quickjs-runtime.test.ts` | COMMENT |
| LOW | …a/src/runtimes/network/hook-chain-shared-state.test.ts | 1 | // Regression coverage for whether one plugin's hook can observe or alter another plugin's data | COMMENT |
| LOW | …nsomnia/src/templating/sandbox/in-sandbox-bootstrap.ts | 21 | ' "use strict";', | COMMENT |
| LOW | …nsomnia/src/templating/sandbox/in-sandbox-bootstrap.ts | 181 | // The host reads the plugin\'s source files (only within its own directory, never node_modules) | COMMENT |
| LOW | …g/sandbox/elevated-plugin-process-access-scope.test.ts | 1 | // Regression coverage for how far an elevated/unsandboxed plugin's real Node process access | COMMENT |
| LOW | …g/sandbox/elevated-plugin-process-access-scope.test.ts | 121 | // The main-process build bundles every local project module into one file; only packages in | COMMENT |
| LOW | packages/insomnia/src/common/render.ts | 461 | // with SECRET behaviour and independent of the hideSecretValuesInPreviewAndConsole setting. | COMMENT |
| LOW | …somnia/src/common/network/sensitive-value-collector.ts | 1 | // Sensitive value collection and redaction for timeline files written to disk. | COMMENT |
| LOW | …somnia/src/common/network/sensitive-value-collector.ts | 21 | // sendCurlAndWriteTimeline, and pre-/after-response script console logs | COMMENT |
| LOW | …somnia/src/common/network/sensitive-value-collector.ts | 81 | ), | COMMENT |
| LOW | …somnia/src/common/network/sensitive-value-collector.ts | 141 | } | COMMENT |
| LOW | …somnia/src/common/network/sensitive-value-collector.ts | 201 | // A derived credential (base64(user:pass) for Basic Auth) does not contain the plaintext inputs, | COMMENT |
| LOW | …somnia/src/common/network/sensitive-value-collector.ts | 241 | COMMENT | |
| LOW | …a/src/common/__tests__/import-export-roundtrip.test.ts | 21 | COMMENT | |
| LOW | packages/insomnia/src/sync/git/ne-db-client.ts | 81 | COMMENT | |
| LOW | packages/insomnia/src/sync/git/fs-client.ts | 101 | // `mkdir`/`rmdir`/`symlink` fail outright against an existing leaf of the | COMMENT |
| LOW | …omnia/src/main/templating-worker-database-inventory.ts | 1 | // The checked-in scoping inventory for every protocol-dispatch handler in `pluginToMainAPI`. | COMMENT |
| LOW | …ckages/insomnia/src/main/templating-worker-database.ts | 801 | return await services.response.create( | COMMENT |
| LOW | …atabase-sendrequest-multipart-filepath-scoping.test.ts | 1 | import fs from 'node:fs'; | COMMENT |
| LOW | …ting-worker-database-sendrequest-cacert-bypass.test.ts | 1 | import fs from 'node:fs'; | COMMENT |
| LOW | …s/insomnia/src/main/__tests__/secure-read-file.test.ts | 1 | import fs from 'node:fs'; | COMMENT |
| LOW | …mnia-smoke-test/tests/smoke/focus-and-keyboard.test.ts | 1 | import { expect } from '@playwright/test'; | COMMENT |
| LOW | …-smoke-test/tests/smoke/confidential-redaction.test.ts | 1 | import fs from 'node:fs'; | COMMENT |
| LOW | …-smoke-test/tests/smoke/quickjs-script-sandbox.test.ts | 1 | import { expect, type Page } from '@playwright/test'; | COMMENT |
| LOW | packages/insomnia-smoke-test/tests/smoke/invite.test.ts | 41 | // // Unlink the team. The team is showing as the first option in the list | COMMENT |
| LOW | …st/tests/smoke/environment-editor-interactions.test.ts | 141 | // commit is its own action we can wait on. Add Row also mutates the row list itself | COMMENT |
| LOW | …e-test/tests/migration/local-to-cloud-projects.test.ts | 41 | // @TODO Re-enable this test | COMMENT |
| LOW | …e-test/tests/migration/local-to-cloud-projects.test.ts | 61 | // await page.getByTestId('project').click(); | COMMENT |
| LOW | packages/insomnia-vcs/src/util.ts | 81 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …kages/insomnia-inso/src/commands/lint-specification.ts | 95 | // Step 1: flatten local extends and validate remote URLs (SSRF + disallowed keys). | COMMENT |
| LOW⚡ | …kages/insomnia-inso/src/commands/lint-specification.ts | 97 | // Step 2: fetch + fully inline remote extends so bundleAndLoadRuleset has nothing to fetch, | COMMENT |
| LOW | packages/insomnia/src/sync/git/git-repo-migration.ts | 235 | // Step 1: Rename git/ → .git/ | COMMENT |
| LOW⚡ | packages/insomnia/src/sync/git/git-repo-migration.ts | 257 | // Step 2: Collapse other/ → repo root | COMMENT |
| LOW⚡ | packages/insomnia/src/sync/git/git-repo-migration.ts | 265 | // Step 3: Flush all Insomnia YAML workspaces to disk so they become real files. | COMMENT |
| LOW | packages/insomnia/src/main/install-plugin.ts | 76 | // Step 1: Validate the plugin and fetch its npm metadata | COMMENT |
| LOW⚡ | packages/insomnia/src/main/install-plugin.ts | 97 | // Step 2: Create the plugin directory if it doesn't exist | COMMENT |
| LOW⚡ | packages/insomnia/src/main/install-plugin.ts | 104 | // Step 3: only allow tarballs from known hosts | COMMENT |
| LOW⚡ | packages/insomnia/src/main/install-plugin.ts | 123 | // Step 4: Install the plugin into a temporary directory | COMMENT |
| LOW⚡ | packages/insomnia/src/main/install-plugin.ts | 127 | // Step 5: Move the main plugin folder into the plugin directory | COMMENT |
| LOW⚡ | packages/insomnia/src/main/install-plugin.ts | 133 | // Step 6: Handle the plugin's dependencies | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …kages/insomnia-inso/src/commands/lint-specification.ts | 95 | // Step 1: flatten local extends and validate remote URLs (SSRF + disallowed keys). | COMMENT |
| LOW⚡ | …kages/insomnia-inso/src/commands/lint-specification.ts | 97 | // Step 2: fetch + fully inline remote extends so bundleAndLoadRuleset has nothing to fetch, | COMMENT |
| LOW | packages/insomnia/src/sync/git/git-repo-migration.ts | 235 | // Step 1: Rename git/ → .git/ | COMMENT |
| LOW⚡ | packages/insomnia/src/sync/git/git-repo-migration.ts | 257 | // Step 2: Collapse other/ → repo root | COMMENT |
| LOW⚡ | packages/insomnia/src/sync/git/git-repo-migration.ts | 265 | // Step 3: Flush all Insomnia YAML workspaces to disk so they become real files. | COMMENT |
| LOW | packages/insomnia/src/main/install-plugin.ts | 76 | // Step 1: Validate the plugin and fetch its npm metadata | COMMENT |
| LOW⚡ | packages/insomnia/src/main/install-plugin.ts | 97 | // Step 2: Create the plugin directory if it doesn't exist | COMMENT |
| LOW⚡ | packages/insomnia/src/main/install-plugin.ts | 104 | // Step 3: only allow tarballs from known hosts | COMMENT |
| LOW⚡ | packages/insomnia/src/main/install-plugin.ts | 123 | // Step 4: Install the plugin into a temporary directory | COMMENT |
| LOW⚡ | packages/insomnia/src/main/install-plugin.ts | 127 | // Step 5: Move the main plugin folder into the plugin directory | COMMENT |
| LOW⚡ | packages/insomnia/src/main/install-plugin.ts | 133 | // Step 6: Handle the plugin's dependencies | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packages/insomnia/src/ui/components/svg-icon.tsx | 117 | placeholder: 'placeholder', | CODE |
| LOW | …mnia/src/ui/components/settings/text-array-setting.tsx | 17 | placeholder?: InputHTMLAttributes<HTMLInputElement>['placeholder']; | CODE |
| LOW | …s/insomnia/src/ui/components/settings/text-setting.tsx | 13 | placeholder?: InputHTMLAttributes<HTMLInputElement>['placeholder']; | CODE |
| LOW | …insomnia/src/ui/components/settings/masked-setting.tsx | 14 | placeholder?: React.HTMLProps<HTMLInputElement>['placeholder']; | CODE |
| LOW | …ommon/__fixtures__/insomnia-v5-roundtrip/bookings.yaml | 165 | "contactEmail": "user@example.com" | CODE |
| LOW | …somnia/src/sync/git/providers/__tests__/github.test.ts | 31 | function mockGithubApi(email = 'user@example.com') { | CODE |
| LOW | …somnia/src/sync/git/providers/__tests__/gitlab.test.ts | 31 | function mockGitlabApi(email = 'user@example.com') { | CODE |
| LOW | …ges/insomnia/src/main/importers/importers/swagger-2.ts | 410 | 'string_email': () => 'user@example.com', | CODE |
| LOW | …ges/insomnia/src/main/importers/importers/openapi-3.ts | 560 | 'string_email': () => 'user@example.com', | CODE |
| LOW | …ckages/insomnia-data/__tests__/git-credentials.test.ts | 231 | author: { name: 'User', email: 'user@example.com' }, | CODE |
| LOW⚡ | …ckages/insomnia-data/__tests__/git-credentials.test.ts | 242 | author: { name: 'User', email: 'user@example.com' }, | CODE |
| LOW⚡ | …ckages/insomnia-data/__tests__/git-credentials.test.ts | 251 | author: { name: 'User', email: 'user@example.com' }, | CODE |
| LOW⚡ | …ckages/insomnia-data/__tests__/git-credentials.test.ts | 260 | author: { name: 'User', email: 'user@example.com' }, | CODE |
| LOW⚡ | …ckages/insomnia-data/__tests__/git-credentials.test.ts | 269 | author: { name: 'User', email: 'user@example.com' }, | CODE |
| LOW | …ckages/insomnia-data/__tests__/git-credentials.test.ts | 283 | author: { name: 'User', email: 'user@example.com' }, | CODE |
| LOW | …ckages/insomnia-data/__tests__/git-credentials.test.ts | 290 | author: { name: 'User', email: 'user@example.com' }, | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | packages/insomnia/src/ui/components/request-url-bar.tsx | 136 | // robust to React StrictMode's double-mount and to the request pane keying by requestId. | COMMENT |
| MEDIUM | …test/playwright/pages/components/navigation-sidebar.ts | 126 | // Sometimes the dropdown button can be a bit tricky to click if the hover state isn't properly triggered, so we'll | COMMENT |
| MEDIUM | …test/playwright/pages/components/navigation-sidebar.ts | 192 | // Sometimes the dropdown button can be a bit tricky to click if the hover state isn't properly triggered, so we'll | COMMENT |
| MEDIUM | …test/playwright/pages/components/navigation-sidebar.ts | 209 | // Sometimes the dropdown button can be a bit tricky to click if the hover state isn't properly triggered, so we'll | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …omnia/src/routes/ai.mcp-generate-sampling-response.tsx | 53 | // Response sampling request with AI-generated response | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | packages/insomnia-inso/src/scripts/macos-pkg.sh | 53 | # Create a staging area for the installer package. | COMMENT |
| MEDIUM | .github/workflows/release-start.yml | 89 | - name: Create Branch # Create a branch if it doesn't exist | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packages/insomnia/src/network/cancellation.renderer.ts | 17 | // TODO: implement cancelPreRequestScript on hiddenBrowserWindow side? | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packages/insomnia/src/entry.server.tsx | 12 | export default function handleRequest( | CODE |