@desplega.ai/qa-use 2.14.1 → 2.15.1

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 (139) hide show
  1. package/README.md +23 -0
  2. package/dist/lib/api/index.d.ts +5 -1
  3. package/dist/lib/api/index.d.ts.map +1 -1
  4. package/dist/lib/api/index.js +112 -5
  5. package/dist/lib/api/index.js.map +1 -1
  6. package/dist/lib/api/sse.d.ts +22 -2
  7. package/dist/lib/api/sse.d.ts.map +1 -1
  8. package/dist/lib/api/sse.js +77 -5
  9. package/dist/lib/api/sse.js.map +1 -1
  10. package/dist/lib/env/index.d.ts +13 -0
  11. package/dist/lib/env/index.d.ts.map +1 -1
  12. package/dist/lib/env/index.js +35 -0
  13. package/dist/lib/env/index.js.map +1 -1
  14. package/dist/lib/env/localhost.d.ts +22 -0
  15. package/dist/lib/env/localhost.d.ts.map +1 -0
  16. package/dist/lib/env/localhost.js +49 -0
  17. package/dist/lib/env/localhost.js.map +1 -0
  18. package/dist/lib/env/paths.d.ts +27 -0
  19. package/dist/lib/env/paths.d.ts.map +1 -0
  20. package/dist/lib/env/paths.js +42 -0
  21. package/dist/lib/env/paths.js.map +1 -0
  22. package/dist/lib/env/sessions.d.ts +55 -0
  23. package/dist/lib/env/sessions.d.ts.map +1 -0
  24. package/dist/lib/env/sessions.js +128 -0
  25. package/dist/lib/env/sessions.js.map +1 -0
  26. package/dist/lib/tunnel/errors.d.ts +61 -0
  27. package/dist/lib/tunnel/errors.d.ts.map +1 -0
  28. package/dist/lib/tunnel/errors.js +152 -0
  29. package/dist/lib/tunnel/errors.js.map +1 -0
  30. package/dist/lib/tunnel/index.d.ts.map +1 -1
  31. package/dist/lib/tunnel/index.js +26 -11
  32. package/dist/lib/tunnel/index.js.map +1 -1
  33. package/dist/lib/tunnel/registry.d.ts +182 -0
  34. package/dist/lib/tunnel/registry.d.ts.map +1 -0
  35. package/dist/lib/tunnel/registry.js +561 -0
  36. package/dist/lib/tunnel/registry.js.map +1 -0
  37. package/dist/package.json +1 -1
  38. package/dist/src/cli/commands/browser/_detached.d.ts +27 -0
  39. package/dist/src/cli/commands/browser/_detached.d.ts.map +1 -0
  40. package/dist/src/cli/commands/browser/_detached.js +422 -0
  41. package/dist/src/cli/commands/browser/_detached.js.map +1 -0
  42. package/dist/src/cli/commands/browser/close.d.ts +7 -0
  43. package/dist/src/cli/commands/browser/close.d.ts.map +1 -1
  44. package/dist/src/cli/commands/browser/close.js +101 -5
  45. package/dist/src/cli/commands/browser/close.js.map +1 -1
  46. package/dist/src/cli/commands/browser/create.d.ts +7 -0
  47. package/dist/src/cli/commands/browser/create.d.ts.map +1 -1
  48. package/dist/src/cli/commands/browser/create.js +233 -25
  49. package/dist/src/cli/commands/browser/create.js.map +1 -1
  50. package/dist/src/cli/commands/browser/index.d.ts.map +1 -1
  51. package/dist/src/cli/commands/browser/index.js +3 -0
  52. package/dist/src/cli/commands/browser/index.js.map +1 -1
  53. package/dist/src/cli/commands/browser/run.d.ts.map +1 -1
  54. package/dist/src/cli/commands/browser/run.js +13 -6
  55. package/dist/src/cli/commands/browser/run.js.map +1 -1
  56. package/dist/src/cli/commands/browser/status.d.ts +4 -0
  57. package/dist/src/cli/commands/browser/status.d.ts.map +1 -1
  58. package/dist/src/cli/commands/browser/status.js +85 -3
  59. package/dist/src/cli/commands/browser/status.js.map +1 -1
  60. package/dist/src/cli/commands/doctor.d.ts +45 -0
  61. package/dist/src/cli/commands/doctor.d.ts.map +1 -0
  62. package/dist/src/cli/commands/doctor.js +267 -0
  63. package/dist/src/cli/commands/doctor.js.map +1 -0
  64. package/dist/src/cli/commands/test/run.d.ts.map +1 -1
  65. package/dist/src/cli/commands/test/run.js +33 -19
  66. package/dist/src/cli/commands/test/run.js.map +1 -1
  67. package/dist/src/cli/commands/tunnel/close.d.ts +18 -0
  68. package/dist/src/cli/commands/tunnel/close.d.ts.map +1 -0
  69. package/dist/src/cli/commands/tunnel/close.js +154 -0
  70. package/dist/src/cli/commands/tunnel/close.js.map +1 -0
  71. package/dist/src/cli/commands/tunnel/index.d.ts +6 -0
  72. package/dist/src/cli/commands/tunnel/index.d.ts.map +1 -0
  73. package/dist/src/cli/commands/tunnel/index.js +17 -0
  74. package/dist/src/cli/commands/tunnel/index.js.map +1 -0
  75. package/dist/src/cli/commands/tunnel/ls.d.ts +10 -0
  76. package/dist/src/cli/commands/tunnel/ls.d.ts.map +1 -0
  77. package/dist/src/cli/commands/tunnel/ls.js +89 -0
  78. package/dist/src/cli/commands/tunnel/ls.js.map +1 -0
  79. package/dist/src/cli/commands/tunnel/start.d.ts +15 -0
  80. package/dist/src/cli/commands/tunnel/start.d.ts.map +1 -0
  81. package/dist/src/cli/commands/tunnel/start.js +65 -0
  82. package/dist/src/cli/commands/tunnel/start.js.map +1 -0
  83. package/dist/src/cli/commands/tunnel/status.d.ts +8 -0
  84. package/dist/src/cli/commands/tunnel/status.d.ts.map +1 -0
  85. package/dist/src/cli/commands/tunnel/status.js +58 -0
  86. package/dist/src/cli/commands/tunnel/status.js.map +1 -0
  87. package/dist/src/cli/generated/docs-content.d.ts +1 -1
  88. package/dist/src/cli/generated/docs-content.d.ts.map +1 -1
  89. package/dist/src/cli/generated/docs-content.js +157 -100
  90. package/dist/src/cli/generated/docs-content.js.map +1 -1
  91. package/dist/src/cli/index.js +8 -0
  92. package/dist/src/cli/index.js.map +1 -1
  93. package/dist/src/cli/lib/browser.d.ts +25 -9
  94. package/dist/src/cli/lib/browser.d.ts.map +1 -1
  95. package/dist/src/cli/lib/browser.js +73 -42
  96. package/dist/src/cli/lib/browser.js.map +1 -1
  97. package/dist/src/cli/lib/cli-entry.d.ts +40 -0
  98. package/dist/src/cli/lib/cli-entry.d.ts.map +1 -0
  99. package/dist/src/cli/lib/cli-entry.js +65 -0
  100. package/dist/src/cli/lib/cli-entry.js.map +1 -0
  101. package/dist/src/cli/lib/runner.d.ts +6 -0
  102. package/dist/src/cli/lib/runner.d.ts.map +1 -1
  103. package/dist/src/cli/lib/runner.js +2 -2
  104. package/dist/src/cli/lib/runner.js.map +1 -1
  105. package/dist/src/cli/lib/startup-sweep.d.ts +45 -0
  106. package/dist/src/cli/lib/startup-sweep.d.ts.map +1 -0
  107. package/dist/src/cli/lib/startup-sweep.js +246 -0
  108. package/dist/src/cli/lib/startup-sweep.js.map +1 -0
  109. package/dist/src/cli/lib/tunnel-banner.d.ts +33 -0
  110. package/dist/src/cli/lib/tunnel-banner.d.ts.map +1 -0
  111. package/dist/src/cli/lib/tunnel-banner.js +55 -0
  112. package/dist/src/cli/lib/tunnel-banner.js.map +1 -0
  113. package/dist/src/cli/lib/tunnel-error-hint.d.ts +20 -0
  114. package/dist/src/cli/lib/tunnel-error-hint.d.ts.map +1 -0
  115. package/dist/src/cli/lib/tunnel-error-hint.js +48 -0
  116. package/dist/src/cli/lib/tunnel-error-hint.js.map +1 -0
  117. package/dist/src/cli/lib/tunnel-option.d.ts +27 -0
  118. package/dist/src/cli/lib/tunnel-option.d.ts.map +1 -0
  119. package/dist/src/cli/lib/tunnel-option.js +77 -0
  120. package/dist/src/cli/lib/tunnel-option.js.map +1 -0
  121. package/dist/src/cli/lib/tunnel-resolve.d.ts +42 -0
  122. package/dist/src/cli/lib/tunnel-resolve.d.ts.map +1 -0
  123. package/dist/src/cli/lib/tunnel-resolve.js +72 -0
  124. package/dist/src/cli/lib/tunnel-resolve.js.map +1 -0
  125. package/lib/api/index.ts +136 -6
  126. package/lib/api/sse.test.ts +530 -0
  127. package/lib/api/sse.ts +105 -5
  128. package/lib/env/index.ts +51 -0
  129. package/lib/env/localhost.test.ts +63 -0
  130. package/lib/env/localhost.ts +51 -0
  131. package/lib/env/paths.ts +46 -0
  132. package/lib/env/sessions.test.ts +109 -0
  133. package/lib/env/sessions.ts +155 -0
  134. package/lib/tunnel/errors.test.ts +105 -0
  135. package/lib/tunnel/errors.ts +169 -0
  136. package/lib/tunnel/index.ts +26 -11
  137. package/lib/tunnel/registry.test.ts +420 -0
  138. package/lib/tunnel/registry.ts +646 -0
  139. package/package.json +1 -1
package/README.md CHANGED
@@ -93,9 +93,32 @@ qa-use browser run # Interactive REPL mode
93
93
  | `qa-use browser screenshot <path>` | Save screenshot |
94
94
  | `qa-use browser run` | Interactive REPL mode |
95
95
  | `qa-use browser close` | Close browser session |
96
+ | `qa-use browser status --list` | List active sessions across processes |
96
97
 
97
98
  Run `qa-use browser --help` for the full list of 29 browser commands.
98
99
 
100
+ ### Tunnel & Maintenance Commands
101
+
102
+ `browser create` auto-tunnels when your target is localhost and the API is remote. For standalone tunnels (or cross-process registry inspection) use `qa-use tunnel`:
103
+
104
+ ```bash
105
+ qa-use tunnel start http://localhost:3000 --hold # Hold a public tunnel
106
+ qa-use tunnel ls # List active tunnels
107
+ qa-use tunnel status <target|hash> # Detail for one entry
108
+ qa-use tunnel close <target|hash> # Force-release a tunnel
109
+ qa-use doctor # Reap stale sessions/tunnels
110
+ qa-use doctor --dry-run # Preview what would be reaped
111
+ ```
112
+
113
+ | Command | Description |
114
+ |---------|-------------|
115
+ | `qa-use tunnel ls` | List active tunnels in the registry |
116
+ | `qa-use tunnel status <target>` | Show detail for a single tunnel |
117
+ | `qa-use tunnel close <target>` | Force-release a tunnel (kills detached holder) |
118
+ | `qa-use doctor` | Reap stale sessions/tunnels (dead PIDs) |
119
+
120
+ > **Note:** `qa-use tunnel *` is the CLI-side cross-process tunnel registry, distinct from `qa-use mcp tunnel` which is the MCP-mode persistent tunnel wrapper (see below).
121
+
99
122
  ### API Commands
100
123
 
101
124
  Dynamic API access powered by live OpenAPI (`/api/v1/openapi.json`) with local cache fallback.
@@ -272,9 +272,13 @@ export declare class ApiClient {
272
272
  * Run test definitions with SSE streaming progress
273
273
  * @param options - Test execution options
274
274
  * @param onEvent - Optional callback for SSE events
275
+ * @param runtimeOptions - Optional runtime controls (idle timeout, external signal)
275
276
  * @returns Promise resolving to test result
276
277
  */
277
- runCliTest(options: RunCliTestOptions, onEvent?: SSECallback): Promise<RunCliTestResult>;
278
+ runCliTest(options: RunCliTestOptions, onEvent?: SSECallback, runtimeOptions?: {
279
+ idleTimeoutSec?: number;
280
+ signal?: AbortSignal;
281
+ }): Promise<RunCliTestResult>;
278
282
  /**
279
283
  * Export a database test to YAML or JSON format
280
284
  * @param testId - UUID of the test to export
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/api/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/api/index.ts"],"names":[],"mappings":"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"}
@@ -463,9 +463,69 @@ export class ApiClient {
463
463
  * Run test definitions with SSE streaming progress
464
464
  * @param options - Test execution options
465
465
  * @param onEvent - Optional callback for SSE events
466
+ * @param runtimeOptions - Optional runtime controls (idle timeout, external signal)
466
467
  * @returns Promise resolving to test result
467
468
  */
468
- async runCliTest(options, onEvent) {
469
+ async runCliTest(options, onEvent, runtimeOptions) {
470
+ // Internal AbortController is wired into both `fetch` and `streamSSE` so
471
+ // we can deterministically tear down the underlying TCP socket on every
472
+ // exit path. Phase 2 actively aborts on terminal SSE events (`complete` /
473
+ // `error`) so we don't wait for the backend to close the stream.
474
+ // Phase 3 widens the public signature to accept a caller signal and an
475
+ // idle-timeout watchdog (`--timeout` end-to-end).
476
+ const controller = new AbortController();
477
+ const reasonRef = { current: null };
478
+ let result = null;
479
+ const idleTimeoutSec = runtimeOptions?.idleTimeoutSec;
480
+ const idleTimeoutMs = idleTimeoutSec && idleTimeoutSec > 0 ? Math.round(idleTimeoutSec * 1000) : 0;
481
+ let idleTimer = null;
482
+ const clearIdleTimer = () => {
483
+ if (idleTimer !== null) {
484
+ clearTimeout(idleTimer);
485
+ idleTimer = null;
486
+ }
487
+ };
488
+ const armIdleTimer = () => {
489
+ if (idleTimeoutMs <= 0)
490
+ return;
491
+ clearIdleTimer();
492
+ idleTimer = setTimeout(() => {
493
+ // Idle watchdog fired — no SSE bytes for `idleTimeoutSec` seconds.
494
+ // Mark the reason BEFORE aborting so the catch block can throw a
495
+ // typed timeout error instead of swallowing the AbortError.
496
+ reasonRef.current = 'idle-timeout';
497
+ controller.abort();
498
+ }, idleTimeoutMs);
499
+ // Don't keep the event loop alive just for the watchdog.
500
+ if (typeof idleTimer === 'object' && idleTimer && 'unref' in idleTimer) {
501
+ idleTimer.unref();
502
+ }
503
+ };
504
+ // Wire caller-provided signal: if it aborts, mark `terminationReason` so
505
+ // the catch block re-throws (instead of swallowing) with the abort error.
506
+ const callerSignal = runtimeOptions?.signal;
507
+ let callerAbortListener = null;
508
+ if (callerSignal) {
509
+ if (callerSignal.aborted) {
510
+ reasonRef.current = 'external';
511
+ controller.abort();
512
+ }
513
+ else {
514
+ callerAbortListener = () => {
515
+ if (reasonRef.current === null) {
516
+ reasonRef.current = 'external';
517
+ }
518
+ controller.abort();
519
+ };
520
+ callerSignal.addEventListener('abort', callerAbortListener, { once: true });
521
+ }
522
+ }
523
+ // Merge caller signal with internal controller.signal so `fetch` and
524
+ // `streamSSE` see whichever fires first. `AbortSignal.any` is Node 20.3+
525
+ // and the project requires Node 20+.
526
+ const mergedSignal = callerSignal
527
+ ? AbortSignal.any([callerSignal, controller.signal])
528
+ : controller.signal;
469
529
  try {
470
530
  const response = await fetch(`${this.getApiUrl()}/vibe-qa/cli/run`, {
471
531
  method: 'POST',
@@ -476,32 +536,79 @@ export class ApiClient {
476
536
  Accept: 'text/event-stream',
477
537
  },
478
538
  body: JSON.stringify(options),
539
+ signal: mergedSignal,
479
540
  });
480
541
  if (!response.ok) {
481
542
  const errorData = (await response.json().catch(() => ({})));
482
543
  throw new Error(formatApiError(errorData, `HTTP ${response.status}: Failed to run test`));
483
544
  }
484
- let result = null;
485
- // Stream SSE events
486
- for await (const event of streamSSE(response)) {
545
+ // Arm the idle watchdog AFTER headers arrive — first event may take
546
+ // a while on a cold backend / large test. We don't punish slow first
547
+ // bytes; we punish silence between bytes.
548
+ armIdleTimer();
549
+ // Stream SSE events. `onChunk` resets the idle watchdog on every
550
+ // byte chunk (so SSE comment pings — which yield zero parsed events
551
+ // — still keep the connection alive).
552
+ for await (const event of streamSSE(response, {
553
+ signal: mergedSignal,
554
+ onChunk: () => armIdleTimer(),
555
+ })) {
487
556
  if (onEvent)
488
557
  onEvent(event);
489
- // Capture final result
558
+ // Capture final result and tear down the socket immediately on a
559
+ // terminal event. Trailing events (e.g. `test_fixed`, `persisted`)
560
+ // that may arrive after `complete` are intentionally dropped per the
561
+ // plan — the backend keeps the SSE stream open, so waiting for it to
562
+ // close on its own is what causes the ~80s hang we're fixing.
490
563
  if (event.event === 'complete' || event.event === 'error') {
491
564
  result = event.data;
565
+ reasonRef.current = 'complete';
566
+ controller.abort();
567
+ break;
492
568
  }
493
569
  }
494
570
  if (!result) {
571
+ // No terminal event arrived AND the stream closed (or was aborted).
572
+ // If we got here via idle timeout, surface that explicitly.
573
+ if (reasonRef.current === 'idle-timeout') {
574
+ throw new Error(`Test run timed out: no SSE events for ${idleTimeoutSec}s`);
575
+ }
495
576
  throw new Error('No result received from test execution');
496
577
  }
497
578
  return result;
498
579
  }
499
580
  catch (error) {
581
+ // If we triggered the abort ourselves on a terminal event, the for-await
582
+ // loop may surface the abort as an AbortError after we've already
583
+ // captured `result`. Swallow it and return the captured result.
584
+ if (reasonRef.current === 'complete' &&
585
+ error instanceof Error &&
586
+ error.name === 'AbortError' &&
587
+ result) {
588
+ return result;
589
+ }
590
+ // Idle-timeout: the abort came from our watchdog, not from a real
591
+ // network failure. Surface a typed message that tools (and humans)
592
+ // can grep for.
593
+ if (reasonRef.current === 'idle-timeout' &&
594
+ error instanceof Error &&
595
+ error.name === 'AbortError') {
596
+ throw new Error(`Test run timed out: no SSE events for ${idleTimeoutSec}s`);
597
+ }
500
598
  if (error instanceof Error) {
501
599
  throw error;
502
600
  }
503
601
  throw new Error('Unknown error running test');
504
602
  }
603
+ finally {
604
+ // Defensive teardown: abort is idempotent. Guarantees the socket is
605
+ // released even if the consumer above threw mid-iteration.
606
+ controller.abort();
607
+ clearIdleTimer();
608
+ if (callerSignal && callerAbortListener) {
609
+ callerSignal.removeEventListener('abort', callerAbortListener);
610
+ }
611
+ }
505
612
  }
506
613
  /**
507
614
  * Export a database test to YAML or JSON format
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/api/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/api/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,eAAe,CAAC;AAUvB,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAiB,SAAS,EAAE,MAAM,UAAU,CAAC;AAEpD;;;GAGG;AACH,SAAS,cAAc,CACrB,SAAwE,EACxE,QAAgB;IAEhB,IAAI,CAAC,SAAS;QAAE,OAAO,QAAQ,CAAC;IAEhC,IAAI,SAAS,CAAC,OAAO,IAAI,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC/D,OAAO,SAAS,CAAC,OAAO,CAAC;IAC3B,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QACrB,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzC,OAAO,SAAS,CAAC,MAAM,CAAC;QAC1B,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE;gBACnD,MAAM,GAAG,GAAG,CAAsC,CAAC;gBACnD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC3F,OAAO,GAAG,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,kBAAkB,EAAE,CAAC;YACtD,CAAC,CAAC,CAAC;YACH,OAAO,yBAAyB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAYD,qDAAqD;AACrD,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,GACxB,CAAC;AAyRF,MAAM,OAAO,SAAS;IACH,MAAM,CAAgB;IAC/B,MAAM,GAAkB,IAAI,CAAC;IAC7B,WAAW,GAAkB,IAAI,CAAC;IAClC,aAAa,GAA2B,EAAE,CAAC;IAEnD,YAAY,OAAgB;QAC1B,yGAAyG;QACzG,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,IAAI,OAAO,IAAI,yBAAyB,CAAC;QAEhF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YACzB,OAAO,EAAE,MAAM;YACf,OAAO,EAAE,KAAK;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC,CAAC;QAEH,iEAAiE;QACjE,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC3C,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B,CAAC;QAED,mDAAmD;QACnD,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;QACzC,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,gBAAgB,CAAC,OAA+B;QAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;YAChC,IAAI,KAAK,KAAK,eAAe,IAAI,KAAK,KAAK,cAAc;gBAAE,SAAS;YACpE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACnD,CAAC;IACH,CAAC;IAED,SAAS,CAAC,MAAc;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,GAAG,UAAU,MAAM,EAAE,CAAC;IAClE,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,cAAc,CAAC,WAAmB;QAChC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,SAAS;QACd,OAAO,MAAM,CAAC,gBAAgB,CAAC,IAAI,yBAAyB,CAAC;IAC/D,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,IAAI,yBAAyB,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAe;QAClC,MAAM,aAAa,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC5C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,qBAAqB;aAC/B,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE;gBACtE,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,aAAa,EAAE;iBACzC;aACF,CAAC,CAAC;YAEH,mCAAmC;YACnC,IAAI,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBACxC,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACtD,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,GAAG,QAAQ,CAAC,IAAI;aACjB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBAEvC,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,SAAS,EAAE,OAAO,IAAI,QAAQ,UAAU,KAAK,KAAK,CAAC,OAAO,EAAE;iBACtE,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;aAClE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAA6B;QAC/C,IAAI,CAAC;YACH,uEAAuE;YACvE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,MAAM,CAAC;YAEnE,MAAM,WAAW,GAAG;gBAClB,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,OAAO,CAAC,KAAK;gBACrB,MAAM,EAAE,OAAO,CAAC,YAAY;gBAC5B,SAAS,EAAE,OAAO,CAAC,QAAQ;gBAC3B,MAAM,EAAE,KAAK;gBACb,SAAS,EAAE,IAAI;gBACf,gBAAgB,EAAE,KAAK;gBACvB,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,MAAM;aACf,CAAC;YAEF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,WAAW,CAAC,SAAS,GAAG,KAAK,CAAC;gBAC9B,WAAW,CAAC,gBAAgB,GAAG,IAAI,CAAC;gBACpC,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;YAC9B,CAAC;YAED,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;YAEzF,OAAO;gBACL,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ;gBACtC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa;aACrB,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,4BAA4B,CAAC,CAAC,CAAC;YAC7F,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAuB,EAAE;QAC1C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YAErC,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAClF,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YACrF,IAAI,OAAO,CAAC,KAAK;gBAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAEzD,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAEnC,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnD,qBAAqB,MAAM,CAAC,QAAQ,EAAE,EAAE,CACzC,CAAC;YACF,OAAO,QAAQ,CAAC,IAA4B,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,4BAA4B,CAAC,CAAC,CAAC;YAC7F,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,WAAoB,IAAI;QAC1D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YAErC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACrC,CAAC;YAED,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnD,qBAAqB,SAAS,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CACtD,CAAC;YAEF,OAAO,QAAQ,CAAC,IAA0B,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBAEvC,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;oBACvB,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;gBACrD,CAAC;gBAED,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,2BAA2B,CAAC,CAAC,CAAC;YAC5F,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAA2B;QAC3C,IAAI,CAAC;YACH,MAAM,SAAS,GAAG;gBAChB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,UAAU,EAAE,6BAA6B;gBACzC,UAAU,EAAE;oBACV,IAAI,EAAE,OAAO,CAAC,MAAM;oBACpB,OAAO,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;iBAC5B;aACF,CAAC;YAEF,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;YACxF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBACvC,MAAM,IAAI,KAAK,CACb,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,qCAAqC,CAAC,CACnF,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,KAAK,CACb,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,0CAA0C,CACpF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBAC1E,KAAK;gBACL,QAAQ,EAAE,OAAO;gBACjB,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,IAAI,yBAAyB;gBAC3D,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;gBAC5B,GAAG,QAAQ,CAAC,IAAI;aACjB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBAEvC,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,uBAAuB,CAAC;iBAC9E,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,mCAAmC;aACtF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,UAAuB,EAAE;QACvC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAClF,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YACrF,IAAI,OAAO,CAAC,KAAK;gBAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YACzD,IAAI,OAAO,CAAC,aAAa;gBAAE,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;YAEjF,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;gBAClE,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC7F,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAwB,CAAC;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,yBAAyB,CAAC,CAAC,CAAC;YAC1F,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,WAAoB,IAAI;QACpD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YAErC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACrC,CAAC;YAED,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnD,kBAAkB,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAChD,CAAC;YAEF,OAAO,QAAQ,CAAC,IAAqB,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBAEvC,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;oBACvB,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;gBAC/C,CAAC;gBAED,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,wBAAwB,CAAC,CAAC,CAAC;YACzF,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAwB;QACrC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG;gBAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,aAAa,EAAE,OAAO,CAAC,aAAa;aACrC,CAAC;YAEF,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAC;YAE1F,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,IAAI,4BAA4B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW;gBACtC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ;gBAChC,GAAG,QAAQ,CAAC,IAAI;aACjB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBAEvC,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,uBAAuB,CAAC;iBAC9E,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B;aAChF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAA+B,EAAE;QAClD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,IAAI,OAAO,CAAC,OAAO;gBAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAC/D,IAAI,OAAO,CAAC,MAAM;gBAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC5D,IAAI,OAAO,CAAC,UAAU;gBAAE,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;YACxE,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAClF,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAErF,uDAAuD;YACvD,0EAA0E;YAC1E,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnD,qBAAqB,MAAM,CAAC,QAAQ,EAAE,EAAE,CACzC,CAAC;YACF,OAAO,QAAQ,CAAC,IAAiB,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,6BAA6B,CAAC,CAAC,CAAC;YAC9F,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAA6B;QACjD,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,sDAAsD;iBAChE,CAAC;YACJ,CAAC;YAED,6CAA6C;YAC7C,MAAM,kBAAkB,GAAG;gBACzB,GAAG,MAAM;gBACT,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,SAAS;gBACpC,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,OAAO;aACrC,CAAC;YAEF,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CACpD,sBAAsB,EACtB,kBAAkB,CACnB,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,IAAI,iCAAiC;gBACnE,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBAEvC,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,+BAA+B,CAAC;iBACtF,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,mCAAmC;aACtF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,UAAiC,EAAE;QACtD,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAClF,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YACrF,IAAI,OAAO,CAAC,KAAK;gBAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YACzD,IAAI,OAAO,CAAC,MAAM;gBAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC5D,IAAI,OAAO,CAAC,QAAQ;gBAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YAElE,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnD,wBAAwB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAC5C,CAAC;YAEF,OAAO,QAAQ,CAAC,IAAmB,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBACvC,MAAM,IAAI,KAAK,CACb,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,+BAA+B,CAAC,CAC7E,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,KAAK,CACb,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oCAAoC,CAC9E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,sDAAsD;iBAChE,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE;gBACxE,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,IAAI,gCAAgC;gBAClE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;aACzB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBAEvC,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,+BAA+B,CAAC;iBACtF,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,qCAAqC;aACxF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,6CAA6C;IAC7C,8BAA8B;IAC9B,6CAA6C;IAE7C;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CACd,OAA0B,EAC1B,OAAqB,EACrB,cAAkE;QAElE,yEAAyE;QACzE,wEAAwE;QACxE,0EAA0E;QAC1E,iEAAiE;QACjE,uEAAuE;QACvE,kDAAkD;QAClD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QAYzC,MAAM,SAAS,GAAmC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACpE,IAAI,MAAM,GAA4B,IAAI,CAAC;QAE3C,MAAM,cAAc,GAAG,cAAc,EAAE,cAAc,CAAC;QACtD,MAAM,aAAa,GACjB,cAAc,IAAI,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/E,IAAI,SAAS,GAAyC,IAAI,CAAC;QAE3D,MAAM,cAAc,GAAG,GAAG,EAAE;YAC1B,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,YAAY,CAAC,SAAS,CAAC,CAAC;gBACxB,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,IAAI,aAAa,IAAI,CAAC;gBAAE,OAAO;YAC/B,cAAc,EAAE,CAAC;YACjB,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC1B,mEAAmE;gBACnE,iEAAiE;gBACjE,4DAA4D;gBAC5D,SAAS,CAAC,OAAO,GAAG,cAAc,CAAC;gBACnC,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC,EAAE,aAAa,CAAC,CAAC;YAClB,yDAAyD;YACzD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,IAAI,OAAO,IAAI,SAAS,EAAE,CAAC;gBACtE,SAAmC,CAAC,KAAK,EAAE,CAAC;YAC/C,CAAC;QACH,CAAC,CAAC;QAEF,yEAAyE;QACzE,0EAA0E;QAC1E,MAAM,YAAY,GAAG,cAAc,EAAE,MAAM,CAAC;QAC5C,IAAI,mBAAmB,GAAwB,IAAI,CAAC;QACpD,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACzB,SAAS,CAAC,OAAO,GAAG,UAAU,CAAC;gBAC/B,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,mBAAmB,GAAG,GAAG,EAAE;oBACzB,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;wBAC/B,SAAS,CAAC,OAAO,GAAG,UAAU,CAAC;oBACjC,CAAC;oBACD,UAAU,CAAC,KAAK,EAAE,CAAC;gBACrB,CAAC,CAAC;gBACF,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,yEAAyE;QACzE,qCAAqC;QACrC,MAAM,YAAY,GAAgB,YAAY;YAC5C,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YACpD,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;QAEtB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,kBAAkB,EAAE;gBAClE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,GAAG,IAAI,CAAC,aAAa;oBACrB,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;oBACtC,cAAc,EAAE,kBAAkB;oBAClC,MAAM,EAAE,mBAAmB;iBAC5B;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAC7B,MAAM,EAAE,YAAY;aACrB,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAGzD,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,QAAQ,CAAC,MAAM,sBAAsB,CAAC,CAAC,CAAC;YAC5F,CAAC;YAED,oEAAoE;YACpE,qEAAqE;YACrE,0CAA0C;YAC1C,YAAY,EAAE,CAAC;YAEf,iEAAiE;YACjE,oEAAoE;YACpE,sCAAsC;YACtC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,SAAS,CAAC,QAAQ,EAAE;gBAC5C,MAAM,EAAE,YAAY;gBACpB,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,EAAE;aAC9B,CAAC,EAAE,CAAC;gBACH,IAAI,OAAO;oBAAE,OAAO,CAAC,KAAK,CAAC,CAAC;gBAE5B,iEAAiE;gBACjE,mEAAmE;gBACnE,qEAAqE;gBACrE,qEAAqE;gBACrE,8DAA8D;gBAC9D,IAAI,KAAK,CAAC,KAAK,KAAK,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;oBAC1D,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC;oBACpB,SAAS,CAAC,OAAO,GAAG,UAAU,CAAC;oBAC/B,UAAU,CAAC,KAAK,EAAE,CAAC;oBACnB,MAAM;gBACR,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,oEAAoE;gBACpE,4DAA4D;gBAC5D,IAAI,SAAS,CAAC,OAAO,KAAK,cAAc,EAAE,CAAC;oBACzC,MAAM,IAAI,KAAK,CAAC,yCAAyC,cAAc,GAAG,CAAC,CAAC;gBAC9E,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC5D,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,yEAAyE;YACzE,kEAAkE;YAClE,gEAAgE;YAChE,IACE,SAAS,CAAC,OAAO,KAAK,UAAU;gBAChC,KAAK,YAAY,KAAK;gBACtB,KAAK,CAAC,IAAI,KAAK,YAAY;gBAC3B,MAAM,EACN,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,kEAAkE;YAClE,mEAAmE;YACnE,gBAAgB;YAChB,IACE,SAAS,CAAC,OAAO,KAAK,cAAc;gBACpC,KAAK,YAAY,KAAK;gBACtB,KAAK,CAAC,IAAI,KAAK,YAAY,EAC3B,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,yCAAyC,cAAc,GAAG,CAAC,CAAC;YAC9E,CAAC;YACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;gBAAS,CAAC;YACT,oEAAoE;YACpE,2DAA2D;YAC3D,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,cAAc,EAAE,CAAC;YACjB,IAAI,YAAY,IAAI,mBAAmB,EAAE,CAAC;gBACxC,YAAY,CAAC,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CACd,MAAc,EACd,SAA0B,MAAM,EAChC,cAAuB,IAAI;QAE3B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAChC,IAAI,CAAC,WAAW;gBAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAEnD,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnD,uBAAuB,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CACrD,CAAC;YAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBAEvC,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;oBACvB,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;gBAC/C,CAAC;gBAED,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,yBAAyB,CAAC,CAAC,CAAC;YAC1F,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,sBAAsB,CAAC,WAA6B;QACxD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE;gBAC9E,gBAAgB,EAAE,WAAW;aAC9B,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,IAAwB,CAAC;QAC3C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBAEvC,MAAM,IAAI,KAAK,CACb,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,sCAAsC,CAAC,CACpF,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,KAAK,CACb,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,0CAA0C,CACpF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,oBAAoB,CACxB,WAA6B,EAC7B,UAAyB,EAAE;QAE3B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE;gBAC5E,gBAAgB,EAAE,WAAW;gBAC7B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI;gBAC9B,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,KAAK;gBACjC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;aAC9B,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,IAAoB,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBACvC,MAAM,IAAI,KAAK,CACb,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,oCAAoC,CAAC,CAClF,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,KAAK,CACb,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,yCAAyC,CACnF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,uBAAuB;QAC3B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YAC7E,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;gBAEvC,MAAM,IAAI,KAAK,CACb,cAAc,CAAC,SAAS,EAAE,QAAQ,UAAU,0CAA0C,CAAC,CACxF,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,KAAK,CACb,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,+CAA+C,CACzF,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
@@ -15,19 +15,39 @@ export interface SSEEvent {
15
15
  * @returns Array of parsed SSE events
16
16
  */
17
17
  export declare function parseSSE(chunk: string): SSEEvent[];
18
+ /**
19
+ * Options for SSE consumption helpers
20
+ */
21
+ export interface StreamSSEOptions {
22
+ /**
23
+ * Optional abort signal. When the signal is aborted, the read loop exits
24
+ * cleanly (the generator returns without throwing) so callers using
25
+ * `for await` can rely on graceful termination.
26
+ */
27
+ signal?: AbortSignal;
28
+ /**
29
+ * Optional callback invoked once per successful `reader.read()` chunk —
30
+ * BEFORE parsing. This fires even for SSE comment pings (which produce
31
+ * zero parsed events) so callers can use it as a heartbeat / idle-timeout
32
+ * reset hook. Wired from `runCliTest` to reset the idle-timeout watchdog.
33
+ */
34
+ onChunk?: () => void;
35
+ }
18
36
  /**
19
37
  * Stream SSE events from a Response object
20
38
  *
21
39
  * @param response - Fetch Response with SSE stream
40
+ * @param options - Optional configuration (e.g. abort signal)
22
41
  * @yields SSE events as they arrive
23
42
  */
24
- export declare function streamSSE(response: Response): AsyncGenerator<SSEEvent, void, unknown>;
43
+ export declare function streamSSE(response: Response, options?: StreamSSEOptions): AsyncGenerator<SSEEvent, void, unknown>;
25
44
  /**
26
45
  * Helper to consume an SSE stream and call a callback for each event
27
46
  *
28
47
  * @param response - Fetch Response with SSE stream
29
48
  * @param onEvent - Callback to handle each event
49
+ * @param options - Optional configuration (e.g. abort signal); forwarded to streamSSE
30
50
  * @returns Promise that resolves when stream ends
31
51
  */
32
- export declare function consumeSSE(response: Response, onEvent: (event: SSEEvent) => void | Promise<void>): Promise<void>;
52
+ export declare function consumeSSE(response: Response, onEvent: (event: SSEEvent) => void | Promise<void>, options?: StreamSSEOptions): Promise<void>;
33
53
  //# sourceMappingURL=sse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../../lib/api/sse.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,GAAG,CAAC;IACV,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAsBD;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,CAmClD;AAED;;;;;GAKG;AACH,wBAAuB,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CA2C5F;AAED;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GACjD,OAAO,CAAC,IAAI,CAAC,CAIf"}
1
+ {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../../lib/api/sse.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,GAAG,CAAC;IACV,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAsBD;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,CAmClD;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAuB,SAAS,CAC9B,QAAQ,EAAE,QAAQ,EAClB,OAAO,GAAE,gBAAqB,GAC7B,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAsHzC;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAClD,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAIf"}
@@ -65,20 +65,82 @@ export function parseSSE(chunk) {
65
65
  * Stream SSE events from a Response object
66
66
  *
67
67
  * @param response - Fetch Response with SSE stream
68
+ * @param options - Optional configuration (e.g. abort signal)
68
69
  * @yields SSE events as they arrive
69
70
  */
70
- export async function* streamSSE(response) {
71
+ export async function* streamSSE(response, options = {}) {
71
72
  if (!response.body) {
72
73
  throw new Error('Response body is null');
73
74
  }
75
+ const { signal, onChunk } = options;
76
+ // Fast-path: if the signal is already aborted, return immediately without
77
+ // touching the response body.
78
+ if (signal?.aborted) {
79
+ return;
80
+ }
74
81
  const reader = response.body.getReader();
75
82
  const decoder = new TextDecoder();
76
83
  let buffer = '';
84
+ // Wire the signal to a Promise that resolves on abort so we can race it
85
+ // against `reader.read()`. This is needed because a generic ReadableStream
86
+ // (e.g. one not backed by `fetch`) won't surface the AbortSignal on its own
87
+ // — the reader will simply keep awaiting. For `fetch`-backed streams, the
88
+ // race is still safe: the read will reject with AbortError (caught below)
89
+ // at roughly the same time as the abort fires.
90
+ const ABORTED = Symbol('aborted');
91
+ let abortListener = null;
92
+ const abortPromise = signal
93
+ ? new Promise((resolve) => {
94
+ abortListener = () => resolve(ABORTED);
95
+ signal.addEventListener('abort', abortListener, { once: true });
96
+ })
97
+ : null;
77
98
  try {
78
99
  while (true) {
79
- const { done, value } = await reader.read();
100
+ // Check for abort before each read so we exit promptly even if the
101
+ // underlying socket hasn't surfaced the AbortError yet.
102
+ if (signal?.aborted) {
103
+ return;
104
+ }
105
+ let chunk;
106
+ try {
107
+ const readPromise = reader.read();
108
+ const raceResult = abortPromise
109
+ ? await Promise.race([readPromise, abortPromise])
110
+ : await readPromise;
111
+ if (raceResult === ABORTED) {
112
+ // Cancel the underlying reader so it doesn't keep the stream alive.
113
+ // `cancel()` may reject if already errored — swallow it.
114
+ reader.cancel().catch(() => { });
115
+ return;
116
+ }
117
+ chunk = raceResult;
118
+ }
119
+ catch (err) {
120
+ // `fetch`'s reader rejects with an AbortError (DOMException) when the
121
+ // associated signal is aborted. Swallow it and exit cleanly so callers
122
+ // see the generator finish without an exception.
123
+ if (err instanceof Error && err.name === 'AbortError') {
124
+ return;
125
+ }
126
+ throw err;
127
+ }
128
+ const { done, value } = chunk;
80
129
  if (done)
81
130
  break;
131
+ // Fire onChunk on every successful read — BEFORE parsing — so callers
132
+ // can use it as an idle-timeout heartbeat. SSE comment pings produce
133
+ // zero parsed events but DO arrive as byte chunks here, which is the
134
+ // whole point: keep the watchdog alive even when only pings flow.
135
+ if (onChunk) {
136
+ try {
137
+ onChunk();
138
+ }
139
+ catch {
140
+ // Defensively swallow — a misbehaving onChunk must not break the
141
+ // read loop. Hook is "best effort" by design.
142
+ }
143
+ }
82
144
  buffer += decoder.decode(value, { stream: true });
83
145
  // Find complete events (separated by double newlines)
84
146
  // Handle both LF (\n\n) and CRLF (\r\n\r\n) line endings
@@ -103,7 +165,16 @@ export async function* streamSSE(response) {
103
165
  }
104
166
  }
105
167
  finally {
106
- reader.releaseLock();
168
+ if (signal && abortListener) {
169
+ signal.removeEventListener('abort', abortListener);
170
+ }
171
+ try {
172
+ reader.releaseLock();
173
+ }
174
+ catch {
175
+ // releaseLock can throw if the reader was already canceled by an abort;
176
+ // safe to ignore — we're already on the cleanup path.
177
+ }
107
178
  }
108
179
  }
109
180
  /**
@@ -111,10 +182,11 @@ export async function* streamSSE(response) {
111
182
  *
112
183
  * @param response - Fetch Response with SSE stream
113
184
  * @param onEvent - Callback to handle each event
185
+ * @param options - Optional configuration (e.g. abort signal); forwarded to streamSSE
114
186
  * @returns Promise that resolves when stream ends
115
187
  */
116
- export async function consumeSSE(response, onEvent) {
117
- for await (const event of streamSSE(response)) {
188
+ export async function consumeSSE(response, onEvent, options = {}) {
189
+ for await (const event of streamSSE(response, options)) {
118
190
  await onEvent(event);
119
191
  }
120
192
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sse.js","sourceRoot":"","sources":["../../../lib/api/sse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sse.js","sourceRoot":"","sources":["../../../lib/api/sse.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH;;;GAGG;AACH,SAAS,iBAAiB,CAAC,MAAc;IACvC,uCAAuC;IACvC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAErC,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACvC,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AACrC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAa;IACpC,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,oEAAoE;IACpE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAEvE,IAAI,YAAY,GAAsB,EAAE,CAAC;IAEzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/B,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,CAAC;gBACH,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1C,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY,CAAC,IAAI,GAAG,OAAO,CAAC;YAC9B,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACnC,YAAY,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,CAAC;aAAM,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACxC,kCAAkC;YAClC,IAAI,YAAY,CAAC,KAAK,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC1D,MAAM,CAAC,IAAI,CAAC,YAAwB,CAAC,CAAC;YACxC,CAAC;YACD,YAAY,GAAG,EAAE,CAAC;QACpB,CAAC;QACD,mEAAmE;IACrE,CAAC;IAED,qEAAqE;IACrE,IAAI,YAAY,CAAC,KAAK,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,YAAwB,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAqBD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,SAAS,CAC9B,QAAkB,EAClB,UAA4B,EAAE;IAE9B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAEpC,0EAA0E;IAC1E,8BAA8B;IAC9B,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;QACpB,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,wEAAwE;IACxE,2EAA2E;IAC3E,4EAA4E;IAC5E,0EAA0E;IAC1E,0EAA0E;IAC1E,+CAA+C;IAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAClC,IAAI,aAAa,GAAwB,IAAI,CAAC;IAC9C,MAAM,YAAY,GAAG,MAAM;QACzB,CAAC,CAAC,IAAI,OAAO,CAAiB,CAAC,OAAO,EAAE,EAAE;YACtC,aAAa,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACvC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAClE,CAAC,CAAC;QACJ,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,mEAAmE;YACnE,wDAAwD;YACxD,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBACpB,OAAO;YACT,CAAC;YAED,IAAI,KAAuD,CAAC;YAC5D,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;gBAClC,MAAM,UAAU,GAAG,YAAY;oBAC7B,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;oBACjD,CAAC,CAAC,MAAM,WAAW,CAAC;gBAEtB,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;oBAC3B,oEAAoE;oBACpE,yDAAyD;oBACzD,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBAChC,OAAO;gBACT,CAAC;gBAED,KAAK,GAAG,UAA8D,CAAC;YACzE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,sEAAsE;gBACtE,uEAAuE;gBACvE,iDAAiD;gBACjD,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBACtD,OAAO;gBACT,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;YAC9B,IAAI,IAAI;gBAAE,MAAM;YAEhB,sEAAsE;YACtE,qEAAqE;YACrE,qEAAqE;YACrE,kEAAkE;YAClE,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC;oBACH,OAAO,EAAE,CAAC;gBACZ,CAAC;gBAAC,MAAM,CAAC;oBACP,iEAAiE;oBACjE,8CAA8C;gBAChD,CAAC;YACH,CAAC;YAED,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAElD,sDAAsD;YACtD,yDAAyD;YACzD,IAAI,GAAG,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;gBAClB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;gBAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBAC1C,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC;gBAEtC,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACpC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,KAAK,CAAC;gBACd,CAAC;gBAED,GAAG,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QAED,+BAA+B;QAC/B,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;YAChC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,MAAM,IAAI,aAAa,EAAE,CAAC;YAC5B,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,CAAC;YACH,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,wEAAwE;YACxE,sDAAsD;QACxD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,QAAkB,EAClB,OAAkD,EAClD,UAA4B,EAAE;IAE9B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;QACvD,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;AACH,CAAC"}
@@ -6,6 +6,14 @@
6
6
  * 2. Config file (~/.qa-use.json) top-level fields (api_key, api_url, etc.)
7
7
  * 3. Config file (~/.qa-use.json) env block ({ "env": { "VAR_NAME": "value" } })
8
8
  */
9
+ export { getPortFromUrl, isLocalhostUrl } from './localhost.js';
10
+ /**
11
+ * Tunnel mode stored in ~/.qa-use.json.
12
+ * Kept as a string literal here (instead of importing `TunnelMode` from
13
+ * `src/cli/lib/tunnel-option.ts`) to avoid pulling CLI code into the
14
+ * shared env loader.
15
+ */
16
+ export type QaUseTunnelMode = 'auto' | 'on' | 'off';
9
17
  export type EnvSource = 'env' | 'config' | 'none';
10
18
  export interface EnvResult {
11
19
  value: string | undefined;
@@ -48,6 +56,11 @@ export declare function logConfigSources(): void;
48
56
  * Priority: config file headers, then QA_USE_HEADERS env var overrides.
49
57
  */
50
58
  export declare function getCustomHeaders(): Record<string, string> | null;
59
+ export declare function getTunnelModeFromConfig(): QaUseTunnelMode | undefined;
60
+ /**
61
+ * Reset the tunnel-warning latch (for tests).
62
+ */
63
+ export declare function clearTunnelWarningLatch(): void;
51
64
  /**
52
65
  * Get agent session ID from environment if available.
53
66
  * Used for auto-linking browser sessions and test runs to agent sessions.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/env/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA8DH,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAElD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,SAAS,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAwBxD;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEvD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAGvC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAgBD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CA6BvC;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAwBhE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAEtD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/env/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhE;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC;AA6DpD,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAElD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,SAAS,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAwBxD;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEvD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAGvC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAgBD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CA6BvC;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAwBhE;AAYD,wBAAgB,uBAAuB,IAAI,eAAe,GAAG,SAAS,CAmBrE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAEtD"}
@@ -9,6 +9,8 @@
9
9
  import { existsSync, readFileSync } from 'node:fs';
10
10
  import { homedir } from 'node:os';
11
11
  import { join } from 'node:path';
12
+ export { getPortFromUrl, isLocalhostUrl } from './localhost.js';
13
+ const VALID_TUNNEL_MODES = ['auto', 'on', 'off'];
12
14
  /**
13
15
  * Mapping from env var names to top-level config field names.
14
16
  * Allows getEnvWithSource to check direct fields before the env block.
@@ -173,6 +175,39 @@ export function getCustomHeaders() {
173
175
  }
174
176
  return Object.keys(headers).length > 0 ? headers : null;
175
177
  }
178
+ /**
179
+ * Read the `tunnel` key from `~/.qa-use.json`.
180
+ *
181
+ * Returns one of `'auto' | 'on' | 'off'`, or `undefined` if unset.
182
+ * On an invalid value, logs a one-line stderr warning and returns `undefined`
183
+ * (caller will fall back to the default, typically `'auto'`).
184
+ *
185
+ * Phase 1: config-only (no env-var override layer for tunnel mode).
186
+ */
187
+ let tunnelWarningLogged = false;
188
+ export function getTunnelModeFromConfig() {
189
+ const config = loadConfig();
190
+ if (!config)
191
+ return undefined;
192
+ const raw = config.tunnel;
193
+ if (raw === undefined || raw === null)
194
+ return undefined;
195
+ if (typeof raw === 'string' && VALID_TUNNEL_MODES.includes(raw)) {
196
+ return raw;
197
+ }
198
+ if (!tunnelWarningLogged) {
199
+ console.error(`qa-use: invalid "tunnel" value in ~/.qa-use.json: ${JSON.stringify(raw)}. ` +
200
+ `Expected one of: ${VALID_TUNNEL_MODES.join(', ')}. Falling back to "auto".`);
201
+ tunnelWarningLogged = true;
202
+ }
203
+ return undefined;
204
+ }
205
+ /**
206
+ * Reset the tunnel-warning latch (for tests).
207
+ */
208
+ export function clearTunnelWarningLatch() {
209
+ tunnelWarningLogged = false;
210
+ }
176
211
  /**
177
212
  * Get agent session ID from environment if available.
178
213
  * Used for auto-linking browser sessions and test runs to agent sessions.