npm @firebase/firestore @4.15.0
score
0.7333
high
flagged
2026-06-16 12:00
Signals fired
| signal | weight | rationale |
|---|---|---|
| topology | ||
| dist_tag_anomaly | 0.5 | dist-tags.latest=4.15.0 but max published is 4.16.0-20260615181107 |
| mass_publish_burst | 0.8 | publisher 'google-wombot' pushed 7 packages in the last 15min on npm |
| shared_repo_different_publisher | 0.9 | repo 'git+https://github.com/firebase/firebase-js-sdk.git' also claimed by 1 package(s) under different publishers: ['npm/@unstoppabledomains/firebase-auth'] |
Prior profile (what it deviated from)
{
"had_install_script": false,
"maintainers": [
"firebase-ops",
"feiyang.chen",
"google-wombot",
"chholland"
],
"versions": 3966
}
Evidence (package doc at flag time)
{
"dependencies_count": 7,
"dist": {
"integrity": "sha512-Fj9osqYkz2Rqr7kW3/A8BRd8CyJ7yA5K8YjhihRdyJWbL+FsELVcR6DpoCplrp1IyU+xeGgTubo1UOySXpY+EA==",
"tarball": "https://registry.npmjs.org/@firebase/firestore/-/firestore-4.15.0.tgz",
"unpackedSize": 57963446
},
"dist-tags": {
"BundlePrerelease": "2.0.5-BundlePrerelease.b662f8c0a",
"auth-redirect-credentials": "4.7.10-auth-redirect-credentials.b424e5897",
"beta": "0.0.900-exp.8b4d7550f",
"caching-fdc": "4.9.2-caching-fdc.9f17eac6e",
"canary": "4.13.0-canary.bfb9accdc",
"dataconnect-preview": "4.6.4-dataconnect-preview.d986d4bf2",
"eap-ai-hybridinference": "4.7.12-eap-ai-hybridinference.58d92df33",
"eap-auth-emulator": "1.17.1-eap-auth-emulator.df41ee388",
"eap-crashlytics": "4.15.0-eap-crashlytics.558ee841d",
"eap-firestore-backfiller": "4.6.3-eap-firestore-backfiller.87babf60c",
"eap-firestore-debug": "2.0.4-1.0.0-eap-firestore-debug.9c6096f43",
"eap-firestore-pipelines": "4.9.2-eap-firestore-pipelines.2.e4cdd2e06",
"eap-storage-emulator": "2.1.7-eap-storage-emulator.ed256f582",
"eap-vertexai-hybgoog": "4.7.10-eap-vertexai-hybgoog.31261ca31",
"eap-vertexai-hybridinference": "4.7.10-eap-vertexai-hybridinference.e83974308",
"exp": "0.0.900-exp.f6733b13b",
"exp-types-exploration": "2.3.10-8.9.1-exp-types-exploration.635c9e3fd",
"firebase-studio-sdk-integration": "4.9.0-firebase-studio-sdk-integration.556d1bed2",
"firestore-bundles-alpha": "1.18.0-alpha.96ae6a5fe",
"latest": "4.15.0",
"longpoll": "2.1.2-longpoll.66863f547",
"next": "4.16.0-20260616165109",
"passkey-preview": "4.6.0-passkey-preview.103ead202",
"pr5646": "3.1.1-pr5646.2abc5e854",
"ssl-check": "4.7.10-ssl-check.4f23f3343",
"vertex-preview": "4.5.1-vertex-preview.8b70fc586",
"vertexai-preview": "4.7.2-vertexai-preview.6b035b7d3"
},
"latest_version": "4.15.0",
"maintainers": [
{
"email": "operations+plainlogo@firebase.com",
"name": "firebase-ops"
},
{
"email": "feiyang.chen1@gmail.com",
"name": "feiyang.chen"
},
{
"email": "node-team-npm+wombot@google.com",
"name": "google-wombot"
},
{
"email": "chholland@google.com",
"name": "chholland"
}
],
"num_versions": 3968,
"repository": {
"directory": "packages/firestore",
"type": "git",
"url": "git+https://github.com/firebase/firebase-js-sdk.git"
},
"scripts": {
"api-report": "run-s --npm-path npm api-report:main api-report:pipelines api-report:lite api-report:lite:pipelines && yarn api-report:api-json",
"api-report:api-json": "rm -rf temp && api-extractor run --local --verbose",
"api-report:lite": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\"}' ts-node ../../repo-scripts/prune-dts/extract-public-api.ts --package firestore-lite --packageRoot . --typescriptDts ./dist/firestore/lite/index.d.ts --rollupDts ./dist/lite/private.d.ts --untrimmedRollupDts ./dist/lite/internal.d.ts --publicDts ./dist/lite/index.d.ts",
"api-report:lite:pipelines": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\"}' ts-node ../../repo-scripts/prune-dts/extract-public-api.ts --package firestore-lite-pipelines --packageRoot . --typescriptDts ./dist/firestore/lite/pipelines/pipelines.d.ts --rollupDts ./dist/lite/private.pipelines.d.ts --untrimmedRollupDts ./dist/lite/internal.pipelines.d.ts --publicDts ./dist/lite/pipelines.d.ts --otherExportsPublicDtsFiles ./dist/lite/index.d.ts --excludeForgottenExportWarning",
"api-report:main": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\"}' ts-node ../../repo-scripts/prune-dts/extract-public-api.ts --package firestore --packageRoot . --typescriptDts ./dist/firestore/src/index.d.ts --rollupDts ./dist/private.d.ts --untrimmedRollupDts ./dist/internal.d.ts --publicDts ./dist/index.d.ts",
"api-report:pipelines": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\"}' ts-node ../../repo-scripts/prune-dts/extract-public-api.ts --package firestore-pipelines --packageRoot . --typescriptDts ./dist/firestore/pipelines/pipelines.d.ts --rollupDts ./dist/private.pipelines.d.ts --untrimmedRollupDts ./dist/internal.pipelines.d.ts --publicDts ./dist/pipelines.d.ts --otherExportsPublicDtsFiles ./dist/index.d.ts --excludeForgottenExportWarning && TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\"}' ts-node scripts/build-console-ui-types.ts --input ./dist/pipelines.d.ts --output ./dist/pipelines_extra_lib.txt",
"assertion-id:check": "ts-node scripts/assertion-id-tool.ts --dir=src --check",
"assertion-id:find": "ts-node scripts/assertion-id-tool.ts --dir=src --find",
"assertion-id:list": "ts-node scripts/assertion-id-tool.ts --dir=src --list",
"assertion-id:new": "ts-node scripts/assertion-id-tool.ts --dir=src --new",
"build": "run-p --npm-path npm build:lite build:main",
"build:debug": "rollup -c rollup.config.debug.js",
"build:deps": "lerna run --scope @firebase/firestore --include-dependencies build",
"build:lite": "rollup -c rollup.config.lite.js",
"build:main": "rollup -c rollup.config.js",
"build:release": "yarn build && yarn typings:public",
"build:scripts": "tsc -moduleResolution node --module commonjs scripts/*.ts && ls scripts/*.js | xargs -I % sh -c 'terser % -o %'",
"bundle": "rollup -c",
"compile": "tsc --emitDeclarationOnly --declaration -p tsconfig.json",
"dev": "rollup -c -w",
"doc": "api-documenter markdown --input temp --output docs",
"lint": "eslint -c .eslintrc.js '**/*.ts' --ignore-path '../../.gitignore'",
"lint:fix": "eslint --fix -c .eslintrc.js '**/*.ts' --ignore-path '../../.gitignore'",
"prebuild": "tsc --emitDeclarationOnly --declaration -p tsconfig.json; yarn api-report",
"predev": "yarn prebuild",
"prettier": "prettier --write '*.js' '@(lite|src|test|scripts)/**/*.ts' 'test/unit/remote/bloom_filter_golden_test_data/*.json'",
"test": "run-s --npm-path npm lint assertion-id:check test:all",
"test:all": "run-p --npm-path npm test:browser test:lite:browser test:travis test:minified test:browser:prod:enterprise test:lite:browser:enterprise",
"test:all:ci": "run-s --npm-path npm test:browser test:travis test:lite:browser test:browser:prod:enterprise test:lite:browser:enterprise",
"test:browser": "karma start",
"test:browser:debug": "karma start --browsers=Chrome --auto-watch",
"test:browser:emulator": "karma start --targetBackend=emulator",
"test:browser:emulator:debug": "karma start --browsers=Chrome --targetBackend=emulator",
"test:browser:nightly": "karma start --targetBackend=nightly",
"test:browser:prod": "karma start --targetBackend=prod",
"test:browser:prod:enterprise": "karma start --targetBackend=prod --databaseId=enterprise --firestoreEdition=enterprise",
"test:browser:unit": "karma start --unit",
"test:ci": "node ../../scripts/run_tests_in_ci.js -s test:all:ci",
"test:lite": "ts-node ./scripts/run-tests.ts --emulator --platform node_lite --main=lite/index.ts 'test/lite/**/*.test.ts'",
"test:lite:browser": "karma start --lite",
"test:lite:browser:debug": "karma start --browsers=Chrome --lite --auto-watch",
"test:lite:browser:enterprise": "karma start --lite --databaseId=enterprise --firestoreEdition=enterprise",
"test:lite:prod": "ts-node ./scripts/run-tests.ts --platform node_lite --main=lite/index.ts 'test/lite/**/*.test.ts'",
"test:lite:prod:enterprise": "ts-node ./scripts/run-tests.ts --platform node_lite --databaseId=enterprise --main=lite/index.ts --firestoreEdition=enterprise 'test/lite/**/*.test.ts'",
"test:minified": "(cd ../../integration/firestore ; yarn test)",
"test:node": "ts-node ./scripts/run-tests.ts --main=test/register.ts --emulator 'test/{,!(browser|lite)/**/}*.test.ts'",
"test:node:debug": "ts-node ./scripts/run-tests.ts --main=test/register.ts --emulator --debug 'test/{,!(browser|lite)/**/}*.test.ts'",
"test:node:nightly": "ts-node ./scripts/run-tests.ts --main=test/register.ts 'test/{,!(browser|lite)/**/}*.test.ts' --targetBackend=nightly",
"test:node:persistence": "ts-node ./scripts/run-tests.ts --main=test/register.ts --persistence --emulator 'test/{,!(browser|lite)/**/}*.test.ts'",
"test:node:persistence:prod": "ts-node ./scripts/run-tests.ts --main=test/register.ts --persistence 'test/{,!(browser|lite)/**/}*.test.ts'",
"test:node:prod": "ts-node ./scripts/run-tests.ts --main=test/register.ts 'test/{,!(browser|lite)/**/}*.test.ts'",
"test:node:prod:enterprise": "ts-node ./scripts/run-tests.ts --main=test/register.ts --databaseId=enterprise --firestoreEdition=enterprise 'test/{,!(browser|lite)/**/}*.test.ts'",
"test:travis": "ts-node --compiler-options='{\"module\":\"commonjs\"}' ../../scripts/emulator-testing/firestore-test-runner.ts",
"test:webkit:prod": "BROWSERS=WebkitHeadless karma start --targetBackend=prod",
"test:webkit:unit": "BROWSERS=WebkitHeadless karma start --unit --targetBackend=prod",
"trusted-type-check": "tsec -p tsconfig.json --noEmit",
"typings:public": "node ../../scripts/build/use_typings.js ./dist/index.d.ts"
},
"signal_details": {
"dist_tag_anomaly": "dist-tags.latest=4.15.0 but max published is 4.16.0-20260615181107",
"mass_publish_burst": "publisher 'google-wombot' pushed 7 packages in the last 15min on npm",
"shared_repo_different_publisher": "repo 'git+https://github.com/firebase/firebase-js-sdk.git' also claimed by 1 package(s) under different publishers: ['npm/@unstoppabledomains/firebase-auth']"
},
"time": {
"created": "2017-10-11T23:37:40.837Z",
"modified": "2026-06-16T17:00:16.722Z"
}
}