D
Overall Health

prisma/prisma


https://github.com/prisma/prisma
2026-04-19 00:12:28
C
Dead code
24% orphan symbols (485/2059)
F
Circular deps
46 cycles detected
D
Coupling
max fan-in: 45 (helpers/compile/build.ts)
F
Security
52 concerns found

Overview

  • 2840 files indexed
  • 6823 code symbols extracted
  • 42334 symbol references tracked
  • 0 active memories (0 core, 0 stale)
  • Languages: typescript (2725), javascript (115)

God Nodes (most-referenced symbols)

These are the symbols your codebase depends on most. Changes here have the largest blast radius.

  • create — 547 references
  • query — 484 references
  • defineConfig — 413 references
  • parse — 402 references
  • stringify — 338 references
  • write — 281 references
  • namedType — 265 references
  • idForProvider — 256 references
  • PrismaClient — 249 references
  • setupTestSuite — 224 references

Hub Files (highest PageRank)

Core architectural files — imported by many others.

  • packages/client/tests/functional/_utils/providers.ts (1.00)
  • packages/client/tests/functional/_utils/defineMatrix.ts (0.65)
  • packages/client/tests/functional/_utils/getTestSuiteInfo.ts (0.30)
  • packages/client/tests/functional/_utils/types.ts (0.28)
  • packages/client/tests/functional/_utils/idForProvider.ts (0.20)
  • packages/client/tests/e2e/_utils/executeSteps.ts (0.17)
  • packages/client/tests/functional/_utils/setupTestSuiteEnv.ts (0.17)
  • packages/client/tests/functional/_utils/setupTestSuiteMatrix.ts (0.14)
  • packages/client/src/utils/getTestClient.ts (0.12)
  • packages/ts-builders/src/Writer.ts (0.11)

Orphans (potential dead code)

Named classs with zero detected references. Could be dead code, public API exports, or referenced dynamically.

  • TypeBuilderpackages/ts-builders/src/TypeBuilder.ts:5
  • parseDefaultExportpackages/config/src/PrismaConfig.ts:355
  • Migratepackages/migrate/src/Migrate.ts:30
  • asDecimalpackages/client-engine-runtime/src/utils.ts:79
  • asBufferpackages/client-engine-runtime/src/utils.ts:89
  • asDatepackages/client-engine-runtime/src/utils.ts:101
  • asBigIntpackages/client-engine-runtime/src/utils.ts:111
  • nooppackages/client/src/runtime/core/errorRendering/base.ts:14
  • DbDroppackages/migrate/src/commands/DbDrop.ts:25
  • DbExecutepackages/migrate/src/commands/DbExecute.ts:41

Coupling (high-PageRank files)

  • packages/client/tests/functional/_utils/providers.ts (1.00)
  • packages/client/tests/functional/_utils/defineMatrix.ts (0.65)
  • packages/client/tests/functional/_utils/getTestSuiteInfo.ts (0.30)
  • packages/client/tests/functional/_utils/types.ts (0.28)
  • packages/client/tests/functional/_utils/idForProvider.ts (0.20)

Circular Dependencies (46 cycles)

  1. packages/client/src/runtime/core/errorRendering/ArgumentsRenderingTree.ts -> packages/client/src/runtime/getPrismaClient.ts -> packages/client/src/runtime/core/errorRendering/prettyPrintArguments.ts -> packages/client/src/runtime/core/errorRendering/ArgumentsRenderingTree.ts
  2. packages/client/src/runtime/core/errorRendering/ArrayField.ts -> packages/client/src/runtime/core/errorRendering/Field.ts -> packages/client/src/runtime/core/errorRendering/Value.ts -> packages/client/src/runtime/core/errorRendering/ObjectValue.ts -> packages/client/src/runtime/core/errorRendering/ArrayValue.ts -> packages/client/src/runtime/core/errorRendering/ArrayField.ts
  3. packages/client/src/runtime/core/errorRendering/Field.ts -> packages/client/src/runtime/core/errorRendering/Value.ts -> packages/client/src/runtime/core/errorRendering/ObjectValue.ts -> packages/client/src/runtime/core/errorRendering/Field.ts
  4. packages/client/src/runtime/core/errorRendering/Field.ts -> packages/client/src/runtime/core/errorRendering/Value.ts -> packages/client/src/runtime/core/errorRendering/ObjectValue.ts -> packages/client/src/runtime/core/errorRendering/ObjectField.ts -> packages/client/src/runtime/core/errorRendering/Field.ts
  5. packages/client/src/runtime/core/errorRendering/ObjectField.ts -> packages/client/src/runtime/core/errorRendering/Value.ts -> packages/client/src/runtime/core/errorRendering/ObjectValue.ts -> packages/client/src/runtime/core/errorRendering/ObjectField.ts
  6. packages/client/src/runtime/core/errorRendering/ObjectValue.ts -> packages/client/src/runtime/core/errorRendering/Value.ts -> packages/client/src/runtime/core/errorRendering/ObjectValue.ts
  7. packages/client/src/runtime/core/extensions/$extends.ts -> packages/client/src/runtime/getPrismaClient.ts -> packages/client/src/runtime/core/extensions/$extends.ts
  8. packages/client/src/runtime/core/extensions/$extends.ts -> packages/client/src/runtime/core/model/applyModelsAndClientExtensions.ts -> packages/client/src/runtime/core/model/applyModel.ts -> packages/client/src/runtime/getPrismaClient.ts -> packages/client/src/runtime/core/extensions/$extends.ts
  9. packages/client/src/runtime/core/extensions/$extends.ts -> packages/client/src/runtime/core/model/applyModelsAndClientExtensions.ts -> packages/client/src/runtime/core/model/applyModel.ts -> packages/client/src/runtime/utils/CallSite.ts -> packages/client/src/runtime/getPrismaClient.ts -> packages/client/src/runtime/core/extensions/$extends.ts
  10. packages/client/src/runtime/core/extensions/applyAllResultExtensions.ts -> packages/client/src/runtime/core/jsonProtocol/serializeJsonQuery.ts -> packages/client/src/runtime/getPrismaClient.ts -> packages/client/src/runtime/core/extensions/applyAllResultExtensions.ts
  11. packages/client/src/runtime/core/errorRendering/throwValidationException.ts -> packages/client/src/runtime/getPrismaClient.ts -> packages/client/src/runtime/core/extensions/applyAllResultExtensions.ts -> packages/client/src/runtime/core/jsonProtocol/serializeJsonQuery.ts -> packages/client/src/runtime/core/errorRendering/throwValidationException.ts
  12. packages/client/src/runtime/core/errorRendering/throwValidationException.ts -> packages/client/src/runtime/core/jsonProtocol/serializeJsonQuery.ts -> packages/client/src/runtime/core/errorRendering/throwValidationException.ts
  13. packages/client/src/runtime/core/errorRendering/applyValidationError.ts -> packages/client/src/runtime/core/jsonProtocol/serializeJsonQuery.ts -> packages/client/src/runtime/core/errorRendering/throwValidationException.ts -> packages/client/src/runtime/core/errorRendering/applyValidationError.ts
  14. packages/client/src/runtime/core/errorRendering/applyUnionError.ts -> packages/client/src/runtime/core/jsonProtocol/serializeJsonQuery.ts -> packages/client/src/runtime/core/errorRendering/throwValidationException.ts -> packages/client/src/runtime/core/errorRendering/applyValidationError.ts -> packages/client/src/runtime/core/errorRendering/applyUnionError.ts
  15. packages/client/src/runtime/core/errorRendering/applyUnionError.ts -> packages/client/src/runtime/core/errorRendering/applyValidationError.ts -> packages/client/src/runtime/core/errorRendering/applyUnionError.ts
  16. packages/client/src/runtime/core/types/exported/Public.ts -> packages/client/src/runtime/core/types/exported/Result.ts -> packages/client/src/runtime/core/types/exported/Utils.ts -> packages/client/src/runtime/core/types/exported/Public.ts
  17. packages/client/src/runtime/core/types/exported/Public.ts -> packages/client/src/runtime/core/types/exported/Utils.ts -> packages/client/src/runtime/core/types/exported/Public.ts
  18. packages/client/src/runtime/RequestHandler.ts -> packages/client/src/runtime/core/extensions/applyQueryExtensions.ts -> packages/client/src/runtime/getPrismaClient.ts -> packages/client/src/runtime/core/extensions/applyAllResultExtensions.ts -> packages/client/src/runtime/core/jsonProtocol/serializeJsonQuery.ts -> packages/client/src/runtime/core/extensions/MergedExtensionsList.ts -> packages/client/src/runtime/core/types/internal/ExtensionsInternalArgs.ts -> packages/client/src/runtime/RequestHandler.ts
  19. packages/client/src/runtime/RequestHandler.ts -> packages/client/src/runtime/core/extensions/applyQueryExtensions.ts -> packages/client/src/runtime/RequestHandler.ts
  20. packages/client/src/runtime/RequestHandler.ts -> packages/client/src/runtime/core/extensions/applyQueryExtensions.ts -> packages/client/src/runtime/core/types/internal/ExtensionsInternalArgs.ts -> packages/client/src/runtime/RequestHandler.ts
  21. packages/client/src/runtime/RequestHandler.ts -> packages/client/src/runtime/core/extensions/MergedExtensionsList.ts -> packages/client/src/runtime/core/types/internal/ExtensionsInternalArgs.ts -> packages/client/src/runtime/RequestHandler.ts
  22. packages/client/src/runtime/RequestHandler.ts -> packages/client/src/runtime/core/jsonProtocol/serializeJsonQuery.ts -> packages/client/src/runtime/core/extensions/MergedExtensionsList.ts -> packages/client/src/runtime/core/types/internal/ExtensionsInternalArgs.ts -> packages/client/src/runtime/RequestHandler.ts
  23. packages/client/src/runtime/core/raw-query/rawQueryArgsMapper.ts -> packages/client/src/runtime/getPrismaClient.ts -> packages/client/src/runtime/core/raw-query/rawQueryArgsMapper.ts
  24. packages/ts-builders/src/KeyType.ts -> packages/ts-builders/src/TypeBuilder.ts -> packages/ts-builders/src/KeyType.ts
  25. packages/config/src/PrismaConfig.ts -> packages/config/src/defineConfig.ts -> packages/config/src/defaultConfig.ts -> packages/config/src/PrismaConfig.ts
  26. packages/adapter-libsql/src/conversion.ts -> packages/adapter-libsql/src/libsql.ts -> packages/adapter-libsql/src/conversion.ts
  27. packages/driver-adapter-utils/src/result.ts -> packages/driver-adapter-utils/src/types.ts -> packages/driver-adapter-utils/src/result.ts
  28. packages/client-generator-js/src/TSClient/TSClient.ts -> packages/client-generator-js/src/generateClient.ts -> packages/client-generator-js/src/TSClient/TSClient.ts
  29. packages/client-generator-js/src/generateClient.ts -> packages/client-generator-js/src/typedSql/typedSql.ts -> packages/client-generator-js/src/generateClient.ts
  30. packages/client-generator-js/src/generateClient.ts -> packages/client-generator-js/src/utils/addPreamble.ts -> packages/client-generator-js/src/generateClient.ts
  31. packages/client-generator-js/src/TSClient/TSClient.ts -> packages/client-generator-js/src/utils/buildDMMF.ts -> packages/client-generator-js/src/TSClient/TSClient.ts
  32. packages/client-generator-js/src/TSClient/TSClient.ts -> packages/client-generator-js/src/utils/buildGetQueryCompilerWasmModule.ts -> packages/client-generator-js/src/TSClient/TSClient.ts
  33. packages/client-generator-js/src/TSClient/PrismaClient.ts -> packages/client-generator-js/src/TSClient/TSClient.ts -> packages/client-generator-js/src/TSClient/PrismaClient.ts
  34. packages/adapter-planetscale/src/errors.ts -> packages/adapter-planetscale/src/planetscale.ts -> packages/adapter-planetscale/src/errors.ts
  35. packages/adapter-better-sqlite3/src/better-sqlite3.ts -> packages/adapter-better-sqlite3/src/conversion.ts -> packages/adapter-better-sqlite3/src/better-sqlite3.ts
  36. packages/client-runtime-utils/src/errors/PrismaClientRustError.ts -> packages/client-runtime-utils/src/errors/log.ts -> packages/client-runtime-utils/src/errors/PrismaClientRustError.ts
  37. packages/client-generator-ts/src/TSClient/TSClient.ts -> packages/client-generator-ts/src/generateClient.ts -> packages/client-generator-ts/src/TSClient/TSClient.ts
  38. packages/client-generator-ts/src/TSClient/TSClient.ts -> packages/client-generator-ts/src/TSClient/file-generators/BrowserFile.ts -> packages/client-generator-ts/src/TSClient/TSClient.ts
  39. packages/client-generator-ts/src/TSClient/TSClient.ts -> packages/client-generator-ts/src/TSClient/file-generators/ClassFile.ts -> packages/client-generator-ts/src/utils/buildDMMF.ts -> packages/client-generator-ts/src/TSClient/TSClient.ts
  40. packages/client-generator-ts/src/TSClient/PrismaClient.ts -> packages/client-generator-ts/src/TSClient/TSClient.ts -> packages/client-generator-ts/src/TSClient/file-generators/ClassFile.ts -> packages/client-generator-ts/src/TSClient/PrismaClient.ts
  41. packages/client-generator-ts/src/TSClient/TSClient.ts -> packages/client-generator-ts/src/TSClient/file-generators/ClassFile.ts -> packages/client-generator-ts/src/TSClient/TSClient.ts
  42. packages/client-generator-ts/src/TSClient/TSClient.ts -> packages/client-generator-ts/src/TSClient/file-generators/ClientFile.ts -> packages/client-generator-ts/src/TSClient/TSClient.ts
  43. packages/client-generator-ts/src/generateClient.ts -> packages/client-generator-ts/src/typedSql/typedSql.ts -> packages/client-generator-ts/src/generateClient.ts
  44. packages/client-generator-ts/src/generateClient.ts -> packages/client-generator-ts/src/utils/addPreamble.ts -> packages/client-generator-ts/src/generateClient.ts
  45. packages/ts-builders/src/AnyDeclarationBuilder.ts -> packages/ts-builders/src/NamespaceDeclaration.ts -> packages/ts-builders/src/AnyDeclarationBuilder.ts
  46. packages/ts-builders/src/AnyDeclarationBuilder.ts -> packages/ts-builders/src/NamespaceDeclaration.ts -> packages/ts-builders/src/Export.ts -> packages/ts-builders/src/AnyDeclarationBuilder.ts

Security Issues (52 found)

Critical (4)

  • Hardcoded secretpackages/adapter-mariadb/src/credentials.test.ts:7
  • const secretPassword = 'supersecretpassword_12345'
  • Hardcoded secretpackages/client/src/runtime/core/compositeProxy/removeProperties.test.ts:5
  • const target = { someProp: 1, secret: 'Do not tell anybody' }
  • API tokenscripts/only-allow-pnpm.js:6
  • if (!process.env.npmconfiguser_agent) {
  • API tokenscripts/only-allow-pnpm.js:9
  • return pmFromUserAgent(process.env.npmconfiguser_agent)

High (5)

  • SQL injection (template literal)packages/adapter-planetscale/src/planetscale.ts:222
  • await conn.execute(SET TRANSACTION ISOLATION LEVEL ${isolationLevel}).catch((error) => onError(error))
  • SQL injection (template literal)packages/migrate/src/utils/setupPostgres.ts:22
  • await dbDefault.query(DROP DATABASE IF EXISTS "${credentials.database}-shadowdb";)
  • SQL injection (template literal)packages/migrate/src/utils/setupPostgres.ts:23
  • await dbDefault.query(CREATE DATABASE "${credentials.database}-shadowdb";)
  • SQL injection (template literal)packages/migrate/src/utils/setupPostgres.ts:24
  • await dbDefault.query(DROP DATABASE IF EXISTS "${credentials.database}";)
  • SQL injection (template literal)packages/migrate/src/utils/setupPostgres.ts:25
  • await dbDefault.query(CREATE DATABASE "${credentials.database}";)

Low (43)

  • Excessive console.logsandbox/driver-adapters/src/test.ts:13
  • console.log('[nodejs] connecting...')
  • Excessive console.logsandbox/driver-adapters/src/test.ts:15
  • console.log('[nodejs] connected')
  • Excessive console.logsandbox/driver-adapters/src/test.ts:28
  • console.log('[nodejs] disconnecting...')
  • Excessive console.logsandbox/driver-adapters/src/test.ts:30
  • console.log('[nodejs] disconnected')
  • Excessive console.logsandbox/driver-adapters/src/test.ts:32
  • console.log('[nodejs] re-connecting...')
  • Excessive console.logsandbox/driver-adapters/src/test.ts:34
  • console.log('[nodejs] re-connecting')
  • Excessive console.logsandbox/driver-adapters/src/test.ts:38
  • console.log('[nodejs] re-disconnecting...')
  • Excessive console.logsandbox/driver-adapters/src/test.ts:40
  • console.log('[nodejs] re-disconnected')
  • Excessive console.logsandbox/driver-adapters/src/test.ts:61
  • console.log('[nodejs] created', superjson.serialize(created).json)
  • Excessive console.logsandbox/driver-adapters/src/test.ts:64
  • console.log('[nodejs] resultSet', superjson.serialize(resultSet).json)
  • ...and 33 more

Suggested Next Steps

  • Before refactoring create, run sverklo_impact to see the 547 call sites
  • packages/client/tests/functional/_utils/providers.ts is your most-imported file — changes here cascade widely
  • 15+ potential orphans detected — audit for dead code