AI Slop Code Risk Monitor

better-auth/better-auth

SlopCodeMonitor badge for better-auth/better-auth Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

The most comprehensive authentication framework

2.1 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for better-auth/better-auth, a TypeScript project with 30,536 GitHub stars. SynthScan examined 531,869 lines of code across 1946 source files, recording 907 pattern matches distributed across 7 syntactic categories. The legacy adjusted pattern signal is 2.1 (Low pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

2.1
Adjusted Signal
2.1
Raw Pattern Score
100%
Time Factor
2026-10-30
Last Push
30.5K
Stars
TypeScript
Language
531.9K
Lines of Code
1.9K
Files
907
Pattern Hits
2026-10-31
Scan Date
0.00
HC Hit Rate

Risk Review · Payload v1

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.

Cognitive Ownership Risk 6.2/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 635 finding(s).

Hallucinated Dependency & Supply Chain Risk 2.5/100 · LOW

Are imports declared and package/API names verified? 215 finding(s).

Agent Over-Engineering Ratio 6.6/100 · LOW

Are wrappers, guards, and repeated structures necessary? 601 finding(s).

PR Review Velocity Impact 9.6/100 · LOW

Which changes need focused human review? 907 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

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.

Severity Breakdown

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.

CRITICAL 6HIGH 0MEDIUM 57LOW 844

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 907 distinct pattern matches across 7 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.

Hyper-Verbose Identifiers544 hits · 552 pts
SeverityFileLineSnippetContext
LOWdemo/nextjs/app/dashboard/scim/settings.tsx297function createResourceConsoleUserBody(fixture: DirectoryFixture) {CODE
LOWdemo/nextjs/app/dashboard/scim/settings.tsx364function createInitialOktaRecipeSteps(): OktaLocalRecipeStepState[] {CODE
LOWdemo/nextjs/app/api/mcp/route.ts8function extractPresentedAccessToken(request: Request): string {CODE
LOWdemo/nextjs/app/api/mcp/route.ts32function requireStringAccessTokenClaim(CODE
LOWdemo/nextjs/app/(auth)/sign-in/_components/electron.tsx12export function ElectronManualSignInToast({CODE
LOWdemo/nextjs/components/ui/chart.tsx293function getPayloadConfigFromPayload(CODE
LOWdemo/nextjs/lib/scim-demo-identity.ts30export async function computeSCIMDemoWorkspaceId(operatorId: string) {CODE
LOWdemo/nextjs/lib/scim-demo-identity.ts44function getSCIMDemoIdentitySecret() {CODE
LOWdemo/nextjs/lib/scim-demo-identity.ts138export async function createSCIMDemoDirectoryFixtures(CODE
LOWdemo/nextjs/lib/scim-demo-identity.ts152export async function createSCIMDemoOIDCManagementContext(CODE
LOWdemo/nextjs/lib/scim-demo-identity.ts195export async function getConfiguredSCIMDemoOIDCManagementContext(CODE
LOWdemo/nextjs/lib/scim-demo.ts28export function getSCIMDemoProvisioningDomainId(CODE
LOWdemo/nextjs/lib/scim-demo.ts48export function isSCIMDemoEmployeePortalEnabled() {CODE
LOWdemo/nextjs/lib/scim-demo-oidc.ts176function parseAuthorizationRequest(CODE
LOWdemo/nextjs/lib/scim-demo-oidc.ts254export async function getSCIMDemoOIDCAuthorizationView(CODE
LOWdemo/nextjs/lib/scim-demo-oidc.ts289export function getSCIMDemoOIDCAuthorizationPageURL(CODE
LOWdemo/nextjs/lib/scim-demo-oidc.ts304export function getSCIMDemoOIDCAuthorizationFormFields(CODE
LOWdemo/nextjs/lib/scim-demo-oidc.ts324export function getSCIMDemoOIDCRedirectURI() {CODE
LOWdemo/nextjs/lib/scim-demo-oidc.ts328export function getSCIMDemoOIDCClientSecret() {CODE
LOWdemo/nextjs/lib/scim-demo-oidc.ts355export function getSCIMDemoOIDCDiscoveryDocument() {CODE
LOWdemo/nextjs/lib/scim-demo-oidc.ts422async function importConfiguredSigningKeys(value: string) {CODE
LOWdemo/nextjs/lib/scim-demo-oidc.ts486export async function issueSCIMDemoOIDCAuthorizationCode(CODE
LOWdemo/nextjs/lib/scim-demo-oidc.ts573export async function exchangeSCIMDemoOIDCAuthorizationCode(CODE
LOWdemo/nextjs/lib/scim-demo-employee.ts133async function createVerificationIdentifier(CODE
LOWdemo/nextjs/lib/scim-demo-employee.ts192export function inspectSCIMDemoEmployeeVerification(input: {CODE
LOWdemo/nextjs/lib/scim-demo-employee.ts234async function resolveConnectionAndSource(CODE
LOWdemo/nextjs/lib/scim-demo-employee.ts266async function resolveConnectionAndSourceByOrganization(CODE
LOWdemo/nextjs/lib/scim-demo-employee.ts532export function getSCIMDemoEmployeePortalToken(CODE
LOWdemo/nextjs/lib/scim-demo-employee.ts655function serializeSCIMDemoEmployeePortalCookie(token: string): string {CODE
LOWdemo/nextjs/lib/scim-demo-management.ts51export function createSCIMDemoManagementError(CODE
LOWdemo/nextjs/lib/scim-demo-management.ts63export function createSCIMDemoConnectionCreationRequestId(CODE
LOWdemo/nextjs/lib/scim-demo-management.ts69export function isSCIMManagedCreationRequestConflict(error: unknown): boolean {CODE
LOWdemo/nextjs/lib/scim-demo-management.ts81function getSCIMDemoManagementError(error: unknown): {CODE
LOWdemo/nextjs/lib/scim-demo-management.ts99export function scimDemoManagementErrorResponse(error: unknown): Response {CODE
LOWdemo/nextjs/lib/scim-demo-management.ts139export async function authorizeSCIMDemoManagementRequest(CODE
LOWdemo/nextjs/lib/scim-demo-management.ts166export function assertSCIMDemoOrganizationContext(CODE
LOWdemo/nextjs/lib/scim-demo-management.ts178export function assertSCIMDemoCredentialContext(CODE
LOWdemo/nextjs/lib/scim-demo-management.ts283export function createSCIMDemoCredentialExpiry(expiresInDays = 90): Date {CODE
LOWtest/unit/magic-link-secondary-storage.test.ts14function createStringSecondaryStorage(CODE
LOWtest/unit/magic-link-secondary-storage.test.ts40function createParsedSecondaryStorage(CODE
LOWdocs/app/changelog/page.tsx31function getContributorAvatarLinks(usernames: string[]) {CODE
LOWdocs/app/api/og/route.tsx38function allowBreakAfterUnderscore(text: string) {CODE
LOWdocs/scripts/validate-links.ts75function normalizeTrailingSlashAnchors(content: string) {CODE
LOWdocs/scripts/sync-typesense.ts10export function getTypesenseSyncSkipReason(env: NodeJS.ProcessEnv) {CODE
LOWdocs/scripts/update-docs-version-source.ts17function getDocsVersionSourceUpdate(CODE
LOWdocs/lib/markdown-response.ts10export function createNegotiatedMarkdownResponse(CODE
LOWdocs/lib/api-method.ts379export function generateApiMethodExamples(CODE
LOWpackages/prisma-adapter/src/schema-check.ts58function introspectPrismaDataModel(CODE
LOWpackages/scim/src/scim-metadata.ts9export function defineSCIMEndpointMetadata(CODE
LOWpackages/scim/src/scim-create-uniqueness.test.ts71function createConcurrentCommitAdapter(CODE
LOWpackages/scim/src/scim-create-uniqueness.test.ts107function createConcurrentUpdateAdapter(CODE
LOWpackages/scim/src/user-profile.ts55export function createCanonicalSCIMUserProfile(CODE
LOWpackages/scim/src/user-profile.ts119export function createSCIMEmailValueIndex(CODE
LOWpackages/scim/src/user-profile.ts138export function createSCIMEmailValueToken(email: string): string {CODE
LOWpackages/scim/src/identity.ts62export async function acquireActiveSCIMUserLink(CODE
LOWpackages/scim/src/identity.ts189export function concurrentIdentityMutation(): never {CODE
LOWpackages/scim/src/identity.ts197export function isSCIMIdentityMutationConflict(CODE
LOWpackages/scim/src/identity.ts285export function createSCIMIdentityCoordinator(options: SCIMOptions) {CODE
LOWpackages/scim/src/scim-active-normalization.test.ts587async function readPersistentMutationState(CODE
LOWpackages/scim/src/group-state.ts20export function throwConcurrentSCIMGroupMutation(): never {CODE
484 more matches not shown…
Fake / Example Data209 hits · 208 pts
SeverityFileLineSnippetContext
LOWtest/unit/proxy-agent/index.spec.ts149 email: "user@example.com",CODE
LOWpackages/core/src/social-providers/twitch.test.ts14 email: "user@example.com",CODE
LOWpackages/core/src/social-providers/twitter.test.ts46 data: { data: { confirmed_email: "user@example.com" } },CODE
LOWpackages/core/src/social-providers/twitter.test.ts55 expect(result?.user.email).toBe("user@example.com");CODE
LOWpackages/core/src/social-providers/facebook.test.ts167 idToken: "placeholder",CODE
LOWpackages/core/src/social-providers/facebook.test.ts248 await expect(verifyProviderIdToken(provider, "placeholder")).resolves.toBe(CODE
LOWpackages/core/src/social-providers/facebook.test.ts252 idToken: "placeholder",CODE
LOW…s/core/src/social-providers/microsoft-entra-id.test.ts178 email: "user@example.com",CODE
LOW…s/core/src/social-providers/microsoft-entra-id.test.ts208 email: "user@example.com",CODE
LOW…s/core/src/social-providers/microsoft-entra-id.test.ts231 email: "user@example.com",CODE
LOW…s/core/src/social-providers/microsoft-entra-id.test.ts249 email: "user@example.com",CODE
LOW…s/core/src/social-providers/microsoft-entra-id.test.ts268 email: "user@example.com",CODE
LOW…s/core/src/social-providers/microsoft-entra-id.test.ts294 email: "user@example.com",CODE
LOW…s/core/src/social-providers/microsoft-entra-id.test.ts328 email: "user@example.com",CODE
LOWpackages/core/src/social-providers/google.test.ts35 email: "user@example.com",CODE
LOWpackages/core/src/social-providers/google.test.ts141 expect(result?.user.email).toBe("user@example.com");CODE
LOWpackages/core/src/social-providers/google.test.ts186 expect(result?.user.email).toBe("user@example.com");CODE
LOWpackages/core/src/social-providers/google.test.ts215 expect(result?.user.email).toBe("user@example.com");CODE
LOWpackages/core/src/social-providers/google.test.ts262 email: "user@example.com",CODE
LOWpackages/core/src/social-providers/paybin.test.ts13 email: "user@example.com",CODE
LOWpackages/core/src/social-providers/apple.test.ts30 email: "user@example.com",CODE
LOWpackages/core/src/social-providers/cloudflare.test.ts155 email: "user@example.com",CODE
LOWpackages/core/src/social-providers/cloudflare.test.ts170 email: "user@example.com",CODE
LOW…ges/core/src/social-providers/social-providers.test.ts288 loginHint: "user@example.com",CODE
LOW…ges/core/src/social-providers/social-providers.test.ts290 expect(url.searchParams.get("login_hint")).toBe("user@example.com");CODE
LOWpackages/oauth-provider/src/resource-startup.test.ts125 user: { email: "test@test.com" },CODE
LOW…/oauth-provider/src/oauth-endpoint.integration.test.ts162 token: "placeholder",CODE
LOWpackages/oauth-provider/src/userinfo.test.ts814 body: { email: "test@test.com", password: "test123456" },CODE
LOWpackages/oauth-provider/src/authorize.test.ts187 reorderedParams.append("utm_email", "user@example.com");CODE
LOWpackages/oauth-provider/src/signed-query.test.ts24 reorderedParams.append("utm_email", "user@example.com");CODE
LOW⚡packages/cli/test/create-admin.test.ts74 .get("admin@example.com") as {CODE
LOW⚡packages/cli/test/create-admin.test.ts81 email: "admin@example.com",CODE
LOW⚡packages/cli/test/create-admin.test.ts89 email: "admin@example.com",CODE
LOW⚡packages/cli/test/create-admin.test.ts93 expect(signIn.user.email).toBe("admin@example.com");CODE
LOW⚡packages/cli/test/create-admin.test.ts102 email: "admin@example.com",CODE
LOW⚡packages/cli/test/create-admin.test.ts108 .get("admin@example.com") as { name: string };CODE
LOW⚡packages/cli/test/create-admin.test.ts119 email: "admin@example.com",CODE
LOW⚡packages/cli/test/create-admin.test.ts127 .get("admin@example.com") as { image: string };CODE
LOW⚡packages/cli/test/create-admin.test.ts137 email: "admin@example.com",CODE
LOW⚡packages/cli/test/create-admin.test.ts146 email: "admin@example.com",CODE
LOWpackages/cli/test/create-admin.test.ts161 email: "admin@example.com",CODE
LOWpackages/cli/test/create-admin.test.ts197 email: "admin@example.com",CODE
LOWpackages/cli/test/create-admin.test.ts205 email: "admin@example.com",CODE
LOWpackages/cli/test/create-admin.test.ts217 email: "user@example.com",CODE
LOWpackages/cli/test/create-admin.test.ts226 email: "admin@example.com",CODE
LOWpackages/sso/src/saml.test.ts8034 cert: "placeholder",CODE
LOWpackages/sso/src/saml.test.ts8067 cert: "placeholder",CODE
LOWpackages/sso/src/saml.test.ts8098 cert: "placeholder",CODE
LOWpackages/sso/src/providers.test.ts568 email: "admin@example.com",CODE
LOWpackages/sso/src/providers.test.ts2649 email: "admin@example.com",CODE
LOWpackages/sso/src/providers.test.ts2655 (u) => u.email === "admin@example.com",CODE
LOWpackages/sso/src/providers.test.ts3608 email: "admin@example.com",CODE
LOWpackages/sso/src/providers.test.ts3614 (u) => u.email === "admin@example.com",CODE
LOWpackages/sso/src/providers.test.ts3910 email: "admin@example.com",CODE
LOWpackages/sso/src/providers.test.ts3916 (u) => u.email === "admin@example.com",CODE
LOWpackages/sso/src/providers.test.ts4029 email: "user@example.com",CODE
LOWpackages/sso/src/providers.test.ts4034 { email: "user@example.com", password: "password123" },CODE
LOWpackages/sso/src/oidc.test.ts298 loginHint: "user@example.com",CODE
LOWpackages/sso/src/oidc.test.ts668 token.payload.name = "Jane Doe";CODE
LOWpackages/better-auth/src/social.test.ts1933 email: "test@test.com",CODE
149 more matches not shown…
Decorative Section Separators57 hits · 171 pts
SeverityFileLineSnippetContext
MEDIUMdocs/components/command-menu.tsx33// ─── Context ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/command-menu.tsx50// ─── AI Suggestions ──────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/command-menu.tsx59// ─── Provider ────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/command-menu.tsx117// ─── Dialog ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/command-menu.tsx227// ─── Search Mode ─────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/command-menu.tsx399// ─── AI Mode ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/command-menu.tsx620// ─── AI Text Input ───────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/command-menu.tsx663// ─── AI Message ──────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/command-menu.tsx729// ─── Thinking Indicator ──────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/ai-chat.tsx31// ─── Context ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/ai-chat.tsx49// ─── Root ────────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/ai-chat.tsx104// ─── Trigger ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/ai-chat.tsx127// ─── Panel ───────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/ai-chat.tsx282// ─── Panel Header ────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/ai-chat.tsx307// ─── Panel Messages ──────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/ai-chat.tsx397// ─── Panel Input ─────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/ai-chat.tsx591// ─── Thinking Indicator ──────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/ai-chat.tsx612// ─── Message ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/ai-chat.tsx673// ─── Hot Key ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/mdx-components.tsx19// ─── GenerateSecret ──────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/mdx-components.tsx62// ─── APIMethod ───────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/mdx-components.tsx89// ─── DatabaseTable ───────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/mdx-components.tsx517// ─── Endpoint ────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/mdx-components.tsx552// ─── ForkButton ──────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/mdx-components.tsx585// ─── AddToCursor ─────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/mdx-components.tsx615// ─── DividerText ─────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/mdx-components.tsx629// ─── GenerateAppleJwt ────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/mdx-components.tsx639// ─── Features (placeholder) ─────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/custom-sidebar.tsx14// ─── Item ───────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/custom-sidebar.tsx40// ─── Folder ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/custom-sidebar.tsx95// ─── Separator ──────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/custom-sidebar.tsx111// ─── Search Button (sidebar banner) ─────────────────────────────────────────COMMENT
MEDIUMdocs/components/docs/custom-sidebar.tsx145// ─── Helpers ────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts243// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts245// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts408// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts410// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts471// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts473// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts571// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts573// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts653// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts655// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts762// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts764// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts857// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts859// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts988// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/oauth-provider/src/resources-e2e.test.ts990// ────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/cli/src/commands/ai.ts34// ── Main ──────────────────────────────────────────COMMENT
MEDIUMpackages/cli/src/commands/ai.ts74// ── Client Integration ────────────────────────────COMMENT
MEDIUMpackages/cli/src/commands/ai.ts104// ── Server Selection ──────────────────────────────COMMENT
MEDIUMpackages/cli/src/commands/ai.ts125// ── MCP Server Setup ──────────────────────────────COMMENT
MEDIUMpackages/cli/src/commands/ai.ts367// ── CLI Setup ─────────────────────────────────────COMMENT
MEDIUMpackages/cli/src/commands/ai.ts433// ── Server Setup ──────────────────────────────────COMMENT
MEDIUMpackages/cli/src/commands/ai.ts658// ── Helpers ───────────────────────────────────────COMMENT
MEDIUMpackages/cli/src/commands/ai.ts803// ── Export ─────────────────────────────────────────COMMENT
Verbosity Indicators39 hits · 61 pts
SeverityFileLineSnippetContext
LOWtest/unit/proxy-agent/index.spec.ts106 // Step 1: Initiate OAuth sign inCOMMENT
LOWtest/unit/proxy-agent/index.spec.ts127 // Step 2: Complete OAuth callback - this will trigger requests through the proxyCOMMENT
LOWpackages/oauth-provider/src/private-key-jwt-e2e.test.ts156 // Step 1: RP initiates OAuth flowCOMMENT
LOW⚡packages/oauth-provider/src/private-key-jwt-e2e.test.ts173 // Step 2: Follow the authorize redirect → login pageCOMMENT
LOW⚡packages/oauth-provider/src/private-key-jwt-e2e.test.ts183 // Step 3: Stub window for the login flowCOMMENT
LOW⚡packages/oauth-provider/src/private-key-jwt-e2e.test.ts193 // Step 4: Sign in at the authorization serverCOMMENT
LOWpackages/oauth-provider/src/private-key-jwt-e2e.test.ts204 // Step 5: Follow callback to RP — this triggers the token exchangeCOMMENT
LOW⚡packages/sso/src/saml.test.ts7775 // Step 1: initiate sign-in (constructs SP/IdP from indented keys)COMMENT
LOW⚡packages/sso/src/saml.test.ts7784 // Step 2: get SAML response from mock IdPCOMMENT
LOW⚡packages/sso/src/saml.test.ts7793 // Step 3: post to ACS and verify session is createdCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts984 // Step 1: Start OAuth on previewCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts997 // Step 2: Complete OAuth callback on production - passthrough modeCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1026 // Step 3: Call oauth-proxy-callback on preview instanceCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1037 // Step 4: Verify user was created ONLY in preview DBCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1589 // Step 1: Start OAuth on previewCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1602 // Step 2: Complete OAuth callback on productionCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1636 // Step 3: Preview can decrypt and create userCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1783 // Step 1: Initiate OAuth flowCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1796 // Step 2: Complete OAuth callback to get encrypted profileCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1816 // Step 3: Call oauth-proxy-callback WITHOUT cookies (simulating cross-origin)COMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1959 // Step 1: Start OAuth on previewCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1974 // Step 2: OAuth callback arrives at productionCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts2042 // Step 1: Start OAuth on preview (the non-production environment)COMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts2056 // Step 2: OAuth callback arrives at productionCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts2080 // Step 3: Preview receives the callbackCOMMENT
LOW…rc/plugins/last-login-method/last-login-method.test.ts1583 // Step 1: Sign in to get the cookie set with domain attributeCOMMENT
LOW…rc/plugins/last-login-method/last-login-method.test.ts1603 // Step 2: Simulate clearing the cookie on the client side.COMMENT
LOW…tter-auth/src/api/routes/cookie-cache-fallback.test.ts444 // Step 1: User signs in - gets session_token and session_dataCOMMENT
LOW…tter-auth/src/api/routes/cookie-cache-fallback.test.ts508 // Step 3: Simulate visibilitychange -> useSession() refetchCOMMENT
LOWpackages/stripe/test/subscription.test.ts1970 // Step 1: Create a subscription that was trialing (simulates checkout completedCOMMENT
LOWpackages/stripe/test/subscription.test.ts1985 // Step 2: Simulate customer.subscription.deleted with trial data from StripeCOMMENT
LOWpackages/stripe/test/subscription.test.ts2035 // Step 3: User tries to subscribe again — should NOT get a trialCOMMENT
LOWpackages/stripe/src/index.ts435 // We need to check if the Stripe customer's email matchesCOMMENT
LOWe2e/smoke/test/session-token-refresh.spec.ts94 // Step 1: Initiate Google OAuth sign-inCOMMENT
LOWe2e/smoke/test/session-token-refresh.spec.ts117 // Step 2: Complete OAuth callback — this creates the sessionCOMMENT
LOWe2e/smoke/test/session-token-refresh.spec.ts136 // Step 3: Call getSession to populate cookie cacheCOMMENT
LOW⚡e2e/smoke/test/session-token-refresh.spec.ts148 // Step 4: Advance time past the refreshCache windowCOMMENT
LOW⚡e2e/smoke/test/session-token-refresh.spec.ts154 // Step 5: Call getSession — this should trigger refreshCacheCOMMENT
LOWe2e/smoke/test/session-token-refresh.spec.ts166 // Step 6: Verify session_token cookie has extended max-ageCOMMENT
Hallucination Indicators6 hits · 60 pts
SeverityFileLineSnippetContext
CRITICALpackages/oauth-provider/src/device-code.test.ts273 oauthDevicePlugin.endpoints.deviceCode.options.error.safeParse({CODE
CRITICAL…r-auth/src/plugins/device-authorization/schema.test.ts40 plugin.endpoints.deviceCode.options.error.safeParse({CODE
CRITICALpackages/better-auth/src/plugins/email-otp/routes.ts1069 const email = ctx.context.session.user.email.toLowerCase();CODE
CRITICALpackages/better-auth/src/api/routes/update-user.ts526 ctx.context.options.user.deleteUser.sendDeleteAccountVerification(CODE
CRITICALpackages/electron/test/electron.test.ts670 const authenticateHandler = mockElectron.ipcMain.handle.mock.calls.find(CODE
CRITICALpackages/stripe/test/stripe-organization.test.ts1935 mockStripeCustomerType.customers.search.mock.calls.find(CODE
Structural Annotation Overuse38 hits · 59 pts
SeverityFileLineSnippetContext
LOWtest/unit/proxy-agent/index.spec.ts106 // Step 1: Initiate OAuth sign inCOMMENT
LOWtest/unit/proxy-agent/index.spec.ts127 // Step 2: Complete OAuth callback - this will trigger requests through the proxyCOMMENT
LOWpackages/oauth-provider/src/private-key-jwt-e2e.test.ts156 // Step 1: RP initiates OAuth flowCOMMENT
LOW⚡packages/oauth-provider/src/private-key-jwt-e2e.test.ts173 // Step 2: Follow the authorize redirect → login pageCOMMENT
LOW⚡packages/oauth-provider/src/private-key-jwt-e2e.test.ts183 // Step 3: Stub window for the login flowCOMMENT
LOW⚡packages/oauth-provider/src/private-key-jwt-e2e.test.ts193 // Step 4: Sign in at the authorization serverCOMMENT
LOWpackages/oauth-provider/src/private-key-jwt-e2e.test.ts204 // Step 5: Follow callback to RP — this triggers the token exchangeCOMMENT
LOW⚡packages/sso/src/saml.test.ts7775 // Step 1: initiate sign-in (constructs SP/IdP from indented keys)COMMENT
LOW⚡packages/sso/src/saml.test.ts7784 // Step 2: get SAML response from mock IdPCOMMENT
LOW⚡packages/sso/src/saml.test.ts7793 // Step 3: post to ACS and verify session is createdCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts984 // Step 1: Start OAuth on previewCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts997 // Step 2: Complete OAuth callback on production - passthrough modeCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1026 // Step 3: Call oauth-proxy-callback on preview instanceCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1037 // Step 4: Verify user was created ONLY in preview DBCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1589 // Step 1: Start OAuth on previewCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1602 // Step 2: Complete OAuth callback on productionCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1636 // Step 3: Preview can decrypt and create userCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1783 // Step 1: Initiate OAuth flowCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1796 // Step 2: Complete OAuth callback to get encrypted profileCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1816 // Step 3: Call oauth-proxy-callback WITHOUT cookies (simulating cross-origin)COMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1959 // Step 1: Start OAuth on previewCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts1974 // Step 2: OAuth callback arrives at productionCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts2042 // Step 1: Start OAuth on preview (the non-production environment)COMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts2056 // Step 2: OAuth callback arrives at productionCOMMENT
LOW…etter-auth/src/plugins/oauth-proxy/oauth-proxy.test.ts2080 // Step 3: Preview receives the callbackCOMMENT
LOW…rc/plugins/last-login-method/last-login-method.test.ts1583 // Step 1: Sign in to get the cookie set with domain attributeCOMMENT
LOW…rc/plugins/last-login-method/last-login-method.test.ts1603 // Step 2: Simulate clearing the cookie on the client side.COMMENT
LOW…tter-auth/src/api/routes/cookie-cache-fallback.test.ts444 // Step 1: User signs in - gets session_token and session_dataCOMMENT
LOW…tter-auth/src/api/routes/cookie-cache-fallback.test.ts508 // Step 3: Simulate visibilitychange -> useSession() refetchCOMMENT
LOWpackages/stripe/test/subscription.test.ts1970 // Step 1: Create a subscription that was trialing (simulates checkout completedCOMMENT
LOWpackages/stripe/test/subscription.test.ts1985 // Step 2: Simulate customer.subscription.deleted with trial data from StripeCOMMENT
LOWpackages/stripe/test/subscription.test.ts2035 // Step 3: User tries to subscribe again — should NOT get a trialCOMMENT
LOWe2e/smoke/test/session-token-refresh.spec.ts94 // Step 1: Initiate Google OAuth sign-inCOMMENT
LOWe2e/smoke/test/session-token-refresh.spec.ts117 // Step 2: Complete OAuth callback — this creates the sessionCOMMENT
LOWe2e/smoke/test/session-token-refresh.spec.ts136 // Step 3: Call getSession to populate cookie cacheCOMMENT
LOW⚡e2e/smoke/test/session-token-refresh.spec.ts148 // Step 4: Advance time past the refreshCache windowCOMMENT
LOW⚡e2e/smoke/test/session-token-refresh.spec.ts154 // Step 5: Call getSession — this should trigger refreshCacheCOMMENT
LOWe2e/smoke/test/session-token-refresh.spec.ts166 // Step 6: Verify session_token cookie has extended max-ageCOMMENT
Over-Commented Block14 hits · 14 pts
SeverityFileLineSnippetContext
LOWdocs/components/icons/sections.tsx121 // <svgCOMMENT
LOWpackages/prisma-adapter/src/prisma-adapter.ts741 }COMMENT
LOWpackages/test-utils/src/adapter/suites/basic.ts3401 expect(result!.name).toBe("null-where-updated");COMMENT
LOWpackages/redis-storage/src/redis-storage.ts61 error instanceof Error &&COMMENT
LOWpackages/core/src/db/adapter/get-default-model-name.ts21 */COMMENT
LOWpackages/oauth-provider/src/oauth.ts541COMMENT
LOWpackages/oauth-provider/src/resources.ts401 // not a gate.COMMENT
LOWpackages/oauth-provider/src/resources.ts441 refreshTokenTtl === nullCOMMENT
LOWpackages/oauth-provider/src/introspect.ts181 throw error;COMMENT
LOWpackages/drizzle-adapter/src/drizzle-adapter.ts1201 // Pin the update to one selected id so a non-unique guard mutates atCOMMENT
LOWpackages/better-auth/src/plugins/jwt/sign.ts141 // that alg. If the requested alg isn't found, lazy-mint it on demandCOMMENT
LOWpackages/better-auth/src/plugins/jwt/sign.ts181 }COMMENT
LOW.github/zizmor.yml1# Policy: fix shell-injection, cache, and credential-persistence findings.COMMENT
LOW.github/zizmor.yml21 - backport.ymlCOMMENT