The missing integration layer for AI agents. Let them call any OpenAPI / MCP / GraphQL / custom js functions in secure environment.
This report summarizes scanner evidence for UsefulSoftwareCo/executor, a TypeScript project with 4,305 GitHub stars. SynthScan examined 517,495 lines of code across 2337 source files, recording 966 pattern matches distributed across 10 syntactic categories. The legacy adjusted pattern signal is 2.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? 857 finding(s).
Are imports declared and package/API names verified? 32 finding(s).
Are wrappers, guards, and repeated structures necessary? 137 finding(s).
Which changes need focused human review? 966 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 966 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 | .astro/types.d.ts | 1 | /// <reference types="astro/client" /> | COMMENT |
| LOW | examples/promise-sdk/src/main.ts | 121 | // type: "apiKey", | COMMENT |
| LOW | examples/all-plugins/src/main.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | examples/all-plugins/src/main.ts | 101 | // credentials: { | COMMENT |
| LOW | packages/core/fumadb/src/adapters/drizzle/query.ts | 41 | // Even a single row cannot fit the advertised budget. Clamping to one row | COMMENT |
| LOW | packages/core/vite-plugin/src/index.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | packages/core/vite-plugin/src/index.ts | 121 | COMMENT | |
| LOW | packages/core/vite-plugin/src/index.ts | 181 | `plugin's UI will not be bundled. Check that the package is ` + | COMMENT |
| LOW | packages/core/vite-plugin/src/index.ts | 241 | // Consumers wanting strong typing for `virtual:executor/plugins-client` | COMMENT |
| LOW | packages/core/config/src/schema.ts | 101 | COMMENT | |
| LOW | packages/core/config/src/load-plugins.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | packages/core/config/src/sink.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 241 | // grant redeems a token the first already consumed, and a provider that | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 581 | // the same store through a `reach: "tenant"` context so it can answer | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 2061 | // Shared with every other execution stack built over this same handle — | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 2081 | // Reach stays "bound"; only the write axis changes. See | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 2241 | * Optional methods stay optional — a provider that cannot enumerate must not | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 2881 | // (refresh token first) bounds the damage once a grant has | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 2921 | fetch: config.fetch, | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 2941 | // called a SUCCESS is this grant's death certificate | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 3061 | // settle, so a 401 arriving after a refresh completed starts a fresh | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 3621 | status: "degraded", | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 3681 | : { tools_synced_at: Date.now() }; | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 3701 | // the sync time so the stale-catalog check does not re-attempt this | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 4041 | // one credential input. An empty binding (no inputs at all — e.g. an | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 4281 | }; | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 4321 | b("row_id", "=", insertedRowId), | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 4381 | ); | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 5321 | // `provider_state` wholesale, re-opens probing. Nothing is written: | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 5361 | const spec = describeHealthCheckForRow(integrationRow) ?? undefined; | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 5661 | const toolsSyncTtlMs = | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 5721 | ? b.isNull("tools_synced_at") | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 6641 | COMMENT | |
| LOW | packages/core/sdk/src/executor.ts | 6661 | // handler at construction), so an abandoned read cannot | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 6801 | // the two run concurrently. Both start only after | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 6861 | }), | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 6901 | // Interrupting an already-completed (or already-joined) fiber is a | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 6961 | // One integration-row read + one projector run. Resolve the method this | COMMENT |
| LOW | packages/core/sdk/src/executor.ts | 7181 | ), | COMMENT |
| LOW | packages/core/sdk/src/oauth.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | packages/core/sdk/src/subject-registry.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | packages/core/sdk/src/blob.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | packages/core/sdk/src/executor-fuma-db.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | packages/core/sdk/src/insufficient-scope.ts | 1 | // Detecting a scope-insufficient upstream rejection. A 403 that means "this | COMMENT |
| LOW | packages/core/sdk/src/policies.ts | 61 | export type PolicySource = "user" | "plugin-default"; | COMMENT |
| LOW | packages/core/sdk/src/promise-executor.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | packages/core/sdk/src/promise-executor.ts | 21 | type InvokeOptions as EffectInvokeOptions, | COMMENT |
| LOW | …kages/core/sdk/src/sqlite-oauth-client-gc-migration.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | packages/core/sdk/src/oauth-discovery.ts | 1 | // --------------------------------------------------------------------------- | COMMENT |
| LOW | packages/core/sdk/src/migration-spec.ts | 121 | // | COMMENT |
| LOW | packages/core/sdk/src/migration-spec.ts | 341 | }; | COMMENT |
| LOW | packages/core/sdk/src/migration-spec.ts | 581 | export const migrateExpiresAt = (input: { | COMMENT |
| LOW | packages/core/sdk/src/migration-spec.ts | 661 | COMMENT | |
| LOW | packages/core/sdk/src/migration-spec.ts | 701 | if (slotKey.endsWith(":connection")) return "oauth-access"; | COMMENT |
| LOW | packages/core/sdk/src/migration-spec.ts | 1021 | : {}), | COMMENT |
| LOW | packages/core/sdk/src/fuma-runtime.test.ts | 1 | // Regression for the "StorageError: Failed query: …" reports in production. | COMMENT |
| LOW | packages/core/sdk/src/public-origin.ts | 1 | // Shared resolution of a host's PUBLIC ORIGIN — the pinned base URL every host | COMMENT |
| LOW | packages/core/sdk/src/core-schema.ts | 141 | // name, so cloud backfills `name` from it (migration 0006) and other | COMMENT |
| LOW | packages/core/sdk/src/core-schema.ts | 161 | // write under the owner policy — lazily rebuild on their next read. | COMMENT |
| LOW | packages/core/sdk/src/core-schema.ts | 221 | description: nullableTextColumn("description"), | COMMENT |
| 723 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | packages/core/api/src/update-check.ts | 152 | // ── dist-tags resolution ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/core/api/src/update-check.ts | 252 | // ── checkForUpdate ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/core/api/src/admin/admin-users.test.ts | 654 | // ── Host identity join ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/core/api/src/admin/admin-users.test.ts | 1033 | // ── ?search= ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/core/api/src/account/api.ts | 20 | // ── Neutral errors ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/core/api/src/account/api.ts | 49 | // ── Shared shapes ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/core/api/src/account/api.ts | 182 | // ── Group ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/app/src/web/shell.tsx | 23 | // ── Env ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/app/src/web/shell.tsx | 36 | // ── NavItem ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/app/src/web/shell.tsx | 55 | // ── PluginNav ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/app/src/web/shell.tsx | 102 | // ── IntegrationList ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/app/src/web/shell.tsx | 167 | // ── SidebarContent ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/app/src/web/shell.tsx | 287 | // ── Shell ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/components/update-card.tsx | 54 | // ── useLatestVersion ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/components/update-card.tsx | 106 | // ── Card chrome ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/components/update-card.tsx | 142 | // ── NpmUpdateCard (npm-installed CLI: copyable command) ─────────────────── | COMMENT |
| MEDIUM | packages/react/src/components/update-card.tsx | 230 | // ── DesktopUpdateCard (desktop app: native restart action) ──────────────── | COMMENT |
| MEDIUM | packages/react/src/components/update-card.tsx | 278 | // ── SidebarUpdateCard (the only export the shells consume) ──────────────── | COMMENT |
| MEDIUM | packages/react/src/lib/admin-users-display.ts | 21 | // ── Last seen ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/lib/admin-users-display.ts | 69 | // ── Identity ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/lib/admin-users-display.ts | 142 | // ── Connections ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/lib/admin-users-display.ts | 236 | // ── Connect links ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/lib/admin-users-display.ts | 266 | // ── Paging ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/api/analytics.tsx | 36 | // ── Integrations ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/api/analytics.tsx | 69 | // ── Connections & auth ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/api/analytics.tsx | 110 | // ── Tools ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/analytics.tsx | 127 | // ── Policies page ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/analytics.tsx | 137 | // ── Artifacts page ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/analytics.tsx | 142 | // ── API keys ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/analytics.tsx | 150 | // ── Organization ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/analytics.tsx | 156 | // ── Executions & approvals ─────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/analytics.tsx | 165 | // ── MCP install / onboarding ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/analytics.tsx | 177 | // ── Command palette ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/analytics.tsx | 183 | // ── Docs / help ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/analytics.tsx | 186 | // ── Cloud: auth & onboarding ───────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/api/analytics.tsx | 206 | // ── Cloud: billing & support ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/account-atoms.tsx | 13 | // ── Identity ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/account-atoms.tsx | 20 | // ── API keys ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | packages/react/src/api/account-atoms.tsx | 29 | // ── Org API keys ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/api/account-atoms.tsx | 42 | // ── Organization members ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/pages/admin-users.tsx | 104 | // ── Access denied ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/pages/admin-users.tsx | 123 | // ── Health ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/pages/admin-users.tsx | 149 | // ── Integration icons ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/pages/admin-users.tsx | 260 | // ── Identity ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/pages/admin-users.tsx | 365 | // ── Detail sheet ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/pages/admin-users.tsx | 526 | // ── Search ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/pages/admin-users.tsx | 603 | // ── Page ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/multiplayer/shell.tsx | 116 | // ── Brand ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/multiplayer/shell.tsx | 126 | // ── NavItem ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/multiplayer/shell.tsx | 145 | // ── DocsLink ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/multiplayer/shell.tsx | 184 | // ── IntegrationList ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/multiplayer/shell.tsx | 252 | // ── Avatar / initials ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/multiplayer/shell.tsx | 277 | // ── UserFooter ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/multiplayer/shell.tsx | 344 | // ── SidebarContent ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/multiplayer/shell.tsx | 429 | // ── Shell ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | packages/react/src/multiplayer/auth-hint.tsx | 61 | // ── Browser-side cookie maintenance (AuthProvider) ─────────────────────────── | COMMENT |
| MEDIUM | e2e/selfhost/mcp-opencode-consent.test.ts | 65 | // ── Terminal: drive the real OpenCode binary ───────────────────────── | COMMENT |
| MEDIUM | e2e/selfhost/mcp-opencode-consent.test.ts | 112 | // ── Browser: approve the connection on the real consent screen ─────── | COMMENT |
| MEDIUM | e2e/cloud/org-api-keys-console.test.ts | 44 | // ── The admin's view: mint, verify, revoke ────────────────────────────── | COMMENT |
| MEDIUM | e2e/cloud/org-api-keys-console.test.ts | 123 | // ── The plain member's view ─────────────────────────────────────────── | COMMENT |
| 16 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | packages/core/sdk/src/pending-approval.test.ts | 14 | code: 'return await tools.github.user.main.issues.create({"title":"x"})', | CODE |
| CRITICAL | packages/hosts/mcp/src/artifacts-tools.test.ts | 2208 | code: "function App(){ useQuery(tools.vercel.user.personalVercel.domains.getDomains.queryOptions({})); retur | CODE |
| CRITICAL | packages/hosts/mcp/src/artifacts-tools.test.ts | 2283 | 'return await tools.vercel.user.personalVercel.domains.getDomains({"limit":100})', | CODE |
| CRITICAL | packages/hosts/mcp/src/artifacts-tools.test.ts | 2305 | expect(prod.executed).toEqual(["return await tools.linear.org.linearProd.issues.list({})"]); | CODE |
| CRITICAL | packages/hosts/mcp/src/artifacts-tools.test.ts | 2313 | expect(staging.executed).toEqual(["return await tools.linear.user.myLinear.issues.list({})"]); | CODE |
| CRITICAL | packages/hosts/mcp/src/artifacts-tools.test.ts | 2357 | action: { code: "return await tools.stripe.org.acme.charges.list({})" }, | CODE |
| CRITICAL | packages/hosts/mcp/src/artifacts-tools.test.ts | 2389 | code: "function App(){ useQuery(tools.inventory.org.main.listItems.queryOptions({})); return <div/>; }", | CODE |
| CRITICAL | packages/hosts/mcp/src/artifact-bindings.test.ts | 111 | `useQuery(tools.vercel.user.personalVercel.domains.getDomains.queryOptions({}));`, | CODE |
| CRITICAL | packages/hosts/mcp/src/artifact-bindings.test.ts | 120 | oldStyleAddressRejection(`useQuery(tools.inventory.org.main.listItems.queryOptions({}));`), | CODE |
| CRITICAL | packages/hosts/mcp/src/artifact-bindings.test.ts | 138 | oldStyleAddressRejection(`useQuery(tools.acme.admin.user.get.queryOptions({}));`), | CODE |
| CRITICAL | …/kernel/runtime-dynamic-worker/src/integration.test.ts | 283 | await tools.mp.org.main.body.submit({ body: { file, name: "Acme" } }); | CODE |
| CRITICAL | …/kernel/runtime-dynamic-worker/src/integration.test.ts | 313 | await tools.u8.org.main.body.submit({ body: { file: bytes } }); | CODE |
| CRITICAL | …/kernel/runtime-dynamic-worker/src/integration.test.ts | 345 | await tools.j.org.main.body.submit({ body: { name: "Acme", count: 7, ok: true } }); | CODE |
| CRITICAL | …/kernel/runtime-dynamic-worker/src/integration.test.ts | 366 | await tools.oct.org.main.body.submit({ body: payload }); | CODE |
| CRITICAL | …s/kernel/runtime-dynamic-worker/src/invocation.test.ts | 997 | const result = yield* executor.execute("async () => tools.a.b.c.d.e({})", invoker); | CODE |
| CRITICAL | e2e/scenarios/oauth-client-handoff.test.ts | 78 | const handoff = await tools.executor.coreTools.oauth.clients.createHandoff({ | CODE |
| CRITICAL | e2e/scenarios/oauth-client-handoff.test.ts | 101 | const handoff = await tools.executor.coreTools.oauth.clients.createHandoff({ | CODE |
| CRITICAL | e2e/scenarios/oauth-client-handoff.test.ts | 199 | const result = await tools.executor.coreTools.oauth.clients.create({ | CODE |
| CRITICAL | e2e/scenarios/oauth-client-handoff.test.ts | 211 | const result = await tools.executor.coreTools.oauth.clients.list({}); | CODE |
| CRITICAL | e2e/scenarios/oauth-client-handoff.test.ts | 264 | const handoff = await tools.executor.coreTools.oauth.clients.createHandoff({ | CODE |
| CRITICAL | e2e/scenarios/oauth-client-handoff.test.ts | 278 | const result = await tools.executor.coreTools.oauth.clients.list({}); | CODE |
| CRITICAL | apps/desktop/scripts/smoke-sidecar.ts | 558 | const list = unwrapToolData(await tools.petstore.org.main.pets.listPets({})); | CODE |
| CRITICAL | apps/desktop/scripts/smoke-sidecar.ts | 559 | const fetchedData = unwrapToolData(await tools.petstore.org.main.pets.getPet({ petId: list[1].id })); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …in-executor/rules/no-cross-package-relative-imports.js | 33 | function getCrossPackageRelativeImport(filename, specifier) { | CODE |
| LOW | …xlint-plugin-executor/rules/no-effect-internal-tags.js | 62 | function reportIfEffectTagComparison( | CODE |
| LOW | …xlint-plugin-executor/rules/no-effect-internal-tags.js | 92 | function isEffectTagForImportedModule(tag, importedEffectModules) { | CODE |
| LOW | …s/core/fumadb/src/migration-engine/auto-from-schema.ts | 22 | export function generateMigrationFromSchema( | CODE |
| LOW | …s/core/fumadb/src/migration-engine/auto-from-schema.ts | 248 | function onTableUnusedForeignKeyCheck( | CODE |
| LOW | …s/core/fumadb/src/migration-engine/auto-from-schema.ts | 271 | function onTableUnusedColumnsCheck( | CODE |
| LOW | …ore/fumadb/src/adapters/kysely/migration/introspect.ts | 625 | async function postgresqlIntrospectAttnumToName( | CODE |
| LOW | …ore/fumadb/src/adapters/kysely/migration/introspect.ts | 751 | async function introspectUniqueConstraints( | CODE |
| LOW | …ore/fumadb/src/adapters/kysely/migration/introspect.ts | 843 | async function introspectTableForeignKeys( | CODE |
| LOW | …s/core/fumadb/src/adapters/kysely/migration/execute.ts | 77 | function createUniqueIndexOrConstraint( | CODE |
| LOW | …s/core/fumadb/src/adapters/kysely/migration/execute.ts | 91 | function dropUniqueIndexOrConstraint( | CODE |
| LOW | …s/core/fumadb/src/adapters/kysely/migration/execute.ts | 388 | function mssqlDropDefaultConstraint(tableName: string, columnName: string) { | CODE |
| LOW | packages/core/fumadb/src/adapters/drizzle/query.ts | 32 | function parameterBoundedBatchSize( | CODE |
| LOW | packages/core/sdk/src/owner-policy.ts | 217 | export function assertExecutorOwnerPolicyTable(table: AnyTable, tableKey?: string): void { | CODE |
| LOW | packages/plugins/toolkits/src/page.tsx | 414 | function ToolkitConnectionIconStack(props: { connections: readonly ConfiguredConnectionView[] }) { | CODE |
| LOW | …s/plugins/mcp/src/react/McpRemoteIntegrationFields.tsx | 34 | export function McpRemoteIntegrationFields(props: { | CODE |
| LOW | packages/plugins/mcp/src/react/auth-method-config.ts | 75 | export function mcpAuthMethodInputFromEditorValue( | CODE |
| LOW | packages/plugins/mcp/src/react/auth-method-config.ts | 91 | export function editorValueFromMcpAuthMethod(method: McpAuthMethod): AuthTemplateEditorValue { | CODE |
| LOW | packages/plugins/mcp/src/react/auth-method-config.ts | 123 | export function mcpAuthMethodInputsFromPlacements( | CODE |
| LOW | …es/plugins/openapi/src/react/AddOpenApiIntegration.tsx | 113 | export function AddOpenApiHealthCheckSection(props: { | CODE |
| LOW | …ckages/plugins/openapi/src/react/auth-method-config.ts | 77 | export function editorValueFromAuthentication(template: Authentication): AuthTemplateEditorValue { | CODE |
| LOW | …ckages/plugins/openapi/src/react/auth-method-config.ts | 112 | export function authenticationFromEditorValue( | CODE |
| LOW | …/openapi/src/react/OpenApiIntegrationDetailsFields.tsx | 26 | export function OpenApiIntegrationDetailsFields(props: { | CODE |
| LOW | packages/plugins/openapi/src/react/plugin-client.tsx | 17 | export default function createOpenApiClientPlugin(config?: OpenApiClientConfig) { | CODE |
| LOW | …ckages/plugins/graphql/src/react/auth-method-config.ts | 41 | export function graphqlAuthMethodInputFromEditorValue( | CODE |
| LOW | …ckages/plugins/graphql/src/react/auth-method-config.ts | 49 | export function editorValueFromGraphqlAuthMethod( | CODE |
| LOW | …ckages/plugins/graphql/src/react/auth-method-config.ts | 73 | export function graphqlAuthMethodInputsFromPlacements( | CODE |
| LOW | packages/react/src/plugins/oauth-sign-in.tsx | 150 | export function oauthClientIdMetadataDocumentUrl(options?: { | CODE |
| LOW | packages/react/src/plugins/oauth-reconnect.ts | 141 | export function retryReconnectClientsOnMenuOpen( | CODE |
| LOW | …kages/react/src/plugins/use-effective-oauth-client.tsx | 174 | export function selectClientsForEndpoints( | CODE |
| LOW | …kages/react/src/plugins/use-effective-oauth-client.tsx | 288 | export function useOAuthClientsForIntegration(opts: { | CODE |
| LOW | …kages/react/src/plugins/use-effective-oauth-client.tsx | 366 | export function selectDcrClientsForIntegration( | CODE |
| LOW | packages/react/src/plugins/integration-identity.tsx | 43 | export function integrationDisplayNameFromUrl(url: string, integrationKind: string): string | null { | CODE |
| LOW | packages/react/src/plugins/integration-identity.tsx | 129 | export function integrationDisplayNameFromStdio( | CODE |
| LOW | packages/react/src/plugins/integration-identity.tsx | 217 | export function IntegrationIdentityFields({ | CODE |
| LOW | packages/react/src/plugins/integration-identity.tsx | 247 | export function IntegrationIdentityFieldRows({ | CODE |
| LOW | packages/react/src/components/chart.tsx | 324 | function getPayloadConfigFromPayload(config: ChartConfig, payload: unknown, key: string) { | CODE |
| LOW | …react/src/components/integration-icon-with-account.tsx | 3 | export function IntegrationIconWithAccount(props: { | CODE |
| LOW | packages/react/src/components/add-account-modal.tsx | 154 | export function createCredentialPayloadOrigin(args: { | CODE |
| LOW | packages/react/src/components/card-stack.tsx | 340 | function CardStackEntryDescription({ className, ...props }: React.ComponentProps<"p">) { | CODE |
| LOW | packages/react/src/components/health-check-editor.tsx | 263 | function HealthCheckLivePreviewBlock(props: { | CODE |
| LOW | packages/react/src/components/elicitation-approval.tsx | 293 | function ElicitationApprovalFields({ | CODE |
| LOW | packages/react/src/components/elicitation-approval.tsx | 371 | function ElicitationApprovalFieldControl({ | CODE |
| LOW | packages/react/src/lib/shiki.ts | 211 | export function createCodeHighlighterPlugin(): CodeHighlighterPlugin { | CODE |
| LOW | packages/react/src/lib/auth-placements.tsx | 47 | export function placementFromHeaderPattern(pattern: string): Placement | null { | CODE |
| LOW | packages/react/src/lib/auth-placements.tsx | 226 | export function authMethodsFromDescriptors( | CODE |
| LOW | packages/react/src/api/server-connection.tsx | 154 | export function ExecutorServerConnectionProvider( | CODE |
| LOW⚡ | packages/react/src/api/server-connection.tsx | 223 | export function useExecutorServerConnection(): ExecutorServerConnection { | CODE |
| LOW⚡ | packages/react/src/api/server-connection.tsx | 229 | export function useSetExecutorServerConnection(): (input: ExecutorServerConnectionInput) => void { | CODE |
| LOW⚡ | packages/react/src/api/server-connection.tsx | 235 | export function useExecutorServerConnectionControls(): ExecutorServerConnectionContextValue { | CODE |
| LOW | packages/react/src/api/artifact-renderer.tsx | 93 | export function useArtifactRendererLoader(): ArtifactRendererLoader | null { | CODE |
| LOW | packages/react/src/api/artifact-renderer.tsx | 175 | export function usePreloadArtifactRenderer(): void { | CODE |
| LOW | packages/react/src/pages/integration-detail.tsx | 716 | function NoConnectionToolsEmptyState(props: { | CODE |
| LOW | packages/react/src/pages/integration-detail.tsx | 737 | function IntegrationDetailSkeleton() { | CODE |
| LOW | packages/react/src/pages/integrations.tsx | 236 | function IntegrationFamilyGroupCard(props: { | CODE |
| LOW | packages/react/src/routes/artifacts.$artifactId.tsx | 9 | function ArtifactDetailRouteComponent() { | CODE |
| LOW | apps/cloud/scripts/dev-db.ts | 59 | async function hasDrizzleMigrationHistory(path: string): Promise<boolean> { | CODE |
| LOW | …/cloud/src/web/components/create-organization-form.tsx | 13 | export function useCreateOrganizationForm(options: { | CODE |
| LOW | apps/cloud/src/web/components/org-menu-slot.tsx | 51 | function OrganizationSwitcherItems(props: { activeOrganizationId: string | null }) { | CODE |
| LOW | apps/cloud/src/routes/app/billing.tsx | 90 | function useRefreshAfterCardUpdate(card: CardOnFile | null, refetch: () => void): boolean { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | packages/plugins/mcp/src/sdk/plugin.test.ts | 62 | // The call-tool fixtures share one JSON-RPC scaffold (handshake, tool listing, | COMMENT |
| MEDIUM | packages/plugins/openapi/src/sdk/plugin.test.ts | 1050 | // agentic add path (MCP/API) does exactly this. Without server-side | COMMENT |
| MEDIUM | packages/plugins/openapi/src/sdk/derive-auth.ts | 4 | // caller omits `authenticationTemplate` (the agentic/API path has no client | COMMENT |
| MEDIUM | packages/react/src/components/page.tsx | 4 | // Settings page scaffold | COMMENT |
| MEDIUM | e2e/scenarios/no-auth-connection.test.ts | 1 | // The agentic no-auth wire-up: an agent registers a public REST API over MCP | COMMENT |
| MEDIUM | e2e/scenarios/connect-handoff.test.ts | 1 | // The agentic connect handoff: an agent adds an API over MCP, asks for a | COMMENT |
| MEDIUM | e2e/scenarios/connect-handoff.test.ts | 43 | // with no authenticationTemplate exercises exactly the agentic path: the | COMMENT |
| MEDIUM | apps/host-selfhost/docker-compose.yml | 8 | # generated keys across restarts and upgrades. Nothing else to orchestrate. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | packages/onboarding-demo/src/catalog.ts | 11 | // categorised first (the "leverage AI for the generation" step). The keyword | COMMENT |
| MEDIUM | .github/workflows/preview-sweep.yml | 6 | # open. A second pass (sweep-e2e) cleans up after the e2e harness on the same | COMMENT |
| MEDIUM | e2e/setup/desktop-macos.globalsetup.ts | 62 | // Push the bundle (tar-stream, robust over the just-booted link) and clear | COMMENT |
| MEDIUM | apps/cli/src/service.ts | 498 | // install is robust regardless of how it was invoked. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .agents/skills/wrdn-effect-atom-optimistic/SKILL.md | 18 | - `useState`, `useReducer`, `useRef` holding "pending" / "placeholder" / "in-flight" / "optimistic" values keyed by r | CODE |
| LOW | packages/core/api/src/account/org-slug.test.ts | 7 | expect(slugifyOrgName("Acme Corp")).toBe("acme-corp"); | CODE |
| LOW | packages/core/api/src/account/org-slug.test.ts | 138 | expect(await generateOrgSlug("Acme Corp", taken([]))).toBe("acme-corp"); | CODE |
| LOW | packages/core/api/src/account/org-slug.test.ts | 142 | const slug = await generateOrgSlug("Acme Corp", taken(["acme-corp"])); | CODE |
| LOW | packages/core/api/src/account/org-slug.test.ts | 153 | const slug = await generateOrgSlug("Acme Corp", async (candidate) => { | CODE |
| LOW | packages/react/src/components/add-account-modal.test.ts | 212 | ).toBe("user@example.com"); | CODE |
| LOW | apps/host-selfhost/vite.config.ts | 39 | process.env.EXECUTOR_BOOTSTRAP_ADMIN_EMAIL ??= "admin@example.com"; | CODE |
| LOW | apps/host-cloudflare/src/auth/cloudflare-access.test.ts | 13 | adminEmails: ["admin@example.com"], | CODE |
| LOW | .skills/effect-use-pattern/SKILL.md | 179 | client.customers.create({ email: "user@example.com" }), | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | packages/hosts/mcp-apps-shell/src/shell/shell-app.tsx | 149 | * ## This function is not consulted in fill mode | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packages/core/fumadb/src/adapters/prisma/query.ts | 18 | // TODO: implement comparing values with another table's columns | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | e2e/src/vm/desktop.ts | 174 | except Exception: pass`; | CODE |