@grackle-ai/adapter-local 0.166.0 → 0.168.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/local.d.ts CHANGED
@@ -1,17 +1,18 @@
1
- import type { EnvironmentAdapter, BaseEnvironmentConfig, PowerLineConnection, ProvisionEvent, AdapterDependencies } from "@grackle-ai/adapter-sdk";
1
+ import type { BaseEnvironmentConfig, PowerLineConnection, ProvisionEvent, AdapterDependencies } from "@grackle-ai/adapter-sdk";
2
+ import { BaseAdapter } from "@grackle-ai/adapter-sdk";
2
3
  /** Local-specific environment configuration. */
3
4
  export interface LocalEnvironmentConfig extends BaseEnvironmentConfig {
4
5
  }
5
6
  /** Environment adapter that connects to a locally-running PowerLine process. */
6
- export declare class LocalAdapter implements EnvironmentAdapter {
7
+ export declare class LocalAdapter extends BaseAdapter {
7
8
  type: string;
8
9
  private readonly sleep;
9
10
  constructor(deps?: AdapterDependencies);
10
- provision(environmentId: string, config: Record<string, unknown>, powerlineToken: string): AsyncGenerator<ProvisionEvent>;
11
- connect(environmentId: string, config: Record<string, unknown>, powerlineToken: string): Promise<PowerLineConnection>;
12
- disconnect(): Promise<void>;
13
- stop(): Promise<void>;
14
- destroy(): Promise<void>;
11
+ protected doProvision(environmentId: string, config: Record<string, unknown>, powerlineToken: string): AsyncGenerator<ProvisionEvent>;
12
+ protected doConnect(environmentId: string, config: Record<string, unknown>, powerlineToken: string): Promise<PowerLineConnection>;
13
+ protected doDisconnect(): Promise<void>;
14
+ protected doStop(): Promise<void>;
15
+ protected doDestroy(): Promise<void>;
15
16
  healthCheck(connection: PowerLineConnection): Promise<boolean>;
16
17
  }
17
18
  //# sourceMappingURL=local.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../src/local.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AAMjC,gDAAgD;AAChD,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;CAEpE;AAED,gFAAgF;AAChF,qBAAa,YAAa,YAAW,kBAAkB;IAC9C,IAAI,EAAE,MAAM,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgC;gBAEnC,IAAI,GAAE,mBAAwB;IAInC,SAAS,CACrB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,cAAc,CAAC,cAAc,CAAC;IAuCpB,OAAO,CAClB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,mBAAmB,CAAC;IAqClB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxB,WAAW,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CAQ5E"}
1
+ {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../src/local.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,WAAW,EAGZ,MAAM,yBAAyB,CAAC;AAKjC,gDAAgD;AAChD,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;CAEpE;AAED,gFAAgF;AAChF,qBAAa,YAAa,SAAQ,WAAW;IACpC,IAAI,EAAE,MAAM,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgC;gBAEnC,IAAI,GAAE,mBAAwB;cAKhC,WAAW,CAC1B,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,cAAc,CAAC,cAAc,CAAC;cAqCjB,SAAS,CACvB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,mBAAmB,CAAC;cAmCf,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;cAI7B,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;cAIvB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B,WAAW,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CAQ5E"}
package/dist/local.js CHANGED
@@ -1,15 +1,16 @@
1
1
  import { DEFAULT_POWERLINE_PORT } from "@grackle-ai/common";
2
- import { createAhpHostTransport, sleep as defaultSleep } from "@grackle-ai/adapter-sdk";
2
+ import { BaseAdapter, createAhpHostTransport, sleep as defaultSleep, } from "@grackle-ai/adapter-sdk";
3
3
  const POWERLINE_RETRY_DELAY_MS = 1_000;
4
4
  const POWERLINE_MAX_RETRIES = 5;
5
5
  /** Environment adapter that connects to a locally-running PowerLine process. */
6
- export class LocalAdapter {
6
+ export class LocalAdapter extends BaseAdapter {
7
7
  type = "local";
8
8
  sleep;
9
9
  constructor(deps = {}) {
10
+ super();
10
11
  this.sleep = deps.sleep ?? defaultSleep;
11
12
  }
12
- async *provision(environmentId, config, powerlineToken) {
13
+ async *doProvision(environmentId, config, powerlineToken) {
13
14
  const cfg = config;
14
15
  const port = cfg.port || DEFAULT_POWERLINE_PORT;
15
16
  const host = cfg.host || "localhost";
@@ -38,13 +39,9 @@ export class LocalAdapter {
38
39
  await this.sleep(POWERLINE_RETRY_DELAY_MS);
39
40
  }
40
41
  }
41
- yield {
42
- stage: "error",
43
- message: `Could not reach PowerLine: ${lastErr instanceof Error ? lastErr.message : String(lastErr)}`,
44
- progress: 0,
45
- };
42
+ throw new Error(`Could not reach PowerLine: ${lastErr instanceof Error ? lastErr.message : String(lastErr)}`);
46
43
  }
47
- async connect(environmentId, config, powerlineToken) {
44
+ async doConnect(environmentId, config, powerlineToken) {
48
45
  const cfg = config;
49
46
  const port = cfg.port || DEFAULT_POWERLINE_PORT;
50
47
  const host = cfg.host || "localhost";
@@ -54,8 +51,6 @@ export class LocalAdapter {
54
51
  await socket.request("ping", { channel: "ahp-root://" });
55
52
  }
56
53
  catch (err) {
57
- // Liveness probe failed — close the socket we just opened so we don't
58
- // leak it back to the caller, then re-raise.
59
54
  try {
60
55
  await socket.close();
61
56
  }
@@ -76,13 +71,13 @@ export class LocalAdapter {
76
71
  },
77
72
  };
78
73
  }
79
- async disconnect() {
74
+ async doDisconnect() {
80
75
  // Nothing to clean up for local connections
81
76
  }
82
- async stop() {
77
+ async doStop() {
83
78
  // Local PowerLine lifecycle is managed externally
84
79
  }
85
- async destroy() {
80
+ async doDestroy() {
86
81
  // Local PowerLine lifecycle is managed externally
87
82
  }
88
83
  async healthCheck(connection) {
package/dist/local.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"local.js","sourceRoot":"","sources":["../src/local.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local.js","sourceRoot":"","sources":["../src/local.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grackle-ai/adapter-local",
3
- "version": "0.166.0",
3
+ "version": "0.168.0",
4
4
  "description": "Grackle local environment adapter",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -28,14 +28,15 @@
28
28
  "dist/"
29
29
  ],
30
30
  "dependencies": {
31
- "@grackle-ai/adapter-sdk": "0.166.0",
32
- "@grackle-ai/common": "0.166.0"
31
+ "@grackle-ai/adapter-sdk": "0.168.0",
32
+ "@grackle-ai/common": "0.168.0"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@rushstack/heft": "1.2.7",
36
36
  "@types/node": "^22.0.0",
37
- "@vitest/coverage-v8": "^3.1.1",
38
- "vitest": "^3.1.1",
37
+ "@vitest/coverage-v8": "^4.1.0",
38
+ "vitest": "^4.1.0",
39
+ "@vitest/spy": "^4.1.0",
39
40
  "@grackle-ai/heft-rig": "0.0.1"
40
41
  },
41
42
  "scripts": {