PkgRadar

Package evidence

@stripe/[email protected]

Js Split Join Obfuscation: Array-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.

Trust signals

Why this verdict

PkgRadar discounts a release’s score when public reputation argues against novel malware. The verdict above already reflects these — the panel just explains what was applied.

Weekly downloads
274
Versions published
6
First published
Apr 2026
Publisher
GitHub ActionsTrusted automation · −70% score

Effective trust discount applied: 70% (max across signals — discounts don’t stack). New install-lifecycle deltas vs the previous release would clear the discount.

Recommended action

Review before promoting

Mixed signals: the package has indicators worth reading before allowing the update in automated dependency flows.

Block this release in CIcurl · GitHub Actions

Fail the build when this package version is added or upgraded. Replace $PKGRADAR_TOKEN with a Pro / Team API key from your dashboard.

curl -fsS https://pkgradar.com/gate/npm \
  -H "Authorization: Bearer $PKGRADAR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"specs":["@stripe/[email protected]"],"fail_on":"review"}'

GitHub Actions step:

- name: PkgRadar gate
  run: |
    curl -fsS https://pkgradar.com/gate/npm \
      -H "Authorization: Bearer ${{ secrets.PKGRADAR_TOKEN }}" \
      -H "Content-Type: application/json" \
      -d '{"specs":["@stripe/[email protected]"],"fail_on":"review"}'
Artifact bytes2,045,835
Previous version0.16.0
Published2026-05-19T19:37:54.133Z
SHA-25608f9fb6df750c8f00bed80e3b171e44e19acc7b8d1a20d5e3571dbeab32e696a

Why flagged

What the scanner saw

Js Split Join Obfuscation: Array-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.

Not observed: package install, lifecycle script execution, or sandbox execution. PkgRadar only inspects on-disk artifacts.

Availability ledger

available

review
Last checked
reviewRisk
15Score
0.17.1Version
Status history (1 event)
  1. newavailable · risk review · score 15 · status changed

Evidence

Static findings

48 static · 0 from release diff · showing high-signal first.

SeverityKindPathDetailPoints
highJs Split Join Obfuscationpackage/dist/configs/async-with-egress.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.bill.discount_calculation.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.customer_balance_application.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.invoice_collection_options.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.prorations.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.recurring_billing_item_handling.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/core.workflows.custom_action.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/custom-objects.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/extend.objects.custom_objects.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/extend.workflows.custom_action.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/runtime-core.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/sync-no-egress.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/async-with-egress.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.bill.discount_calculation.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.customer_balance_application.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.invoice_collection_options.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.prorations.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.recurring_billing_item_handling.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/core.workflows.custom_action.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/custom-objects.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/extend.objects.custom_objects.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/extend.workflows.custom_action.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/runtime-core.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/sync-no-egress.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
Show all 48 findings (low-signal and informational)
SeverityKindPathDetailPoints
highJs Split Join Obfuscationpackage/dist/configs/async-with-egress.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.bill.discount_calculation.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.customer_balance_application.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.invoice_collection_options.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.prorations.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.recurring_billing_item_handling.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/core.workflows.custom_action.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/custom-objects.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/extend.objects.custom_objects.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/extend.workflows.custom_action.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/runtime-core.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/sync-no-egress.cjsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/async-with-egress.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.bill.discount_calculation.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.customer_balance_application.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.invoice_collection_options.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.prorations.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/billing.recurring_billing_item_handling.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/core.workflows.custom_action.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/custom-objects.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/extend.objects.custom_objects.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/extend.workflows.custom_action.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/runtime-core.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
highJs Split Join Obfuscationpackage/dist/configs/sync-no-egress.jsArray-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.40
lowObfuscation Densitypackage/dist/configs/async-with-egress.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/billing.bill.discount_calculation.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/billing.customer_balance_application.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/billing.invoice_collection_options.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/billing.prorations.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/billing.recurring_billing_item_handling.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/core.workflows.custom_action.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/custom-objects.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/extend.objects.custom_objects.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/extend.workflows.custom_action.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/runtime-core.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/sync-no-egress.cjshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/async-with-egress.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/billing.bill.discount_calculation.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/billing.customer_balance_application.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/billing.invoice_collection_options.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/billing.prorations.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/billing.recurring_billing_item_handling.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/core.workflows.custom_action.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/custom-objects.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/extend.objects.custom_objects.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/extend.workflows.custom_action.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/runtime-core.jshigh encoded/escaped-token density0
lowObfuscation Densitypackage/dist/configs/sync-no-egress.jshigh encoded/escaped-token density0

Manifest

Package metadata

Scripts19
  • buildpnpm compile && pnpm verify:subpath-exports && pnpm generate:api-rollups && pnpm generate:api-report
  • check:api-reportpnpm check:api-surface-report
  • check:api-surface-reporttsx ../../scripts/src/api-report-generation/entrypoints/run-package-api-surface-report.ts
  • cleanrimraf dist temp
  • compiletsc -p tsconfig.build.json --emitDeclarationOnly && tsup
  • formatprettier --write .
  • generate:api-reportpnpm generate:api-surface-report
  • generate:api-rollup-rootapi-extractor run --local --config api-extractor-rollup.json
  • generate:api-rollup-subpathstsx ../../scripts/src/api-report-generation/entrypoints/run-package-api-subpath-rollups.ts --local
  • generate:api-rollupspnpm generate:api-rollup-root && pnpm generate:api-rollup-subpaths
  • generate:api-surface-reporttsx ../../scripts/src/api-report-generation/entrypoints/run-package-api-surface-report.ts --local
  • lintpnpm lint:eslint && pnpm lint:typecheck && pnpm lint:format
  • lint:eslinteslint .
  • lint:formatprettier --check .
  • lint:typechecktsc --noEmit --incremental --tsBuildInfoFile ./dist/tsconfig.check.tsbuildinfo
  • normalize:declarationsdeclaration-file-normalizer dist/index.d.ts
  • testvitest run
  • test:watchvitest
  • verify:subpath-exportsnode ./scripts/verify-subpath-exports.mjs
Dependencies5
  • @formspec/eslint-plugin0.1.0-alpha.59
  • @stripe/extensibility-jsonschema-tools0.6.8
  • eslint-plugin-no-secrets^2.2.1
  • eslint-plugin-security^3.0.1
  • yaml^2.8.3