tscircuit@0.0.3047
**Design circuit boards with TypeScript and React.**
AI Security Review
scanned 4d ago · by lpm-firewall-aiThe browser entry starts telemetry automatically and can report runtime errors and activity to the vendor endpoint, which exceeds package/version-only telemetry. The opt-out and event-specific reporting limit the behavior, so this is suspicious rather than malicious.
Static reason
No blocking static signals were detected.
Trigger
Importing the browser entry in a browser initializes analytics; UI error reporting and runframe activity hooks send events.
Impact
Browser domain or anonymous identifier and runtime error details may be disclosed to the analytics endpoint without explicit consent.
Mechanism
PostHog sends activity and error events, potentially including error messages and stacks, to the package vendor's endpoint. TSCIRCUIT_TELEMETRY_DISABLED disables this behavior.
AI rationale
The browser entry starts telemetry automatically and can report runtime errors and activity to the vendor endpoint, which exceeds package/version-only telemetry. The opt-out and event-specific reporting limit the behavior, so this is suspicious rather than malicious.
Evidence
dist/browser.min.jslocalStorage key runframe:anonymous-id
Network endpoints1
postpig.tscircuit.com
Decision evidence
public snapshotAI called this Suspicious at 88.0% confidence as Dangerous Capability with medium false-positive risk.
Evidence for warning
- The package exposes dist/browser.min.js as a browser entry point.
- That bundle initializes PostHog in browser contexts and sends runframe activity and error events to https://postpig.tscircuit.com; error events may include messages and stacks.
Evidence against
- The telemetry has a TSCIRCUIT_TELEMETRY_DISABLED opt-out.
- Error reporting is tied to UI error state, and activity reporting is called from a runframe activity hook.
Behavioral surface
EnvironmentVarsFilesystem
HighEntropyStringsMinifiedUrlStrings
Oversized source lightweight scan
dist/browser.min.js51.7 MB file, sampled 256 KB
HighEntropyStrings
Source & flagged code
2 flaggeddist/webworker.min.jsView file
•path = dist/webworker.min.js
kind = oversized_source_file
sizeBytes = 18899533
magicHex = [redacted]
Medium
Oversized Source File
Package contains source files above the normal full-analysis size ceiling.
dist/webworker.min.jsView on unpkgpackage.jsonView file
26"exports": {
".": {
"types": "./dist/index.d.ts",
"default": "./dist/index.js"
},
"./browser": "./dist/browser.min.js"
},
"bin": {
"tsci": "cli.mjs",
"tscircuit": "cli.mjs"
},
"devDependencies": {
"@types
Medium
Ai Review Evidence
The package exposes dist/browser.min.js as a browser entry point.
package.jsonView on unpkg · L26Findings
4 Medium4 Low
MediumEnvironment Vars
MediumOversized Source Filedist/webworker.min.js
MediumStructural Risk Force Deep Review
MediumAi Review Evidencepackage.json
LowScripts Present
LowFilesystem
LowHigh Entropy Strings
LowUrl Strings
Affected versions and remediation
This report applies to tscircuit@0.0.3047.
See all versions of tscircuit for other recorded verdicts.
- Review the evidence and your use of tscircuit@0.0.3047 before allowing it. Restrict the permissions described in this report.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
Evidence last updated: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.