Close Open Privacy Scan

bolt Snapshot: commit 8647a06
science engine v1.23
schedule 2026-07-27T05:20:38.619415+00:00

verified_user Possible application data leak

Potential data exfiltration identified in application code.

Incomplete scan — only 101/173 dependencies were analyzed. Treat the score as provisional.

App Privacy Score

42 /100
High privacy risk — possible application leak

High risk · 352 finding(s)

Based on: 84 first-party package(s) · 101/173 deps analyzed

Dependency score: 97 (Low risk)

bar_chart Score Breakdown

telemetry −25
egress −15
pii_flow −15
env_fs −3

list Scan Summary

0 high 5 medium 347 low
First-party packages: 5
Dependency packages: 2
Ecosystem: python

swap_horiz Potential data exfiltration in application code

External domains: ::ffff:192.168.0.1aka.msaomedia.orgapi-inference.huggingface.coapi.github.comapi.gradio.appassets.babylonjs.combec81a83-5b5c-471e.gradio.livebrotlipy.readthedocs.iocdn-media.huggingface.cocdn.babylonjs.comcdn.jsdelivr.netcdnjs.cloudflare.comcloud.google.comcommonmark.orgcompat.spec.whatwg.orgdatasets-server.huggingface.codatatracker.ietf.orgdevblogs.microsoft.comdeveloper.mozilla.orgdocs.python.orgdrafts.csswg.orgen.wikipedia.orgeslint.orgeslint.styleevilmartians.comffmpeg.orgfonts.googleapis.comgit.iogithub.comgradio-builds.s3.amazonaws.comgradio-docs-json.s3.us-west-2.amazonaws.comgradio-lite-previews.s3.amazonaws.comgradio-space-api-fetcher-v2.hf.spacegradio-static-files.s3.us-west-2.amazonaws.comgradio.appgradio.livehandlebarsjs.comhf.spacehttpbin.orghuggingface.coimage_url.jpgimg.shields.iojestjs.iokatex.orgkit.svelte.devkroki.iomsdn.microsoft.commswjs.iomydomain.commüller.denodejs.orgnpmjs.comopencode.aiother.comowasp.orgpillow.readthedocs.ioplayground-worker.pages.devplaywright.devprettier.iopypi.orgraw.githubusercontent.comregistry.npmjs.orgrollupjs.orgrouter.huggingface.cosnippet.babylonjs.comstackoverflow.comstatus.gradio.appsvelte.devsveltejs.github.iosvgwg.orgtailwindcss.comtools.ietf.orgtwitter.comtypescript-eslint.iounpkg.comv4.svelte.devvega.github.iow3c.github.iowebplatform.github.iowww.ffmpeg.orgwww.geeksforgeeks.orgwww.gradio.appwww.mozilla.orgwww.npmjs.comwww.rfc-editor.orgwww.typescriptlang.orgwww.w3.orgwww.w3ctech.comxn--fiqs8s.icom.museumyarnpkg.com

medium first-party (npm): gradio PII-bearing data is written to a log/print sink. Logged PII is a privacy concern even when it does not leave the process.
  1. 1sourcerepo/gradio/cli/commands/hf_login.py:26
  2. 2sinkrepo/gradio/cli/commands/hf_login.py:27

</> First-Party Code

first-party (npm): gradio

python first-party
medium pii_flow production #ca1a75505d71de0f PII-bearing data is written to a log/print sink. Logged PII is a privacy concern even when it does not leave the process.
repo/gradio/cli/commands/hf_login.py:27 · flow /tmp/closeopen-kxdvwmkh/repo/gradio/cli/commands/hf_login.py:26 → /tmp/closeopen-kxdvwmkh/repo/gradio/cli/commands/hf_login.py:27
            print(
                f"🔓  Logged in to Hugging Face as {user}. You can logout at any time with: unset HF_TOKEN\n"
            )

PII-bearing data is written to a log/print sink — it stays in-process and does not leave the application, but logged PII is still a privacy concern.

Fix: Avoid logging user identifiers; redact or omit PII from log/print statements.

medium telemetry production #8c6a1908e14dd6e2 capability detected · no path traced Telemetry/analytics SDK usage detected. Confirm user consent and that no PII is sent without a lawful basis.
repo/gradio/ipython_ext.py:86
            reloader.track(demo)

A telemetry/analytics SDK is used; event data is sent to a third-party collector.

Fix: Ensure user consent and a lawful basis; strip PII from event payloads.

medium telemetry production #d7f77e3899de8616 capability detected · no path traced Telemetry/analytics SDK usage detected. Confirm user consent and that no PII is sent without a lawful basis.
repo/gradio/route_utils.py:581
            self.track(upload_id)

A telemetry/analytics SDK is used; event data is sent to a third-party collector.

Fix: Ensure user consent and a lawful basis; strip PII from event payloads.

medium telemetry production #d621579859e6cfa8 capability detected · no path traced Telemetry/analytics SDK usage detected. Confirm user consent and that no PII is sent without a lawful basis.
repo/gradio/route_utils.py:600
            self.track(upload_id)

A telemetry/analytics SDK is used; event data is sent to a third-party collector.

Fix: Ensure user consent and a lawful basis; strip PII from event payloads.

medium telemetry production #9abe9795ab0c493c capability detected · no path traced Telemetry/analytics SDK usage detected. Confirm user consent and that no PII is sent without a lawful basis.
repo/gradio/route_utils.py:1375
        upload_progress.track(upload_id)

A telemetry/analytics SDK is used; event data is sent to a third-party collector.

Fix: Ensure user consent and a lawful basis; strip PII from event payloads.

expand_more 224 low-confidence finding(s)
low env_fs Environment-variable access. 86 locations
low env_fs Filesystem access. 111 locations
low egress Outbound request to a variable or assembled URL on a network client. Review what data is sent to this destination. 25 locations
low egress Hardcoded external endpoint. Review what data is sent to this destination. 2 locations

first-party (npm): js/_website

python first-party
expand_more 26 low-confidence finding(s)
low env_fs Filesystem access. 23 locations
low env_fs Environment-variable access. 2 locations
low egress production #51fe9bae074421b6 capability detected · no path traced Outbound request to a variable or assembled URL on a network client. Review what data is sent to this destination.
repo/js/_website/generate_jsons/src/docs/__init__.py:244
                    latest_npm = requests.get(f"https://registry.npmjs.org/@gradio/{js_component}/latest").json()["version"]

Data is sent to a hardcoded external endpoint; review what leaves the process.

Fix: Verify the destination and that only non-sensitive data is sent; pin and audit the dependency.

first-party (npm): js/preview

python first-party
expand_more 2 low-confidence finding(s)
low env_fs Filesystem access. 2 locations

first-party (python)

python first-party
expand_more 68 low-confidence finding(s)
low env_fs Environment-variable access. 15 locations
low egress Hardcoded external endpoint. Review what data is sent to this destination. 6 locations
low env_fs Filesystem access. 39 locations
low egress Outbound request to a variable or assembled URL on a network client. Review what data is sent to this destination. 7 locations
low pii_flow test-only Excluded from app score #c9a27fd633f1abaa PII-bearing data is written to a log/print sink. Logged PII is a privacy concern even when it does not leave the process. Non-production path — not application runtime.
repo/scripts/validate_workflow_curated.py:391 · flow /tmp/closeopen-kxdvwmkh/repo/scripts/validate_workflow_curated.py:379 → /tmp/closeopen-kxdvwmkh/repo/scripts/validate_workflow_curated.py:391
    logger.info(
        "loaded %d entries from %s (%d spaces, %d models)",
        len(items),
        src,
        len(spaces),
        len(models),
    )

PII-bearing data is written to a log/print sink — it stays in-process and does not leave the application, but logged PII is still a privacy concern.

Fix: Avoid logging user identifiers; redact or omit PII from log/print statements.

</> Dependencies

katex

python dependency
expand_more 1 low-confidence finding(s)
low env_fs dependency Excluded from app score #8dfbbbf2fa929f78 capability detected · no path traced Filesystem access.
pkgs/python/[email protected]/src/metrics/parse_tfm.py:134
    with open(file_name, 'rb') as f:

Reads environment variables or the filesystem — an inventory-level capability, not a leak on its own.

Fix: Usually benign; confirm any secret read here is not later sent externally.

Skipped dependencies

Production

  • @csstools/postcss-global-data prod — dist-only: no readable source
  • @types/testing-library__jest-dom prod — no javascript source
  • plotly.js-dist-min prod — dist-only: no readable source
  • postcss-custom-media prod — dist-only: no readable source
  • svelte-i18n prod — dist-only: no readable source
  • typescript-svelte-plugin prod — dist-only: no readable source
  • @sveltejs/adapter-vercel prod — scan budget exceeded
  • hast-util-to-string prod — scan budget exceeded
  • mdsvex prod — scan budget exceeded
  • prism-svelte prod — scan budget exceeded
  • wrangler prod — scan budget exceeded
  • @huggingface/space-header prod — scan budget exceeded
  • @sveltejs/adapter-node prod — scan budget exceeded
  • http-proxy prod — scan budget exceeded
  • @self/spa prod — scan budget exceeded
  • iframe-resizer prod — scan budget exceeded
  • @zerodevx/svelte-json-view prod — scan budget exceeded
  • amuchina prod — scan budget exceeded
  • sanitize-html prod — scan budget exceeded
  • @codemirror/autocomplete prod — scan budget exceeded
  • @codemirror/commands prod — scan budget exceeded
  • @codemirror/lang-css prod — scan budget exceeded
  • @codemirror/lang-html prod — scan budget exceeded
  • @codemirror/lang-javascript prod — scan budget exceeded
  • @codemirror/lang-json prod — scan budget exceeded
  • @codemirror/lang-markdown prod — scan budget exceeded
  • @codemirror/lang-python prod — scan budget exceeded
  • @codemirror/language prod — scan budget exceeded
  • @codemirror/legacy-modes prod — scan budget exceeded
  • @codemirror/lint prod — scan budget exceeded
  • @codemirror/search prod — scan budget exceeded
  • @codemirror/state prod — scan budget exceeded
  • @codemirror/view prod — scan budget exceeded
  • @lezer/common prod — scan budget exceeded
  • @lezer/highlight prod — scan budget exceeded
  • @lezer/markdown prod — scan budget exceeded
  • cm6-theme-basic-dark prod — scan budget exceeded
  • cm6-theme-basic-light prod — scan budget exceeded
  • codemirror prod — scan budget exceeded
  • @ffmpeg/ffmpeg prod — scan budget exceeded
  • @ffmpeg/util prod — scan budget exceeded
  • mrmime prod — scan budget exceeded
  • fetch-event-stream prod — scan budget exceeded
  • anyio prod — scan budget exceeded
  • audioop-lts prod — scan budget exceeded
  • brotli prod — scan budget exceeded
  • fastapi prod — scan budget exceeded
  • groovy prod — scan budget exceeded
  • gradio_client prod — scan budget exceeded
  • hf-gradio prod — scan budget exceeded
  • huggingface_hub prod — scan budget exceeded
  • Jinja2 prod — scan budget exceeded
  • markupsafe prod — scan budget exceeded
  • numpy prod — scan budget exceeded
  • orjson prod — scan budget exceeded
  • packaging prod — scan budget exceeded
  • pandas prod — scan budget exceeded
  • pillow prod — scan budget exceeded
  • pydantic prod — scan budget exceeded
  • python-multipart prod — scan budget exceeded
  • pydub prod — scan budget exceeded
  • pyyaml prod — scan budget exceeded
  • safehttpx prod — scan budget exceeded
  • semantic_version prod — scan budget exceeded
  • starlette prod — scan budget exceeded
  • tomlkit prod — scan budget exceeded
  • typer prod — scan budget exceeded
  • typing_extensions prod — scan budget exceeded
  • uvicorn prod — scan budget exceeded
  • pytz prod — scan budget exceeded
  • fsspec prod — scan budget exceeded
  • gradio prod — scan budget exceeded