memorydetective 1.10.0 → 1.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"referenceTree.js","sourceRoot":"","sources":["../../src/parsers/referenceTree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAQH,MAAM,OAAO;AACX,oHAAoH;AACpH,uEAAuE;AACvE,wDAAwD;AACxD,yCAAyC,CAAC;AAE5C,MAAM,IAAI,GAAG,IAAI,CAAC;AAElB;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,MAAM,CAAC,GAAG,2CAA2C,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpE,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC;IACjB,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,KAAK,GAAG;YACN,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;QAClC,KAAK,GAAG;YACN,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;QACzC,KAAK,GAAG;YACN,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;QAChD;YACE,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,yEAAyE;IACzE,yEAAyE;IACzE,yDAAyD;IACzD,wEAAwE;IACxE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACtC,IAAI,SAAS,GAAG,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IACzE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,wEAAwE;IACxE,sEAAsE;IACtE,IAAI,6BAA6B,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/D,IAAI,iCAAiC,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACnE,oEAAoE;IACpE,wEAAwE;IACxE,gEAAgE;IAChE,MAAM,YAAY,GAAG,4DAA4D,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClG,IAAI,YAAY,EAAE,CAAC;QACjB,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,sBAAsB;IACtB,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,aAAa;QAAE,OAAO,IAAI,CAAC;IAC1E,IAAI,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,4BAA4B;IAC5B,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,2CAA2C,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7E,0BAA0B;IAC1B,IAAI,4BAA4B,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACpD,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,uCAAuC;IACvC,IAAI,mDAAmD,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACrF,IAAI,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,IAAI,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,kDAAkD;IAClD,IAAI,SAAS,KAAK,mBAAmB;QAAE,OAAO,IAAI,CAAC;IACnD,IAAI,SAAS,KAAK,yBAAyB;QAAE,OAAO,IAAI,CAAC;IACzD,IAAI,SAAS,KAAK,kBAAkB;QAAE,OAAO,IAAI,CAAC;IAClD,IAAI,SAAS,KAAK,mBAAmB;QAAE,OAAO,IAAI,CAAC;IACnD,yBAAyB;IACzB,IAAI,SAAS,KAAK,gBAAgB;QAAE,OAAO,IAAI,CAAC;IAChD,IAAI,sCAAsC,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACxE,6EAA6E;IAC7E,uEAAuE;IACvE,uEAAuE;IACvE,IAAI,oDAAoD,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACtF,yBAAyB;IACzB,IAAI,6BAA6B,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/D,IAAI,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,wEAAwE;IACxE,4BAA4B;IAC5B,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACjD,IAAI,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,oEAAoE;IACpE,IAAI,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,UAAU;QAAE,OAAO,IAAI,CAAC;IACtE,6DAA6D;IAC7D,IAAI,8BAA8B,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAChE,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,uCAAuC;IACvC,IAAI,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,uBAAuB;QAAE,OAAO,IAAI,CAAC;IACnF,gEAAgE;IAChE,IAAI,SAAS,KAAK,kCAAkC;QAAE,OAAO,IAAI,CAAC;IAClE,4DAA4D;IAC5D,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACnD,+FAA+F;IAC/F,+EAA+E;IAC/E,qEAAqE;IACrE,IAAI,kCAAkC,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACpE,iEAAiE;IACjE,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;QAC/B,qBAAqB;QACrB,+BAA+B;QAC/B,cAAc;QACd,wBAAwB;QACxB,gBAAgB;QAChB,0BAA0B;QAC1B,SAAS;QACT,mBAAmB;QACnB,cAAc;QACd,OAAO;QACP,UAAU;QACV,oBAAoB;QACpB,cAAc;QACd,wBAAwB;QACxB,8BAA8B;QAC9B,SAAS;QACT,OAAO;QACP,uBAAuB;QACvB,QAAQ;QACR,QAAQ;QACR,uBAAuB;QACvB,cAAc;QACd,YAAY;QACZ,kBAAkB;QAClB,aAAa;QACb,4BAA4B;KAC7B,CAAC,CAAC;IACH,IAAI,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACjD,2EAA2E;IAC3E,IAAI,kCAAkC,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACpE,IAAI,qCAAqC,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACvE,4EAA4E;IAC5E,kDAAkD;IAClD,IAAI,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,2EAA2E;IAC3E,iEAAiE;IACjE,IAAI,SAAS,KAAK,0BAA0B;QAAE,OAAO,IAAI,CAAC;IAC1D,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAY,EACZ,IAAY;IAEZ,IAAI,IAAI,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyD,CAAC;IAChF,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;YAAE,SAAS;QACpD,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,SAAS,IAAI,IAAI;YAAE,SAAS;QAChC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,aAAa,IAAI,KAAK,CAAC;YAChC,QAAQ,CAAC,UAAU,IAAI,SAAS,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IACD,MAAM,OAAO,GAAyB,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5E,SAAS;QACT,aAAa,EAAE,CAAC,CAAC,aAAa;QAC9B,UAAU,EAAE,CAAC,CAAC,UAAU;KACzB,CAAC,CAAC,CAAC;IACJ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACpB,IAAI,CAAC,CAAC,aAAa,KAAK,CAAC,CAAC,aAAa;YACrC,OAAO,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU;YAAE,OAAO,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC;QACtE,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"referenceTree.js","sourceRoot":"","sources":["../../src/parsers/referenceTree.ts"],"names":[],"mappings":"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"}
@@ -15,11 +15,13 @@ export declare const analyzeHangsSchema: z.ZodObject<{
15
15
  endMs: number;
16
16
  }>>;
17
17
  topFramesByHangStartNs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
18
+ includeStackClassification: z.ZodDefault<z.ZodBoolean>;
18
19
  outputFormat: z.ZodOptional<z.ZodEnum<["markdown", "json", "both", "verify-fix-table"]>>;
19
20
  }, "strip", z.ZodTypeAny, {
20
21
  tracePath: string;
21
22
  topN: number;
22
23
  minDurationMs: number;
24
+ includeStackClassification: boolean;
23
25
  outputFormat?: "markdown" | "json" | "both" | "verify-fix-table" | undefined;
24
26
  timeRangeMs?: {
25
27
  startMs: number;
@@ -36,6 +38,7 @@ export declare const analyzeHangsSchema: z.ZodObject<{
36
38
  endMs: number;
37
39
  } | undefined;
38
40
  topFramesByHangStartNs?: Record<string, string> | undefined;
41
+ includeStackClassification?: boolean | undefined;
39
42
  }>;
40
43
  export type AnalyzeHangsInput = z.infer<typeof analyzeHangsSchema>;
41
44
  /**
@@ -114,4 +117,29 @@ export declare function analyzeHangsFromXml(xml: string, tracePath: string, topN
114
117
  startMs: number;
115
118
  endMs: number;
116
119
  }, topFramesByHangStartNs?: Readonly<Record<string, string>>): AnalyzeHangsResult;
120
+ /**
121
+ * Pure: walk parsed time-profile rows + hang entries, correlate samples
122
+ * to hang windows by timestamp, return a `startNs -> topFrame` map.
123
+ *
124
+ * Algorithm: for each hang H with [startNs, startNs+durationNs], find all
125
+ * samples whose `weight` timestamp falls in that window. Per hang, pick
126
+ * the top frame by aggregate sample weight (or by sample count if weight
127
+ * is absent). The result map keys are stringified `startNs` values to
128
+ * match the existing `topFramesByHangStartNs` shape that v1.9 exposed.
129
+ *
130
+ * Returns an empty map when the time-profile rows are absent or none
131
+ * correlate. Failure modes degrade silently so the cycle-side path
132
+ * still completes.
133
+ *
134
+ * Exposed for testing.
135
+ */
136
+ export declare function correlateTimeProfileToHangs(hangs: Array<{
137
+ startNs: number;
138
+ durationNs: number;
139
+ }>, timeProfileRows: Array<{
140
+ startNs: number;
141
+ weight?: number;
142
+ backtrace?: string;
143
+ topFrame?: string;
144
+ }>): Record<string, string>;
117
145
  export declare function analyzeHangs(input: AnalyzeHangsInput): Promise<AnalyzeHangsResult>;
@@ -30,7 +30,11 @@ export const analyzeHangsSchema = z.object({
30
30
  topFramesByHangStartNs: z
31
31
  .record(z.string(), z.string())
32
32
  .optional()
33
- .describe("Optional supplemental map from a hang's `startNs` (as a string) to the top frame seen during that hang. When provided, each matching hang in `top[]` is enriched with `mainThreadViolations[]` that catalog the kind of work happening on the main thread (sync-io, db-lock, network, lock-contention). Typical pipeline: call `analyzeTimeProfile` separately on the same `.trace`, correlate samples to hang windows by timestamp, then re-call `analyzeHangs` with the resulting map. Omit to skip the enrichment."),
33
+ .describe("Optional supplemental map from a hang's `startNs` (as a string) to the top frame seen during that hang. When provided, each matching hang in `top[]` is enriched with `mainThreadViolations[]` that catalog the kind of work happening on the main thread (sync-io, db-lock, network, lock-contention). Typical pipeline: call `analyzeTimeProfile` separately on the same `.trace`, correlate samples to hang windows by timestamp, then re-call `analyzeHangs` with the resulting map. Omit to skip the enrichment. SUPERSEDED in v1.12 by `includeStackClassification: true`, which builds this map internally."),
34
+ includeStackClassification: z
35
+ .boolean()
36
+ .default(false)
37
+ .describe("v1.12+. When true, analyzeHangs internally exports the `time-profile` schema in parallel with `potential-hangs`, correlates samples to hang windows by timestamp, picks the dominant top frame per hang, and runs `classifyHangFrame` on it. The `mainThreadViolations[]` field on each top hang is populated automatically. Replaces the v1.9 caller-built `topFramesByHangStartNs` map: most callers should set this flag instead of building the map manually. Adds a second xctrace export call, run in parallel with the hangs export so wall-clock is unchanged when the trace export succeeds. Falls back gracefully (empty violations, no error) when the time-profile schema is absent or xctrace SIGSEGVs on it."),
34
38
  outputFormat: outputFormatField,
35
39
  });
36
40
  const MAIN_THREAD_VIOLATION_SIGNATURES = [
@@ -206,22 +210,145 @@ function buildHangDiagnosis(rows, hangs, microhangs, longestMs, averageMs) {
206
210
  }
207
211
  return parts.join(" ");
208
212
  }
209
- export async function analyzeHangs(input) {
210
- const tracePath = resolvePath(input.tracePath);
211
- if (!existsSync(tracePath)) {
212
- throw new Error(`Trace bundle not found: ${tracePath}`);
213
+ /**
214
+ * Pure: walk parsed time-profile rows + hang entries, correlate samples
215
+ * to hang windows by timestamp, return a `startNs -> topFrame` map.
216
+ *
217
+ * Algorithm: for each hang H with [startNs, startNs+durationNs], find all
218
+ * samples whose `weight` timestamp falls in that window. Per hang, pick
219
+ * the top frame by aggregate sample weight (or by sample count if weight
220
+ * is absent). The result map keys are stringified `startNs` values to
221
+ * match the existing `topFramesByHangStartNs` shape that v1.9 exposed.
222
+ *
223
+ * Returns an empty map when the time-profile rows are absent or none
224
+ * correlate. Failure modes degrade silently so the cycle-side path
225
+ * still completes.
226
+ *
227
+ * Exposed for testing.
228
+ */
229
+ export function correlateTimeProfileToHangs(hangs, timeProfileRows) {
230
+ const result = {};
231
+ if (hangs.length === 0 || timeProfileRows.length === 0)
232
+ return result;
233
+ for (const hang of hangs) {
234
+ const windowEnd = hang.startNs + hang.durationNs;
235
+ // Per-frame aggregate score within this hang's window.
236
+ const scores = new Map();
237
+ for (const sample of timeProfileRows) {
238
+ if (sample.startNs < hang.startNs || sample.startNs > windowEnd)
239
+ continue;
240
+ const frame = sample.topFrame ??
241
+ // First non-empty line of backtrace, when topFrame isn't pre-parsed.
242
+ sample.backtrace?.split(/\r?\n/).find((l) => l.trim().length > 0) ??
243
+ "";
244
+ if (!frame)
245
+ continue;
246
+ const weight = sample.weight ?? 1;
247
+ scores.set(frame, (scores.get(frame) ?? 0) + weight);
248
+ }
249
+ if (scores.size === 0)
250
+ continue;
251
+ // Pick the frame with the highest aggregate score.
252
+ let topFrame = "";
253
+ let topScore = -Infinity;
254
+ for (const [frame, score] of scores) {
255
+ if (score > topScore) {
256
+ topScore = score;
257
+ topFrame = frame;
258
+ }
259
+ }
260
+ if (topFrame)
261
+ result[hangFrameMapKey(hang.startNs)] = topFrame;
213
262
  }
263
+ return result;
264
+ }
265
+ /**
266
+ * Spawn `xctrace export` for the `time-profile` schema. Non-fatal on
267
+ * failure: returns an empty array so the caller can degrade gracefully.
268
+ * Returns parsed rows with at minimum `startNs` + a `topFrame` string.
269
+ */
270
+ async function captureTimeProfileRows(tracePath) {
214
271
  const result = await runCommand("xcrun", [
215
272
  "xctrace",
216
273
  "export",
217
274
  "--input",
218
275
  tracePath,
219
276
  "--xpath",
220
- '/trace-toc/run/data/table[@schema="potential-hangs"]',
277
+ '/trace-toc/run/data/table[@schema="time-profile"]',
221
278
  ], { timeoutMs: 5 * 60_000 });
222
- if (result.code !== 0) {
223
- throw new Error(`xctrace export failed (code ${result.code}): ${result.stderr || result.stdout}`);
279
+ if (result.code !== 0)
280
+ return [];
281
+ try {
282
+ const tables = parseXctraceXml(result.stdout);
283
+ const tp = tables.find((t) => t.schema === "time-profile");
284
+ if (!tp)
285
+ return [];
286
+ const rows = [];
287
+ for (const row of tp.rows) {
288
+ const startNs = asNumber(row.start);
289
+ if (startNs == null)
290
+ continue;
291
+ const weight = asNumber(row.weight) ?? undefined;
292
+ // The "top frame" field name varies (`backtrace`, `top-frame`, etc.).
293
+ // Pick the first non-empty stringified candidate.
294
+ const candidates = [
295
+ asFormatted(row["top-frame"]),
296
+ asFormatted(row.backtrace),
297
+ asFormatted(row.symbol),
298
+ asFormatted(row["leaf-symbol"]),
299
+ ];
300
+ const topFrame = candidates.find((v) => typeof v === "string" && v.length > 0);
301
+ rows.push({ startNs, weight, topFrame });
302
+ }
303
+ return rows;
304
+ }
305
+ catch {
306
+ return [];
307
+ }
308
+ }
309
+ export async function analyzeHangs(input) {
310
+ const tracePath = resolvePath(input.tracePath);
311
+ if (!existsSync(tracePath)) {
312
+ throw new Error(`Trace bundle not found: ${tracePath}`);
313
+ }
314
+ const wantStackClassification = input.includeStackClassification ?? false;
315
+ const [hangsResult, timeProfileRows] = await Promise.all([
316
+ runCommand("xcrun", [
317
+ "xctrace",
318
+ "export",
319
+ "--input",
320
+ tracePath,
321
+ "--xpath",
322
+ '/trace-toc/run/data/table[@schema="potential-hangs"]',
323
+ ], { timeoutMs: 5 * 60_000 }),
324
+ wantStackClassification
325
+ ? captureTimeProfileRows(tracePath)
326
+ : Promise.resolve([]),
327
+ ]);
328
+ if (hangsResult.code !== 0) {
329
+ throw new Error(`xctrace export failed (code ${hangsResult.code}): ${hangsResult.stderr || hangsResult.stdout}`);
330
+ }
331
+ // Build the supplemental top-frames map. Caller-supplied map takes
332
+ // precedence over the v1.12 auto-correlation so users who pre-built a
333
+ // map can override the heuristic. The auto path runs only when the
334
+ // user didn't supply a map AND opted into stack classification.
335
+ let topFramesMap = input.topFramesByHangStartNs;
336
+ if (!topFramesMap && wantStackClassification && timeProfileRows.length > 0) {
337
+ // Parse the hangs table once to drive correlation; analyzeHangsFromXml
338
+ // re-parses internally so we get a clean separation between the
339
+ // correlation step and the final render.
340
+ const tables = parseXctraceXml(hangsResult.stdout);
341
+ const hangsTable = tables.find((t) => t.schema === "potential-hangs");
342
+ if (hangsTable) {
343
+ const hangsForCorrelation = [];
344
+ for (const row of hangsTable.rows) {
345
+ const startNs = asNumber(row.start) ?? 0;
346
+ const durationNs = asNumber(row.duration) ?? 0;
347
+ hangsForCorrelation.push({ startNs, durationNs });
348
+ }
349
+ topFramesMap = correlateTimeProfileToHangs(hangsForCorrelation, timeProfileRows);
350
+ }
224
351
  }
225
- return analyzeHangsFromXml(result.stdout, tracePath, input.topN ?? 10, input.minDurationMs ?? 0, input.timeRangeMs, input.topFramesByHangStartNs);
352
+ return analyzeHangsFromXml(hangsResult.stdout, tracePath, input.topN ?? 10, input.minDurationMs ?? 0, input.timeRangeMs, topFramesMap);
226
353
  }
227
354
  //# sourceMappingURL=analyzeHangs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"analyzeHangs.js","sourceRoot":"","sources":["../../src/tools/analyzeHangs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyzeHangs.js","sourceRoot":"","sources":["../../src/tools/analyzeHangs.ts"],"names":[],"mappings":"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"}
@@ -204,11 +204,13 @@ export async function compareTracesByPattern(input) {
204
204
  tracePath: beforePath,
205
205
  topN: 10,
206
206
  minDurationMs: input.hangsMinDurationMs ?? 250,
207
+ includeStackClassification: false,
207
208
  }),
208
209
  analyzeHangs({
209
210
  tracePath: afterPath,
210
211
  topN: 10,
211
212
  minDurationMs: input.hangsMinDurationMs ?? 250,
213
+ includeStackClassification: false,
212
214
  }),
213
215
  ]);
214
216
  const cmp = compareHangs(b, a, threshold);
@@ -1 +1 @@
1
- {"version":3,"file":"compareTracesByPattern.js","sourceRoot":"","sources":["../../src/tools/compareTracesByPattern.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compareTracesByPattern.js","sourceRoot":"","sources":["../../src/tools/compareTracesByPattern.ts"],"names":[],"mappings":"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"}
@@ -4,26 +4,42 @@ export declare const countAliveSchema: z.ZodObject<{
4
4
  path: z.ZodString;
5
5
  className: z.ZodOptional<z.ZodString>;
6
6
  topN: z.ZodDefault<z.ZodNumber>;
7
+ includeReferenceTree: z.ZodDefault<z.ZodBoolean>;
7
8
  }, "strip", z.ZodTypeAny, {
8
9
  path: string;
9
10
  topN: number;
11
+ includeReferenceTree: boolean;
10
12
  className?: string | undefined;
11
13
  }, {
12
14
  path: string;
13
15
  className?: string | undefined;
14
16
  topN?: number | undefined;
17
+ includeReferenceTree?: boolean | undefined;
15
18
  }>;
16
19
  export type CountAliveInput = z.infer<typeof countAliveSchema>;
20
+ export interface CountAliveEntry {
21
+ className: string;
22
+ instanceCount: number;
23
+ /** When `includeReferenceTree: true`, the cycle-side contribution (often 0 for abandoned-memory shapes). */
24
+ byCycle?: number;
25
+ /** When `includeReferenceTree: true`, the reference-tree contribution. Often the only non-zero side on `leakCount: 0` memgraphs. */
26
+ byReferenceTree?: number;
27
+ }
17
28
  export interface CountAliveResult {
18
29
  ok: boolean;
19
30
  path: string;
20
31
  /** Total nodes counted in the cycle forest (across all classes). */
21
32
  totalNodes: number;
22
33
  /** Per-class counts. When `className` is given, contains a single entry. */
23
- counts: Array<{
24
- className: string;
25
- instanceCount: number;
26
- }>;
34
+ counts: CountAliveEntry[];
35
+ /**
36
+ * v1.12+. Present when `includeReferenceTree: true` and at least one
37
+ * reference-tree row survived the framework-noise filter. Mirrors the
38
+ * top-N list but with the noise classes (NSMutableDictionary, CFString,
39
+ * `__DATA __bss`, allocator stacks, etc.) filtered out so the actionable
40
+ * classes surface at the top.
41
+ */
42
+ actionableCounts?: CountAliveEntry[];
27
43
  }
28
44
  /** Pure: count node occurrences by exact className across the cycle forest. */
29
45
  export declare function countByClass(report: LeaksReport): Map<string, number>;
@@ -1,6 +1,8 @@
1
1
  import { z } from "zod";
2
+ import { runCommand } from "../runtime/exec.js";
2
3
  import { runLeaksAndParse } from "../runtime/leaks.js";
3
4
  import { walkCycles } from "../parsers/leaksOutput.js";
5
+ import { parseReferenceTreeText, isFrameworkNoise, } from "../parsers/referenceTree.js";
4
6
  export const countAliveSchema = z.object({
5
7
  path: z.string().min(1).describe("Absolute path to a `.memgraph` file."),
6
8
  className: z
@@ -13,6 +15,10 @@ export const countAliveSchema = z.object({
13
15
  .positive()
14
16
  .default(20)
15
17
  .describe("When `className` is omitted, return the top N most-leaked classes (default 20)."),
18
+ includeReferenceTree: z
19
+ .boolean()
20
+ .default(false)
21
+ .describe("v1.12+. When true, also parse `leaks --referenceTree --groupByType --noContent` output and surface heap-wide instance counts alongside the cycle-side counts. Required to find classes on memgraphs where `leakCount: 0` and the abandoned-memory shape is what's interesting (e.g. orphaned KVO observers reachable from the global registry). Adds a second `leaks` invocation, run in parallel. Default false preserves v1.11 behavior."),
16
22
  });
17
23
  /** Pure: count node occurrences by exact className across the cycle forest. */
18
24
  export function countByClass(report) {
@@ -24,27 +30,100 @@ export function countByClass(report) {
24
30
  }
25
31
  return counts;
26
32
  }
33
+ /**
34
+ * Spawn `leaks --referenceTree --groupByType --noContent` and parse the
35
+ * stdout. Non-fatal on failure: returns empty array so the cycle-side
36
+ * path still completes. Mirrors the pattern v1.11 introduced in
37
+ * `diffMemgraphs.captureReferenceTree`.
38
+ */
39
+ async function captureReferenceTreeCounts(path) {
40
+ const result = await runCommand("leaks", ["--referenceTree", "--groupByType", "--noContent", path], { timeoutMs: 5 * 60_000 });
41
+ if (result.code !== 0 && result.code !== 1)
42
+ return new Map();
43
+ const entries = parseReferenceTreeText(result.stdout, 5000);
44
+ return new Map(entries.map((e) => [e.className, e.instanceCount]));
45
+ }
27
46
  export async function countAlive(input) {
28
- const { report, resolvedPath } = await runLeaksAndParse(input.path);
29
- const counts = countByClass(report);
30
- const totalNodes = Array.from(counts.values()).reduce((a, b) => a + b, 0);
47
+ const wantReferenceTree = input.includeReferenceTree ?? false;
48
+ const [{ report, resolvedPath }, refTreeCounts] = await Promise.all([
49
+ runLeaksAndParse(input.path),
50
+ wantReferenceTree
51
+ ? captureReferenceTreeCounts(input.path)
52
+ : Promise.resolve(new Map()),
53
+ ]);
54
+ const cycleCounts = countByClass(report);
55
+ const totalNodes = Array.from(cycleCounts.values()).reduce((a, b) => a + b, 0);
31
56
  if (input.className) {
32
- let matched = 0;
33
- for (const [name, n] of counts.entries()) {
57
+ let cycleMatched = 0;
58
+ for (const [name, n] of cycleCounts.entries()) {
59
+ if (name.includes(input.className))
60
+ cycleMatched += n;
61
+ }
62
+ let refTreeMatched = 0;
63
+ for (const [name, n] of refTreeCounts.entries()) {
34
64
  if (name.includes(input.className))
35
- matched += n;
65
+ refTreeMatched += n;
36
66
  }
67
+ const entry = wantReferenceTree
68
+ ? {
69
+ className: input.className,
70
+ instanceCount: cycleMatched + refTreeMatched,
71
+ byCycle: cycleMatched,
72
+ byReferenceTree: refTreeMatched,
73
+ }
74
+ : { className: input.className, instanceCount: cycleMatched };
37
75
  return {
38
76
  ok: true,
39
77
  path: resolvedPath,
40
78
  totalNodes,
41
- counts: [{ className: input.className, instanceCount: matched }],
79
+ counts: [entry],
42
80
  };
43
81
  }
44
- const top = Array.from(counts.entries())
45
- .map(([name, n]) => ({ className: name, instanceCount: n }))
46
- .sort((a, b) => b.instanceCount - a.instanceCount)
47
- .slice(0, input.topN ?? 20);
48
- return { ok: true, path: resolvedPath, totalNodes, counts: top };
82
+ // topN path. Merge cycle + reference-tree counts when the flag is on,
83
+ // ordered by instanceCount desc.
84
+ const merged = new Map();
85
+ for (const [name, n] of cycleCounts.entries()) {
86
+ merged.set(name, { byCycle: n, byReferenceTree: 0 });
87
+ }
88
+ if (wantReferenceTree) {
89
+ for (const [name, n] of refTreeCounts.entries()) {
90
+ const existing = merged.get(name);
91
+ if (existing)
92
+ existing.byReferenceTree = n;
93
+ else
94
+ merged.set(name, { byCycle: 0, byReferenceTree: n });
95
+ }
96
+ }
97
+ const topN = input.topN ?? 20;
98
+ const allEntries = Array.from(merged.entries())
99
+ .map(([name, v]) => wantReferenceTree
100
+ ? {
101
+ className: name,
102
+ instanceCount: v.byCycle + v.byReferenceTree,
103
+ byCycle: v.byCycle,
104
+ byReferenceTree: v.byReferenceTree,
105
+ }
106
+ : { className: name, instanceCount: v.byCycle })
107
+ .sort((a, b) => b.instanceCount - a.instanceCount);
108
+ const top = allEntries.slice(0, topN);
109
+ const result = {
110
+ ok: true,
111
+ path: resolvedPath,
112
+ totalNodes,
113
+ counts: top,
114
+ };
115
+ // Actionable view: only meaningful when the reference-tree pass ran and
116
+ // returned data. Same ranking, just framework-noise filtered. Surfaces
117
+ // AV / KVO / app-level classes that would otherwise rank below
118
+ // NSMutableDictionary, CFString, etc.
119
+ if (wantReferenceTree && refTreeCounts.size > 0) {
120
+ const actionable = allEntries
121
+ .filter((e) => !isFrameworkNoise(e.className))
122
+ .slice(0, topN);
123
+ if (actionable.length > 0) {
124
+ result.actionableCounts = actionable;
125
+ }
126
+ }
127
+ return result;
49
128
  }
50
129
  //# sourceMappingURL=countAlive.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"countAlive.js","sourceRoot":"","sources":["../../src/tools/countAlive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAGvD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IACxE,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,mIAAmI,CACpI;IACH,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,iFAAiF,CAClF;CACJ,CAAC,CAAC;AAaH,+EAA+E;AAC/E,MAAM,UAAU,YAAY,CAAC,MAAmB;IAC9C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,SAAS;QAC9B,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAsB;IAEtB,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAE1E,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC;gBAAE,OAAO,IAAI,CAAC,CAAC;QACnD,CAAC;QACD,OAAO;YACL,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,YAAY;YAClB,UAAU;YACV,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;SACjE,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;SACrC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;SAC3D,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,CAAC;SACjD,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAE9B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACnE,CAAC"}
1
+ {"version":3,"file":"countAlive.js","sourceRoot":"","sources":["../../src/tools/countAlive.ts"],"names":[],"mappings":"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"}