sverklo audit
D
Overall Health
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.
- TypeBuilder —
packages/ts-builders/src/TypeBuilder.ts:5 - parseDefaultExport —
packages/config/src/PrismaConfig.ts:355 - Migrate —
packages/migrate/src/Migrate.ts:30 - asDecimal —
packages/client-engine-runtime/src/utils.ts:79 - asBuffer —
packages/client-engine-runtime/src/utils.ts:89 - asDate —
packages/client-engine-runtime/src/utils.ts:101 - asBigInt —
packages/client-engine-runtime/src/utils.ts:111 - noop —
packages/client/src/runtime/core/errorRendering/base.ts:14 - DbDrop —
packages/migrate/src/commands/DbDrop.ts:25 - DbExecute —
packages/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)
- 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
- 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
- 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
- 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
- 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
- packages/client/src/runtime/core/errorRendering/ObjectValue.ts -> packages/client/src/runtime/core/errorRendering/Value.ts -> packages/client/src/runtime/core/errorRendering/ObjectValue.ts
- packages/client/src/runtime/core/extensions/$extends.ts -> packages/client/src/runtime/getPrismaClient.ts -> packages/client/src/runtime/core/extensions/$extends.ts
- 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
- 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
- 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
- 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
- packages/client/src/runtime/core/errorRendering/throwValidationException.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/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 -> 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
- packages/client/src/runtime/core/errorRendering/applyUnionError.ts -> packages/client/src/runtime/core/errorRendering/applyValidationError.ts -> packages/client/src/runtime/core/errorRendering/applyUnionError.ts
- 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
- 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
- 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
- packages/client/src/runtime/RequestHandler.ts -> packages/client/src/runtime/core/extensions/applyQueryExtensions.ts -> packages/client/src/runtime/RequestHandler.ts
- 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
- 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
- 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
- packages/client/src/runtime/core/raw-query/rawQueryArgsMapper.ts -> packages/client/src/runtime/getPrismaClient.ts -> packages/client/src/runtime/core/raw-query/rawQueryArgsMapper.ts
- packages/ts-builders/src/KeyType.ts -> packages/ts-builders/src/TypeBuilder.ts -> packages/ts-builders/src/KeyType.ts
- packages/config/src/PrismaConfig.ts -> packages/config/src/defineConfig.ts -> packages/config/src/defaultConfig.ts -> packages/config/src/PrismaConfig.ts
- packages/adapter-libsql/src/conversion.ts -> packages/adapter-libsql/src/libsql.ts -> packages/adapter-libsql/src/conversion.ts
- packages/driver-adapter-utils/src/result.ts -> packages/driver-adapter-utils/src/types.ts -> packages/driver-adapter-utils/src/result.ts
- packages/client-generator-js/src/TSClient/TSClient.ts -> packages/client-generator-js/src/generateClient.ts -> packages/client-generator-js/src/TSClient/TSClient.ts
- packages/client-generator-js/src/generateClient.ts -> packages/client-generator-js/src/typedSql/typedSql.ts -> packages/client-generator-js/src/generateClient.ts
- packages/client-generator-js/src/generateClient.ts -> packages/client-generator-js/src/utils/addPreamble.ts -> packages/client-generator-js/src/generateClient.ts
- packages/client-generator-js/src/TSClient/TSClient.ts -> packages/client-generator-js/src/utils/buildDMMF.ts -> packages/client-generator-js/src/TSClient/TSClient.ts
- packages/client-generator-js/src/TSClient/TSClient.ts -> packages/client-generator-js/src/utils/buildGetQueryCompilerWasmModule.ts -> packages/client-generator-js/src/TSClient/TSClient.ts
- packages/client-generator-js/src/TSClient/PrismaClient.ts -> packages/client-generator-js/src/TSClient/TSClient.ts -> packages/client-generator-js/src/TSClient/PrismaClient.ts
- packages/adapter-planetscale/src/errors.ts -> packages/adapter-planetscale/src/planetscale.ts -> packages/adapter-planetscale/src/errors.ts
- packages/adapter-better-sqlite3/src/better-sqlite3.ts -> packages/adapter-better-sqlite3/src/conversion.ts -> packages/adapter-better-sqlite3/src/better-sqlite3.ts
- packages/client-runtime-utils/src/errors/PrismaClientRustError.ts -> packages/client-runtime-utils/src/errors/log.ts -> packages/client-runtime-utils/src/errors/PrismaClientRustError.ts
- packages/client-generator-ts/src/TSClient/TSClient.ts -> packages/client-generator-ts/src/generateClient.ts -> packages/client-generator-ts/src/TSClient/TSClient.ts
- 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
- 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
- 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
- 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
- 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
- packages/client-generator-ts/src/generateClient.ts -> packages/client-generator-ts/src/typedSql/typedSql.ts -> packages/client-generator-ts/src/generateClient.ts
- packages/client-generator-ts/src/generateClient.ts -> packages/client-generator-ts/src/utils/addPreamble.ts -> packages/client-generator-ts/src/generateClient.ts
- packages/ts-builders/src/AnyDeclarationBuilder.ts -> packages/ts-builders/src/NamespaceDeclaration.ts -> packages/ts-builders/src/AnyDeclarationBuilder.ts
- 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 secret —
packages/adapter-mariadb/src/credentials.test.ts:7 const secretPassword = 'supersecretpassword_12345'- Hardcoded secret —
packages/client/src/runtime/core/compositeProxy/removeProperties.test.ts:5 const target = { someProp: 1, secret: 'Do not tell anybody' }- API token —
scripts/only-allow-pnpm.js:6 if (!process.env.npmconfiguser_agent) {- API token —
scripts/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.log —
sandbox/driver-adapters/src/test.ts:13 console.log('[nodejs] connecting...')- Excessive console.log —
sandbox/driver-adapters/src/test.ts:15 console.log('[nodejs] connected')- Excessive console.log —
sandbox/driver-adapters/src/test.ts:28 console.log('[nodejs] disconnecting...')- Excessive console.log —
sandbox/driver-adapters/src/test.ts:30 console.log('[nodejs] disconnected')- Excessive console.log —
sandbox/driver-adapters/src/test.ts:32 console.log('[nodejs] re-connecting...')- Excessive console.log —
sandbox/driver-adapters/src/test.ts:34 console.log('[nodejs] re-connecting')- Excessive console.log —
sandbox/driver-adapters/src/test.ts:38 console.log('[nodejs] re-disconnecting...')- Excessive console.log —
sandbox/driver-adapters/src/test.ts:40 console.log('[nodejs] re-disconnected')- Excessive console.log —
sandbox/driver-adapters/src/test.ts:61 console.log('[nodejs] created', superjson.serialize(created).json)- Excessive console.log —
sandbox/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_impactto see the 547 call sites packages/client/tests/functional/_utils/providers.tsis your most-imported file — changes here cascade widely- 15+ potential orphans detected — audit for dead code