github apmantza/pi-lens v4.1.2

4 hours ago

Added

  • Prompt-cache misses now say why, and mixed injections split by source (refs #1071)
  • Quick-mode session_start now logs which steps it skipped (closes #1911)
  • Runner parsers are now held to real binary output (refs #1937)
  • A runner that reads nothing out of a failing tool's output now leaves a record (closes #1948)
  • Mechanical lint batch: actionlint, PR-title lint, markdownlint, OSV scan (refs #1844)
  • Vale prose lint with a vendored Google style base (refs #1844)
  • Husky-managed local git hooks (closes #1804)
  • latency.log now says whether the LSP pool reused a client or spawned one (closes #1934)
  • Dogfood sessions on pi-lens's own repo now activate the oxlint, spellcheck, yamllint, and taplo runner lanes (refs #1844)
  • Memory-sample observability upgrades (refs #1999)
  • Opaque-write recovery for bash commands (refs #2000 phase 2)
  • Collect-later delivery for slow auxiliary LSP servers (closes #2001, refs #2002)
  • Freshness kernel: one comparator, one verdict type for staleness gates (closes #1739)
  • Shared fault-injection test kit (closes #1838)
  • Adversarial garbage battery for every CLI lint runner (closes #1839)

Changed

  • pi-lens formats its own TypeScript with oxfmt (refs #1844)
  • Opaque-write recovery goes git-first (refs #2000)
  • ONE mutation seam: RuntimeCoordinator.recordProjectMutation (refs #2000 phase 1)

Fixed

  • Search credit ignores pipe truncation (closes #1908)
  • Cascade tier-3 registry now resets at session_start (closes #1910)
  • Read-guard eviction telemetry is now always on (closes #1913)
  • agent_settled no longer crashes with extension_error when the session is replaced mid-run
  • A session event on a replaced session no longer reports a pi-lens handler error (closes #1925)
  • Git installs start about 750ms faster (refs #1926)
  • Updating pi-lens no longer costs a five-second first session (refs #1926)
  • A session swap that starves session_start or context is now counted, not misreported as a pi-lens crash (closes #1929)
  • Diagnostics scans stop logging a phantom ast-grep cache-stats record (closes #1935)
  • cache_context no longer logs an unusable unknown prefix pair on nearly every record (closes #1938)
  • Review-graph Tier-3 build never grew the tree cache past the 50-entry default (closes #1941)
  • A demoted blocker no longer shouts STOP, and it stops re-serving forever (closes #1944)
  • The oxlint runner now surfaces warning-severity findings instead of discarding them (closes #1947)
  • Merge-train warden's update-branch kick 403s under branch protection (#1959)
  • The blind review-graph read no longer drops a valid snapshot on a HEAD-only move (closes #1961)
  • A settled review-graph build no longer suppresses every later build, and project_report only claims a retry when one started (closes #1962)
  • A language server that dies mid-session now records why, and the liveness probe stops provoking the deaths (closes #1969)
  • Log writer reopens and retries once on a failed write instead of dropping records silently (refs #1970)
  • Warmup and workspace-scan walkers gate by file extension before consulting the ignore matcher, cutting a 31.7s stall to sub-second on repos with large ignored file piles (closes #1974, reported by @0xkite)
  • oxfmt no longer fails on a file its own config ignores (refs #1844)
  • ESLint warnings are no longer discarded (closes #1954)
  • Registered tools now always have descriptions in child/subagent sessions (closes #1988)
  • mode=full no longer replays stale mid-edit blockers (refs #1993)
  • Cache-miss attribution stays useful in long sessions (closes #1996)
  • Project snapshots no longer rewrite unchanged same-generation bodies (closes #1997)
  • Classify oxlint no-match results as expected skips (closes #1998)
  • Project-snapshot persistence validates gzip body integrity before skipping (closes #2008)
  • Installer verify loop broken at the root (closes #2015)
  • Windows .cmd/.bat spawns no longer fail when System32 is absent from the child PATH (closes #2023)
  • Register remaining agent-facing delivery surfaces (#2028)
  • Wall-clock budget tests get a quiet serial phase (closes #1920)

🙏 Thanks

Thanks to the external contributors in this release:

Don't miss a new pi-lens release

NewReleases is sending notifications on new releases.