mediawiki/services/push-notifications: main (log #2452341)

sourcepatches

This run took 136 seconds.

$ date
--- stdout ---
Mon Apr 27 08:36:56 UTC 2026

--- end ---
$ git clone file:///srv/git/mediawiki-services-push-notifications.git /src/repo --depth=1 -b master
--- stderr ---
Cloning into '/src/repo'...
--- stdout ---

--- end ---
$ git config user.name libraryupgrader
--- stdout ---

--- end ---
$ git config user.email tools.libraryupgrader@tools.wmflabs.org
--- stdout ---

--- end ---
$ git submodule update --init
--- stdout ---

--- end ---
$ grr init
--- stdout ---
Installed commit-msg hook.

--- end ---
$ git show-ref refs/heads/master
--- stdout ---
e045d3ee14b170e7638474de4caab75d743e103e refs/heads/master

--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
  "auditReportVersion": 2,
  "vulnerabilities": {
    "@eslint/eslintrc": {
      "name": "@eslint/eslintrc",
      "severity": "high",
      "isDirect": false,
      "via": [
        "minimatch"
      ],
      "effects": [
        "eslint"
      ],
      "range": "",
      "nodes": [
        "node_modules/@eslint/eslintrc",
        "node_modules/eslint-plugin-unicorn/node_modules/@eslint/eslintrc"
      ],
      "fixAvailable": true
    },
    "@google-cloud/firestore": {
      "name": "@google-cloud/firestore",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "google-gax"
      ],
      "effects": [
        "firebase-admin"
      ],
      "range": "7.5.0-pre.0 || 7.6.0 - 7.11.6",
      "nodes": [
        "node_modules/@google-cloud/firestore"
      ],
      "fixAvailable": {
        "name": "firebase-admin",
        "version": "10.1.0",
        "isSemVerMajor": true
      }
    },
    "@google-cloud/storage": {
      "name": "@google-cloud/storage",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "retry-request",
        "teeny-request",
        "uuid"
      ],
      "effects": [
        "firebase-admin"
      ],
      "range": "2.2.0 - 2.5.0 || >=5.19.0",
      "nodes": [
        "node_modules/@google-cloud/storage"
      ],
      "fixAvailable": {
        "name": "firebase-admin",
        "version": "10.1.0",
        "isSemVerMajor": true
      }
    },
    "@humanwhocodes/config-array": {
      "name": "@humanwhocodes/config-array",
      "severity": "high",
      "isDirect": false,
      "via": [
        "minimatch"
      ],
      "effects": [
        "eslint"
      ],
      "range": "",
      "nodes": [
        "node_modules/@humanwhocodes/config-array"
      ],
      "fixAvailable": true
    },
    "@tootallnate/once": {
      "name": "@tootallnate/once",
      "severity": "low",
      "isDirect": false,
      "via": [
        {
          "source": 1113977,
          "name": "@tootallnate/once",
          "dependency": "@tootallnate/once",
          "title": "@tootallnate/once vulnerable to Incorrect Control Flow Scoping",
          "url": "https://github.com/advisories/GHSA-vpq2-c234-7xj6",
          "severity": "low",
          "cwe": [
            "CWE-705"
          ],
          "cvss": {
            "score": 3.3,
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": "<3.0.1"
        }
      ],
      "effects": [
        "http-proxy-agent"
      ],
      "range": "<3.0.1",
      "nodes": [
        "node_modules/@tootallnate/once"
      ],
      "fixAvailable": {
        "name": "firebase-admin",
        "version": "10.1.0",
        "isSemVerMajor": true
      }
    },
    "@typescript-eslint/eslint-plugin": {
      "name": "@typescript-eslint/eslint-plugin",
      "severity": "high",
      "isDirect": true,
      "via": [
        "@typescript-eslint/type-utils",
        "@typescript-eslint/utils"
      ],
      "effects": [],
      "range": "8.34.1-alpha.0 - 8.34.1",
      "nodes": [
        "node_modules/@typescript-eslint/eslint-plugin"
      ],
      "fixAvailable": true
    },
    "@typescript-eslint/parser": {
      "name": "@typescript-eslint/parser",
      "severity": "high",
      "isDirect": true,
      "via": [
        "@typescript-eslint/typescript-estree"
      ],
      "effects": [],
      "range": "8.34.1-alpha.0 - 8.34.1",
      "nodes": [
        "node_modules/@typescript-eslint/parser"
      ],
      "fixAvailable": true
    },
    "@typescript-eslint/type-utils": {
      "name": "@typescript-eslint/type-utils",
      "severity": "high",
      "isDirect": false,
      "via": [
        "@typescript-eslint/typescript-estree",
        "@typescript-eslint/utils"
      ],
      "effects": [],
      "range": "8.34.1-alpha.0 - 8.34.1",
      "nodes": [
        "node_modules/@typescript-eslint/type-utils"
      ],
      "fixAvailable": true
    },
    "@typescript-eslint/typescript-estree": {
      "name": "@typescript-eslint/typescript-estree",
      "severity": "high",
      "isDirect": false,
      "via": [
        "minimatch"
      ],
      "effects": [
        "@typescript-eslint/parser",
        "@typescript-eslint/type-utils",
        "@typescript-eslint/utils"
      ],
      "range": "",
      "nodes": [
        "node_modules/@typescript-eslint/typescript-estree"
      ],
      "fixAvailable": true
    },
    "@typescript-eslint/utils": {
      "name": "@typescript-eslint/utils",
      "severity": "high",
      "isDirect": false,
      "via": [
        "@typescript-eslint/typescript-estree"
      ],
      "effects": [
        "@typescript-eslint/eslint-plugin"
      ],
      "range": "8.34.1-alpha.0 - 8.34.1",
      "nodes": [
        "node_modules/@typescript-eslint/utils"
      ],
      "fixAvailable": true
    },
    "@wikimedia/apn": {
      "name": "@wikimedia/apn",
      "severity": "high",
      "isDirect": true,
      "via": [
        "jsonwebtoken",
        "node-forge"
      ],
      "effects": [],
      "range": "*",
      "nodes": [
        "node_modules/@wikimedia/apn"
      ],
      "fixAvailable": false
    },
    "ajv": {
      "name": "ajv",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        {
          "source": 1113714,
          "name": "ajv",
          "dependency": "ajv",
          "title": "ajv has ReDoS when using `$data` option",
          "url": "https://github.com/advisories/GHSA-2g4f-4pwh-qvx6",
          "severity": "moderate",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<6.14.0"
        },
        {
          "source": 1113715,
          "name": "ajv",
          "dependency": "ajv",
          "title": "ajv has ReDoS when using `$data` option",
          "url": "https://github.com/advisories/GHSA-2g4f-4pwh-qvx6",
          "severity": "moderate",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": ">=7.0.0-alpha.0 <8.18.0"
        }
      ],
      "effects": [],
      "range": "<6.14.0 || >=7.0.0-alpha.0 <8.18.0",
      "nodes": [
        "node_modules/@eslint/eslintrc/node_modules/ajv",
        "node_modules/ajv",
        "node_modules/eslint-plugin-unicorn/node_modules/ajv",
        "node_modules/eslint/node_modules/ajv",
        "node_modules/har-validator/node_modules/ajv"
      ],
      "fixAvailable": true
    },
    "basic-ftp": {
      "name": "basic-ftp",
      "severity": "critical",
      "isDirect": false,
      "via": [
        {
          "source": 1113518,
          "name": "basic-ftp",
          "dependency": "basic-ftp",
          "title": "Basic FTP has Path Traversal Vulnerability in its downloadToDir() method",
          "url": "https://github.com/advisories/GHSA-5rq4-664w-9x2c",
          "severity": "critical",
          "cwe": [
            "CWE-22"
          ],
          "cvss": {
            "score": 9.1,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H"
          },
          "range": "<5.2.0"
        },
        {
          "source": 1116454,
          "name": "basic-ftp",
          "dependency": "basic-ftp",
          "title": "basic-ftp: Incomplete CRLF Injection Protection Allows Arbitrary FTP Command Execution via Credentials and MKD Commands",
          "url": "https://github.com/advisories/GHSA-6v7q-wjvx-w8wg",
          "severity": "high",
          "cwe": [
            "CWE-93"
          ],
          "cvss": {
            "score": 8.2,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:L"
          },
          "range": "<=5.2.1"
        },
        {
          "source": 1117083,
          "name": "basic-ftp",
          "dependency": "basic-ftp",
          "title": "basic-ftp vulnerable to denial of service via unbounded memory consumption in Client.list()",
          "url": "https://github.com/advisories/GHSA-rp42-5vxx-qpwr",
          "severity": "high",
          "cwe": [
            "CWE-400",
            "CWE-770"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<=5.2.2"
        }
      ],
      "effects": [],
      "range": "<=5.2.2",
      "nodes": [
        "node_modules/basic-ftp"
      ],
      "fixAvailable": true
    },
    "body-parser": {
      "name": "body-parser",
      "severity": "low",
      "isDirect": true,
      "via": [
        "qs"
      ],
      "effects": [
        "express"
      ],
      "range": "1.19.0 - 1.20.3 || 2.0.0-beta.1 - 2.0.2",
      "nodes": [
        "node_modules/body-parser"
      ],
      "fixAvailable": true
    },
    "brace-expansion": {
      "name": "brace-expansion",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1115541,
          "name": "brace-expansion",
          "dependency": "brace-expansion",
          "title": "brace-expansion: Zero-step sequence causes process hang and memory exhaustion",
          "url": "https://github.com/advisories/GHSA-f886-m6hf-6m8v",
          "severity": "moderate",
          "cwe": [
            "CWE-400"
          ],
          "cvss": {
            "score": 6.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H"
          },
          "range": ">=2.0.0 <2.0.3"
        }
      ],
      "effects": [],
      "range": "2.0.0 - 2.0.2",
      "nodes": [
        "node_modules/brace-expansion"
      ],
      "fixAvailable": true
    },
    "compression": {
      "name": "compression",
      "severity": "low",
      "isDirect": true,
      "via": [
        "on-headers"
      ],
      "effects": [],
      "range": "1.0.3 - 1.8.0",
      "nodes": [
        "node_modules/compression"
      ],
      "fixAvailable": true
    },
    "diff": {
      "name": "diff",
      "severity": "low",
      "isDirect": false,
      "via": [
        {
          "source": 1112704,
          "name": "diff",
          "dependency": "diff",
          "title": "jsdiff has a Denial of Service vulnerability in parsePatch and applyPatch",
          "url": "https://github.com/advisories/GHSA-73rr-hh4g-fpgx",
          "severity": "low",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": ">=4.0.0 <4.0.4"
        },
        {
          "source": 1112705,
          "name": "diff",
          "dependency": "diff",
          "title": "jsdiff has a Denial of Service vulnerability in parsePatch and applyPatch",
          "url": "https://github.com/advisories/GHSA-73rr-hh4g-fpgx",
          "severity": "low",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": ">=5.0.0 <5.2.2"
        }
      ],
      "effects": [],
      "range": "4.0.0 - 4.0.3 || 5.0.0 - 5.2.1",
      "nodes": [
        "node_modules/diff",
        "node_modules/ts-node/node_modules/diff"
      ],
      "fixAvailable": true
    },
    "eslint": {
      "name": "eslint",
      "severity": "high",
      "isDirect": false,
      "via": [
        "@eslint/eslintrc",
        "@humanwhocodes/config-array",
        "file-entry-cache",
        "minimatch"
      ],
      "effects": [],
      "range": "7.15.0 - 9.0.0-rc.0 || 9.1.0 - 9.3.0",
      "nodes": [
        "node_modules/eslint"
      ],
      "fixAvailable": true
    },
    "eslint-plugin-n": {
      "name": "eslint-plugin-n",
      "severity": "high",
      "isDirect": false,
      "via": [
        "minimatch"
      ],
      "effects": [],
      "range": "",
      "nodes": [
        "node_modules/eslint-plugin-n"
      ],
      "fixAvailable": true
    },
    "express": {
      "name": "express",
      "severity": "high",
      "isDirect": true,
      "via": [
        "body-parser",
        "path-to-regexp",
        "qs"
      ],
      "effects": [],
      "range": "4.0.0-rc1 - 4.21.2 || 5.0.0-alpha.1 - 5.0.1",
      "nodes": [
        "node_modules/express"
      ],
      "fixAvailable": true
    },
    "fast-xml-parser": {
      "name": "fast-xml-parser",
      "severity": "critical",
      "isDirect": false,
      "via": [
        {
          "source": 1113567,
          "name": "fast-xml-parser",
          "dependency": "fast-xml-parser",
          "title": "fast-xml-parser has an entity encoding bypass via regex injection in DOCTYPE entity names",
          "url": "https://github.com/advisories/GHSA-m7jm-9gc2-mpf2",
          "severity": "critical",
          "cwe": [
            "CWE-185"
          ],
          "cvss": {
            "score": 9.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:N"
          },
          "range": ">=4.1.3 <4.5.4"
        },
        {
          "source": 1113570,
          "name": "fast-xml-parser",
          "dependency": "fast-xml-parser",
          "title": "fast-xml-parser affected by DoS through entity expansion in DOCTYPE (no expansion limit)",
          "url": "https://github.com/advisories/GHSA-jmr7-xgp7-cmfj",
          "severity": "high",
          "cwe": [
            "CWE-776"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=4.1.3 <4.5.4"
        },
        {
          "source": 1114149,
          "name": "fast-xml-parser",
          "dependency": "fast-xml-parser",
          "title": "fast-xml-parser has stack overflow in XMLBuilder with preserveOrder",
          "url": "https://github.com/advisories/GHSA-fj3w-jwp8-x2g3",
          "severity": "low",
          "cwe": [
            "CWE-120"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": ">=4.0.0-beta.0 <4.5.4"
        },
        {
          "source": 1115338,
          "name": "fast-xml-parser",
          "dependency": "fast-xml-parser",
          "title": "fast-xml-parser affected by numeric entity expansion bypassing all entity expansion limits (incomplete fix for CVE-2026-26278)",
          "url": "https://github.com/advisories/GHSA-8gc5-j5rx-235r",
          "severity": "high",
          "cwe": [
            "CWE-776"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=4.0.0-beta.3 <4.5.5"
        },
        {
          "source": 1116308,
          "name": "fast-xml-parser",
          "dependency": "fast-xml-parser",
          "title": "Entity Expansion Limits Bypassed When Set to Zero Due to JavaScript Falsy Evaluation in fast-xml-parser",
          "url": "https://github.com/advisories/GHSA-jp2q-39xq-3w4g",
          "severity": "moderate",
          "cwe": [
            "CWE-1284"
          ],
          "cvss": {
            "score": 5.9,
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=4.0.0-beta.3 <4.5.5"
        },
        {
          "source": 1116957,
          "name": "fast-xml-parser",
          "dependency": "fast-xml-parser",
          "title": "fast-xml-parser XMLBuilder: XML Comment and CDATA Injection via Unescaped Delimiters",
          "url": "https://github.com/advisories/GHSA-gh4j-gqv2-49f6",
          "severity": "moderate",
          "cwe": [
            "CWE-91"
          ],
          "cvss": {
            "score": 6.1,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
          },
          "range": "<5.7.0"
        }
      ],
      "effects": [],
      "range": "<=5.6.0",
      "nodes": [
        "node_modules/fast-xml-parser"
      ],
      "fixAvailable": true
    },
    "file-entry-cache": {
      "name": "file-entry-cache",
      "severity": "high",
      "isDirect": false,
      "via": [
        "flat-cache"
      ],
      "effects": [
        "eslint"
      ],
      "range": "6.0.0 - 7.0.2",
      "nodes": [
        "node_modules/file-entry-cache"
      ],
      "fixAvailable": true
    },
    "firebase-admin": {
      "name": "firebase-admin",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "@google-cloud/firestore",
        "@google-cloud/storage",
        "uuid"
      ],
      "effects": [],
      "range": ">=10.2.0",
      "nodes": [
        "node_modules/firebase-admin"
      ],
      "fixAvailable": {
        "name": "firebase-admin",
        "version": "10.1.0",
        "isSemVerMajor": true
      }
    },
    "flat-cache": {
      "name": "flat-cache",
      "severity": "high",
      "isDirect": false,
      "via": [
        "rimraf"
      ],
      "effects": [
        "file-entry-cache"
      ],
      "range": "3.0.0 - 3.2.0",
      "nodes": [
        "node_modules/flat-cache"
      ],
      "fixAvailable": true
    },
    "flatted": {
      "name": "flatted",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1114526,
          "name": "flatted",
          "dependency": "flatted",
          "title": "flatted vulnerable to unbounded recursion DoS in parse() revive phase",
          "url": "https://github.com/advisories/GHSA-25h7-pfq9-p65f",
          "severity": "high",
          "cwe": [
            "CWE-674"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<3.4.0"
        },
        {
          "source": 1115357,
          "name": "flatted",
          "dependency": "flatted",
          "title": "Prototype Pollution via parse() in NodeJS flatted",
          "url": "https://github.com/advisories/GHSA-rf6f-7fwh-wjgh",
          "severity": "high",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<=3.4.1"
        }
      ],
      "effects": [],
      "range": "<=3.4.1",
      "nodes": [
        "node_modules/flatted"
      ],
      "fixAvailable": true
    },
    "form-data": {
      "name": "form-data",
      "severity": "critical",
      "isDirect": false,
      "via": [
        {
          "source": 1109538,
          "name": "form-data",
          "dependency": "form-data",
          "title": "form-data uses unsafe random function in form-data for choosing boundary",
          "url": "https://github.com/advisories/GHSA-fjxv-7rqg-78g4",
          "severity": "critical",
          "cwe": [
            "CWE-330"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": ">=4.0.0 <4.0.4"
        },
        {
          "source": 1109540,
          "name": "form-data",
          "dependency": "form-data",
          "title": "form-data uses unsafe random function in form-data for choosing boundary",
          "url": "https://github.com/advisories/GHSA-fjxv-7rqg-78g4",
          "severity": "critical",
          "cwe": [
            "CWE-330"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<2.5.4"
        }
      ],
      "effects": [
        "request"
      ],
      "range": ">=4.0.0 <4.0.4 || <2.5.4",
      "nodes": [
        "node_modules/@types/request/node_modules/form-data",
        "node_modules/form-data",
        "node_modules/superagent/node_modules/form-data"
      ],
      "fixAvailable": false
    },
    "gaxios": {
      "name": "gaxios",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "uuid"
      ],
      "effects": [],
      "range": "6.4.0 - 6.7.1",
      "nodes": [
        "node_modules/gaxios"
      ],
      "fixAvailable": true
    },
    "glob": {
      "name": "glob",
      "severity": "high",
      "isDirect": false,
      "via": [
        "minimatch"
      ],
      "effects": [
        "mocha",
        "nyc",
        "rimraf"
      ],
      "range": "",
      "nodes": [
        "node_modules/glob"
      ],
      "fixAvailable": {
        "name": "nyc",
        "version": "14.1.1",
        "isSemVerMajor": true
      }
    },
    "google-gax": {
      "name": "google-gax",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "retry-request",
        "uuid"
      ],
      "effects": [
        "@google-cloud/firestore"
      ],
      "range": "4.0.5-experimental - 4.6.1",
      "nodes": [
        "node_modules/google-gax"
      ],
      "fixAvailable": {
        "name": "firebase-admin",
        "version": "10.1.0",
        "isSemVerMajor": true
      }
    },
    "http-proxy-agent": {
      "name": "http-proxy-agent",
      "severity": "low",
      "isDirect": false,
      "via": [
        "@tootallnate/once"
      ],
      "effects": [
        "teeny-request"
      ],
      "range": "4.0.1 - 5.0.0",
      "nodes": [
        "node_modules/teeny-request/node_modules/http-proxy-agent"
      ],
      "fixAvailable": {
        "name": "firebase-admin",
        "version": "10.1.0",
        "isSemVerMajor": true
      }
    },
    "istanbul-lib-processinfo": {
      "name": "istanbul-lib-processinfo",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "uuid"
      ],
      "effects": [
        "nyc"
      ],
      "range": "*",
      "nodes": [
        "node_modules/istanbul-lib-processinfo"
      ],
      "fixAvailable": {
        "name": "nyc",
        "version": "14.1.1",
        "isSemVerMajor": true
      }
    },
    "js-yaml": {
      "name": "js-yaml",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        {
          "source": 1112714,
          "name": "js-yaml",
          "dependency": "js-yaml",
          "title": "js-yaml has prototype pollution in merge (<<)",
          "url": "https://github.com/advisories/GHSA-mh29-5h37-fv8m",
          "severity": "moderate",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
          },
          "range": "<3.14.2"
        },
        {
          "source": 1112715,
          "name": "js-yaml",
          "dependency": "js-yaml",
          "title": "js-yaml has prototype pollution in merge (<<)",
          "url": "https://github.com/advisories/GHSA-mh29-5h37-fv8m",
          "severity": "moderate",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
          },
          "range": ">=4.0.0 <4.1.1"
        }
      ],
      "effects": [],
      "range": "<3.14.2 || >=4.0.0 <4.1.1",
      "nodes": [
        "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml",
        "node_modules/js-yaml",
        "node_modules/service-runner/node_modules/js-yaml",
        "node_modules/swagger-router/node_modules/js-yaml"
      ],
      "fixAvailable": true
    },
    "jsonwebtoken": {
      "name": "jsonwebtoken",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1097690,
          "name": "jsonwebtoken",
          "dependency": "jsonwebtoken",
          "title": "jsonwebtoken unrestricted key type could lead to legacy keys usage ",
          "url": "https://github.com/advisories/GHSA-8cf7-32gw-wr33",
          "severity": "high",
          "cwe": [
            "CWE-327"
          ],
          "cvss": {
            "score": 8.1,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N"
          },
          "range": "<=8.5.1"
        },
        {
          "source": 1097694,
          "name": "jsonwebtoken",
          "dependency": "jsonwebtoken",
          "title": "jsonwebtoken's insecure implementation of key retrieval function could lead to Forgeable Public/Private Tokens from RSA to HMAC",
          "url": "https://github.com/advisories/GHSA-hjrf-2m68-5959",
          "severity": "moderate",
          "cwe": [
            "CWE-287",
            "CWE-1259"
          ],
          "cvss": {
            "score": 5,
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L"
          },
          "range": "<=8.5.1"
        },
        {
          "source": 1102458,
          "name": "jsonwebtoken",
          "dependency": "jsonwebtoken",
          "title": "jsonwebtoken vulnerable to signature validation bypass due to insecure default algorithm in jwt.verify()",
          "url": "https://github.com/advisories/GHSA-qwph-4952-7xr6",
          "severity": "moderate",
          "cwe": [
            "CWE-287",
            "CWE-327",
            "CWE-347"
          ],
          "cvss": {
            "score": 6.4,
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:H/A:L"
          },
          "range": "<9.0.0"
        }
      ],
      "effects": [
        "@wikimedia/apn"
      ],
      "range": "<=8.5.1",
      "nodes": [
        "node_modules/jsonwebtoken"
      ],
      "fixAvailable": false
    },
    "jws": {
      "name": "jws",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1111243,
          "name": "jws",
          "dependency": "jws",
          "title": "auth0/node-jws Improperly Verifies HMAC Signature",
          "url": "https://github.com/advisories/GHSA-869p-cjfg-cm3x",
          "severity": "high",
          "cwe": [
            "CWE-347"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
          },
          "range": "=4.0.0"
        },
        {
          "source": 1111244,
          "name": "jws",
          "dependency": "jws",
          "title": "auth0/node-jws Improperly Verifies HMAC Signature",
          "url": "https://github.com/advisories/GHSA-869p-cjfg-cm3x",
          "severity": "high",
          "cwe": [
            "CWE-347"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
          },
          "range": "<3.2.3"
        }
      ],
      "effects": [],
      "range": "=4.0.0 || <3.2.3",
      "nodes": [
        "node_modules/firebase-admin/node_modules/jws",
        "node_modules/jsonwebtoken/node_modules/jws",
        "node_modules/jws"
      ],
      "fixAvailable": true
    },
    "limitation": {
      "name": "limitation",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "wikimedia-kad-fork"
      ],
      "effects": [
        "service-runner"
      ],
      "range": ">=0.2.3",
      "nodes": [
        "node_modules/limitation"
      ],
      "fixAvailable": {
        "name": "service-runner",
        "version": "2.9.0",
        "isSemVerMajor": true
      }
    },
    "lodash": {
      "name": "lodash",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1112455,
          "name": "lodash",
          "dependency": "lodash",
          "title": "Lodash has Prototype Pollution Vulnerability in `_.unset` and `_.omit` functions",
          "url": "https://github.com/advisories/GHSA-xxjr-mmjv-4gpg",
          "severity": "moderate",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 6.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L"
          },
          "range": ">=4.0.0 <=4.17.22"
        },
        {
          "source": 1115806,
          "name": "lodash",
          "dependency": "lodash",
          "title": "lodash vulnerable to Code Injection via `_.template` imports key names",
          "url": "https://github.com/advisories/GHSA-r5fr-rjxr-66jc",
          "severity": "high",
          "cwe": [
            "CWE-94"
          ],
          "cvss": {
            "score": 8.1,
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H"
          },
          "range": ">=4.0.0 <=4.17.23"
        },
        {
          "source": 1115810,
          "name": "lodash",
          "dependency": "lodash",
          "title": "lodash vulnerable to Prototype Pollution via array path bypass in `_.unset` and `_.omit`",
          "url": "https://github.com/advisories/GHSA-f23m-r3pf-42rh",
          "severity": "moderate",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 6.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L"
          },
          "range": "<=4.17.23"
        }
      ],
      "effects": [],
      "range": "<=4.17.23",
      "nodes": [
        "node_modules/lodash"
      ],
      "fixAvailable": true
    },
    "minimatch": {
      "name": "minimatch",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1113461,
          "name": "minimatch",
          "dependency": "minimatch",
          "title": "minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern",
          "url": "https://github.com/advisories/GHSA-3ppc-4f35-3m26",
          "severity": "high",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": ">=5.0.0 <5.1.7"
        },
        {
          "source": 1113540,
          "name": "minimatch",
          "dependency": "minimatch",
          "title": "minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments",
          "url": "https://github.com/advisories/GHSA-7r86-cg39-jmmj",
          "severity": "high",
          "cwe": [
            "CWE-407"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=5.0.0 <5.1.8"
        },
        {
          "source": 1113548,
          "name": "minimatch",
          "dependency": "minimatch",
          "title": "minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions",
          "url": "https://github.com/advisories/GHSA-23c5-xmqv-rm74",
          "severity": "high",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=5.0.0 <5.1.8"
        }
      ],
      "effects": [
        "@eslint/eslintrc",
        "@humanwhocodes/config-array",
        "@typescript-eslint/typescript-estree",
        "eslint",
        "eslint-plugin-n",
        "glob",
        "mocha",
        "nodemon",
        "test-exclude"
      ],
      "range": "5.0.0 - 5.1.7",
      "nodes": [
        "node_modules/minimatch"
      ],
      "fixAvailable": {
        "name": "nyc",
        "version": "14.1.1",
        "isSemVerMajor": true
      }
    },
    "mocha": {
      "name": "mocha",
      "severity": "high",
      "isDirect": true,
      "via": [
        "glob",
        "minimatch",
        "serialize-javascript"
      ],
      "effects": [],
      "range": "8.0.0 - 12.0.0-beta-2",
      "nodes": [
        "node_modules/mocha"
      ],
      "fixAvailable": true
    },
    "ms": {
      "name": "ms",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1109573,
          "name": "ms",
          "dependency": "ms",
          "title": "Vercel ms Inefficient Regular Expression Complexity vulnerability",
          "url": "https://github.com/advisories/GHSA-w9mr-4mfr-499f",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": "<2.0.0"
        }
      ],
      "effects": [
        "wikimedia-kad-fork"
      ],
      "range": "<2.0.0",
      "nodes": [
        "node_modules/wikimedia-kad-fork/node_modules/ms"
      ],
      "fixAvailable": {
        "name": "service-runner",
        "version": "2.9.0",
        "isSemVerMajor": true
      }
    },
    "node-forge": {
      "name": "node-forge",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1088227,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Prototype Pollution in node-forge debug API.",
          "url": "https://github.com/advisories/GHSA-5rrq-pxf6-6jx5",
          "severity": "low",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<1.0.0"
        },
        {
          "source": 1088228,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Prototype Pollution in node-forge util.setPath API",
          "url": "https://github.com/advisories/GHSA-wxgw-qj99-44c2",
          "severity": "low",
          "cwe": [],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<0.10.0"
        },
        {
          "source": 1088229,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "URL parsing in node-forge could lead to undesired behavior.",
          "url": "https://github.com/advisories/GHSA-gf8q-jrpm-jvxq",
          "severity": "low",
          "cwe": [
            "CWE-601"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<1.0.0"
        },
        {
          "source": 1088746,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Improper Verification of Cryptographic Signature in `node-forge`",
          "url": "https://github.com/advisories/GHSA-2r2c-g63r-vccr",
          "severity": "moderate",
          "cwe": [
            "CWE-347"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
          },
          "range": "<1.3.0"
        },
        {
          "source": 1093719,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Open Redirect in node-forge",
          "url": "https://github.com/advisories/GHSA-8fr3-hfg3-gpgp",
          "severity": "moderate",
          "cwe": [
            "CWE-601"
          ],
          "cvss": {
            "score": 6.1,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
          },
          "range": "<1.0.0"
        },
        {
          "source": 1102317,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Prototype Pollution in node-forge",
          "url": "https://github.com/advisories/GHSA-92xj-mqp7-vmcj",
          "severity": "high",
          "cwe": [
            "CWE-915",
            "CWE-1321"
          ],
          "cvss": {
            "score": 8.8,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:P/RL:O/RC:C"
          },
          "range": "<0.10.0"
        },
        {
          "source": 1102321,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Improper Verification of Cryptographic Signature in node-forge",
          "url": "https://github.com/advisories/GHSA-x4jg-mjrx-434g",
          "severity": "high",
          "cwe": [
            "CWE-347"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
          },
          "range": "<1.3.0"
        },
        {
          "source": 1102322,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Improper Verification of Cryptographic Signature in node-forge",
          "url": "https://github.com/advisories/GHSA-cfm4-qjh2-4765",
          "severity": "high",
          "cwe": [
            "CWE-347"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
          },
          "range": "<1.3.0"
        },
        {
          "source": 1110996,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "node-forge has ASN.1 Unbounded Recursion",
          "url": "https://github.com/advisories/GHSA-554w-wpv2-vw27",
          "severity": "high",
          "cwe": [
            "CWE-674"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<1.3.2"
        },
        {
          "source": 1110998,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "node-forge has an Interpretation Conflict vulnerability via its ASN.1 Validator Desynchronization",
          "url": "https://github.com/advisories/GHSA-5gfm-wpxj-wjgq",
          "severity": "high",
          "cwe": [
            "CWE-436"
          ],
          "cvss": {
            "score": 8.6,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N"
          },
          "range": "<1.3.2"
        },
        {
          "source": 1111068,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "node-forge is vulnerable to ASN.1 OID Integer Truncation",
          "url": "https://github.com/advisories/GHSA-65ch-62r8-g69g",
          "severity": "moderate",
          "cwe": [
            "CWE-190"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<1.3.2"
        },
        {
          "source": 1115545,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Forge has a basicConstraints bypass in its certificate chain verification (RFC 5280 violation)",
          "url": "https://github.com/advisories/GHSA-2328-f5f3-gj25",
          "severity": "high",
          "cwe": [
            "CWE-295"
          ],
          "cvss": {
            "score": 7.4,
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N"
          },
          "range": "<=1.3.3"
        },
        {
          "source": 1115546,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Forge has signature forgery in Ed25519 due to missing S > L check",
          "url": "https://github.com/advisories/GHSA-q67f-28xg-22rw",
          "severity": "high",
          "cwe": [
            "CWE-347"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
          },
          "range": "<1.4.0"
        },
        {
          "source": 1115548,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Forge has Denial of Service via Infinite Loop in BigInteger.modInverse() with Zero Input",
          "url": "https://github.com/advisories/GHSA-5m6q-g25r-mvwx",
          "severity": "high",
          "cwe": [
            "CWE-835"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<1.4.0"
        },
        {
          "source": 1115612,
          "name": "node-forge",
          "dependency": "node-forge",
          "title": "Forge has signature forgery in RSA-PKCS due to ASN.1 extra field  ",
          "url": "https://github.com/advisories/GHSA-ppp5-5v6c-4jwp",
          "severity": "high",
          "cwe": [
            "CWE-20",
            "CWE-347"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
          },
          "range": "<1.4.0"
        }
      ],
      "effects": [],
      "range": "<=1.3.3",
      "nodes": [
        "node_modules/firebase-admin/node_modules/node-forge",
        "node_modules/node-forge"
      ],
      "fixAvailable": true
    },
    "nodemon": {
      "name": "nodemon",
      "severity": "high",
      "isDirect": true,
      "via": [
        "minimatch"
      ],
      "effects": [],
      "range": "",
      "nodes": [
        "node_modules/nodemon"
      ],
      "fixAvailable": true
    },
    "nyc": {
      "name": "nyc",
      "severity": "high",
      "isDirect": true,
      "via": [
        "glob",
        "istanbul-lib-processinfo",
        "test-exclude"
      ],
      "effects": [],
      "range": ">=15.0.0-alpha.0",
      "nodes": [
        "node_modules/nyc"
      ],
      "fixAvailable": {
        "name": "nyc",
        "version": "14.1.1",
        "isSemVerMajor": true
      }
    },
    "on-headers": {
      "name": "on-headers",
      "severity": "low",
      "isDirect": false,
      "via": [
        {
          "source": 1106812,
          "name": "on-headers",
          "dependency": "on-headers",
          "title": "on-headers is vulnerable to http response header manipulation",
          "url": "https://github.com/advisories/GHSA-76c9-3jph-rj3q",
          "severity": "low",
          "cwe": [
            "CWE-241"
          ],
          "cvss": {
            "score": 3.4,
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N"
          },
          "range": "<1.1.0"
        }
      ],
      "effects": [
        "compression"
      ],
      "range": "<1.1.0",
      "nodes": [
        "node_modules/on-headers"
      ],
      "fixAvailable": true
    },
    "path-to-regexp": {
      "name": "path-to-regexp",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1115527,
          "name": "path-to-regexp",
          "dependency": "path-to-regexp",
          "title": "path-to-regexp vulnerable to Regular Expression Denial of Service via multiple route parameters",
          "url": "https://github.com/advisories/GHSA-37ch-88jc-xwx2",
          "severity": "high",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<0.1.13"
        },
        {
          "source": 1115573,
          "name": "path-to-regexp",
          "dependency": "path-to-regexp",
          "title": "path-to-regexp vulnerable to Denial of Service via sequential optional groups",
          "url": "https://github.com/advisories/GHSA-j3q9-mxjg-w52f",
          "severity": "high",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=8.0.0 <8.4.0"
        },
        {
          "source": 1115582,
          "name": "path-to-regexp",
          "dependency": "path-to-regexp",
          "title": "path-to-regexp vulnerable to Regular Expression Denial of Service via multiple wildcards",
          "url": "https://github.com/advisories/GHSA-27v5-c462-wpq7",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.9,
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=8.0.0 <8.4.0"
        }
      ],
      "effects": [
        "express"
      ],
      "range": "<=0.1.12 || 8.0.0 - 8.3.0",
      "nodes": [
        "node_modules/nise/node_modules/path-to-regexp",
        "node_modules/path-to-regexp"
      ],
      "fixAvailable": true
    },
    "picomatch": {
      "name": "picomatch",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1115549,
          "name": "picomatch",
          "dependency": "picomatch",
          "title": "Picomatch: Method Injection in POSIX Character Classes causes incorrect Glob Matching",
          "url": "https://github.com/advisories/GHSA-3v7f-55p6-f55p",
          "severity": "moderate",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
          },
          "range": "<2.3.2"
        },
        {
          "source": 1115551,
          "name": "picomatch",
          "dependency": "picomatch",
          "title": "Picomatch: Method Injection in POSIX Character Classes causes incorrect Glob Matching",
          "url": "https://github.com/advisories/GHSA-3v7f-55p6-f55p",
          "severity": "moderate",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
          },
          "range": ">=4.0.0 <4.0.4"
        },
        {
          "source": 1115552,
          "name": "picomatch",
          "dependency": "picomatch",
          "title": "Picomatch has a ReDoS vulnerability via extglob quantifiers",
          "url": "https://github.com/advisories/GHSA-c2c7-rcm5-vvqj",
          "severity": "high",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<2.3.2"
        },
        {
          "source": 1115554,
          "name": "picomatch",
          "dependency": "picomatch",
          "title": "Picomatch has a ReDoS vulnerability via extglob quantifiers",
          "url": "https://github.com/advisories/GHSA-c2c7-rcm5-vvqj",
          "severity": "high",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=4.0.0 <4.0.4"
        }
      ],
      "effects": [],
      "range": "<=2.3.1 || 4.0.0 - 4.0.3",
      "nodes": [
        "node_modules/picomatch",
        "node_modules/ts-declaration-location/node_modules/picomatch"
      ],
      "fixAvailable": true
    },
    "preq": {
      "name": "preq",
      "severity": "high",
      "isDirect": true,
      "via": [
        "request",
        "requestretry"
      ],
      "effects": [],
      "range": "*",
      "nodes": [
        "node_modules/preq"
      ],
      "fixAvailable": false
    },
    "protobufjs": {
      "name": "protobufjs",
      "severity": "critical",
      "isDirect": false,
      "via": [
        {
          "source": 1117042,
          "name": "protobufjs",
          "dependency": "protobufjs",
          "title": "Arbitrary code execution in protobufjs",
          "url": "https://github.com/advisories/GHSA-xq3m-2v4x-88gg",
          "severity": "critical",
          "cwe": [
            "CWE-94"
          ],
          "cvss": {
            "score": 9.8,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"
          },
          "range": "<7.5.5"
        }
      ],
      "effects": [],
      "range": "<7.5.5",
      "nodes": [
        "node_modules/protobufjs"
      ],
      "fixAvailable": true
    },
    "qs": {
      "name": "qs",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1113161,
          "name": "qs",
          "dependency": "qs",
          "title": "qs's arrayLimit bypass in comma parsing allows denial of service",
          "url": "https://github.com/advisories/GHSA-w7fw-mjwx-w883",
          "severity": "low",
          "cwe": [
            "CWE-20"
          ],
          "cvss": {
            "score": 3.7,
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": ">=6.7.0 <=6.14.1"
        },
        {
          "source": 1113719,
          "name": "qs",
          "dependency": "qs",
          "title": "qs's arrayLimit bypass in its bracket notation allows DoS via memory exhaustion",
          "url": "https://github.com/advisories/GHSA-6rw7-vpxm-498p",
          "severity": "moderate",
          "cwe": [
            "CWE-20"
          ],
          "cvss": {
            "score": 3.7,
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": "<6.14.1"
        }
      ],
      "effects": [
        "body-parser",
        "express",
        "request"
      ],
      "range": "<=6.14.1",
      "nodes": [
        "node_modules/qs",
        "node_modules/request/node_modules/qs"
      ],
      "fixAvailable": false
    },
    "request": {
      "name": "request",
      "severity": "critical",
      "isDirect": true,
      "via": [
        {
          "source": 1096727,
          "name": "request",
          "dependency": "request",
          "title": "Server-Side Request Forgery in Request",
          "url": "https://github.com/advisories/GHSA-p8p7-x288-28g6",
          "severity": "moderate",
          "cwe": [
            "CWE-918"
          ],
          "cvss": {
            "score": 6.1,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
          },
          "range": "<=2.88.2"
        },
        "form-data",
        "qs",
        "tough-cookie",
        "uuid"
      ],
      "effects": [
        "preq",
        "requestretry"
      ],
      "range": "*",
      "nodes": [
        "node_modules/request"
      ],
      "fixAvailable": false
    },
    "requestretry": {
      "name": "requestretry",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1090420,
          "name": "requestretry",
          "dependency": "requestretry",
          "title": "Cookie exposure in requestretry",
          "url": "https://github.com/advisories/GHSA-hjp8-2cm3-cc45",
          "severity": "high",
          "cwe": [
            "CWE-200"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N"
          },
          "range": "<7.0.0"
        },
        "request"
      ],
      "effects": [
        "preq"
      ],
      "range": "<=7.1.0",
      "nodes": [
        "node_modules/requestretry"
      ],
      "fixAvailable": false
    },
    "retry-request": {
      "name": "retry-request",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "teeny-request"
      ],
      "effects": [
        "@google-cloud/storage",
        "google-gax"
      ],
      "range": "7.0.0 - 7.0.2",
      "nodes": [
        "node_modules/retry-request"
      ],
      "fixAvailable": {
        "name": "firebase-admin",
        "version": "10.1.0",
        "isSemVerMajor": true
      }
    },
    "rimraf": {
      "name": "rimraf",
      "severity": "high",
      "isDirect": false,
      "via": [
        "glob"
      ],
      "effects": [
        "flat-cache"
      ],
      "range": "",
      "nodes": [
        "node_modules/mv/node_modules/rimraf",
        "node_modules/rimraf"
      ],
      "fixAvailable": true
    },
    "serialize-javascript": {
      "name": "serialize-javascript",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1113686,
          "name": "serialize-javascript",
          "dependency": "serialize-javascript",
          "title": "Serialize JavaScript is Vulnerable to RCE via RegExp.flags and Date.prototype.toISOString()",
          "url": "https://github.com/advisories/GHSA-5c6j-r48x-rmvq",
          "severity": "high",
          "cwe": [
            "CWE-96"
          ],
          "cvss": {
            "score": 8.1,
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H"
          },
          "range": "<=7.0.2"
        },
        {
          "source": 1115723,
          "name": "serialize-javascript",
          "dependency": "serialize-javascript",
          "title": "Serialize JavaScript has CPU Exhaustion Denial of Service via crafted array-like objects",
          "url": "https://github.com/advisories/GHSA-qj8w-gfj5-8c6v",
          "severity": "moderate",
          "cwe": [
            "CWE-400",
            "CWE-834"
          ],
          "cvss": {
            "score": 5.9,
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<7.0.5"
        }
      ],
      "effects": [
        "mocha"
      ],
      "range": "<=7.0.4",
      "nodes": [
        "node_modules/serialize-javascript"
      ],
      "fixAvailable": true
    },
    "service-runner": {
      "name": "service-runner",
      "severity": "high",
      "isDirect": true,
      "via": [
        "limitation",
        "tar"
      ],
      "effects": [],
      "range": ">=3.0.0",
      "nodes": [
        "node_modules/service-runner"
      ],
      "fixAvailable": {
        "name": "service-runner",
        "version": "2.9.0",
        "isSemVerMajor": true
      }
    },
    "swagger-router": {
      "name": "swagger-router",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "uuid"
      ],
      "effects": [],
      "range": ">=0.7.4",
      "nodes": [
        "node_modules/swagger-router"
      ],
      "fixAvailable": {
        "name": "swagger-router",
        "version": "0.7.3",
        "isSemVerMajor": true
      }
    },
    "tar": {
      "name": "tar",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1112659,
          "name": "tar",
          "dependency": "tar",
          "title": "node-tar Vulnerable to Arbitrary File Creation/Overwrite via Hardlink Path Traversal",
          "url": "https://github.com/advisories/GHSA-34x7-hfp2-rc4v",
          "severity": "high",
          "cwe": [
            "CWE-22",
            "CWE-59"
          ],
          "cvss": {
            "score": 8.2,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N"
          },
          "range": "<7.5.7"
        },
        {
          "source": 1113300,
          "name": "tar",
          "dependency": "tar",
          "title": "node-tar is Vulnerable to Arbitrary File Overwrite and Symlink Poisoning via Insufficient Path Sanitization",
          "url": "https://github.com/advisories/GHSA-8qq5-rm4j-mr97",
          "severity": "high",
          "cwe": [
            "CWE-22"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<=7.5.2"
        },
        {
          "source": 1113375,
          "name": "tar",
          "dependency": "tar",
          "title": "Arbitrary File Read/Write via Hardlink Target Escape Through Symlink Chain in node-tar Extraction",
          "url": "https://github.com/advisories/GHSA-83g3-92jg-28cx",
          "severity": "high",
          "cwe": [
            "CWE-22"
          ],
          "cvss": {
            "score": 7.1,
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N"
          },
          "range": "<7.5.8"
        },
        {
          "source": 1114200,
          "name": "tar",
          "dependency": "tar",
          "title": "tar has Hardlink Path Traversal via Drive-Relative Linkpath",
          "url": "https://github.com/advisories/GHSA-qffp-2rhf-9h96",
          "severity": "high",
          "cwe": [
            "CWE-22",
            "CWE-59"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<=7.5.9"
        },
        {
          "source": 1114302,
          "name": "tar",
          "dependency": "tar",
          "title": "node-tar Symlink Path Traversal via Drive-Relative Linkpath",
          "url": "https://github.com/advisories/GHSA-9ppj-qmqm-q256",
          "severity": "high",
          "cwe": [
            "CWE-22"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<=7.5.10"
        },
        {
          "source": 1114680,
          "name": "tar",
          "dependency": "tar",
          "title": "Race Condition in node-tar Path Reservations via Unicode Ligature Collisions on macOS APFS",
          "url": "https://github.com/advisories/GHSA-r6q2-hw4h-h46w",
          "severity": "high",
          "cwe": [
            "CWE-176",
            "CWE-367"
          ],
          "cvss": {
            "score": 8.8,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:H/A:L"
          },
          "range": "<=7.5.3"
        }
      ],
      "effects": [
        "service-runner"
      ],
      "range": "<=7.5.10",
      "nodes": [
        "node_modules/tar"
      ],
      "fixAvailable": {
        "name": "service-runner",
        "version": "2.9.0",
        "isSemVerMajor": true
      }
    },
    "teeny-request": {
      "name": "teeny-request",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "http-proxy-agent",
        "uuid"
      ],
      "effects": [
        "@google-cloud/storage",
        "retry-request"
      ],
      "range": "3.9.1 - 10.1.0",
      "nodes": [
        "node_modules/teeny-request"
      ],
      "fixAvailable": {
        "name": "firebase-admin",
        "version": "10.1.0",
        "isSemVerMajor": true
      }
    },
    "test-exclude": {
      "name": "test-exclude",
      "severity": "high",
      "isDirect": false,
      "via": [
        "glob",
        "minimatch"
      ],
      "effects": [
        "nyc"
      ],
      "range": "",
      "nodes": [
        "node_modules/test-exclude"
      ],
      "fixAvailable": {
        "name": "nyc",
        "version": "14.1.1",
        "isSemVerMajor": true
      }
    },
    "tough-cookie": {
      "name": "tough-cookie",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1097682,
          "name": "tough-cookie",
          "dependency": "tough-cookie",
          "title": "tough-cookie Prototype Pollution vulnerability",
          "url": "https://github.com/advisories/GHSA-72xf-g2v4-qvf3",
          "severity": "moderate",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 6.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N"
          },
          "range": "<4.1.3"
        }
      ],
      "effects": [
        "request"
      ],
      "range": "<4.1.3",
      "nodes": [
        "node_modules/tough-cookie"
      ],
      "fixAvailable": false
    },
    "uuid": {
      "name": "uuid",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        {
          "source": 1116970,
          "name": "uuid",
          "dependency": "uuid",
          "title": "uuid: Missing buffer bounds check in v3/v5/v6 when buf is provided",
          "url": "https://github.com/advisories/GHSA-w5hq-g745-h8pq",
          "severity": "moderate",
          "cwe": [
            "CWE-787",
            "CWE-1285"
          ],
          "cvss": {
            "score": 0,
            "vectorString": null
          },
          "range": "<14.0.0"
        }
      ],
      "effects": [
        "@google-cloud/storage",
        "firebase-admin",
        "gaxios",
        "google-gax",
        "istanbul-lib-processinfo",
        "request",
        "swagger-router",
        "teeny-request"
      ],
      "range": "<14.0.0",
      "nodes": [
        "node_modules/@google-cloud/storage/node_modules/uuid",
        "node_modules/gaxios/node_modules/uuid",
        "node_modules/google-gax/node_modules/uuid",
        "node_modules/istanbul-lib-processinfo/node_modules/uuid",
        "node_modules/request/node_modules/uuid",
        "node_modules/swagger-router/node_modules/uuid",
        "node_modules/teeny-request/node_modules/uuid",
        "node_modules/uuid"
      ],
      "fixAvailable": {
        "name": "nyc",
        "version": "14.1.1",
        "isSemVerMajor": true
      }
    },
    "wikimedia-kad-fork": {
      "name": "wikimedia-kad-fork",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "ms"
      ],
      "effects": [
        "limitation"
      ],
      "range": "*",
      "nodes": [
        "node_modules/wikimedia-kad-fork"
      ],
      "fixAvailable": {
        "name": "service-runner",
        "version": "2.9.0",
        "isSemVerMajor": true
      }
    },
    "yaml": {
      "name": "yaml",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1115556,
          "name": "yaml",
          "dependency": "yaml",
          "title": "yaml is vulnerable to Stack Overflow via deeply nested YAML collections",
          "url": "https://github.com/advisories/GHSA-48c2-rrv3-qjmp",
          "severity": "moderate",
          "cwe": [
            "CWE-674"
          ],
          "cvss": {
            "score": 4.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": ">=2.0.0 <2.8.3"
        }
      ],
      "effects": [],
      "range": "2.0.0 - 2.8.2",
      "nodes": [
        "node_modules/yaml"
      ],
      "fixAvailable": true
    }
  },
  "metadata": {
    "vulnerabilities": {
      "info": 0,
      "low": 6,
      "moderate": 19,
      "high": 32,
      "critical": 5,
      "total": 62
    },
    "dependencies": {
      "prod": 410,
      "dev": 417,
      "optional": 85,
      "peer": 0,
      "peerOptional": 0,
      "total": 910
    }
  }
}

--- end ---
$ /usr/bin/npm install
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'push-notifications@0.0.1',
npm WARN EBADENGINE   required: { node: '^18' },
npm WARN EBADENGINE   current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated kad-fs@0.0.4: This package is no longer maintained.
npm WARN deprecated rimraf@2.4.5: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated lodash.clone@4.5.0: This package is deprecated. Use structuredClone instead.
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated kad-memstore@0.0.1: This package is no longer maintained.
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@8.1.0: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
npm WARN deprecated preq@0.5.14: Deprecated as this is a wrapper around the deprecated request library. Preq can be replaced with fetch, which is available from Node 18 as an experimental feature.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated tar@6.2.1: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
npm WARN deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
--- stdout ---

added 885 packages, and audited 886 packages in 42s

194 packages are looking for funding
  run `npm fund` for details

45 vulnerabilities (2 low, 15 moderate, 26 high, 2 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

--- end ---
$ package-lock-lint /src/repo/package-lock.json
--- stdout ---
Checking /src/repo/package-lock.json

--- end ---
Upgrading n:eslint-config-wikimedia from ^0.28.1 -> 0.32.3
$ /usr/bin/npm install
--- stderr ---
npm WARN ERESOLVE overriding peer dependency
npm WARN While resolving: eslint-plugin-wdio@9.27.0
npm WARN Found: eslint@8.57.1
npm WARN node_modules/eslint
npm WARN   peer eslint@"^6.0.0 || ^7.0.0 || >=8.0.0" from @eslint-community/eslint-utils@4.9.1
npm WARN   node_modules/@eslint-community/eslint-utils
npm WARN     @eslint-community/eslint-utils@"^4.9.1" from @typescript-eslint/utils@8.59.0
npm WARN     node_modules/@typescript-eslint/utils
npm WARN     8 more (eslint, eslint-plugin-es-x, eslint-plugin-n, ...)
npm WARN   30 more (@typescript-eslint/eslint-plugin, ...)
npm WARN 
npm WARN Could not resolve dependency:
npm WARN peer eslint@"^9.39.2" from eslint-plugin-wdio@9.27.0
npm WARN node_modules/eslint-config-wikimedia/node_modules/eslint-plugin-wdio
npm WARN   eslint-plugin-wdio@"^9.16.2" from eslint-config-wikimedia@0.32.3
npm WARN   node_modules/eslint-config-wikimedia
npm WARN 
npm WARN Conflicting peer dependency: eslint@9.39.4
npm WARN node_modules/eslint
npm WARN   peer eslint@"^9.39.2" from eslint-plugin-wdio@9.27.0
npm WARN   node_modules/eslint-config-wikimedia/node_modules/eslint-plugin-wdio
npm WARN     eslint-plugin-wdio@"^9.16.2" from eslint-config-wikimedia@0.32.3
npm WARN     node_modules/eslint-config-wikimedia
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'push-notifications@0.0.1',
npm WARN EBADENGINE   required: { node: '^18' },
npm WARN EBADENGINE   current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
--- stdout ---

added 34 packages, removed 8 packages, changed 11 packages, and audited 912 packages in 8s

207 packages are looking for funding
  run `npm fund` for details

46 vulnerabilities (2 low, 15 moderate, 27 high, 2 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

--- end ---
$ package-lock-lint /src/repo/package-lock.json
--- stdout ---
Checking /src/repo/package-lock.json

--- end ---
$ package-lock-lint /src/repo/package-lock.json
--- stdout ---
Checking /src/repo/package-lock.json

--- end ---
$ ./node_modules/.bin/eslint . --fix
--- stderr ---
Oops! Something went wrong! :(

ESLint: 8.57.1

ESLint couldn't find the plugin "eslint-plugin-json".

(The package "eslint-plugin-json" was not found when loaded as a Node module from the directory "/src/repo".)

It's likely that the plugin isn't installed correctly. Try reinstalling by running the following:

    npm install eslint-plugin-json@latest --save-dev

The plugin "eslint-plugin-json" was referenced from the config file in ".eslintrc.json".

If you still can't figure out the problem, please stop by https://eslint.org/chat/help to chat with the team.
--- stdout ---

--- end ---
$ ./node_modules/.bin/eslint . -f json
--- stderr ---
Oops! Something went wrong! :(

ESLint: 8.57.1

ESLint couldn't find the plugin "eslint-plugin-json".

(The package "eslint-plugin-json" was not found when loaded as a Node module from the directory "/src/repo".)

It's likely that the plugin isn't installed correctly. Try reinstalling by running the following:

    npm install eslint-plugin-json@latest --save-dev

The plugin "eslint-plugin-json" was referenced from the config file in ".eslintrc.json".

If you still can't figure out the problem, please stop by https://eslint.org/chat/help to chat with the team.
--- stdout ---

--- end ---
Traceback (most recent call last):
  File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 1268, in main
    libup.run()
    ~~~~~~~~~^^
  File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 1202, in run
    self.npm_upgrade(plan)
    ~~~~~~~~~~~~~~~~^^^^^^
  File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 1061, in npm_upgrade
    hook(update)
    ~~~~^^^^^^^^
  File "/venv/lib/python3.13/site-packages/runner/__init__.py", line 1076, in _handle_eslint
    ESLintHandler(self.ctx).handle(update)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^
  File "/venv/lib/python3.13/site-packages/runner/handlers/eslint.py", line 312, in handle
    self.do_handle()
    ~~~~~~~~~~~~~~^^
  File "/venv/lib/python3.13/site-packages/runner/handlers/eslint.py", line 251, in do_handle
    errors = json.loads(
        self.check_call(
            eslint_binary + files + ["-f", "json"], ignore_returncode=True
        )
    )
  File "/usr/lib/python3.13/json/__init__.py", line 346, in loads
    return _default_decoder.decode(s)
           ~~~~~~~~~~~~~~~~~~~~~~~^^^
  File "/usr/lib/python3.13/json/decoder.py", line 345, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
               ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/json/decoder.py", line 363, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Source code is licensed under the AGPL.