Skip to content

v2.3.0 (migrated from Codeberg)

Choose a tag to compare

@tstromberg tstromberg released this 24 Jul 05:16

Features

  • --format=interpret: print the LLM prompt locally; no LLM call. Works with scan and ps.
  • SCAN_FORMAT env var sets default output format.
  • SCAN_NO_ANALYSIS_CACHE=1 disables all analysis caches.
  • Reports record provenance: registry sidecars, fetch URLs, embedded file id/sha256.
  • Machine formats now emit all files; --show only filters the terminal view.

Fixes

  • Trait floor read the wrong JSON key and never fired on current cleave reports.
  • Crit-5 traits now escalate a benign model verdict to hostile, not suspicious.
  • Benign archive members no longer inherit their container's hostile verdict.
  • Hostile transitive dependencies now surface at the archive root, not just the manifest.
  • Unparseable PURLs no longer produce bloom-filter keys.
  • All PURL spellings normalize to one canonical form.
  • FreeBSD worker stop no longer hangs or orphans the scanning child.

Optimizations

  • 30-60 MB lower peak RSS via jemalloc arena cap.
  • 800 MB less retained worker memory: dependency reports kept as text, not parsed trees.
  • Capped uploader sha set; prune stale cache versions.
  • Worker shutdown drain: 60s to 15s.