@grest-ts/testkit
Component testing library for @grest-ts
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
Keywords
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| semgrep | semgrep:env-spread | AI (semgrep): Spreading process.env into spawn() options is standard for subprocess launchers; not exfiltration. | ai | |
| semgrep | semgrep:api-obfuscation-reflect | AI (semgrep): Reflect.get inside a Proxy trap is idiomatic JS; used for test selector delegation, not obfuscation. | ai |
Versions (showing 46 of 46)
| Version | Deps | Published |
|---|---|---|
| 0.0.58 | 0 / 0 | |
| 0.0.56 | 0 / 0 | |
| 0.0.55 | 0 / 0 | |
| 0.0.52 | 0 / 0 | |
| 0.0.51 | 0 / 0 | |
| 0.0.50 | 0 / 0 | |
| 0.0.49 | 0 / 0 | |
| 0.0.48 | 0 / 0 | |
| 0.0.47 | 0 / 0 | |
| 0.0.46 | 0 / 0 | |
| 0.0.45 | 0 / 0 | |
| 0.0.44 | 0 / 0 | |
| 0.0.43 | 0 / 0 | |
| 0.0.42 | 0 / 0 | |
| 0.0.39 | 0 / 0 | |
| 0.0.38 | 0 / 0 | |
| 0.0.37 | 0 / 0 | |
| 0.0.36 | 0 / 0 | |
| 0.0.35 | 0 / 0 | |
| 0.0.34 | 0 / 0 | |
| 0.0.33 | 0 / 0 | |
| 0.0.32 | 0 / 0 | |
| 0.0.31 | 0 / 0 | |
| 0.0.29 | 10 / 0 | |
| 0.0.28 | 10 / 0 | |
| 0.0.27 | 10 / 0 | |
| 0.0.26 | 10 / 0 | |
| 0.0.25 | 10 / 0 | |
| 0.0.24 | 10 / 0 | |
| 0.0.23 | 10 / 0 | |
| 0.0.22 | 10 / 0 | |
| 0.0.21 | 10 / 0 | |
| 0.0.20 | 10 / 0 | |
| 0.0.19 | 10 / 0 | |
| 0.0.18 | 10 / 0 | |
| 0.0.17 | 10 / 0 | |
| 0.0.16 | 10 / 0 | |
| 0.0.14 | 10 / 1 | |
| 0.0.13 | 10 / 1 | |
| 0.0.12 | 10 / 1 | |
| 0.0.11 | 10 / 1 | |
| 0.0.10 | 10 / 1 | |
| 0.0.8 | 10 / 1 | |
| 0.0.7 | 10 / 1 | |
| 0.0.6 | 10 / 1 | |
| 0.0.5 | 10 / 1 |
v0.0.58
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.56
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.55
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.52
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.51
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.50
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.49
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.48
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.47
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.46
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.45
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.44
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.43
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.42
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/583bcf3cdf7b9f9664b5f921e06c28ae0faf5693/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.39
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/6553501ffb1d3db0f261a8382de115dcf0898db1/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.38
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/75fddb18f4ecc7ee112e721734e67f52b9d9307b/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.37
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/33c39d48b651d66a1441b014ea7a89af0fe1c5e5/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.36
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/337be912be071d4ee170d992bd7197baedf13e43/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.35
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/36adb339cb2e0f5a8bcf847cccae243def5779ac/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.34
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/ba82fbf6464f486d3629115e7120f875ce0bb36e/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.33
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/4c1fdaa3ba9b15c55afbec325527eac43985c1cf/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.32
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/215c2e1de053e2301908798c3dd4be564093d095/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.31
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/3d8ba757e357ff0392094b986f9c08c1c165cec6/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.29
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/340be72e2eb5a40c990275ee8f70b83a884d475a/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.28
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/e704546fdd3d5b3d6dc99480051b6785f15cdd74/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.27
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/2185dfbe98317559d5d23be7aac52f57976a572b/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.26
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.25
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.24
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.23
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.22
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.21
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/3a6a6674e1e8772449f87979e1b6ec0be088183a/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.20
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.19
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/b8f622a16351fd4e6b7e3cae26f432a170b5455e/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.18
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.17
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.16
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.14
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.13
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.12
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/4f98191e32cc5bfded30293ef03ee9b0dc524d0f/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.11
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.10
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.8
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/809be4f2de537e699fdb2b0ac4a2706e6cab77bb/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.0.7
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.6
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.5
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/grest-ts/grest-ts/blob/3c1e1314bfb8d22b2000c46b65969dc3d0e79ac3/src/runner/IsolatedRunner.ts#L36 34 | 35 | this.process = spawn('npx', ['tsx', IsolatedRunner.isolatedLoaderPath!, this.config.executablePath], { > 36 | env: { 37 | ...process.env, 38 | [GG_ISOLATED_CONFIG]: JSON.stringify(this.config)
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.