{
  "llm": {
    "conf": 0.000027748245,
    "grade": "benign",
    "model": "Qwen/Qwen3.8-27B",
    "outcome": "benign",
    "interpretation": "legitimate rust-analyzer crate"
  },
  "ml": {
    "v": "7",
    "id": 2686,
    "lvl": -1,
    "conf": 0,
    "prob": 0.000011036793694074731,
    "type": "crate",
    "version": "v18.18",
    "analyzed_at": "2026-10-11T08:57:34Z"
  },
  "path": "ra_ap_vfs-notify-0.0.336.crate",
  "raw": {
    "rev": "17dc6",
    "files": [
      {
        "id": 2686,
        "mol": "H(F)Md₂(In₂Pa)",
        "pid": 2,
        "rel": "fetched",
        "sha": "7edc1d44ebe7adbdaadedbd38a8378dec56ef629a72aa4de0b68b26ddccfb58d",
        "via": "https://static.crates.io/crates/ra_ap_vfs-notify/ra_ap_vfs-notify-0.0.336.crate",
        "path": "pkg:cargo/ra_ap_vfs-notify@0.0.336",
        "risk": 4,
        "size": 9121,
        "type": "crate",
        "depth": 2,
        "facts": {
          "metrics": {
            "file": {
              "size": 9121,
              "entropy": 7.98
            },
            "binary": {
              "peak_region_bytes": 9121,
              "peak_region_entropy": 7.81
            }
          }
        },
        "ident": {
          "name": {
            "value": "ra_ap_vfs-notify",
            "source": "crate.name",
            "verified": false
          },
          "urls": [
            {
              "url": "https://github.com/rust-lang/rust-analyzer",
              "kind": "repository",
              "source": "crate.repository"
            }
          ],
          "trust": "unsigned",
          "authors": [
            {
              "name": "rust-analyzer team",
              "role": "author",
              "source": "crate.authors"
            }
          ],
          "version": {
            "value": "0.0.336",
            "source": "crate.version",
            "verified": false
          },
          "identifier": {
            "value": "ra_ap_vfs-notify",
            "source": "crate.name",
            "verified": false
          },
          "description": {
            "value": "Implementation of `loader::Handle` for rust-analyzer.",
            "source": "crate.description",
            "verified": false
          }
        },
        "traits": [
          {
            "id": "metadata/import/rust/std/fs::std/fs",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports std::fs",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/walkdir/walkdir::walkdir/walkdir",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports walkdir::WalkDir",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/package/repository::cargo-repository-rust-lang-org",
            "conf": 0.85,
            "crit": 3,
            "desc": "Cargo repository URL names rust-lang"
          },
          {
            "id": "micro-behaviors/fs/directory/traverse::rust-walkdir-traverse",
            "atk": "T1083",
            "conf": 0.9,
            "crit": 3,
            "desc": "Rust walkdir directory iterator",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/build/archive::archive-cargo-toml-entry",
            "conf": 0.9,
            "crit": 2,
            "desc": "Archive contains Cargo.toml"
          },
          {
            "id": "metadata/import/rust/crossbeam_channel/receiver::crossbeam_channel/receiver",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crossbeam_channel::Receiver",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/crossbeam_channel/select::crossbeam_channel/select",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crossbeam_channel::select",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/crossbeam_channel/sender::crossbeam_channel/sender",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crossbeam_channel::Sender",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/crossbeam_channel/unbounded::crossbeam_channel/unbounded",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crossbeam_channel::unbounded",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/notify/config::notify/config",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports notify::Config",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/notify/event/accesskind::notify/event/accesskind",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports notify::event::AccessKind",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/notify/eventkind::notify/eventkind",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports notify::EventKind",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/notify/recommendedwatcher::notify/recommendedwatcher",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports notify::RecommendedWatcher",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/notify/recursivemode::notify/recursivemode",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports notify::RecursiveMode",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/notify/watcher::notify/watcher",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports notify::Watcher",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/paths/abspath::paths/abspath",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports paths::AbsPath",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/paths/abspathbuf::paths/abspathbuf",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports paths::AbsPathBuf",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/paths/utf8pathbuf::paths/utf8pathbuf",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports paths::Utf8PathBuf",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/rayon/iter/indexedparalleliterator::_",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports rayon::iter::IndexedParallelIterator as _",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/rayon/iter/intoparalleliterator::_",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports rayon::iter::IntoParallelIterator as _",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/rayon/iter/paralleliterator::rayon/iter/paralleliterator",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports rayon::iter::ParallelIterator",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/rustc_hash/fxhashset::rustc_hash/fxhashset",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports rustc_hash::FxHashSet",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/path/component::std/path/component",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::path::Component",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/path/path::std/path/path",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::path::Path",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/sync/atomic/atomicusize::std/sync/atomic/atomicusize",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::sync::atomic::AtomicUsize",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/vfs/loader/loadingprogress::vfs/loader/loadingprogress",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports vfs::loader::LoadingProgress",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/vfs/loader::vfs/loader",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports vfs::loader",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/package/description/length::cargo-description-at-least-20-characters",
            "conf": 0.78,
            "crit": 2,
            "desc": "Cargo description has at least 20 characters"
          },
          {
            "id": "metadata/package/documentation/source::cargo-readme-field-present",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo readme field is populated"
          },
          {
            "id": "metadata/package/license::cargo-license-field-present",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo license field is populated"
          },
          {
            "id": "metadata/package/name/identity::cargo-package-name-present",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package name field is populated"
          },
          {
            "id": "metadata/package/repository::cargo-repository-field-present",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo repository field is populated"
          },
          {
            "id": "metadata/package/version::cargo-package-version",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package has version"
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "from": [
              {
                "file": 5
              }
            ]
          }
        ]
      }
    ]
  }
}