has
Object.prototype.hasOwnProperty.call shortcut
Supply chain provenance
Status for the latest visible version.
Without SLSA provenance there is no cryptographic link between this tarball and the public source — the axios compromise (March 2026) relied on exactly this gap.
Maintainers
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| provenance | publisher-changed | AI (provenance): ljharb is explicitly listed as a contributor in package.json; this is a documented, legitimate maintainer transition from tarruda. ljharb has a strong track record (2847 approved packages). | ai | |
| typosquat | typosquat.levenshtein:hapi | AI (typosquat): `has` is a distinct, well-established utility package with no relation to `hapi`; Levenshtein distance of 2 on a 3-char name is not meaningful typosquatting. | ai | |
| typosquat | typosquat.levenshtein:qs | AI (typosquat): `has` is a distinct, well-established utility package with no relation to `qs`; Levenshtein distance of 2 on short names is not meaningful typosquatting. | ai | |
| bogus-package | bogus-package | AI (bogus-package): `has` is a legitimate micro-utility; tiny payload and inflated semver are expected characteristics of this historically published package. | ai |
Versions (showing 6 of 6)
| Version | Deps | Published |
|---|---|---|
| 1.0.4 | 0 / 3 | |
| 1.0.3 | 1 / 3 | |
| 1.0.2 | 1 / 3 | |
| 1.0.1 | 1 / 2 | |
| 1.0.0 | 0 / 2 | |
| 0.0.1 | 0 / 7 |
v1.0.3
2 findingsThis version was published by a different npm account than previous versions on 2018-06-04. This could indicate a legitimate maintainer transition or an account compromise.
Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v1.0.2
2 findingsThis version was published by a different npm account than previous versions on 2018-06-02. This could indicate a legitimate maintainer transition or an account compromise.
Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v1.0.1
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v1.0.0
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.1
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.