AI Slop Code Risk Monitor

firebase/firebase-tools

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

The Firebase Command Line Tools

1.3 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for firebase/firebase-tools, a TypeScript project with 4,486 GitHub stars. SynthScan examined 434,121 lines of code across 1829 source files, recording 473 pattern matches distributed across 17 syntactic categories. The legacy adjusted pattern signal is 1.3 (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.

1.3
Adjusted Signal
1.3
Raw Pattern Score
100%
Time Factor
2026-10-31
Last Push
4.5K
Stars
TypeScript
Language
434.1K
Lines of Code
1.8K
Files
473
Pattern Hits
2026-10-31
Scan Date
0.01
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 5.3/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 1.2/100 · LOW

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

Agent Over-Engineering Ratio 4.1/100 · LOW

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

PR Review Velocity Impact 6.1/100 · LOW

Which changes need focused human review? 473 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 2HIGH 9MEDIUM 7LOW 455

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 473 distinct pattern matches across 17 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 Identifiers357 hits · 360 pts
SeverityFileLineSnippetContext
LOWfirebase-vscode/webviews/components/EmulatorPanel.tsx51function FormatEmulatorRunningInfo({ infos }: { infos: EmulatorInfo[] }) {CODE
LOWfirebase-vscode/webviews/components/EmulatorPanel.tsx71function RunningEmulatorControlButtons({ infos }: { infos: EmulatorInfo[] }) {CODE
LOW…/data-connect/data-connect-execution-results.entry.tsx14function DataConnectExecutionResultsApp() {CODE
LOW…ta-connect/data-connect-execution-parameters.entry.tsx20export function DataConnectExecutionArgumentsApp() {CODE
LOWfirebase-vscode/src/analytics.ts238function addFirebaseBinaryMetadata(data?: Record<string, any> | undefined) {CODE
LOWfirebase-vscode/src/core/config.ts115function notifyFirebaseConfigListChanged(broker: ExtensionBrokerImpl) {CODE
LOWfirebase-vscode/src/test/utils/sidebar.ts7export async function switchToFirebaseSidebarFrame(workbench: Workbench) {CODE
LOWfirebase-vscode/src/data-connect/core-compiler.ts45function convertGQLErrorToDiagnostic(CODE
LOWfirebase-vscode/src/data-connect/core-compiler.ts73function warningLevelToDiagnosticSeverity(level?: WarningLevel): DiagnosticSeverity {CODE
LOWfirebase-vscode/src/data-connect/sdk-generation.ts63 async function selectAppFolderAndRunInitSdk() {CODE
LOWfirebase-vscode/src/data-connect/ad-hoc-mutations.ts60 function buildRecursiveObjectQuery(CODE
LOWfirebase-vscode/src/data-connect/ad-hoc-mutations.ts257function getDefaultScalarValueNode(type: string): ValueNode | undefined {CODE
LOWfirebase-vscode/src/data-connect/config.ts49export async function registerDataConnectConfigs(CODE
LOWscripts/gen-auth-api-spec.ts311function pushServersDownToEachPath(openapi3: any): void {CODE
LOW…pts/storage-emulator-integration/rules/runtime.test.ts24function createFakeResourceMetadata(params: {CODE
LOWscripts/extensions-scraper/index.ts22export function extractReplacementFromReadme(readmeContent: string): string | undefined {CODE
LOWscripts/hosting-tests/rewrites-tests/tests.ts59function writeHelloWorldFunctionWithRegions(CODE
LOWsrc/getDefaultDatabaseInstance.ts8export async function getDefaultDatabaseInstance(project: string): Promise<string> {CODE
LOWsrc/utils.ts337export function getFunctionsEventProvider(eventType: string): string {CODE
LOWsrc/utils.ts649export function assertIsStringOrUndefined(CODE
LOWsrc/experiments.ts282export function experimentNameAutocorrect(malformed: string): string[] {CODE
LOWsrc/experiments.ts338export function enableExperimentsFromCliEnvVariable(): void {CODE
LOW⚡src/functionsConfig.ts42export function getFunctionsConfigDeprecationMessage(): string {CODE
LOW⚡src/functionsConfig.ts46export function logFunctionsConfigDeprecationWarning(): void {CODE
LOW⚡src/functionsConfig.ts50export function ensureLegacyRuntimeConfigCommandsEnabled(): void {CODE
LOWsrc/accountImporter.ts181function validateRequiredParameters(options: any): any {CODE
LOWsrc/appUtils.ts170export function getAllDepsFromPackageJson(packageJson: PackageJSON) {CODE
LOWsrc/appUtils.ts177async function packageJsonToAdminOrWebApp(CODE
LOWsrc/appUtils.ts246function getFrameworksFromPackageJson(packageJson: PackageJSON): Framework[] {CODE
LOWsrc/appUtils.ts258export function extractAppIdentifiersFlutter(fileContent: string): AppIdentifier[] {CODE
LOWsrc/appUtils.ts305export function extractAppIdentifiersAndroid(fileContent: string): AppIdentifier[] {CODE
LOWsrc/auth.ts317async function getTokensFromAuthorizationCode(CODE
LOWsrc/auth.ts384async function getGithubTokensFromAuthorizationCode(code: string, callbackUrl: string) {CODE
LOWsrc/auth.ts755function findAccountByRefreshToken(refreshToken: string): Account | undefined {CODE
LOWsrc/init/features/functions.spec.ts17function createExistingTestSetupAndConfig(): { setup: Setup; config: Config } {CODE
LOWsrc/init/features/database.ts61async function createDefaultDatabaseInstance(project: string): Promise<DatabaseInstance> {CODE
LOWsrc/init/features/database.ts109async function initializeDatabaseInstance(projectId: string): Promise<DatabaseInstance | null> {CODE
LOWsrc/init/features/dataconnect/resolver.ts141export function addSchemaToDataConnectYaml(CODE
LOWsrc/init/features/dataconnect/index.ts591async function promptForExistingServices(CODE
LOWsrc/init/features/dataconnect/sdk.ts365export function addSdkGenerateToConnectorYaml(CODE
LOWsrc/init/features/dataconnect/sdk.ts482function dedupeAppsByPlatformAndDirectory(apps: App[]): App[] {CODE
LOWsrc/init/features/ailogic/utils.ts69export function validateProjectNumberMatch(CODE
LOWsrc/init/features/hosting/github.ts300function writeChannelActionYMLFile(CODE
LOWsrc/init/features/hosting/github.ts369function writeDeployToProdActionYMLFile(CODE
LOWsrc/init/features/hosting/github.ts571async function createServiceAccountAndKeyWithRetry(CODE
LOWsrc/init/features/hosting/github.ts613async function createServiceAccountAndKey(CODE
LOWsrc/init/features/hosting/github.ts680async function encryptServiceAccountJSON(serviceAccountJSON: string, key: string): Promise<string> {CODE
LOWsrc/init/features/functions/utils.ts1export function templateWithSubbedResolverId(resolverId: string, template: string): string {CODE
LOWsrc/init/features/aitools/promptUpdater.ts165export function generateFeaturePromptSection(feature: string): string {CODE
LOWsrc/database/api.ts8export function realtimeOriginOrEmulatorOrCustomUrl(host: string): string {CODE
LOWsrc/database/api.ts20export function realtimeOriginOrCustomUrl(host: string): string {CODE
LOWsrc/firebase_studio/migrate.ts33async function setupAntigravityMcpServer(CODE
LOWsrc/apptesting/invokeTests.ts27function buildInvokeTestCasesRequest(CODE
LOWsrc/crashlytics/sourcemap.ts256export async function extractSourceMapFileField(mapFilePath: string): Promise<string | undefined> {CODE
LOWsrc/crashlytics/sourcemap.ts302export async function findHiddenSourceMapTarget(CODE
LOWsrc/crashlytics/sourcemap.ts572function getOrListAllMappingFiles(CODE
LOWsrc/crashlytics/sourcemap.ts587async function findExistingSourceMapName(CODE
LOWsrc/crashlytics/profilingManager.ts135export async function getProfilingManagerConfig(appId: string): Promise<ProfilingManagerConfig> {CODE
LOWsrc/crashlytics/profilingManager.ts158export async function updateProfilingManagerConfig(CODE
LOWsrc/crashlytics/profilingManager.ts191export async function ensureHeapDumpStorageBucket(CODE
297 more matches not shown…
Fake / Example Data39 hits · 41 pts
SeverityFileLineSnippetContext
LOWmockdata/function_source_v1.txt1Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras ac lectus dolor. Fusce luctus non leo ac tempor. Donec intCODE
LOWmockdata/function_source_v1.txt1Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras ac lectus dolor. Fusce luctus non leo ac tempor. Donec intCODE
LOWscripts/webframeworks-deploy-tests/tests.ts354 expect(await response.json()).to.eql({ name: "John Doe" });CODE
LOW…s/webframeworks-deploy-tests/nextjs/pages/api/hello.ts12 res.status(200).json({ name: 'John Doe' })CODE
LOWsrc/auth.spec.ts52 email: "test@test.com",CODE
LOWsrc/auth.spec.ts84 email: "test@test.com",CODE
LOWsrc/auth.spec.ts156 email: "test@test.com",CODE
LOWsrc/auth.spec.ts169 expect(() => assertAccount("test@test.com")).to.not.throw();CODE
LOWsrc/crashlytics/alerts.spec.ts27 const userEmail = "user@example.com";CODE
LOWsrc/crashlytics/onboarding.spec.ts66 requireAuthStub = sinon.stub(requireAuth, "requireAuth").resolves("user@example.com");CODE
LOWsrc/crashlytics/onboarding.spec.ts132 "user@example.com",CODE
LOWsrc/apphosting/secrets/index.spec.ts656 prompt.input.resolves("user@example.com");CODE
LOWsrc/deploy/functions/ensure.spec.ts187 ["foo@bar.com"],CODE
LOWsrc/deploy/functions/ensure.spec.ts193 serviceAccounts: ["foo@bar.com"],CODE
LOW⚡src/gcp/auth.spec.ts64 const userInfo = { localId: "test-uid", email: "test@test.com" };CODE
LOW⚡src/gcp/auth.spec.ts65 const expectedUserInfo = { uid: "test-uid", email: "test@test.com" };CODE
LOW⚡src/gcp/auth.spec.ts70 expression: [{ email: "test@test.com" }],CODE
LOW⚡src/gcp/auth.spec.ts75 const result = await auth.findUser(PROJECT_ID, "test@test.com");CODE
LOWsrc/gcp/auth.spec.ts112 expression: [{ email: "test@test.com" }],CODE
LOWsrc/gcp/auth.spec.ts117 await expect(auth.findUser(PROJECT_ID, "test@test.com")).to.be.rejectedWith("No users found");CODE
LOWsrc/gcp/auth.spec.ts219 email: "test@test.com",CODE
LOWsrc/gcp/auth.spec.ts224 email: "test@test.com",CODE
LOWsrc/gcp/auth.spec.ts257 email: "test@test.com",CODE
LOWsrc/gcp/cloudmonitoring.spec.ts71 labels: { email_address: "user@example.com" },CODE
LOWsrc/gcp/cloudmonitoring.spec.ts77 'type = "email" AND labels.email_address = "user@example.com" AND user_labels.is_firebase_channel = "true"';CODE
LOWsrc/gcp/cloudmonitoring.spec.ts102 labels: { email_address: "user@example.com" },CODE
LOWsrc/functions/iac/terraform.spec.ts65 expect(tf.serviceAccount("foo@bar.com")).to.equal("foo@bar.com");CODE
LOWsrc/commands/remoteconfig-versions-list.spec.ts39 updateUser: { email: "foo@bar.com" },CODE
LOWsrc/commands/remoteconfig-versions-list.spec.ts46 expect(output).to.include("foo@bar.com");CODE
LOWsrc/commands/login.spec.ts78 user: { email: "user@example.com" },CODE
LOWsrc/commands/login.spec.ts79 tokens: { refresh_token: "fake-token" },CODE
LOWsrc/commands/apps-create.spec.ts39 return { email: "user@example.com" };CODE
LOWsrc/commands/apps-create.spec.ts42 return { refresh_token: "fake_token" };CODE
LOWsrc/serve/functions.spec.ts37 user: { email: "test@test.com" },CODE
LOWsrc/emulator/auth/cloudFunctions.spec.ts43 email: "user@example.com",CODE
LOWsrc/emulator/auth/cloudFunctions.spec.ts74 email: "user@example.com",CODE
LOWsrc/emulator/auth/cloudFunctions.spec.ts94 email: "user@example.com",CODE
LOWsrc/emulator/auth/operations.ts2306 name: user.email || "user@example.com",CODE
LOWsrc/emulator/auth/idp.spec.ts1104 name: "Jane Doe",CODE
Cross-Language Confusion (JS/TS)5 hits · 35 pts
SeverityFileLineSnippetContext
HIGHsrc/deploy/extensions/errors.ts23 print(): void {CODE
HIGHsrc/deploy/functions/deploy.ts205 * @return True IFF wantBackend + haveBackend are the sameCOMMENT
HIGHsrc/extensions/askUserForEventsConfig.ts18 * @return True if the response is validCOMMENT
HIGHsrc/extensions/askUserForParam.ts36 * @return True if the user's response is validCOMMENT
HIGHsrc/functions/env.ts295 * @return True if there are any user-specified environment variablesCOMMENT
Over-Commented Block34 hits · 34 pts
SeverityFileLineSnippetContext
LOWscripts/functions-deploy-tests/tests.ts321 // retryConfig: {COMMENT
LOWscripts/storage-emulator-integration/conformance/env.ts21 //COMMENT
LOWscripts/triggers-end-to-end-tests/tests.ts521 // once the root cause is identified.COMMENT
LOW.github/workflows/node-test.yml81 working-directory: firebase-vscodeCOMMENT
LOW.github/workflows/node-test.yml101 # with:COMMENT
LOW.github/workflows/node-test.yml121 # - run: npm ciCOMMENT
LOWtemplates/banner.txt1COMMENT
LOWtemplates/init/apphosting/apphosting.yaml1# Settings for Backend (on Cloud Run).COMMENT
LOWtemplates/init/apphosting/apphosting.yaml21 # You can create secrets with the CLI command `firebase apphosting:secrets:set <secretName>`.COMMENT
LOWtemplates/init/firestore/firestore.indexes.json1{COMMENT
LOWtemplates/init/firestore/firestore.indexes.json21 // },COMMENT
LOWtemplates/init/firestore/firestore.indexes.json41 // "apiScope": "MONGODB_COMPATIBLE_API",COMMENT
LOWtemplates/init/functions/python/main.py1# Welcome to Cloud Functions for Firebase for Python!COMMENT
LOWtemplates/init/functions/python/main.py21# return https_fn.Response("Hello world!")COMMENT
LOWtemplates/init/functions/dart/analysis_options.yaml1# This file configures the static analysis results for your project (errors,COMMENT
LOWtemplates/init/functions/dart/analysis_options.yaml21COMMENT
LOWtemplates/init/functions/typescript/index-kit.ts21// kit. Learn more about these options and additional configurations at:COMMENT
LOWtemplates/init/functions/typescript/index.ts21// `maxInstances` option in the function's options, e.g.COMMENT
LOWtemplates/init/functions/javascript/index.js21// functions should each use functions.runWith({ maxInstances: 10 }) instead.COMMENT
LOWtemplates/extensions/extension.yaml21sourceUrl: https://github.com/ORG_OR_USER/REPO_NAMECOMMENT
LOWsrc/track.ts301 // https://support.google.com/analytics/answer/9191807COMMENT
LOWsrc/streamJson.ts1// stream-chain and stream-json are ESM-only packages. This CLI is compiled toCOMMENT
LOWsrc/fsAsync.spec.ts1import { expect } from "chai";COMMENT
LOWsrc/command.ts181COMMENT
LOW…s/firebase/storage-resize-images@0.1.18/extension.yaml1# Copyright 2019 Google LLCCOMMENT
LOWsrc/deploy/functions/containerCleaner.ts121 .replace(/^[A-Z]/, (first) => `${first.toLowerCase()}-${first.toLowerCase()}`)COMMENT
LOWsrc/deploy/functions/containerCleaner.ts141 // - project "my-cool-project" -> "my--cool--project"COMMENT
LOWsrc/deploy/functions/containerCleaner.ts201 // +- <hash> (tags: <FuncName>_version-<#>)COMMENT
LOWsrc/deploy/functions/build.ts81// Defining a StringParam with { param: "FOO" } declares that "{{ params.FOO }}" is a validCOMMENT
LOWsrc/deploy/functions/runtimes/node/index.ts161 private findFunctionsBinary(): string {COMMENT
LOWsrc/mcp/prompts/firestore/generate_security_rules.ts101// Document ID: [pattern]COMMENT
LOWsrc/gcp/pubsub.ts41COMMENT
LOWsrc/emulator/functionsEmulatorShared.ts281 * Create a path that used to create a tempfile for IPC over socket files.COMMENT
LOWsrc/emulator/controller.ts281 // "emulators": {COMMENT
Structural Annotation Overuse11 hits · 24 pts
SeverityFileLineSnippetContext
LOW⚡templates/firebase-studio-export/workflows/cleanup.md6# Step 1: Check CompilationCOMMENT
LOW⚡templates/firebase-studio-export/workflows/cleanup.md10# Step 2: Cleanup Genkit configCOMMENT
LOW⚡templates/firebase-studio-export/workflows/cleanup.md14# Step 3: Cleanup dev.nixCOMMENT
LOW⚡templates/firebase-studio-export/workflows/cleanup.md18# Step 4: Cleanup GEMINI.mdCOMMENT
LOWsrc/gcp/cloudsql/permissionsSetup.ts116 // Step 0: Check current user can run setup and upsert IAM / P4SA usersCOMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts343 // Step 1: Our usual setup which creates necessary roles, transfers schema ownership, and gives nessary grants.COMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts346 // Step 2: Grant non firebase owners the writer role before changing the table owners.COMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts351 // Step 3: Alter table owners permissionsCOMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts384 // Step 1: Grant firebasesuperuser access to the original ownerCOMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts393 // Step 2: Using firebasesuperuser, setup reader and writer permissions on existing tables and setup default permissioCOMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts398 // Step 3: Grant firebase reader and writer roles access to any new tables created by found owner.COMMENT
Hallucination Indicators2 hits · 20 pts
SeverityFileLineSnippetContext
CRITICAL…ge-emulator-integration/conformance/gcs-js-sdk.test.ts723 ).to.eventually.be.rejected.and.have.property("code", 501);CODE
CRITICALsrc/frameworks/compose/driver/local.ts34 const [cmd, ...args] = this.spec.detectedCommands.build.cmd.split(" ");CODE
Synthetic Comment Markers3 hits · 18 pts
SeverityFileLineSnippetContext
HIGH.agent/skills/firebase-tools-pr-review/SKILL.md23- [ ] **No AI/Agent Junk**: Unused comment blocks, residual issue numbers, or boilerplate generated by AI agents are strCODE
HIGHsrc/env.ts35 // 2. Specific agents (ordered as requested)COMMENT
HIGHsrc/deploy/functions/runtimes/discovery/v1alpha1.ts209 return Array.from(new Set(roles)); // Deduplicate as requestedCODE
Verbosity Indicators7 hits · 15 pts
SeverityFileLineSnippetContext
LOWsrc/gcp/cloudsql/permissionsSetup.ts116 // Step 0: Check current user can run setup and upsert IAM / P4SA usersCOMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts343 // Step 1: Our usual setup which creates necessary roles, transfers schema ownership, and gives nessary grants.COMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts346 // Step 2: Grant non firebase owners the writer role before changing the table owners.COMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts351 // Step 3: Alter table owners permissionsCOMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts384 // Step 1: Grant firebasesuperuser access to the original ownerCOMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts393 // Step 2: Using firebasesuperuser, setup reader and writer permissions on existing tables and setup default permissioCOMMENT
LOW⚡src/gcp/cloudsql/permissionsSetup.ts398 // Step 3: Grant firebase reader and writer roles access to any new tables created by found owner.COMMENT
AI Slop Vocabulary3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUMfirebase-vscode/src/data-connect/ad-hoc-mutations.ts39 // TODO(hlshen): Revamp makeQuery to utilize live schema, and built out an AST instead of construction the query thrCOMMENT
MEDIUMsrc/unzip.ts139 // Converting both paths to lowercase on win32 ensures robust prefix checking.COMMENT
MEDIUMsrc/emulator/apphosting/serve.ts61 // NOTE: this is not robust, a command could be a wrapper around another command and we cannotCOMMENT
Slop Phrases2 hits · 5 pts
SeverityFileLineSnippetContext
MEDIUMstandalone/firepit.js869 As discussed above, whether running the firepit binary results in a Node.js runtime or theCODE
MEDIUMtemplates/init/functions/dart/analysis_options.yaml9# If you want a smaller set of lints you can change this to specifyCOMMENT
Magic Placeholder Names1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHsrc/emulator/auth/handlers.ts27 instructions: `Please modify the URL to specify an apiKey, such as ...&apiKey=YOUR_API_KEY`,CODE
TODO Padding3 hits · 4 pts
SeverityFileLineSnippetContext
LOWsrc/dataconnect/load.ts216 // TODO: Add validationCOMMENT
LOWsrc/commands/hosting-channel-deploy.ts66 // TODO: implement --open.COMMENT
LOWsrc/emulator/extensionsEmulator.ts173 // TODO: Add logging during this so it is clear what is happening.COMMENT
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMscripts/functions-deploy-tests/run.sh7# Create a secret for testing if it doesn't existCOMMENT
Modern AI Meta-Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMscripts/webframeworks-deploy-tests/angular/README.md9## Code scaffoldingCOMMENT
Unused Imports2 hits · 2 pts
SeverityFileLineSnippetContext
LOWtemplates/init/functions/python/main.py5CODE
LOWtemplates/init/functions/python/main.py7CODE
Excessive Try-Catch Wrapping1 hit · 1 pts
SeverityFileLineSnippetContext
LOWscripts/publish/firebase-docker-image/promote.sh78except Exception:CODE
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippetContext
LOWsrc/emulator/eventarcEmulatorUtils.ts50function getData(ce: any): any {CODE