@compforge/harness-toolbox 0.4.4 → 0.4.7

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 (69) hide show
  1. package/README.md +10 -0
  2. package/dist/{chunk-2171tajs.js → chunk-1ts7pswj.js} +4 -3
  3. package/dist/chunk-835fssgz.js +37 -0
  4. package/dist/{chunk-mn6dwsvh.js → chunk-9shz0bw1.js} +3 -1
  5. package/dist/{chunk-0s27bgga.js → chunk-ae84rzq5.js} +1 -1
  6. package/dist/{chunk-age65q4n.js → chunk-db4an9td.js} +1 -1
  7. package/dist/{chunk-ftkrjqkc.js → chunk-dpcge1xt.js} +1 -1
  8. package/dist/{chunk-grpygk6f.js → chunk-dx6yvj81.js} +2 -2
  9. package/dist/{chunk-sqbew04a.js → chunk-f3vq900j.js} +2 -2
  10. package/dist/{chunk-yp6tcw22.js → chunk-f98qrpx1.js} +38 -78
  11. package/dist/{chunk-wv4jwhvj.js → chunk-fqrknvr8.js} +2 -2
  12. package/dist/chunk-gm4swndx.js +106 -0
  13. package/dist/{chunk-c2n8zvyn.js → chunk-m391jmpw.js} +8 -8
  14. package/dist/chunk-m4d29vfd.js +236 -0
  15. package/dist/{chunk-631vce5z.js → chunk-nftzckdy.js} +57 -7
  16. package/dist/{chunk-shsabpc1.js → chunk-r3rnsvwv.js} +1 -1
  17. package/dist/{chunk-20kv4wc3.js → chunk-rkt41za2.js} +7 -1
  18. package/dist/{chunk-hmah9t8e.js → chunk-rq5fc007.js} +1 -1
  19. package/dist/{chunk-h73h2b7y.js → chunk-t4hrnaj0.js} +44 -39
  20. package/dist/{chunk-kkts16w9.js → chunk-ww11q58v.js} +1 -1
  21. package/dist/{chunk-4ms037k2.js → chunk-x0yhfg29.js} +2 -2
  22. package/dist/{chunk-j46x7j7c.js → chunk-xgnz10sr.js} +5 -3
  23. package/dist/{chunk-5zgz1z41.js → chunk-z15gwjvg.js} +1 -1
  24. package/dist/connection/acquire.d.ts +34 -0
  25. package/dist/connection/acquire.js +9 -0
  26. package/dist/datasource.js +1 -1
  27. package/dist/errors.d.ts +4 -0
  28. package/dist/errors.js +3 -1
  29. package/dist/file/client.js +2 -2
  30. package/dist/file/index.js +4 -4
  31. package/dist/file/local.js +3 -3
  32. package/dist/file/pod.js +3 -3
  33. package/dist/kubernetes/client.js +11 -11
  34. package/dist/kubernetes/compute-quantity.js +2 -2
  35. package/dist/kubernetes/compute.js +2 -2
  36. package/dist/kubernetes/environment.js +11 -11
  37. package/dist/kubernetes/exec-transport.js +2 -2
  38. package/dist/kubernetes/executor.js +2 -2
  39. package/dist/kubernetes/pod-log-datasource.js +1 -1
  40. package/dist/kubernetes/pod-log.js +1 -1
  41. package/dist/kubernetes/port-forward.d.ts +5 -0
  42. package/dist/kubernetes/port-forward.js +3 -3
  43. package/dist/kubernetes/resource-transport.js +3 -3
  44. package/dist/kubernetes/resources.js +2 -2
  45. package/dist/kubernetes/service-port-forward.d.ts +2 -0
  46. package/dist/kubernetes/service-port-forward.js +5 -5
  47. package/dist/kubernetes/service.d.ts +1 -1
  48. package/dist/kubernetes/service.js +1 -1
  49. package/dist/kubernetes/workload.js +2 -2
  50. package/dist/mysql/client.d.ts +5 -2
  51. package/dist/mysql/client.js +9 -8
  52. package/dist/mysql/connection.d.ts +3 -0
  53. package/dist/mysql/connection.js +4 -2
  54. package/dist/mysql/index.js +10 -9
  55. package/dist/mysql/readonly.js +2 -2
  56. package/dist/opensearch/client.d.ts +14 -3
  57. package/dist/opensearch/client.js +9 -6
  58. package/dist/opensearch/index.js +9 -6
  59. package/dist/process/index.d.ts +1 -1
  60. package/dist/process/index.js +1 -1
  61. package/dist/redis/client.js +7 -6
  62. package/dist/redis/index.js +11 -10
  63. package/dist/s3/datasource.js +5 -5
  64. package/dist/s3/index.js +5 -5
  65. package/dist/transport/index.js +4 -4
  66. package/dist/transport/pod-relay.js +4 -4
  67. package/package.json +1 -4
  68. package/dist/chunk-136egyff.js +0 -11
  69. package/dist/chunk-8mb6natq.js +0 -178
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  PodFileClient,
3
3
  PodFileDataSource
4
- } from "../chunk-grpygk6f.js";
4
+ } from "../chunk-dx6yvj81.js";
5
5
  import {
6
6
  LocalFileClient,
7
7
  LocalFileDataSource
8
- } from "../chunk-sqbew04a.js";
9
- import"../chunk-kkts16w9.js";
8
+ } from "../chunk-f3vq900j.js";
9
+ import"../chunk-ww11q58v.js";
10
10
  import {
11
11
  FileError
12
- } from "../chunk-20kv4wc3.js";
12
+ } from "../chunk-rkt41za2.js";
13
13
  import"../chunk-v3hxvnrc.js";
14
14
 
15
15
  // src/file/index.ts
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  LocalFileClient,
3
3
  LocalFileDataSource
4
- } from "../chunk-sqbew04a.js";
5
- import"../chunk-kkts16w9.js";
6
- import"../chunk-20kv4wc3.js";
4
+ } from "../chunk-f3vq900j.js";
5
+ import"../chunk-ww11q58v.js";
6
+ import"../chunk-rkt41za2.js";
7
7
  import"../chunk-v3hxvnrc.js";
8
8
  export {
9
9
  LocalFileDataSource,
package/dist/file/pod.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  PodFileClient,
3
3
  PodFileDataSource
4
- } from "../chunk-grpygk6f.js";
5
- import"../chunk-kkts16w9.js";
6
- import"../chunk-20kv4wc3.js";
4
+ } from "../chunk-dx6yvj81.js";
5
+ import"../chunk-ww11q58v.js";
6
+ import"../chunk-rkt41za2.js";
7
7
  import"../chunk-v3hxvnrc.js";
8
8
  export {
9
9
  PodFileDataSource,
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  KubernetesClient
3
- } from "../chunk-c2n8zvyn.js";
4
- import"../chunk-2171tajs.js";
5
- import"../chunk-j46x7j7c.js";
3
+ } from "../chunk-m391jmpw.js";
4
+ import"../chunk-ae84rzq5.js";
5
+ import"../chunk-1ts7pswj.js";
6
+ import"../chunk-xgnz10sr.js";
6
7
  import"../chunk-6fnhzhdb.js";
7
- import"../chunk-4ms037k2.js";
8
- import"../chunk-ftkrjqkc.js";
9
- import"../chunk-shsabpc1.js";
10
- import"../chunk-0s27bgga.js";
8
+ import"../chunk-x0yhfg29.js";
9
+ import"../chunk-dpcge1xt.js";
10
+ import"../chunk-r3rnsvwv.js";
11
11
  import"../chunk-a9htb6cr.js";
12
- import"../chunk-20kv4wc3.js";
12
+ import"../chunk-rkt41za2.js";
13
13
  import"../chunk-v3hxvnrc.js";
14
- import"../chunk-631vce5z.js";
15
- import"../chunk-hmah9t8e.js";
16
- import"../chunk-mn6dwsvh.js";
14
+ import"../chunk-nftzckdy.js";
15
+ import"../chunk-rq5fc007.js";
16
+ import"../chunk-9shz0bw1.js";
17
17
  export {
18
18
  KubernetesClient
19
19
  };
@@ -8,8 +8,8 @@ import {
8
8
  sum,
9
9
  summarizePods,
10
10
  zero
11
- } from "../chunk-5zgz1z41.js";
12
- import"../chunk-20kv4wc3.js";
11
+ } from "../chunk-z15gwjvg.js";
12
+ import"../chunk-rkt41za2.js";
13
13
  export {
14
14
  zero,
15
15
  summarizePods,
@@ -6,10 +6,10 @@ import {
6
6
  requiredString,
7
7
  sum,
8
8
  summarizePods
9
- } from "../chunk-5zgz1z41.js";
9
+ } from "../chunk-z15gwjvg.js";
10
10
  import {
11
11
  KubernetesError
12
- } from "../chunk-20kv4wc3.js";
12
+ } from "../chunk-rkt41za2.js";
13
13
 
14
14
  // src/kubernetes/compute.ts
15
15
  function requestBudget(options) {
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  KubernetesClient
3
- } from "../chunk-c2n8zvyn.js";
4
- import"../chunk-2171tajs.js";
5
- import"../chunk-j46x7j7c.js";
3
+ } from "../chunk-m391jmpw.js";
4
+ import"../chunk-ae84rzq5.js";
5
+ import"../chunk-1ts7pswj.js";
6
+ import"../chunk-xgnz10sr.js";
6
7
  import"../chunk-6fnhzhdb.js";
7
- import"../chunk-4ms037k2.js";
8
- import"../chunk-ftkrjqkc.js";
9
- import"../chunk-shsabpc1.js";
10
- import"../chunk-0s27bgga.js";
8
+ import"../chunk-x0yhfg29.js";
9
+ import"../chunk-dpcge1xt.js";
10
+ import"../chunk-r3rnsvwv.js";
11
11
  import {
12
12
  clientKey
13
13
  } from "../chunk-a9htb6cr.js";
14
- import"../chunk-20kv4wc3.js";
14
+ import"../chunk-rkt41za2.js";
15
15
  import"../chunk-v3hxvnrc.js";
16
- import"../chunk-631vce5z.js";
17
- import"../chunk-hmah9t8e.js";
18
- import"../chunk-mn6dwsvh.js";
16
+ import"../chunk-nftzckdy.js";
17
+ import"../chunk-rq5fc007.js";
18
+ import"../chunk-9shz0bw1.js";
19
19
 
20
20
  // src/kubernetes/environment.ts
21
21
  class KubernetesEnvironment {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  KubernetesExecTransport
3
- } from "../chunk-shsabpc1.js";
4
- import"../chunk-20kv4wc3.js";
3
+ } from "../chunk-r3rnsvwv.js";
4
+ import"../chunk-rkt41za2.js";
5
5
  import"../chunk-v3hxvnrc.js";
6
6
  export {
7
7
  KubernetesExecTransport
@@ -3,8 +3,8 @@ import {
3
3
  buildExecArgs,
4
4
  buildKubectlArgs,
5
5
  runArgv
6
- } from "../chunk-hmah9t8e.js";
7
- import"../chunk-mn6dwsvh.js";
6
+ } from "../chunk-rq5fc007.js";
7
+ import"../chunk-9shz0bw1.js";
8
8
  export {
9
9
  runArgv,
10
10
  buildKubectlArgs,
@@ -8,7 +8,7 @@ import"../chunk-a9htb6cr.js";
8
8
  import {
9
9
  clientKey
10
10
  } from "../chunk-z5pm2emz.js";
11
- import"../chunk-20kv4wc3.js";
11
+ import"../chunk-rkt41za2.js";
12
12
  import"../chunk-v3hxvnrc.js";
13
13
 
14
14
  // src/kubernetes/pod-log-datasource.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  findPodsForService,
3
3
  parseServices
4
- } from "../chunk-j46x7j7c.js";
4
+ } from "../chunk-xgnz10sr.js";
5
5
  import {
6
6
  parsePods
7
7
  } from "../chunk-6fnhzhdb.js";
@@ -17,6 +17,7 @@ export interface PortForwardResult {
17
17
  }
18
18
  export type StartPortForward = typeof startPortForward;
19
19
  /**
20
+ * @spec Caller cancellation stops both startup and an active forward, preserving the original abort reason.
20
21
  * 起 `kubectl port-forward svc/<service> 0:<remotePort>` 并等待就绪。
21
22
  * 本地端口让 kubectl 自选(0:),从 stdout 的 "Forwarding from 127.0.0.1:<port>" 解析,
22
23
  * 避免固定端口在运维机上撞占用。调用方负责在采集结束后 stop()。
@@ -26,6 +27,8 @@ export declare function startPortForward(opts: KubectlOptions & {
26
27
  target?: PortForwardTarget;
27
28
  remotePort: number;
28
29
  timeoutMs?: number;
30
+ signal?: AbortSignal;
31
+ onDiagnostic?: (line: string) => void;
29
32
  }): Promise<PortForwardResult>;
30
33
  /** 同一次诊断可能按拓扑建立多个 forward;scope 保证异常路径也能一次性回收。 */
31
34
  export declare class PortForwardScope {
@@ -37,6 +40,8 @@ export declare class PortForwardScope {
37
40
  target: PortForwardTarget;
38
41
  remotePort: number;
39
42
  timeoutMs?: number;
43
+ signal?: AbortSignal;
44
+ onDiagnostic?: (line: string) => void;
40
45
  }): Promise<PortForwardResult>;
41
46
  stop(): void;
42
47
  }
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  PortForwardScope,
3
3
  startPortForward
4
- } from "../chunk-631vce5z.js";
5
- import"../chunk-hmah9t8e.js";
6
- import"../chunk-mn6dwsvh.js";
4
+ } from "../chunk-nftzckdy.js";
5
+ import"../chunk-rq5fc007.js";
6
+ import"../chunk-9shz0bw1.js";
7
7
  export {
8
8
  startPortForward,
9
9
  PortForwardScope
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  KubernetesResourceTransport
3
- } from "../chunk-4ms037k2.js";
4
- import"../chunk-ftkrjqkc.js";
3
+ } from "../chunk-x0yhfg29.js";
4
+ import"../chunk-dpcge1xt.js";
5
5
  import"../chunk-a9htb6cr.js";
6
- import"../chunk-20kv4wc3.js";
6
+ import"../chunk-rkt41za2.js";
7
7
  import"../chunk-v3hxvnrc.js";
8
8
  export {
9
9
  KubernetesResourceTransport
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  resourcePath
3
- } from "../chunk-ftkrjqkc.js";
4
- import"../chunk-20kv4wc3.js";
3
+ } from "../chunk-dpcge1xt.js";
4
+ import"../chunk-rkt41za2.js";
5
5
  export {
6
6
  resourcePath
7
7
  };
@@ -20,6 +20,8 @@ export declare class ServicePortForwarder {
20
20
  private constructor();
21
21
  static create(executor: Executor, opts: KubectlOptions & {
22
22
  namespace: string;
23
+ signal?: AbortSignal;
24
+ onDiagnostic?: (line: string) => void;
23
25
  }, starter?: StartPortForward): Promise<ServicePortForwarder>;
24
26
  get activeForwards(): readonly import("./port-forward").PortForward[];
25
27
  forward(endpoint: KubernetesEndpoint): Promise<ForwardedEndpoint>;
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  ServicePortForwarder
3
- } from "../chunk-2171tajs.js";
4
- import"../chunk-j46x7j7c.js";
3
+ } from "../chunk-1ts7pswj.js";
4
+ import"../chunk-xgnz10sr.js";
5
5
  import"../chunk-6fnhzhdb.js";
6
- import"../chunk-631vce5z.js";
7
- import"../chunk-hmah9t8e.js";
8
- import"../chunk-mn6dwsvh.js";
6
+ import"../chunk-nftzckdy.js";
7
+ import"../chunk-rq5fc007.js";
8
+ import"../chunk-9shz0bw1.js";
9
9
  export {
10
10
  ServicePortForwarder
11
11
  };
@@ -25,7 +25,7 @@ export declare function findService(services: readonly KubernetesService[], endp
25
25
  export declare function findServicesForPod(services: readonly KubernetesService[], pod: KubernetesPod): KubernetesService[];
26
26
  /** Service → Pod 由 Kubernetes selector 决定,不让上层用 Pod 名称前缀猜测。 */
27
27
  export declare function findPodsForService(services: readonly KubernetesService[], pods: readonly KubernetesPod[], serviceName: string, namespace: string): KubernetesPod[];
28
- export declare function listServiceNetwork(executor: Executor, namespace: string): Promise<{
28
+ export declare function listServiceNetwork(executor: Executor, namespace: string, signal?: AbortSignal): Promise<{
29
29
  services: KubernetesService[];
30
30
  pods: KubernetesPod[];
31
31
  }>;
@@ -5,7 +5,7 @@ import {
5
5
  listServiceNetwork,
6
6
  parseServices,
7
7
  serviceIdentity
8
- } from "../chunk-j46x7j7c.js";
8
+ } from "../chunk-xgnz10sr.js";
9
9
  import"../chunk-6fnhzhdb.js";
10
10
  export {
11
11
  serviceIdentity,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  resolveWorkload
3
- } from "../chunk-0s27bgga.js";
4
- import"../chunk-20kv4wc3.js";
3
+ } from "../chunk-ae84rzq5.js";
4
+ import"../chunk-rkt41za2.js";
5
5
  export {
6
6
  resolveWorkload
7
7
  };
@@ -1,13 +1,16 @@
1
1
  import type { Client } from "../client";
2
- import { type Connection, type ConnectionOptions } from "mysql2/promise";
2
+ import type { Connection, ConnectionOptions } from "mysql2/promise";
3
3
  import type { Database, DatabaseTarget, DatabaseRow, DatabaseQueryLimits, DatabaseQueryResult, SqlStatement } from "./types";
4
4
  import type { ConnectionSource, ClientLifecycle } from "../datasource";
5
5
  import { type Transport } from "../transport";
6
6
  export interface MysqlDatabaseOptions extends ClientLifecycle {
7
+ /** Per-route mapping and handshake budget. */
7
8
  connectTimeoutMs: number;
9
+ /** Total acquisition budget; defaults to connectTimeoutMs times the route count. */
10
+ acquireTimeoutMs?: number;
8
11
  queryTimeoutMs: number;
9
12
  }
10
- type ConnectionFactory = (options: ConnectionOptions) => Promise<Connection>;
13
+ type ConnectionFactory = (options: ConnectionOptions, signal?: AbortSignal) => Promise<Connection>;
11
14
  /**
12
15
  * @spec SQL is executed once; only native connection establishment may advance to another transport.
13
16
  * @why mysql2 reports a socket closed during handshake as PROTOCOL_CONNECTION_LOST, before any SQL is sent.
@@ -2,17 +2,18 @@ import {
2
2
  MysqlClient,
3
3
  MysqlDatabase,
4
4
  openMysql
5
- } from "../chunk-h73h2b7y.js";
5
+ } from "../chunk-t4hrnaj0.js";
6
6
  import"../chunk-m91t44jh.js";
7
- import"../chunk-age65q4n.js";
8
- import"../chunk-136egyff.js";
9
- import"../chunk-20kv4wc3.js";
7
+ import"../chunk-db4an9td.js";
8
+ import"../chunk-835fssgz.js";
9
+ import"../chunk-gm4swndx.js";
10
+ import"../chunk-rkt41za2.js";
10
11
  import"../chunk-v3hxvnrc.js";
11
12
  import"../chunk-h8fwx0k7.js";
12
- import"../chunk-wv4jwhvj.js";
13
- import"../chunk-631vce5z.js";
14
- import"../chunk-hmah9t8e.js";
15
- import"../chunk-mn6dwsvh.js";
13
+ import"../chunk-fqrknvr8.js";
14
+ import"../chunk-nftzckdy.js";
15
+ import"../chunk-rq5fc007.js";
16
+ import"../chunk-9shz0bw1.js";
16
17
  import"../chunk-ssj93brx.js";
17
18
  export {
18
19
  openMysql,
@@ -1,3 +1,6 @@
1
+ import { type ConnectionOptions } from "mysql2";
1
2
  import type { Connection } from "mysql2/promise";
3
+ /** Keep the native handle available so cancellation can destroy an unfinished handshake. */
4
+ export declare function connectMysql(options: ConnectionOptions, signal?: AbortSignal): Promise<Connection>;
2
5
  /** @why Disposal must release the socket even when the peer never finishes its TCP half-close. */
3
6
  export declare function destroyMysqlConnection(connection: Connection): void;
@@ -1,6 +1,8 @@
1
1
  import {
2
+ connectMysql,
2
3
  destroyMysqlConnection
3
- } from "../chunk-136egyff.js";
4
+ } from "../chunk-835fssgz.js";
4
5
  export {
5
- destroyMysqlConnection
6
+ destroyMysqlConnection,
7
+ connectMysql
6
8
  };
@@ -1,3 +1,4 @@
1
+ import"../chunk-pfar9cm3.js";
1
2
  import {
2
3
  withReadScope
3
4
  } from "../chunk-4sqvppz7.js";
@@ -5,9 +6,9 @@ import {
5
6
  MysqlClient,
6
7
  MysqlDatabase,
7
8
  openMysql
8
- } from "../chunk-h73h2b7y.js";
9
+ } from "../chunk-t4hrnaj0.js";
9
10
  import"../chunk-m91t44jh.js";
10
- import"../chunk-age65q4n.js";
11
+ import"../chunk-db4an9td.js";
11
12
  import {
12
13
  parseMysqlEnvTarget
13
14
  } from "../chunk-qq77x9ek.js";
@@ -16,15 +17,15 @@ import {
16
17
  limitedStatement,
17
18
  queryLimited
18
19
  } from "../chunk-1gyshqd9.js";
19
- import"../chunk-136egyff.js";
20
- import"../chunk-pfar9cm3.js";
21
- import"../chunk-20kv4wc3.js";
20
+ import"../chunk-835fssgz.js";
21
+ import"../chunk-gm4swndx.js";
22
+ import"../chunk-rkt41za2.js";
22
23
  import"../chunk-v3hxvnrc.js";
23
24
  import"../chunk-h8fwx0k7.js";
24
- import"../chunk-wv4jwhvj.js";
25
- import"../chunk-631vce5z.js";
26
- import"../chunk-hmah9t8e.js";
27
- import"../chunk-mn6dwsvh.js";
25
+ import"../chunk-fqrknvr8.js";
26
+ import"../chunk-nftzckdy.js";
27
+ import"../chunk-rq5fc007.js";
28
+ import"../chunk-9shz0bw1.js";
28
29
  import"../chunk-ssj93brx.js";
29
30
  export {
30
31
  withReadScope,
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  queryReadonlySession,
3
3
  validateQueryLimits
4
- } from "../chunk-age65q4n.js";
5
- import"../chunk-136egyff.js";
4
+ } from "../chunk-db4an9td.js";
5
+ import"../chunk-835fssgz.js";
6
6
  export {
7
7
  validateQueryLimits,
8
8
  queryReadonlySession
@@ -7,10 +7,14 @@ export interface OpenSearchAuth {
7
7
  }
8
8
  export interface OpenSearchOptions {
9
9
  node: string;
10
+ /** Bounded operational facts; never protocol bodies or credentials. */
11
+ onDiagnostic?: (line: string) => void;
10
12
  auth: OpenSearchAuth;
11
13
  requestTimeoutMs?: number;
12
- /** Deadline for the initialization probe; query deadlines remain independent. */
14
+ /** Per-route mapping and probe budget; query deadlines remain independent. */
13
15
  connectTimeoutMs?: number;
16
+ /** Total acquisition budget; defaults to the per-route budget times the route count. */
17
+ acquireTimeoutMs?: number;
14
18
  /** Original TLS identity when a transport maps the socket to localhost. */
15
19
  servername?: string;
16
20
  }
@@ -39,6 +43,11 @@ export interface OpenSearchClientApi {
39
43
  };
40
44
  close(): Promise<void>;
41
45
  }
46
+ /** Safe error-chain facts for logs; driver messages/meta can contain credentials and response bodies. */
47
+ export declare function describeOpenSearchError(error: unknown): string;
48
+ export interface OpenSearchLifecycle extends ClientLifecycle {
49
+ onDiagnostic?: (line: string) => void;
50
+ }
42
51
  /** OpenSearch-specific read APIs stay outside the engine-neutral SearchEngine contract. */
43
52
  export interface OpenSearchReadApi extends SearchEngine {
44
53
  request(path: string, query?: SearchQuery): Promise<unknown>;
@@ -46,11 +55,13 @@ export interface OpenSearchReadApi extends SearchEngine {
46
55
  export declare function isOpenSearchReadApi(search: SearchEngine): search is OpenSearchReadApi;
47
56
  /** Official OpenSearch client behind the engine-neutral SearchEngine contract. */
48
57
  export declare class OpenSearchEngine implements OpenSearchReadApi {
58
+ private readonly options;
49
59
  private readonly client;
50
60
  constructor(options: OpenSearchOptions, client?: OpenSearchClientApi);
51
61
  count(index: string, query: SearchQuery): Promise<number>;
52
62
  search(index: string, body: SearchQuery): Promise<SearchResult>;
53
63
  request(path: string, query?: SearchQuery): Promise<unknown>;
64
+ /** @spec Probe deadlines abort the underlying request even when the driver stalls. */
54
65
  ping(signal?: AbortSignal, timeoutMs?: number): Promise<unknown>;
55
66
  close(): Promise<void>;
56
67
  }
@@ -64,7 +75,7 @@ export declare class OpenSearchClient implements ManagedClient, OpenSearchReadAp
64
75
  private readonly source;
65
76
  private readonly lifecycle;
66
77
  readonly signal: AbortSignal;
67
- constructor(source: ConnectionSource<OpenSearchOptions>, lifecycle?: ClientLifecycle);
78
+ constructor(source: ConnectionSource<OpenSearchOptions>, lifecycle?: OpenSearchLifecycle);
68
79
  initialize(): Promise<void>;
69
80
  count(index: string, query: SearchQuery): Promise<number>;
70
81
  search(index: string, body: SearchQuery): Promise<SearchResult>;
@@ -73,4 +84,4 @@ export declare class OpenSearchClient implements ManagedClient, OpenSearchReadAp
73
84
  close(): Promise<void>;
74
85
  dispose(): Promise<void>;
75
86
  }
76
- export declare function openOpenSearch(source: ConnectionSource<OpenSearchOptions>, lifecycle?: ClientLifecycle): Promise<OpenSearchClient>;
87
+ export declare function openOpenSearch(source: ConnectionSource<OpenSearchOptions>, lifecycle?: OpenSearchLifecycle): Promise<OpenSearchClient>;
@@ -1,19 +1,22 @@
1
1
  import {
2
2
  OpenSearchClient,
3
3
  OpenSearchEngine,
4
+ describeOpenSearchError,
4
5
  isOpenSearchReadApi,
5
6
  openOpenSearch
6
- } from "../chunk-8mb6natq.js";
7
- import"../chunk-20kv4wc3.js";
7
+ } from "../chunk-m4d29vfd.js";
8
+ import"../chunk-gm4swndx.js";
9
+ import"../chunk-rkt41za2.js";
8
10
  import"../chunk-h8fwx0k7.js";
9
- import"../chunk-wv4jwhvj.js";
10
- import"../chunk-631vce5z.js";
11
- import"../chunk-hmah9t8e.js";
12
- import"../chunk-mn6dwsvh.js";
11
+ import"../chunk-fqrknvr8.js";
12
+ import"../chunk-nftzckdy.js";
13
+ import"../chunk-rq5fc007.js";
14
+ import"../chunk-9shz0bw1.js";
13
15
  import"../chunk-ssj93brx.js";
14
16
  export {
15
17
  openOpenSearch,
16
18
  isOpenSearchReadApi,
19
+ describeOpenSearchError,
17
20
  OpenSearchEngine,
18
21
  OpenSearchClient
19
22
  };
@@ -8,21 +8,24 @@ import"../chunk-djk4kmxb.js";
8
8
  import {
9
9
  OpenSearchClient,
10
10
  OpenSearchEngine,
11
+ describeOpenSearchError,
11
12
  isOpenSearchReadApi,
12
13
  openOpenSearch
13
- } from "../chunk-8mb6natq.js";
14
- import"../chunk-20kv4wc3.js";
14
+ } from "../chunk-m4d29vfd.js";
15
+ import"../chunk-gm4swndx.js";
16
+ import"../chunk-rkt41za2.js";
15
17
  import"../chunk-h8fwx0k7.js";
16
- import"../chunk-wv4jwhvj.js";
17
- import"../chunk-631vce5z.js";
18
- import"../chunk-hmah9t8e.js";
19
- import"../chunk-mn6dwsvh.js";
18
+ import"../chunk-fqrknvr8.js";
19
+ import"../chunk-nftzckdy.js";
20
+ import"../chunk-rq5fc007.js";
21
+ import"../chunk-9shz0bw1.js";
20
22
  import"../chunk-ssj93brx.js";
21
23
  export {
22
24
  searchAfterPages,
23
25
  parseOpenSearchEndpoint,
24
26
  openOpenSearch,
25
27
  isOpenSearchReadApi,
28
+ describeOpenSearchError,
26
29
  OpenSearchEngine,
27
30
  OpenSearchClient
28
31
  };
@@ -2,7 +2,7 @@ export interface RuntimeProcess {
2
2
  stdout: ReadableStream<Uint8Array>;
3
3
  stderr: ReadableStream<Uint8Array>;
4
4
  exited: Promise<number>;
5
- kill(): void;
5
+ kill(signal?: NodeJS.Signals): void;
6
6
  }
7
7
  export interface SpawnProcessOptions {
8
8
  stdin?: string | Uint8Array | ReadableStream<Uint8Array>;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  sleep,
3
3
  spawnProcess
4
- } from "../chunk-mn6dwsvh.js";
4
+ } from "../chunk-9shz0bw1.js";
5
5
  export {
6
6
  spawnProcess,
7
7
  sleep
@@ -4,14 +4,15 @@ import {
4
4
  RedisConnection,
5
5
  openRedis,
6
6
  parseRedisInfo
7
- } from "../chunk-yp6tcw22.js";
7
+ } from "../chunk-f98qrpx1.js";
8
+ import"../chunk-gm4swndx.js";
8
9
  import"../chunk-5tbzf9wd.js";
9
- import"../chunk-20kv4wc3.js";
10
+ import"../chunk-rkt41za2.js";
10
11
  import"../chunk-h8fwx0k7.js";
11
- import"../chunk-wv4jwhvj.js";
12
- import"../chunk-631vce5z.js";
13
- import"../chunk-hmah9t8e.js";
14
- import"../chunk-mn6dwsvh.js";
12
+ import"../chunk-fqrknvr8.js";
13
+ import"../chunk-nftzckdy.js";
14
+ import"../chunk-rq5fc007.js";
15
+ import"../chunk-9shz0bw1.js";
15
16
  import"../chunk-ssj93brx.js";
16
17
  export {
17
18
  parseRedisInfo,
@@ -1,23 +1,24 @@
1
- import {
2
- collectRedisKeyStats,
3
- redisGroupedSampleSizes
4
- } from "../chunk-jr9y0ghr.js";
5
1
  import {
6
2
  RedisAccess,
7
3
  RedisClient,
8
4
  RedisConnection,
9
5
  openRedis,
10
6
  parseRedisInfo
11
- } from "../chunk-yp6tcw22.js";
7
+ } from "../chunk-f98qrpx1.js";
8
+ import"../chunk-gm4swndx.js";
9
+ import {
10
+ collectRedisKeyStats,
11
+ redisGroupedSampleSizes
12
+ } from "../chunk-jr9y0ghr.js";
12
13
  import {
13
14
  discoverRedisTopology
14
15
  } from "../chunk-5tbzf9wd.js";
15
- import"../chunk-20kv4wc3.js";
16
+ import"../chunk-rkt41za2.js";
16
17
  import"../chunk-h8fwx0k7.js";
17
- import"../chunk-wv4jwhvj.js";
18
- import"../chunk-631vce5z.js";
19
- import"../chunk-hmah9t8e.js";
20
- import"../chunk-mn6dwsvh.js";
18
+ import"../chunk-fqrknvr8.js";
19
+ import"../chunk-nftzckdy.js";
20
+ import"../chunk-rq5fc007.js";
21
+ import"../chunk-9shz0bw1.js";
21
22
  import"../chunk-ssj93brx.js";
22
23
  export {
23
24
  redisGroupedSampleSizes,
@@ -2,15 +2,15 @@ import {
2
2
  S3DataSource
3
3
  } from "../chunk-35cjec9z.js";
4
4
  import"../chunk-z5pm2emz.js";
5
- import"../chunk-20kv4wc3.js";
5
+ import"../chunk-rkt41za2.js";
6
6
  import"../chunk-zp1s833x.js";
7
7
  import"../chunk-v3hxvnrc.js";
8
8
  import"../chunk-x4ntb898.js";
9
9
  import"../chunk-h8fwx0k7.js";
10
- import"../chunk-wv4jwhvj.js";
11
- import"../chunk-631vce5z.js";
12
- import"../chunk-hmah9t8e.js";
13
- import"../chunk-mn6dwsvh.js";
10
+ import"../chunk-fqrknvr8.js";
11
+ import"../chunk-nftzckdy.js";
12
+ import"../chunk-rq5fc007.js";
13
+ import"../chunk-9shz0bw1.js";
14
14
  import"../chunk-ssj93brx.js";
15
15
  export {
16
16
  S3DataSource