PkgRadar

Package evidence

[email protected]

Install Lifecycle Suppresses Failure: postinstall="[ -d .git ] && npm run prepare:husky || exit 0"

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
667
Versions published
10Established · −30% score
First published
Sep 2020
Publisher
uladkasach

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

Recommended action

Block this update

Static evidence trips multiple high-signal indicators. Quarantine the release until the publisher validates the change or you can rule out the indicators below.

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":["[email protected]"],"fail_on":"high"}'

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":["[email protected]"],"fail_on":"high"}'
Publisheruladkasach
Artifact bytes5,819
Previous version0.3.2
Published2024-09-01T17:33:56.313Z
SHA-256c9a3f3b37850ce8e7f4714278ad8902e4b7e96d6320eb37aab771ad195f141b5

Why flagged

What the scanner saw

New Lifecycle Script Vs Previous: postinstall added in 0.3.3 vs 0.3.2: "[ -d .git ] && npm run prepare:husky || exit 0"

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

Availability ledger

available

high
Last checked
highRisk
65Score
0.3.3Version
Status history (1 event)
  1. newavailable · risk high · score 65 · status changed

Evidence

Static findings

2 static · 1 from release diff · showing high-signal first.

SeverityKindPathDetailPoints
highNew Lifecycle Script Vs Previouspackage.jsonpostinstall added in 0.3.3 vs 0.3.2: "[ -d .git ] && npm run prepare:husky || exit 0"40
highInstall Lifecycle Suppresses Failurepackage.jsonpostinstall="[ -d .git ] && npm run prepare:husky || exit 0"20
Show all 3 findings (low-signal and informational)
SeverityKindPathDetailPoints
highNew Lifecycle Script Vs Previouspackage.jsonpostinstall added in 0.3.3 vs 0.3.2: "[ -d .git ] && npm run prepare:husky || exit 0"40
highInstall Lifecycle Suppresses Failurepackage.jsonpostinstall="[ -d .git ] && npm run prepare:husky || exit 0"20
lowInstall-time lifecycle scriptpackage.jsonpostinstall="[ -d .git ] && npm run prepare:husky || exit 0"5

Manifest

Package metadata

Scripts26
  • buildnpm run build:clean && npm run build:compile
  • build:cleanrm dist/ -rf
  • build:compiletsc -p ./tsconfig.build.json
  • build:tstsc -p ./tsconfig.build.json
  • commit:with-clinpx cz
  • fix:formatnpm run fix:format:prettier
  • fix:format:prettierprettier --write '**/*.ts' --config ./prettier.config.js
  • fix:linteslint -c ./.eslintrc.js src/**/*.ts --fix
  • postinstall[ -d .git ] && npm run prepare:husky || exit 0
  • postversiongit push origin HEAD --tags --no-verify
  • prepare:huskynpx husky install && chmod ug+x .husky/*
  • prepublishnpm run build
  • prepushnpm run test && npm run build
  • preversionnpm run prepush
  • testnpm run test:commits && npm run test:types && npm run test:format && npm run test:lint && npm run test:unit && npm run test:integration && npm run test:acceptance:locally
  • test:acceptancenpm run build && jest -c ./jest.acceptance.config.ts --forceExit --verbose --runInBand --passWithNoTests
  • test:acceptance:locallynpm run build && LOCALLY=true jest -c ./jest.acceptance.config.ts --forceExit --verbose --runInBand --passWithNoTests
  • test:commitsLAST_TAG=$(git describe --tags --abbrev=0 @^ 2> /dev/null || git rev-list --max-parents=0 HEAD) && npx commitlint --from $LAST_TAG --to HEAD --verbose
  • test:formatnpm run test:format:prettier
  • test:format:prettierprettier --parser typescript --check 'src/**/*.ts' --config ./prettier.config.js
  • test:integrationjest -c ./jest.integration.config.ts --forceExit --verbose --passWithNoTests $([ -z $THOROUGH ] && echo '--changedSince=main')
  • test:lintnpm run test:lint:eslint && npm run test:lint:deps
  • test:lint:depsnpx depcheck -c ./depcheckrc.yml
  • test:lint:eslinteslint -c ./.eslintrc.js src/**/*.ts
  • test:typestsc -p ./tsconfig.build.json --noEmit
  • test:unitjest -c ./jest.unit.config.ts --forceExit --verbose --passWithNoTests $([ -z $THOROUGH ] && echo '--changedSince=main')