AI Slop Code RIsk Monitor

parse-community/parse-server

Parse Server for Node.js / Express

5.2 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for parse-community/parse-server, a JavaScript project with 21,400 GitHub stars. SynthScan examined 190,572 lines of code across 454 source files, recording 223 pattern matches distributed across 7 syntactic categories. The legacy adjusted pattern signal is 5.2 (Moderate 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.

5.2
Adjusted Signal
5.2
Raw Pattern Score
100%
Time Factor
2026-10-10
Last Push
21.4K
Stars
JavaScript
Language
190.6K
Lines of Code
454
Files
223
Pattern Hits
2026-10-12
Scan Date
0.21
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 1.9/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 21.3/100 · LOW

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

Agent Over-Engineering Ratio 1.2/100 · LOW

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

PR Review Velocity Impact 22.6/100 · LOW

Which changes need focused human review? 223 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 71HIGH 23MEDIUM 1LOW 128

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 223 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.

Hallucination Indicators71 hits · 688 pts
SeverityFileLineSnippetContext
CRITICALspec/ParseGraphQLServer.spec.js5179 result.data.createClass.class.schemaFields = result.data.createClass.class.schemaFields.sort(CODE
CRITICALspec/ParseGraphQLServer.spec.js5182 result.data.updateClass.class.schemaFields = result.data.updateClass.class.schemaFields.sort(CODE
CRITICALspec/ParseGraphQLServer.spec.js5517 result.data.createClass.class.schemaFields = result.data.createClass.class.schemaFields.sort(CODE
CRITICALspec/ParseGraphQLServer.spec.js5520 result.data.deleteClass.class.schemaFields = result.data.deleteClass.class.schemaFields.sort(CODE
CRITICALspec/ParseGraphQLServer.spec.js6240 if (call.object.s.namespace.collection.indexOf('GraphQLClass') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js6243 } else if (call.object.s.namespace.collection.indexOf('_User') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js6286 if (call.object.s.namespace.collection.indexOf('GraphQLClass') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js6289 } else if (call.object.s.namespace.collection.indexOf('_User') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js6332 if (call.object.s.namespace.collection.indexOf('GraphQLClass') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js6335 } else if (call.object.s.namespace.collection.indexOf('_User') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js7220 if (call.object.s.namespace.collection.indexOf('GraphQLClass') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js7223 } else if (call.object.s.namespace.collection.indexOf('_User') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js7264 if (call.object.s.namespace.collection.indexOf('GraphQLClass') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js7267 } else if (call.object.s.namespace.collection.indexOf('_User') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js7310 if (call.object.s.namespace.collection.indexOf('GraphQLClass') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js7313 } else if (call.object.s.namespace.collection.indexOf('_User') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js7367 if (call.object.s.namespace.collection.indexOf('GraphQLClass') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js7370 } else if (call.object.s.namespace.collection.indexOf('_User') >= 0) {CODE
CRITICALspec/ParseGraphQLServer.spec.js7466 result.data.parentClass.graphQLClasses.edges.map(edge => edge.node.objectId)CODE
CRITICALspec/Auth.spec.js37 const firstSet = config.cacheController.role.set.calls.first();CODE
CRITICALspec/Auth.spec.js40 const firstGet = config.cacheController.role.get.calls.first();CODE
CRITICALspec/Auth.spec.js59 expect(config.cacheController.role.get.calls.count()).toEqual(1);CODE
CRITICALspec/Auth.spec.js62 const firstGet = config.cacheController.role.get.calls.first();CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js727 if (call.object.s.namespace.collection.indexOf('MyObject0') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js730 if (call.object.s.namespace.collection.indexOf('MyObject1') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js733 if (call.object.s.namespace.collection.indexOf('MyObject2') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js778 if (call.object.s.namespace.collection.indexOf('MyObject0') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js781 if (call.object.s.namespace.collection.indexOf('MyObject1') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js784 if (call.object.s.namespace.collection.indexOf('MyObject2') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js831 if (call.object.s.namespace.collection.indexOf('MyObject0') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js834 if (call.object.s.namespace.collection.indexOf('MyObject1') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js837 if (call.object.s.namespace.collection.indexOf('MyObject2') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js885 if (call.object.s.namespace.collection.indexOf('MyObject0') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js888 if (call.object.s.namespace.collection.indexOf('MyObject1') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js891 if (call.object.s.namespace.collection.indexOf('MyObject2') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js936 if (call.object.s.namespace.collection.indexOf('MyObject0') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js939 if (call.object.s.namespace.collection.indexOf('MyObject1') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js942 if (call.object.s.namespace.collection.indexOf('MyObject2') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js988 if (call.object.s.namespace.collection.indexOf('MyObject0') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js991 if (call.object.s.namespace.collection.indexOf('MyObject1') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js994 if (call.object.s.namespace.collection.indexOf('MyObject2') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js1040 if (call.object.s.namespace.collection.indexOf('MyObject0') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js1043 if (call.object.s.namespace.collection.indexOf('MyObject1') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js1046 if (call.object.s.namespace.collection.indexOf('MyObject2') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js1093 if (call.object.s.namespace.collection.indexOf('MyObject0') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js1096 if (call.object.s.namespace.collection.indexOf('MyObject1') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js1099 if (call.object.s.namespace.collection.indexOf('MyObject2') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js1161 if (call.object.s.namespace.collection.indexOf('MyObject0') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js1164 if (call.object.s.namespace.collection.indexOf('MyObject1') >= 0) {CODE
CRITICAL⚡spec/ReadPreferenceOption.spec.js1167 if (call.object.s.namespace.collection.indexOf('MyObject2') >= 0) {CODE
CRITICALspec/ReadPreferenceOption.spec.js32 if (call.object.s.namespace.collection.indexOf('MyObject') >= 0) {CODE
CRITICALspec/ReadPreferenceOption.spec.js75 if (call.object.s.namespace.collection.indexOf('MyObject') >= 0) {CODE
CRITICALspec/ReadPreferenceOption.spec.js107 if (call.object.s.namespace.collection.indexOf('MyObject') >= 0) {CODE
CRITICALspec/ReadPreferenceOption.spec.js139 if (call.object.s.namespace.collection.indexOf('MyObject') >= 0) {CODE
CRITICALspec/ReadPreferenceOption.spec.js171 if (call.object.s.namespace.collection.indexOf('MyObject') >= 0) {CODE
CRITICALspec/ReadPreferenceOption.spec.js207 if (call.object.s.namespace.collection.indexOf('MyObject') >= 0) {CODE
CRITICALspec/ReadPreferenceOption.spec.js242 if (call.object.s.namespace.collection.indexOf('MyObject') >= 0) {CODE
CRITICALspec/ReadPreferenceOption.spec.js273 if (call.object.s.namespace.collection.indexOf('MyObject') >= 0) {CODE
CRITICALspec/ReadPreferenceOption.spec.js304 if (call.object.s.namespace.collection.indexOf('MyObject') >= 0) {CODE
CRITICALspec/ReadPreferenceOption.spec.js335 if (call.object.s.namespace.collection.indexOf('MyObject') >= 0) {CODE
11 more matches not shown…
Cross-Language Confusion (JS/TS)23 hits · 160 pts
SeverityFileLineSnippetContext
HIGH⚡benchmark/compare.js181 print('⚠️ Benchmark results are empty or invalid');CODE
HIGH⚡benchmark/compare.js184 print('# Performance Benchmark Results');CODE
HIGH⚡benchmark/compare.js185 print('');CODE
HIGH⚡benchmark/compare.js186 print('> ℹ️ Baseline not available - this appears to be a new feature');CODE
HIGH⚡benchmark/compare.js187 print('');CODE
HIGH⚡benchmark/compare.js188 print('| Benchmark | Value | Details |');CODE
HIGH⚡benchmark/compare.js189 print('|-----------|-------|---------|');CODE
HIGH⚡benchmark/compare.js191 print(`| ${result.name} | ${result.value.toFixed(2)} ms | ${result.extra} |`);CODE
HIGH⚡benchmark/compare.js193 print('');CODE
HIGH⚡benchmark/compare.js194 print('✅ **New benchmarks established for this feature.**');CODE
HIGH⚡benchmark/compare.js199 print('⚠️ PR benchmark results are empty or invalid');CODE
HIGH⚡benchmark/compare.js204 print('# Performance Comparison');CODE
HIGH⚡benchmark/compare.js205 print('');CODE
HIGH⚡benchmark/compare.js207 print('');CODE
HIGH⚡benchmark/compare.js211 print('## Retest');CODE
HIGH⚡benchmark/compare.js212 print('');CODE
HIGH⚡benchmark/compare.js213 print(CODE
HIGH⚡benchmark/compare.js216 print('');CODE
HIGH⚡benchmark/compare.js219 print('');CODE
HIGH⚡benchmark/compare.js224 print('⚠️ **Performance regressions detected.** Please review the changes.');CODE
HIGH⚡benchmark/compare.js228 print('🚀 **Performance improvements detected!** Great work!');CODE
HIGH⚡benchmark/compare.js230 print('✅ **No significant performance changes.**');CODE
HIGHbenchmark/compare.js274 print('⚠️ Could not parse benchmark results');CODE
Fake / Example Data57 hits · 64 pts
SeverityFileLineSnippetContext
LOWspec/EmailVerificationToken.spec.js242 user.set('email', 'user@example.com');CODE
LOWspec/EmailVerificationToken.spec.js322 user.set('email', 'user@example.com');CODE
LOWspec/EmailVerificationToken.spec.js387 user.set('email', 'user@example.com');CODE
LOWspec/EmailVerificationToken.spec.js569 newUser.set('email', 'user@example.com');CODE
LOWspec/EmailVerificationToken.spec.js573 await Parse.User.requestEmailVerification('user@example.com');CODE
LOWspec/EmailVerificationToken.spec.js610 user.setEmail('user@example.com');CODE
LOWspec/EmailVerificationToken.spec.js1036 user.set('email', 'user@example.com');CODE
LOWspec/EmailVerificationToken.spec.js1054 email: 'user@example.com',CODE
LOW⚡spec/PasswordPolicy.spec.js142 user.set('email', 'user@example.com');CODE
LOW⚡spec/PasswordPolicy.spec.js144 await Parse.User.requestPasswordReset('user@example.com');CODE
LOW⚡spec/PasswordPolicy.spec.js145 await Parse.User.requestPasswordReset('user@example.com');CODE
LOW⚡spec/PasswordPolicy.spec.js171 user.set('email', 'user@example.com');CODE
LOW⚡spec/PasswordPolicy.spec.js173 await Parse.User.requestPasswordReset('user@example.com');CODE
LOW⚡spec/PasswordPolicy.spec.js174 await Parse.User.requestPasswordReset('user@example.com');CODE
LOWspec/vulnerabilities.spec.js6988 user.set('phone', '555-1234');CODE
LOWspec/vulnerabilities.spec.js7091 expect(response.data.phone).toBe('555-1234');CODE
LOWspec/vulnerabilities.spec.js8383 post('/users', { username: 'user', password: 'password', email: 'user@example.com' });CODE
LOWspec/vulnerabilities.spec.js8570 const res = await post('/verificationEmailRequest', { email: 'user@example.com' });CODE
LOWspec/vulnerabilities.spec.js8596 const res = await post('/requestPasswordReset', { email: 'user@example.com' });CODE
LOWspec/UserPII.spec.js8const EMAIL = 'foo@bar.com';CODE
LOWspec/ParseLiveQuery.spec.js1330 owner.set('phone', '555-1234');CODE
LOWspec/ParseLiveQuery.spec.js1375 expect(object.get('phone')).toBe('555-1234');CODE
LOWspec/ParseLiveQuery.spec.js1376 expect(original.get('phone')).toBe('555-1234');CODE
LOWspec/ProtectedFields.spec.js1914 user1.set('phone', '555-1234');CODE
LOWspec/ProtectedFields.spec.js1930 expect(response.data.phone).toBe('555-1234');CODE
LOWspec/ProtectedFields.spec.js1959 user.set('phone', '555-1234');CODE
LOWspec/ProtectedFields.spec.js1981 expect(masterResponse.data.phone).toBe('555-1234');CODE
LOWspec/ProtectedFields.spec.js2022 user.set('phone', '555-1234');CODE
LOWspec/ProtectedFields.spec.js2049 user.set('phone', '555-1234');CODE
LOWspec/ProtectedFields.spec.js2079 user.set('phone', '555-1234');CODE
LOWspec/ProtectedFields.spec.js2107 user.set('phone', '555-1234');CODE
LOWspec/ProtectedFields.spec.js2120 expect(response.data.phone).toBe('555-1234');CODE
LOWspec/ProtectedFields.spec.js2136 user.set('phone', '555-1234');CODE
LOWspec/ProtectedFields.spec.js2149 expect(response.data.phone).toBe('555-1234');CODE
LOWspec/ProtectedFields.spec.js2163 user.set('phone', '555-1234');CODE
LOWspec/ProtectedFields.spec.js2176 expect(response.data.phone).toBe('555-1234');CODE
LOWspec/ProtectedFields.spec.js2191 user.set('phone', '555-1234');CODE
LOWspec/Middlewares.spec.js404 fakeReq.userFromJWT = 'fake-user';CODE
LOWspec/Middlewares.spec.js406 expect(fakeReq.auth.user).toEqual('fake-user');CODE
LOWspec/ParseQuery.spec.js2891 new PostObject({ author: postAuthor, title: 'Lorem ipsum' }),CODE
LOW⚡spec/index.spec.js806 user.setEmail('user@example.com');CODE
LOW⚡spec/index.spec.js811 await Parse.User.requestPasswordReset('user@example.com');CODE
LOW⚡spec/index.spec.js819 await Parse.User.requestPasswordReset('user@example.com');CODE
LOWspec/ValidationAndPasswordsReset.spec.js335 user.set('email', 'user@example.com');CODE
LOWspec/ValidationAndPasswordsReset.spec.js1198 user.set('email', 'user@example.com');CODE
LOWspec/ValidationAndPasswordsReset.spec.js1200 await Parse.User.requestPasswordReset('user@example.com');CODE
LOWspec/ParseUser.spec.js2627 user.set('email', 'test@test.com');CODE
LOWspec/ParseUser.spec.js2634 user2.set('email', 'test@test.com');CODE
LOWspec/ParseUser.spec.js2737 user.set('email', 'test@test.com');CODE
LOWspec/ParseUser.spec.js2747 user2.set('email', 'test@test.com');CODE
LOWspec/ParseUser.spec.js2765 user.set('email', 'test@test.com');CODE
LOWspec/RouteAllowList.spec.js427 body: JSON.stringify({ email: 'user@example.com' }),CODE
LOWspec/RouteAllowList.spec.js482 user.set('email', 'user@example.com');CODE
LOW⚡spec/support/lorem.txt1Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus lobortis semper diam, ac euismod diam pharetra sed. EtiCODE
LOW⚡spec/support/lorem.txt1Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus lobortis semper diam, ac euismod diam pharetra sed. EtiCODE
LOW⚡spec/support/lorem.txt3Sed porttitor commodo orci, ut pretium eros convallis eget. Curabitur pretium velit in odio dictum luctus. Vivamus ac trCODE
LOW⚡spec/support/lorem.txt3Sed porttitor commodo orci, ut pretium eros convallis eget. Curabitur pretium velit in odio dictum luctus. Vivamus ac trCODE
Hyper-Verbose Identifiers45 hits · 45 pts
SeverityFileLineSnippetContext
LOWbenchmark/performance.js497async function benchmarkQueryWithIncludeParallel(name) {CODE
LOWbenchmark/performance.js560async function benchmarkQueryWithIncludeNested(name) {CODE
LOWbenchmark/performance.js646async function benchmarkLargeResultMemory(name) {CODE
LOWbenchmark/performance.js682async function benchmarkConcurrentQueryMemory(name) {CODE
LOWbenchmark/performance.js811async function benchmarkObjectCreateNestedDenylist(name) {CODE
LOWspec/PagesRouter.spec.js170 async function reconfigureServerWithPagesConfig(pagesConfig) {CODE
LOWspec/vulnerabilities.spec.js7359 async function subscribeWithoutSubscriptionToken(className) {CODE
LOWspec/ParseInstallation.spec.js1414 async function reconfigureWithInstallationOptions(installationOpts) {CODE
LOWspec/ParseInstallation.spec.js1424 async function setInstallationClassLevelPermissions(overrides) {CODE
LOWspec/ParseInstallation.spec.js1694 async function reconfigureWithInstallationOptions(installationOpts) {CODE
LOWspec/ParseInstallation.spec.js1800 async function reconfigureWithInstallationOptions(installationOpts) {CODE
LOWspec/OAuth1.spec.js80 function validateCannotAuthenticateError(data, done) {CODE
LOWspec/SecurityCheck.spec.js21 async function reconfigureServerWithSecurityConfig(security) {CODE
LOWspec/AuthenticationAdapters.spec.js254 function validateAuthenticationHandler(authenticationHandler) {CODE
LOWspec/AuthenticationAdapters.spec.js260 function validateAuthenticationAdapter(authAdapter) {CODE
LOWspec/Schema.spec.js1383 function validateSchemaDataStructure(schemaData) {CODE
LOWspec/helper.js391function mockFacebookAuthenticator(id, token) {CODE
LOWsrc/rest.js320function handleSessionMissingError(error, className, auth, config) {CODE
LOWsrc/batch.js23function makeBatchRoutingPathFunction(originalUrl, serverURL, publicServerURL) {CODE
LOWsrc/TestUtils.js8export function destroyAllDataPermanently(fast) {CODE
LOWsrc/Auth.js78function shouldUpdateSessionExpiry(config, session) {CODE
LOWsrc/AuthDataLock.js15export function applyAuthDataOptimisticLock(query, originalAuthData, newAuthData) {CODE
LOWsrc/triggers.js66function validateClassNameForTriggers(className, type) {CODE
LOWsrc/triggers.js440function logTriggerSuccessBeforeHook(triggerType, className, input, result, auth, logLevel) {CODE
LOWsrc/triggers.js458function logTriggerErrorBeforeHook(triggerType, className, input, auth, error, logLevel) {CODE
LOWsrc/triggers.js1043export function runLiveQueryEventHandlers(data, applicationId = Parse.applicationId) {CODE
LOWsrc/triggers.js1121export async function maybeRunGlobalConfigTrigger(triggerType, auth, configObject, originalConfigObject, config, contextCODE
LOWsrc/InstallationDedup.js65export async function removeConflictingDeviceToken({CODE
LOWsrc/InstallationDedup.js117export async function applyDuplicateDeviceTokenMerge({CODE
LOWsrc/middlewares.js525function normalizeRouteAllowListPath(path, mount) {CODE
LOWsrc/middlewares.js661export function promiseEnforceMasterKeyAccess(request) {CODE
LOWsrc/ParseServerRESTController.js32function ParseServerRESTController(applicationId, router) {CODE
LOWsrc/Routers/IAPValidationRouter.js46function getFileForProductIdentifier(productIdentifier, req) {CODE
LOWsrc/Routers/SchemasRouter.js10function classNameMismatchResponse(bodyClass, pathClass) {CODE
LOWsrc/Adapters/Storage/Postgres/PostgresConfigParser.js2function getDatabaseOptionsFromURI(uri) {CODE
LOWsrc/Adapters/Storage/Postgres/PostgresStorageAdapter.js2756function isAnyValueRegexStartsWith(values) {CODE
LOWsrc/Adapters/Storage/Mongo/MongoSchemaCollection.js4function mongoFieldToParseSchemaField(type) {CODE
LOWsrc/Adapters/Storage/Mongo/MongoSchemaCollection.js43function mongoSchemaFieldsToParseSchemaFields(schema) {CODE
LOWsrc/Adapters/Storage/Mongo/MongoSchemaCollection.js126function parseFieldTypeToMongoFieldType({ type, targetClass }) {CODE
LOWsrc/Push/utils.js43export function transformPushBodyForLocale(body, locale) {CODE
LOWsrc/GraphQL/helpers/queryComplexity.js74function createComplexityValidationPlugin(getConfig) {CODE
LOWsrc/Controllers/SchemaController.js237function validateProtectedFieldsKey(key, userIdRegExp) {CODE
LOWsrc/Controllers/SchemaController.js422function validatePointerPermission(fieldName: string, fields: Object, operation: string) {CODE
LOWsrc/Controllers/SchemaController.js1544function thenValidateRequiredColumns(schemaPromise, className, object, query) {CODE
LOWsrc/Controllers/index.js119export function getParseGraphQLController(CODE
Over-Commented Block25 hits · 25 pts
SeverityFileLineSnippetContext
LOWci/CiVersionCheck.js121 * @param {String} versionComponent The latest version component.COMMENT
LOWspec/ParseObject.spec.js1'use strict';COMMENT
LOWsrc/AuthDataLock.js1// Apply optimistic locking for authData provider field changes. For each lockableCOMMENT
LOWsrc/RestQuery.js881 });COMMENT
LOWsrc/RestWrite.js1401 });COMMENT
LOWsrc/PromiseRouter.js1// A router that is based on promises rather than req/res/next.COMMENT
LOWsrc/Routers/UsersRouter.js381 );COMMENT
LOWsrc/LiveQuery/ParseLiveQueryServer.ts821 // group. The REST path builds the same group in `RestQuery.getUserAndRoleACL`;COMMENT
LOWsrc/Adapters/Cache/LRUCache.js21COMMENT
LOWsrc/Adapters/Auth/OAuth1Client.js81OAuth.encode = function (str) {COMMENT
LOWsrc/Adapters/Storage/Postgres/PostgresStorageAdapter.js1301 debug(`deleteAllClasses done in ${new Date().getTime() - now}`);COMMENT
LOWsrc/Adapters/Storage/Mongo/MongoStorageAdapter.js501 // attempts to delete non-existent fields is the responsibility of Parse Server.COMMENT
LOWsrc/Adapters/Storage/Mongo/MongoStorageAdapter.js1021 // For dates, the driver expects a Date object, but we have a string coming in. So we'll convertCOMMENT
LOWsrc/Adapters/Storage/Mongo/MongoCollection.js1const mongodb = require('mongodb');COMMENT
LOWsrc/Adapters/Push/PushAdapter.js1/* eslint-disable unused-imports/no-unused-vars */COMMENT
LOWsrc/Adapters/Files/FilesAdapter.js1/* eslint-disable unused-imports/no-unused-vars */COMMENT
LOWsrc/Adapters/WebSocketServer/WSSAdapter.js21 constructor(options) {COMMENT
LOWsrc/GraphQL/ParseGraphQLServer.js101});COMMENT
LOWsrc/GraphQL/ParseGraphQLServer.js121// a field name the caller never supplied. Redact the quoted identifiers from thisCOMMENT
LOWsrc/GraphQL/ParseGraphQLServer.js141// an invalid `options.readPreference` value still names its enum, just as `CloudCodeFunction`COMMENT
LOWsrc/GraphQL/ParseGraphQLServer.js161 // RegExp from the captured name: this avoids substring false-matches (e.g. preservingCOMMENT
LOWsrc/Controllers/SchemaController.js1// @flowCOMMENT
LOWsrc/Controllers/DatabaseController.js41 _password_changed_at: { clientRead: false, masterRead: true, masterWrite: true },COMMENT
LOWsrc/Controllers/DatabaseController.js1281 // its join table is read by `relatedIds`. Without this check, `$relatedTo`COMMENT
LOWsrc/Controllers/DatabaseController.js1401 return query;COMMENT
AI Slop Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMsrc/GraphQL/loaders/filesMutations.js9// `createFile` is not directly called by Parse Server to leverage standard file upload mechanismCOMMENT
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippetContext
LOWsrc/ParseServerRESTController.js33 function handleRequest(method, path, data = {}, options = {}, config) {CODE