Skip to content

v1.3.7

Choose a tag to compare

@github-actions github-actions released this 29 Jul 01:23
· 8 commits to main since this release

DecompilerServer 1.3.7 fixes severe process-wide and system-wide resource exhaustion when multiple MCP clients use a large persisted context registry.

Fixed

  • Persisted aliases are now registered as lightweight metadata and loaded only when selected or addressed through contextAlias.
  • Dependency assemblies are prefetched, cached across both ILSpy type systems, explicitly owned, and deterministically disposed with their context.
  • Partial assembly-load failures now release native resources.
  • list_contexts exposes registeredAliases separately from loaded contexts.
  • unload can remove a deferred registration without first loading it.

Measured impact

Using the same registry with about 90 aliases:

  • Previous idle process: approximately 2.2 GB RSS and 4,420 numeric file descriptors.
  • v1.3.7 idle process: approximately 73 MB RSS and 158 numeric file descriptors.
  • v1.3.7 after loading UnityEditor on demand: approximately 174 MB RSS and 164 numeric file descriptors.

This removes the multiplier that exhausted the macOS system limit when many agent-owned MCP server processes were alive concurrently.

Compatibility

No registry migration is required. Loaded sessions, indexes, caches, and MVID routing remain process-local. After a restart, an old MVID-only reference for a deferred non-current alias may need that contextAlias once to activate it.

Validated with 181 passing Release tests. Framework-dependent single-file assets for macOS, Linux, and Windows require the .NET 10 runtime.

Full Changelog: v1.3.6...v1.3.7