Package evidence
[email protected]
Install-time lifecycle script: postinstall="node -e \"const fs=require('fs'),p=require('path'),l=p.join('node_modules','draft-ole');try{fs.mkdirSync('node_modules',{recursive:true});if(fs.lstatSync(l).isSymbolicLink())process.exit(0);}catch{}try{fs.symlinkSync('..',l,'dir');}catch(e){if(e.code!=='EEXIST')throw e;}\""
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
- 155
- Versions published
- 2
- First published
- May 2026
- Publisher
- kazuy
Recommended action
Review before promotingMixed 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":["[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":["[email protected]"],"fail_on":"review"}'Why flagged
What the scanner saw
Install-time lifecycle script: postinstall="node -e \"const fs=require('fs'),p=require('path'),l=p.join('node_modules','draft-ole');try{fs.mkdirSync('node_modules',{recursive:true});if(fs.lstatSync(l).isSymbolicLink())process.exit(0);}catch{}try{fs.symlinkSync('..',l,'dir');}catch(e){if(e.code!=='EEXIST')throw e;}\""
Not observed: package install, lifecycle script execution, or sandbox execution. PkgRadar only inspects on-disk artifacts.
Availability ledger
available
Status history (1 event)
- new → available · risk review · score 5 · status changed
Evidence
Static findings
1 static · 0 from release diff · showing high-signal first.
No high-signal findings — see all findings below.
Show all 1 findings (low-signal and informational)
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| low | Install-time lifecycle script | package.json | postinstall="node -e \"const fs=require('fs'),p=require('path'),l=p.join('node_modules','draft-ole');try{fs.mkdirSync('node_modules',{recursive:true});if(fs.lstatSync(l).isSymbolicLink())process.exit(0);}catch{}try{fs.symlinkSync('..',l,'dir');}catch(e){if(e.code!=='EEXIST')throw e;}\"" | 5 |
Manifest
Package metadata
Scripts32
buildnode --experimental-strip-types scripts/gen-tag-dsl.ts && tsupbuild:examplestsx scripts/build-examples.ts examples/interactive/*.ts examples/*.tsbuild:runtimenode --experimental-strip-types scripts/build-runtime.tsbuild:transformernode --experimental-strip-types scripts/build-transformer.tsdemo:app-countertsx scripts/build-examples.ts examples/interactive/app-counter.ts --rundemo:app-formtsx scripts/build-examples.ts examples/interactive/app-form.ts --rundemo:appspnpm demo:app-counter && pnpm demo:app-formdemo:card-gallerytsx scripts/build-examples.ts examples/interactive/card-gallery.ts --rundemo:interactivepnpm demo:mvp && pnpm demo:card-gallery && pnpm demo:priority-tasks && pnpm demo:shopping-cartdemo:mvptsx scripts/build-examples.ts examples/interactive/mvp-demo.ts --rundemo:newpnpm demo:apps && pnpm demo:pages && pnpm demo:interactive && pnpm demo:showcasedemo:page-landingtsx scripts/build-examples.ts examples/page-landing.ts --rundemo:page-minimaltsx scripts/build-examples.ts examples/page-minimal.ts --rundemo:page-with-app-slottsx scripts/build-examples.ts examples/page-with-app-slot.ts --rundemo:pagespnpm demo:page-landing && pnpm demo:page-minimal && pnpm demo:page-with-app-slotdemo:priority-taskstsx scripts/build-examples.ts examples/interactive/priority-tasks.ts --rundemo:shopping-carttsx scripts/build-examples.ts examples/interactive/shopping-cart.ts --rundemo:showcasepnpm demo:showcase-button && pnpm demo:showcase-card && pnpm demo:showcase-listdemo:showcase-buttontsx scripts/build-examples.ts examples/showcase-button.ts --rundemo:showcase-cardtsx scripts/build-examples.ts examples/showcase-card.ts --rundemo:showcase-listtsx scripts/build-examples.ts examples/showcase-list.ts --rundocs:apitypedoclinteslint src/ tests/postinstallnode -e "const fs=require('fs'),p=require('path'),l=p.join('node_modules','draft-ole');try{fs.mkdirSync('node_modules',{recursive:true});if(fs.lstatSync(l).isSymbolicLink())process.exit(0);}catch{}try{fs.symlinkSync('..',l,'dir');}catch(e){if(e.code!=='EEXIST')throw e;}"testvitest run && pnpm test:typestest:e2eplaywright testtest:e2e:reportplaywright show-reporttest:e2e:uiplaywright test --uitest:typestsc -p tests/state-handler-typing/tsconfig.json --noEmittest:watchvitest- …and 2 more.