@newrelic/preflight 1.63.0 → 1.63.2

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.
Files changed (39) hide show
  1. package/dist/config.d.ts +10 -0
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.js +21 -8
  4. package/dist/config.js.map +1 -1
  5. package/dist/dashboard/dashboard-server.d.ts +9 -0
  6. package/dist/dashboard/dashboard-server.d.ts.map +1 -1
  7. package/dist/dashboard/dashboard-server.js +6 -1
  8. package/dist/dashboard/dashboard-server.js.map +1 -1
  9. package/dist/hooks/process-ancestry.d.ts +33 -0
  10. package/dist/hooks/process-ancestry.d.ts.map +1 -1
  11. package/dist/hooks/process-ancestry.js +55 -0
  12. package/dist/hooks/process-ancestry.js.map +1 -1
  13. package/dist/hooks/session-resolver.d.ts +66 -3
  14. package/dist/hooks/session-resolver.d.ts.map +1 -1
  15. package/dist/hooks/session-resolver.js +155 -6
  16. package/dist/hooks/session-resolver.js.map +1 -1
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +46 -10
  19. package/dist/index.js.map +1 -1
  20. package/dist/metrics/git-efficiency-tracker.d.ts.map +1 -1
  21. package/dist/metrics/git-efficiency-tracker.js +42 -12
  22. package/dist/metrics/git-efficiency-tracker.js.map +1 -1
  23. package/dist/metrics/git-event-classifier.d.ts +38 -4
  24. package/dist/metrics/git-event-classifier.d.ts.map +1 -1
  25. package/dist/metrics/git-event-classifier.js +319 -8
  26. package/dist/metrics/git-event-classifier.js.map +1 -1
  27. package/dist/metrics/git-workspace-report.d.ts +0 -4
  28. package/dist/metrics/git-workspace-report.d.ts.map +1 -1
  29. package/dist/metrics/git-workspace-report.js +14 -8
  30. package/dist/metrics/git-workspace-report.js.map +1 -1
  31. package/dist/storage/local-store.d.ts +7 -0
  32. package/dist/storage/local-store.d.ts.map +1 -1
  33. package/dist/storage/local-store.js +23 -14
  34. package/dist/storage/local-store.js.map +1 -1
  35. package/dist/transport/unforwarded-session-monitor.d.ts +95 -0
  36. package/dist/transport/unforwarded-session-monitor.d.ts.map +1 -0
  37. package/dist/transport/unforwarded-session-monitor.js +120 -0
  38. package/dist/transport/unforwarded-session-monitor.js.map +1 -0
  39. package/package.json +1 -1
@@ -32,6 +32,7 @@
32
32
  * tool handlers should report "session_id not yet resolved" rather than make
33
33
  * one up.
34
34
  */
35
+ import { type AncestorPidsOptions } from './process-ancestry.js';
35
36
  /** Which of the sources produced a resolveSessionId() result. */
36
37
  export type SessionIdSource = 'jobdir' | 'ppid' | 'ppid-ancestor' | 'cwd';
37
38
  export interface SessionResolverOptions {
@@ -140,6 +141,26 @@ export declare function nextDelayMs(attempt: number): number;
140
141
  export declare function resolveSessionId(options?: SessionResolverOptions & {
141
142
  signal?: AbortSignal;
142
143
  }): Promise<string>;
144
+ export type PpidBreadcrumbWatchOptions = Omit<SessionResolverOptions, 'ancestorPids'> & {
145
+ signal?: AbortSignal;
146
+ /**
147
+ * Test seam for the parent-of-ppid level: the platform it is gated on, and
148
+ * the `ps` call that reads our ppid's parent and command line.
149
+ */
150
+ readonly ancestry?: Pick<AncestorPidsOptions, 'platform' | 'execFileSync'>;
151
+ } & ({
152
+ readonly includeParentOfPpid?: false;
153
+ } | {
154
+ readonly includeParentOfPpid: true;
155
+ /** The cwd-guessed id the caller already adopted. */
156
+ readonly staleId: string;
157
+ /**
158
+ * Called once, synchronously, with a listener for the caller to invoke
159
+ * each time it drains hook activity filed under `staleId`. The
160
+ * listener never runs `ps`, and does nothing once the watch settles.
161
+ */
162
+ readonly subscribeToStaleIdActivity?: (onActivity: () => void) => void;
163
+ });
143
164
  /**
144
165
  * Keep watching the PPID breadcrumb only (never cwd, never CLAUDE_JOB_DIR) —
145
166
  * used as a corrective safety net after an initial resolution came from the
@@ -149,10 +170,52 @@ export declare function resolveSessionId(options?: SessionResolverOptions & {
149
170
  * already adopted and is worth acting on — this function doesn't know or
150
171
  * care. No 60s WARN log: a cwd-sourced session working fine while the ppid
151
172
  * breadcrumb stays silent is expected, not alarming.
173
+ *
174
+ * With `includeParentOfPpid`, each tick also checks the breadcrumb of our
175
+ * ppid's own parent, but only when our ppid is npm's `npm exec` wrapper.
176
+ * That covers an `npx`-launched engine: the wrapper never gets a breadcrumb,
177
+ * so the direct watch alone can never correct a wrong cwd guess (#479: a
178
+ * Copilot engine started in a directory where Claude Code is active adopts
179
+ * the Claude session's id), and one level up is the host that ran `npx`,
180
+ * where its hooks write theirs. The wrapper is recognized by its command
181
+ * line, read with its parent in one `ps` call (readParentAndCommand()). An
182
+ * engine its host launched directly never looks above its ppid: that level
183
+ * is the host's own parent, which can carry another host's session when
184
+ * that host's hooks run as its children (Copilot in the VS Code extension
185
+ * host that also runs the Claude Code extension, say). Behind the wrapper:
186
+ *
187
+ * - A parent-level hit is only ever a correction. Once the slot names
188
+ * `staleId` the guess was right, and the parent level is not read again:
189
+ * a later change there is the host switching sessions (`/clear`,
190
+ * `/resume`), and adopting that as a correction would carry the old
191
+ * session's tool calls into the new one. So `staleId` coming back always
192
+ * means our ppid's own breadcrumb confirmed the guess.
193
+ * - The slot is also read each time the caller reports draining activity
194
+ * under `staleId` (subscribeToStaleIdActivity). The host's hook writes the
195
+ * slot before it appends the event, so this catches a slot that named the
196
+ * guess only between two ticks, provided a tool call drained in that gap.
197
+ * Only paired tool calls are reported, so a prompt with a text-only reply
198
+ * followed by `/clear` inside one tick gap still goes unseen. A wrong
199
+ * guess drains the guessed session's events too, and those never latch:
200
+ * our host's slot does not name that session. Activity reported before
201
+ * any lookup has succeeded can't be checked against the slot. If a lookup
202
+ * fails, before or after that activity, the activity stops the parent
203
+ * level too. A failed lookup is retried only on ticks 2, 4, 8, 16, ...
204
+ * (about 0.3s, 1.8s, 9.8s and 26s into the watch), so a wrong guess goes
205
+ * uncorrected whenever the guessed session's activity arrives while the
206
+ * lookup is failing. The retries keep spreading out, so that window lasts
207
+ * as long as `ps` keeps failing, not only tens of seconds.
208
+ * - A parent-level session that already has a live owning engine is not
209
+ * ours. Once skipped, an id stays skipped, so a neighbour whose engine
210
+ * later exits is not adopted then.
211
+ * - Never on Linux. The collector writes a breadcrumb at each of its
212
+ * ancestors there (collector-script.ts's writePpidBreadcrumb()), so the
213
+ * host's parent is routinely a shared slot (an editor's main process, a
214
+ * shell) carrying a concurrent session's id, which may have no engine of
215
+ * its own or not have adopted its id yet. Elsewhere the collector writes
216
+ * only its own ppid. Nor on Windows, which has no `ps`.
152
217
  */
153
- export declare function watchPpidBreadcrumb(options?: SessionResolverOptions & {
154
- signal?: AbortSignal;
155
- }): Promise<string>;
218
+ export declare function watchPpidBreadcrumb(options?: PpidBreadcrumbWatchOptions): Promise<string>;
156
219
  /**
157
220
  * Windows-only safety net for the race #686 reported: on native Windows the
158
221
  * MCP's own `process.ppid` is an interposed `cmd.exe`, so `watchPpidBreadcrumb()`
@@ -1 +1 @@
1
- {"version":3,"file":"session-resolver.d.ts","sourceRoot":"","sources":["../../src/hooks/session-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-resolver.d.ts","sourceRoot":"","sources":["../../src/hooks/session-resolver.ts"],"names":[],"mappings":"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"}
@@ -36,8 +36,9 @@ import { existsSync, readFileSync, readdirSync, statSync, openSync, readSync, cl
36
36
  import { resolve, basename } from 'node:path';
37
37
  import { homedir } from 'node:os';
38
38
  import { createLogger } from '../shared/index.js';
39
- import { getAncestorPids } from './process-ancestry.js';
39
+ import { getAncestorPids, isNpmExecWrapper, readParentAndCommand, } from './process-ancestry.js';
40
40
  import { redactSensitive } from '../config.js';
41
+ import { hasLiveOwningEngine } from '../storage/local-store.js';
41
42
  const logger = createLogger('session-resolver');
42
43
  const SESSION_ID_RE = /^[a-zA-Z0-9_-]{1,128}$/;
43
44
  const DEFAULT_STORAGE_DIR = resolve(homedir(), '.newrelic-preflight');
@@ -371,13 +372,128 @@ export async function resolveSessionId(options = {}) {
371
372
  * already adopted and is worth acting on — this function doesn't know or
372
373
  * care. No 60s WARN log: a cwd-sourced session working fine while the ppid
373
374
  * breadcrumb stays silent is expected, not alarming.
375
+ *
376
+ * With `includeParentOfPpid`, each tick also checks the breadcrumb of our
377
+ * ppid's own parent, but only when our ppid is npm's `npm exec` wrapper.
378
+ * That covers an `npx`-launched engine: the wrapper never gets a breadcrumb,
379
+ * so the direct watch alone can never correct a wrong cwd guess (#479: a
380
+ * Copilot engine started in a directory where Claude Code is active adopts
381
+ * the Claude session's id), and one level up is the host that ran `npx`,
382
+ * where its hooks write theirs. The wrapper is recognized by its command
383
+ * line, read with its parent in one `ps` call (readParentAndCommand()). An
384
+ * engine its host launched directly never looks above its ppid: that level
385
+ * is the host's own parent, which can carry another host's session when
386
+ * that host's hooks run as its children (Copilot in the VS Code extension
387
+ * host that also runs the Claude Code extension, say). Behind the wrapper:
388
+ *
389
+ * - A parent-level hit is only ever a correction. Once the slot names
390
+ * `staleId` the guess was right, and the parent level is not read again:
391
+ * a later change there is the host switching sessions (`/clear`,
392
+ * `/resume`), and adopting that as a correction would carry the old
393
+ * session's tool calls into the new one. So `staleId` coming back always
394
+ * means our ppid's own breadcrumb confirmed the guess.
395
+ * - The slot is also read each time the caller reports draining activity
396
+ * under `staleId` (subscribeToStaleIdActivity). The host's hook writes the
397
+ * slot before it appends the event, so this catches a slot that named the
398
+ * guess only between two ticks, provided a tool call drained in that gap.
399
+ * Only paired tool calls are reported, so a prompt with a text-only reply
400
+ * followed by `/clear` inside one tick gap still goes unseen. A wrong
401
+ * guess drains the guessed session's events too, and those never latch:
402
+ * our host's slot does not name that session. Activity reported before
403
+ * any lookup has succeeded can't be checked against the slot. If a lookup
404
+ * fails, before or after that activity, the activity stops the parent
405
+ * level too. A failed lookup is retried only on ticks 2, 4, 8, 16, ...
406
+ * (about 0.3s, 1.8s, 9.8s and 26s into the watch), so a wrong guess goes
407
+ * uncorrected whenever the guessed session's activity arrives while the
408
+ * lookup is failing. The retries keep spreading out, so that window lasts
409
+ * as long as `ps` keeps failing, not only tens of seconds.
410
+ * - A parent-level session that already has a live owning engine is not
411
+ * ours. Once skipped, an id stays skipped, so a neighbour whose engine
412
+ * later exits is not adopted then.
413
+ * - Never on Linux. The collector writes a breadcrumb at each of its
414
+ * ancestors there (collector-script.ts's writePpidBreadcrumb()), so the
415
+ * host's parent is routinely a shared slot (an editor's main process, a
416
+ * shell) carrying a concurrent session's id, which may have no engine of
417
+ * its own or not have adopted its id yet. Elsewhere the collector writes
418
+ * only its own ppid. Nor on Windows, which has no `ps`.
374
419
  */
375
420
  export async function watchPpidBreadcrumb(options = {}) {
376
421
  const ppid = options.ppid ?? process.ppid;
377
422
  const storagePath = options.storagePath ?? DEFAULT_STORAGE_DIR;
423
+ const platform = options.ancestry?.platform ?? process.platform;
424
+ const staleId = options.includeParentOfPpid ? options.staleId : undefined;
425
+ const watchesParentLevel = options.includeParentOfPpid === true && platform !== 'linux' && platform !== 'win32';
378
426
  let attempt = 0;
427
+ let tickCount = 0;
428
+ // Kept once our ppid's lookup succeeds: [ppid, parent] when ppid is an
429
+ // `npm exec` wrapper, else [ppid], past which resolveFromAncestorBreadcrumb
430
+ // never reads. The lookup runs on ticks 1, 2, 4, 8, ... until one succeeds,
431
+ // so a failed one (a `ps` timeout under load) is retried soon enough to
432
+ // recover from a blip, rarely enough that a `ps` that keeps timing out
433
+ // (each attempt blocks for up to 2s) costs little.
434
+ let parentLevelPids;
435
+ // Set once the parent slot names staleId, or staleId activity can't be
436
+ // checked against it; see the doc comment.
437
+ let parentLevelDone = false;
438
+ let lookupFailed = false;
439
+ // staleId activity reported before any lookup ran. A successful lookup
440
+ // clears it: its tick reads the slot straight away.
441
+ let uncheckedActivity = false;
442
+ let settled = false;
443
+ const skippedParentIds = new Set();
444
+ const stopReadingParentLevel = (reason) => {
445
+ parentLevelDone = true;
446
+ logger.debug(`${reason}; no longer reading the ppid parent breadcrumb`, { ppid, staleId });
447
+ };
448
+ const readParentLevelPids = () => {
449
+ if (parentLevelPids)
450
+ return parentLevelPids;
451
+ if ((tickCount & (tickCount - 1)) !== 0)
452
+ return [ppid]; // not a power of two
453
+ const lookup = readParentAndCommand(ppid, options.ancestry);
454
+ if (!lookup) {
455
+ logger.debug('Could not read the ppid command line; retrying on a later tick', {
456
+ ppid,
457
+ tick: tickCount,
458
+ });
459
+ lookupFailed = true;
460
+ if (uncheckedActivity)
461
+ stopReadingParentLevel('Activity under the cwd guess went unchecked');
462
+ return [ppid];
463
+ }
464
+ uncheckedActivity = false;
465
+ if (lookup.parentPid !== null && isNpmExecWrapper(lookup.command)) {
466
+ parentLevelPids = [ppid, lookup.parentPid];
467
+ }
468
+ else {
469
+ parentLevelPids = [ppid];
470
+ logger.debug('ppid is not an npm exec wrapper; not watching its parent breadcrumb', {
471
+ ppid,
472
+ });
473
+ }
474
+ return parentLevelPids;
475
+ };
476
+ // Reads the slot from the cached pids only: this runs on the caller's
477
+ // drain path, where a `ps` call could block for up to 2s.
478
+ const onStaleIdActivity = () => {
479
+ if (settled || !watchesParentLevel || parentLevelDone)
480
+ return;
481
+ if (!parentLevelPids) {
482
+ if (lookupFailed)
483
+ stopReadingParentLevel('Activity under the cwd guess went unchecked');
484
+ else
485
+ uncheckedActivity = true;
486
+ return;
487
+ }
488
+ if (resolveFromAncestorBreadcrumb(storagePath, parentLevelPids)?.sessionId === staleId) {
489
+ stopReadingParentLevel('The ppid parent breadcrumb named the cwd guess as its activity drained');
490
+ }
491
+ };
492
+ if (options.includeParentOfPpid)
493
+ options.subscribeToStaleIdActivity?.(onStaleIdActivity);
379
494
  return new Promise((resolvePromise, rejectPromise) => {
380
495
  const onAbort = () => {
496
+ settled = true;
381
497
  rejectPromise(new Error('session resolution aborted'));
382
498
  };
383
499
  if (options.signal) {
@@ -392,6 +508,7 @@ export async function watchPpidBreadcrumb(options = {}) {
392
508
  }
393
509
  }
394
510
  const tick = () => {
511
+ tickCount++;
395
512
  if (options.signal?.aborted) {
396
513
  options.signal.removeEventListener('abort', onAbort);
397
514
  return;
@@ -401,9 +518,42 @@ export async function watchPpidBreadcrumb(options = {}) {
401
518
  logger.debug('Resolved corrected session_id from ppid breadcrumb', { sessionId: sid });
402
519
  if (options.signal)
403
520
  options.signal.removeEventListener('abort', onAbort);
521
+ settled = true;
404
522
  resolvePromise(sid);
405
523
  return;
406
524
  }
525
+ if (watchesParentLevel && !parentLevelDone) {
526
+ // resolveFromAncestorBreadcrumb skips index 0, our ppid.
527
+ const fromParent = resolveFromAncestorBreadcrumb(storagePath, readParentLevelPids());
528
+ if (fromParent && !skippedParentIds.has(fromParent.sessionId)) {
529
+ const { sessionId, pid } = fromParent;
530
+ if (sessionId === staleId) {
531
+ parentLevelDone = true;
532
+ logger.debug('The ppid parent breadcrumb matches the cwd guess; no longer reading it', {
533
+ sessionId,
534
+ pid,
535
+ });
536
+ }
537
+ else if (hasLiveOwningEngine(storagePath, sessionId)) {
538
+ skippedParentIds.add(sessionId);
539
+ logger.debug('Ignoring the ppid parent breadcrumb: its session has a live owner', {
540
+ sessionId,
541
+ pid,
542
+ });
543
+ }
544
+ else {
545
+ logger.debug('Resolved corrected session_id from the ppid parent breadcrumb', {
546
+ sessionId,
547
+ pid,
548
+ });
549
+ if (options.signal)
550
+ options.signal.removeEventListener('abort', onAbort);
551
+ settled = true;
552
+ resolvePromise(sessionId);
553
+ return;
554
+ }
555
+ }
556
+ }
407
557
  const delay = nextDelayMs(attempt++);
408
558
  const handle = setTimeout(tick, delay);
409
559
  handle.unref?.();
@@ -417,11 +567,10 @@ export async function watchPpidBreadcrumb(options = {}) {
417
567
  * Whether `<storagePath>/buffer-<sessionId>.jsonl` exists and is non-empty —
418
568
  * i.e. the hook collector has actually appended at least one event for this
419
569
  * session. Mirrors `LocalStore`'s buffer-naming convention
420
- * (`buffer-<sessionId>.jsonl`) without importing `LocalStore` itself (this
421
- * module has no storage-layer dependency today); the file is only ever
422
- * created by `LocalStore.appendEvent()`'s `appendFileSync`, so existence
423
- * already implies non-empty content in practice — the size check is a cheap
424
- * extra guard, not load-bearing.
570
+ * (`buffer-<sessionId>.jsonl`) without constructing a `LocalStore`; the file
571
+ * is only ever created by `LocalStore.appendEvent()`'s `appendFileSync`, so
572
+ * existence already implies non-empty content in practice — the size check
573
+ * is a cheap extra guard, not load-bearing.
425
574
  */
426
575
  function hasActiveBuffer(storagePath, sessionId) {
427
576
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"session-resolver.js","sourceRoot":"","sources":["../../src/hooks/session-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,EACL,UAAU,EACV,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,SAAS,IAAI,WAAW,GACzB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,MAAM,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAC;AAEhD,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAC/C,MAAM,mBAAmB,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE,qBAAqB,CAAC,CAAC;AACtE,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACrD,MAAM,cAAc,GAAG,IAAI,CAAC;AAC5B,MAAM,aAAa,GAAG,MAAM,CAAC;AAE7B;;;;;GAKG;AACH,MAAM,uBAAuB,GAAG,CAAC,CAAC;AA+ClC;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,YAAuC;IACnE,IAAI,CAAC,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACnE,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IACtD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7E,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/E,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC/D,OAAO,MAA2B,CAAC;AACrC,CAAC;AAED;;;;GAIG;AACH,SAAS,yBAAyB,CAAC,YAAqB;IACtD,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/E,MAAM,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChD,OAAO,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,YAAuC;IACvE,MAAM,MAAM,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,OAAO,yBAAyB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CACnC,WAAmB,EACnB,IAAwB,EACxB,iBAAyB,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI;IAE7D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACvD,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,EAAE,iBAAiB,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC;IAC9E,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7C,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC;IAC7C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,GAAG,cAAc,EAAE,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,0DAA0D,EAAE;YACvE,IAAI;YACJ,OAAO;YACP,cAAc;SACf,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,OAAO,GAAG,CAAC;AACb,CAAC;AAWD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,6BAA6B,CAC3C,WAAmB,EACnB,YAA+B,EAC/B,cAAuB;IAEvB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAE,CAAC;QACjC,MAAM,SAAS,GACb,cAAc,KAAK,SAAS;YAC1B,CAAC,CAAC,qBAAqB,CAAC,WAAW,EAAE,GAAG,CAAC;YACzC,CAAC,CAAC,qBAAqB,CAAC,WAAW,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;QAC9D,IAAI,SAAS;YAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAClD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAW;IAChD,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AACrC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,WAAmB,EAAE,GAAuB;IACzE,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7D,MAAM,YAAY,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACjD,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,EAAE,gBAAgB,EAAE,GAAG,YAAY,MAAM,CAAC,CAAC;IACrF,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7C,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,IAAI,OAAO,GAAG,gBAAgB,CAAC,MAAM;QAAE,OAAO,gBAAgB,CAAC,OAAO,CAAE,CAAC;IACzE,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAA6D,EAAE;IAE/D,MAAM,YAAY,GAChB,OAAO,CAAC,YAAY,KAAK,SAAS;QAChC,CAAC,CAAC,OAAO,CAAC,YAAY;QACtB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAC1C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,mBAAmB,CAAC;IAE/D,0EAA0E;IAC1E,8DAA8D;IAC9D,MAAM,UAAU,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACnD,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;QAClF,OAAO,CAAC,kBAAkB,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;QAC1E,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,0EAA0E;IAC1E,0EAA0E;IAC1E,wEAAwE;IACxE,sEAAsE;IACtE,kEAAkE;IAClE,sEAAsE;IACtE,iEAAiE;IACjE,wEAAwE;IACxE,sEAAsE;IACtE,qEAAqE;IACrE,kDAAkD;IAClD,MAAM,SAAS,GAAG,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC3D,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,CAAC,IAAI,CAAC,iDAAiD,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QACzF,OAAO,CAAC,kBAAkB,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QACvE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,wEAAwE;IACxE,wEAAwE;IACxE,6EAA6E;IAC7E,2EAA2E;IAC3E,4DAA4D;IAC5D,IAAI,YAA2C,CAAC;IAEhD,OAAO,IAAI,OAAO,CAAS,CAAC,cAAc,EAAE,aAAa,EAAE,EAAE;QAC3D,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,aAAa,CAAC,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAClE,iEAAiE;YACjE,0DAA0D;YAC1D,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;gBAC5B,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACrD,OAAO;YACT,CAAC;YACD,MAAM,GAAG,GAAG,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YACrD,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC3F,OAAO,CAAC,kBAAkB,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;gBACjE,IAAI,OAAO,CAAC,MAAM;oBAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACzE,cAAc,CAAC,GAAG,CAAC,CAAC;gBACpB,OAAO;YACT,CAAC;YACD,mEAAmE;YACnE,yEAAyE;YACzE,oDAAoD;YACpD,YAAY;gBACV,OAAO,CAAC,YAAY,IAAI,eAAe,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE,CAAC,CAAC;YACvF,MAAM,YAAY,GAAG,6BAA6B,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAC9E,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,mDAAmD,EAAE;oBAC/D,SAAS,EAAE,YAAY,CAAC,SAAS;oBACjC,GAAG,EAAE,YAAY,CAAC,GAAG;oBACrB,KAAK,EAAE,YAAY,CAAC,KAAK;oBACzB,SAAS,EAAE,OAAO;iBACnB,CAAC,CAAC;gBACH,OAAO,CAAC,kBAAkB,EAAE,CAAC;oBAC3B,MAAM,EAAE,eAAe;oBACvB,SAAS,EAAE,YAAY,CAAC,SAAS;iBAClC,CAAC,CAAC;gBACH,IAAI,OAAO,CAAC,MAAM;oBAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACzE,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBACvC,OAAO;YACT,CAAC;YACD,MAAM,UAAU,GAAG,cAAc,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACpD,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,yDAAyD,EAAE;oBACrE,SAAS,EAAE,UAAU;oBACrB,SAAS,EAAE,OAAO;iBACnB,CAAC,CAAC;gBACH,OAAO,CAAC,kBAAkB,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;gBACvE,IAAI,OAAO,CAAC,MAAM;oBAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACzE,cAAc,CAAC,UAAU,CAAC,CAAC;gBAC3B,OAAO;YACT,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACvC,IAAI,CAAC,WAAW,IAAI,OAAO,IAAI,aAAa,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBACtE,WAAW,GAAG,IAAI,CAAC;gBACnB,MAAM,CAAC,IAAI,CACT,2GAA2G,CAC5G,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACvC,uEAAuE;YACvE,+DAA+D;YAC/D,yBAAyB;YACzB,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QACnB,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,UAA6D,EAAE;IAE/D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,mBAAmB,CAAC;IAE/D,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,OAAO,IAAI,OAAO,CAAS,CAAC,cAAc,EAAE,aAAa,EAAE,EAAE;QAC3D,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,aAAa,CAAC,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAClE,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;gBAC5B,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACrD,OAAO;YACT,CAAC;YACD,MAAM,GAAG,GAAG,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YACrD,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,CAAC,KAAK,CAAC,oDAAoD,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;gBACvF,IAAI,OAAO,CAAC,MAAM;oBAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACzE,cAAc,CAAC,GAAG,CAAC,CAAC;gBACpB,OAAO;YACT,CAAC;YACD,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACvC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QACnB,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,eAAe,CAAC,WAAmB,EAAE,SAAiB;IAC7D,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,SAAS,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;IAC9E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,UAKI,EAAE,OAAO,EAAE,EAAE,EAAE;IAEnB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,mBAAmB,CAAC;IAE/D,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,OAAO,IAAI,OAAO,CAAS,CAAC,cAAc,EAAE,aAAa,EAAE,EAAE;QAC3D,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,aAAa,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;QAC3D,CAAC,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAClE,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;gBAC5B,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACrD,OAAO;YACT,CAAC;YACD,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACnD,IAAI,SAAS,IAAI,SAAS,KAAK,OAAO,IAAI,eAAe,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;gBAClF,MAAM,CAAC,IAAI,CACT,iFAAiF,EACjF;oBACE,OAAO;oBACP,WAAW,EAAE,SAAS;iBACvB,CACF,CAAC;gBACF,IAAI,OAAO,CAAC,MAAM;oBAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACzE,cAAc,CAAC,SAAS,CAAC,CAAC;gBAC1B,OAAO;YACT,CAAC;YACD,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACvC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QACnB,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,EAA6B;IAChE,IAAI,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IACtB,OAAO,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AACzF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,6BAA6B,CAAC,EAA6B;IACzE,IAAI,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IACtB,OAAO,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAC5D,CAAC;AA2CD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,YAAY,CAC1B,YAAuC,EACvC,OAA8C;IAE9C,MAAM,MAAM,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,SAAS,GACb,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QAC1E,CAAC,CAAC,MAAM,CAAC,SAAS;QAClB,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5F,MAAM,UAAU,GACd,MAAM,CAAC,UAAU,KAAK,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1F,MAAM,MAAM,GACV,OAAO,EAAE,aAAa,KAAK,IAAI,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QAC9F,CAAC,CAAC,MAAM,CAAC,MAAM;QACf,CAAC,CAAC,IAAI,CAAC;IAEX,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACjD,CAAC;AAED,4EAA4E;AAC5E,6EAA6E;AAC7E,0EAA0E;AAC1E,cAAc;AACd,MAAM,4BAA4B,GAAG,EAAE,GAAG,IAAI,CAAC;AAC/C,MAAM,+BAA+B,GAAG,IAAI,GAAG,IAAI,CAAC;AAQpD;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAY,EAAE,qBAA8B;IAChF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB;YAAE,MAAM,CAAC,6CAA6C;QAC3F,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACvB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAChC,2EAA2E;QAC3E,gCAAgC;QAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;YAAE,SAAS;QAC3C,IAAI,MAA2B,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAwB,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IACE,MAAM,CAAC,IAAI,KAAK,UAAU;YAC1B,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;YAClC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EACzB,CAAC;YACD,OAAO,MAAM,CAAC,OAAO,CAAC;QACxB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,kBAAkB,CAAC,WAAmB,EAAE,SAAiB;IAChE,MAAM,QAAQ,GAAG,GAAG,SAAS,QAAQ,CAAC;IACtC,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QACxD,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;IAC9C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAGnC;IACC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAEhD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IACnF,MAAM,cAAc,GAAG,kBAAkB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAClE,IAAI,cAAc,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAEzC,IAAI,EAAU,CAAC;IACf,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC;QACrC,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5B,EAAE,GAAG,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,IAAI,GAAG,GAAG,IAAI,CAAC;QACf,0EAA0E;QAC1E,oEAAoE;QACpE,sEAAsE;QACtE,0DAA0D;QAC1D,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,OAAO,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,GAAG,GAAG,+BAA+B,EAAE,CAAC;YAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;YAC9D,GAAG,IAAI,SAAS,CAAC;YACjB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACvC,MAAM,SAAS,GAAG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;YAC1D,MAAM,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;YACjF,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACpD,yEAAyE;YACzE,sEAAsE;YACtE,MAAM,KAAK,GAAG,qBAAqB,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;YACpD,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAwB,IAAI,GAAG,CAAC;IAC3D,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,GAAG;IACH,IAAI;IACJ,EAAE;CACH,CAAC,CAAC;AAkBH;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAgC;IACjE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC;IAEzC,IAAI,QAAQ,IAAI,QAAQ,CAAC,UAAU,KAAK,MAAM,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACjD,CAAC;IACD,IAAI,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,QAAQ,IAAI,QAAQ,CAAC,UAAU,KAAK,MAAM,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACjD,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IACvB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YACjE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAyB;IAC7D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM;YACT,OAAO,CAAC,CAAC;QACX,KAAK,UAAU;YACb,OAAO,CAAC,CAAC;QACX,KAAK,MAAM;YACT,OAAO,CAAC,CAAC;QACX,KAAK,KAAK;YACR,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAiC,EACjC,IAAuB;IAEvB,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAClC,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACvE,CAAC"}
1
+ {"version":3,"file":"session-resolver.js","sourceRoot":"","sources":["../../src/hooks/session-resolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -84,6 +84,7 @@ import { SessionSpan } from './tracing/session-span.js';
84
84
  import { TaskSpanTracker } from './tracing/task-span-tracker.js';
85
85
  import { emitToolCallSpan } from './tracing/tool-call-span.js';
86
86
  import { NrIngestManager } from './transport/nr-ingest.js';
87
+ import { UNFORWARDED_SESSIONS_HINT, UnforwardedSessionMonitor, detectCloudForwardingGap, } from './transport/unforwarded-session-monitor.js';
87
88
  import { HomelabAccumulator, HomelabForwarder } from './homelab/index.js';
88
89
  import { VERSION } from './version.js';
89
90
  export { loadMcpConfig, redactSensitive } from './config.js';
@@ -111,7 +112,7 @@ function loadConfigOrDie(options) {
111
112
  }
112
113
  catch (err) {
113
114
  const msg = err instanceof Error ? err.message : String(err);
114
- throw new Error(`${msg}\n\nRun 'preflight doctor' to diagnose.`);
115
+ throw new Error(`${msg}\n\nRun 'preflight doctor' to diagnose.`, { cause: err });
115
116
  }
116
117
  }
117
118
  /**
@@ -665,6 +666,9 @@ async function main() {
665
666
  // only when the initial resolution came from the collision-prone cwd
666
667
  // fallback — see resolvedViaCwdOnly) when shutdown fires.
667
668
  let ppidCorrectionAbort;
669
+ // That watch's listener for tool calls drained under the cwd guess, set
670
+ // while it runs (see subscribeToStaleIdActivity in session-resolver.ts).
671
+ let cwdGuessActivity = null;
668
672
  // True whenever the live sessionTraceId came from the collision-prone cwd
669
673
  // fallback and hasn't yet been ppid-confirmed. While true, the periodic
670
674
  // session-JSON checkpoint below is suppressed so a stale identity never
@@ -793,6 +797,11 @@ async function main() {
793
797
  // synchronous setup completes, to decide whether to arm a background
794
798
  // correction watch (see `startPpidCorrectionWatch` below).
795
799
  let resolvedViaCwdOnly = false;
800
+ // --local only: set when the config asked for cloud export but this
801
+ // process fell back to local mode for want of credentials, so every
802
+ // ownerless session it drains is kept locally and never sent to New
803
+ // Relic. Surfaced as a per-session warning and on GET /api/health (#479).
804
+ let unforwardedSessionMonitor;
796
805
  if (options.stdio) {
797
806
  // Connect stdio FIRST so the MCP handshake can complete immediately.
798
807
  // Tools are registered after initialization; tool calls before that
@@ -864,12 +873,13 @@ async function main() {
864
873
  config = loadConfigOrDie(options);
865
874
  }
866
875
  catch (err) {
867
- const msg = err instanceof Error ? err.message : String(err);
868
- if (!/Missing required configuration: (licenseKey|accountId)/.test(msg)) {
876
+ const gap = detectCloudForwardingGap(err);
877
+ if (!gap)
869
878
  throw err;
870
- }
871
879
  process.env.NR_AI_MODE = 'local';
872
880
  config = loadConfigOrDie(options);
881
+ unforwardedSessionMonitor = new UnforwardedSessionMonitor({ gap });
882
+ logger.warn(`Cloud export is configured (mode='${gap.requestedMode}') but this --local process has no ${gap.missingField}; sessions it drains will not reach New Relic`, { reason: gap.reason, requestedMode: gap.requestedMode, hint: UNFORWARDED_SESSIONS_HINT });
873
883
  }
874
884
  if (!config.enabled) {
875
885
  logger.info('Server disabled via config — exiting');
@@ -1611,6 +1621,11 @@ async function main() {
1611
1621
  },
1612
1622
  alertEngine,
1613
1623
  alertLog,
1624
+ ...(unforwardedSessionMonitor
1625
+ ? {
1626
+ unforwardedSessions: () => unforwardedSessionMonitor.getSnapshot(),
1627
+ }
1628
+ : {}),
1614
1629
  });
1615
1630
  let addr;
1616
1631
  try {
@@ -1786,6 +1801,9 @@ async function main() {
1786
1801
  logger.warn('onRecord called before full initialization; skipping');
1787
1802
  return;
1788
1803
  }
1804
+ if (cwdGuessActivity && rawRecord.sessionId === cwdGuessActivity.staleId) {
1805
+ cwdGuessActivity.onActivity();
1806
+ }
1789
1807
  // Capture active task ID before recordToolCall may close the current task
1790
1808
  const taskIdBeforeRecord = config.otlp.transport !== 'nr-events-api' ? taskDetector.getActiveTaskId() : null;
1791
1809
  sessionTracker.recordToolCall(rawRecord);
@@ -1889,6 +1907,11 @@ async function main() {
1889
1907
  logger.warn('Tool record arrived with cloud ingest not yet initialized — AiToolCall/AiMcpToolCall events are being dropped until session ID resolution completes');
1890
1908
  }
1891
1909
  capturedNrIngest?.ingestToolCall(record, auditRecord);
1910
+ // Only set on --local, whose unscoped drain skips every per-session
1911
+ // buffer with a live owning engine. Records from the legacy shared
1912
+ // buffer.jsonl are drained regardless and usually carry no sessionId,
1913
+ // so the monitor counts them as untracked.
1914
+ unforwardedSessionMonitor?.recordToolCall(record.sessionId);
1892
1915
  // SSE consumers filter by sessionId for the per-session live tail.
1893
1916
  // Records without a sessionId are legacy buffer entries that surfaced
1894
1917
  // during the migrateLegacyBuffer() window on first boot — skip the
@@ -2753,20 +2776,29 @@ async function main() {
2753
2776
  // can (see the win32 branch's own comment), but a shared flag makes
2754
2777
  // that a documented invariant rather than an accident of timing.
2755
2778
  let corrected = false;
2779
+ let activityListener = null;
2756
2780
  void watchPpidBreadcrumb({
2757
2781
  storagePath: config.storagePath,
2758
2782
  signal: ppidCorrectionAbort.signal,
2783
+ includeParentOfPpid: true,
2784
+ staleId,
2785
+ subscribeToStaleIdActivity: (onActivity) => {
2786
+ activityListener = { staleId, onActivity };
2787
+ cwdGuessActivity = activityListener;
2788
+ },
2759
2789
  })
2760
2790
  .then(async (ppidId) => {
2761
2791
  if (ppidCorrectionAbort?.signal.aborted || corrected)
2762
2792
  return;
2763
2793
  if (ppidId === staleId) {
2764
- // The cwd guess turned out to be correct — no correction needed,
2765
- // so no reason to keep suppressing checkpoints for the rest of
2766
- // the cap window. It was NOT seeded eagerly (see the
2767
- // resolvedViaCwdOnly gate on rehydrateTrackersIfResumed's first
2768
- // call site) precisely because it wasn't confirmed yet — seed it
2769
- // now that it is.
2794
+ // The cwd guess turned out to be correct, as confirmed by our own
2795
+ // ppid's breadcrumb: the watch never resolves to staleId from an
2796
+ // ancestor, whose breadcrumb may be a co-located session's. No
2797
+ // correction needed, so no reason to keep suppressing checkpoints
2798
+ // for the rest of the cap window. It was NOT seeded eagerly (see
2799
+ // the resolvedViaCwdOnly gate on rehydrateTrackersIfResumed's
2800
+ // first call site) precisely because it wasn't confirmed yet —
2801
+ // seed it now that it is.
2770
2802
  rehydrateTrackersIfResumed(staleId);
2771
2803
  clearPendingConfirmation();
2772
2804
  return;
@@ -2784,6 +2816,10 @@ async function main() {
2784
2816
  logger.warn('PPID correction watch failed', { error: String(err) });
2785
2817
  }
2786
2818
  clearPendingConfirmation();
2819
+ })
2820
+ .finally(() => {
2821
+ if (cwdGuessActivity === activityListener)
2822
+ cwdGuessActivity = null;
2787
2823
  });
2788
2824
  // On native Windows the ppid breadcrumb above never matches (see #686
2789
2825
  // and watchCwdBreadcrumbForCorrection's own doc comment), so the watch