Skip to content

v0.51.3

Choose a tag to compare

@github-actions github-actions released this 20 Aug 07:36
· 1249 commits to main since this release

v0.51.3

Inspect-under-concurrency fixes, LSP path handling for Next.js App Router projects, and rendering corrections. Thanks to iceteaSA, timothyclin, tenshiak, and mathiasloh for diagnostics-grade reports, and to iceteaSA for the merged callgraph refresh optimization.

aft_inspect

A long blocking inspect no longer stalls parallel sessions (#242, #243). On the daemon transport, aft_inspect now runs off the execution lane: setup releases the lane in milliseconds, waits happen off-lane, and other sessions' mutations and new binds admit normally while the inspect completes. Route abandonment now cancels a running inspect promptly, concurrent inspects on one root are single-flight, and a mid-scan file mutation can never produce a stale FRESH verdict (verified by regression).

scope no longer makes inspect slower (#247). Passing a scope previously switched diagnostics onto the most expensive collection path. Scope now filters rendered results only — and scoped files that no language server has actually analyzed are reported as named gaps (complete: false with the file and reason) instead of a clean-looking empty result.

The diagnostics deadline is configurable (#241, #249). inspect.diagnostics_timeout_ms (default 120000, range 10000–600000; a project may raise but never lower the user value) bounds the blocking diagnostics wait, and the plugins derive the transport budget from it — no more 60s client timeouts while the server is still legitimately working.

One failed language server no longer blocks everything (#240). A producer that fails to start is disclosed as a named gap while every other producer's results return normally.

Language servers

Astro projects initialize correctly (#240): the astro producer resolves typescript.tsdk from the project's own TypeScript install (monorepo-aware), with lsp.servers.astro.initialization_options taking precedence, and an honest skip when no TypeScript install exists.

Next.js App Router paths work (#240, #249): file URIs are percent-encoded per RFC 3986, so (app), [locationId], and [[...sign-in]] directories no longer break diagnostics.

Fixed

  • Hoisted bash output renders CRLF correctly (#245): rendered previews normalize \r\n and apply real overprint semantics for progress bars; raw on-disk task artifacts stay byte-exact.
  • Callgraph incremental refresh matches cold-build write mechanics (#246, by @iceteaSA): file I/O and parsing moved outside the write transaction, prepared statements reused, and a missing index added.
  • Windows CI test debt: two deterministic test bugs fixed (JSON path escaping, path separator assertion).

Internal

Groundwork for identity-governed GitHub operations ships dormant in this release: release builds carry no trust root for it, so behavior is unchanged (gh invocations are untouched). It activates only through a separately reviewed key ceremony in a future release.