v1.14.0: trace-side reliability + breadth
Trace-side reliability + breadth release. Single day, 11 items landed across the trace analyzers and MCP surface. Suite 546 -> 626 (+80). MCP tools 36 -> 37.
Trace-side parser fixes
- `inspectTrace` + `summarizeTrace` now work against real Apple traces. The old xpath `/trace-toc/run` returned empty against bundles from `xcrun xctrace record` and Instruments.app; cascaded into `summarizeTrace` reporting "no events detected" even when the trace had 35 hangs. Now uses `xctrace export --toc` + per-schema row-count queries.
- `analyzeTimeProfile` returns real symbol names. Was returning `"1.00 ms"` (the weight column) as every symbol. Now reads the leaf frame's `@_name` from `` with fallback to the binary name for unsymbolicated hex addresses.
Schema coverage expansion
- `analyzeNetworkActivity` MCP tool (37th). Parses the `network-connections` schema. Per-request URL / host / method / status / duration / bytes-in / bytes-out, top-N by duration + by bytes, per-host aggregates.
- `analyzeHangs` reads the `hang-risks` schema alongside `potential-hangs`. Surfaced as `risks[]` + `risksTotals`.
Structural refactors
- Pattern-matching schema discovery. All 5 trace analyzers resolve schema names through a regex map (SCHEMA_FAMILIES) with canonical fallback. Survives future xctrace renames without code changes.
- Unified `supportStatus[]` surface across all 6 trace analyzers (XcodeTraceMCP-pattern). Old `status` / `notice` aliases remain for backwards compat.
macOS 26.x xctrace --time-limit regression UX
- README + USAGE.md callout naming the bug + 4 recovery options.
- `MEMORYDETECTIVE_PREFLIGHT_XCTRACE` env var enables a 2-second probe before the user's actual recording. Cuts failure latency from ~70s to ~8s. Auto-enabled on macOS 26.x simulator attach.
- `MEMORYDETECTIVE_AUTO_OPEN_INSTRUMENTS` env var enables fire-and-forget `open -a Instruments ` on timeout, opening the partial trace in the Instruments.app GUI.
Memgraph polish
- `countAlive` returns `instanceSizeBytes` + `totalBytes` per class and accepts `sortBy: "totalBytes"`. FLEX-inspired Size view. Validated against real abandoned-memory memgraph: top by totalBytes surfaces 2 MB NSMutableDictionary, 1.3 MB CFString, actionableCounts highlight 800 KB Kernel Pointers + 460 KB CGDataProvider.
- `verifyFix` accepts `expectedAliveClasses[]` whitelist with curated default list of system VCs / views / windows (`UICompatibilityInputViewController`, `UIPredictionViewController`, `UIRemoteKeyboardWindow`, etc.). MLeaksFinder + DebugSwift-inspired UX. Whitelist hits surface in `expectedAlive[]` for transparency without flipping the verdict.
Deferred to v1.15
- `recordViaInstrumentsApp` (item G, 8-12h big feature)
- screenshot during `replayScenario` (item N)
- `summarizeTrace` network chain integration
Full diff: `v1.13.0...v1.14.0`