@grackle-ai/server 0.14.3 → 0.14.5

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.
@@ -36,5 +36,15 @@ export interface EnvironmentAdapter {
36
36
  destroy(environmentId: string, config: Record<string, unknown>): Promise<void>;
37
37
  /** Return true if the PowerLine is reachable via ping. */
38
38
  healthCheck(connection: PowerLineConnection): Promise<boolean>;
39
+ /** Attempt fast reconnect without re-bootstrapping. Throws if PowerLine cannot be restarted. */
40
+ reconnect?(environmentId: string, config: Record<string, unknown>, powerlineToken: string): AsyncGenerator<ProvisionEvent>;
39
41
  }
42
+ /**
43
+ * Try fast reconnect if the adapter supports it and the environment was
44
+ * previously bootstrapped, falling back to full provision on any error.
45
+ *
46
+ * Yields {@link ProvisionEvent}s from whichever path runs, allowing callers
47
+ * (gRPC streaming and WebSocket broadcast) to forward them uniformly.
48
+ */
49
+ export declare function reconnectOrProvision(environmentId: string, adapter: EnvironmentAdapter, config: Record<string, unknown>, powerlineToken: string, bootstrapped: boolean): AsyncGenerator<ProvisionEvent>;
40
50
  //# sourceMappingURL=adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,kEAAkE;AAClE,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,SAAS,CAAC,gBAAgB,CAAC,CAAC;AAExE,oFAAoF;AACpF,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,eAAe,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,8DAA8D;AAC9D,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IACpC,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qEAAqE;AACrE,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IAEb,0DAA0D;IAC1D,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,MAAM,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;IAC1H,+EAA+E;IAC/E,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACtH,uFAAuF;IACvF,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,gFAAgF;IAChF,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,gEAAgE;IAChE,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,0DAA0D;IAC1D,WAAW,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAChE"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAGpD,kEAAkE;AAClE,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,SAAS,CAAC,gBAAgB,CAAC,CAAC;AAExE,oFAAoF;AACpF,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,eAAe,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,8DAA8D;AAC9D,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IACpC,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qEAAqE;AACrE,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IAEb,0DAA0D;IAC1D,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,MAAM,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;IAC1H,+EAA+E;IAC/E,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACtH,uFAAuF;IACvF,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,gFAAgF;IAChF,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,gEAAgE;IAChE,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,0DAA0D;IAC1D,WAAW,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,gGAAgG;IAChG,SAAS,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,MAAM,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;CAC5H;AAED;;;;;;GAMG;AACH,wBAAuB,oBAAoB,CACzC,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,OAAO,GACpB,cAAc,CAAC,cAAc,CAAC,CAahC"}
@@ -1,2 +1,24 @@
1
- export {};
1
+ import { logger } from "../logger.js";
2
+ /**
3
+ * Try fast reconnect if the adapter supports it and the environment was
4
+ * previously bootstrapped, falling back to full provision on any error.
5
+ *
6
+ * Yields {@link ProvisionEvent}s from whichever path runs, allowing callers
7
+ * (gRPC streaming and WebSocket broadcast) to forward them uniformly.
8
+ */
9
+ export async function* reconnectOrProvision(environmentId, adapter, config, powerlineToken, bootstrapped) {
10
+ let reconnected = false;
11
+ if (bootstrapped && adapter.reconnect) {
12
+ try {
13
+ yield* adapter.reconnect(environmentId, config, powerlineToken);
14
+ reconnected = true;
15
+ }
16
+ catch (err) {
17
+ logger.info({ environmentId, err }, "Reconnect failed, falling back to full provision");
18
+ }
19
+ }
20
+ if (!reconnected) {
21
+ yield* adapter.provision(environmentId, config, powerlineToken);
22
+ }
23
+ }
2
24
  //# sourceMappingURL=adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapters/adapter.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapters/adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AA+CtC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,oBAAoB,CACzC,aAAqB,EACrB,OAA2B,EAC3B,MAA+B,EAC/B,cAAsB,EACtB,YAAqB;IAErB,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,YAAY,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;YAChE,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,kDAAkD,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IAClE,CAAC;AACH,CAAC"}
@@ -13,6 +13,16 @@ export declare class CodespaceAdapter implements EnvironmentAdapter {
13
13
  type: string;
14
14
  /** Provision the codespace: verify connectivity, bootstrap PowerLine, open port-forward. */
15
15
  provision(environmentId: string, config: Record<string, unknown>, powerlineToken: string): AsyncGenerator<ProvisionEvent>;
16
+ /**
17
+ * Attempt fast reconnect: probe PowerLine, restart if needed, re-open tunnel.
18
+ *
19
+ * Any failure (SSH unreachable, PowerLine won't start, tunnel error) throws
20
+ * and falls through to the caller, which should trigger a full provision.
21
+ *
22
+ * Minimizes SSH round trips — probe and conditional restart run in a single
23
+ * SSH call via `startRemotePowerLine({ probeFirst: true })`.
24
+ */
25
+ reconnect(environmentId: string, config: Record<string, unknown>, powerlineToken: string): AsyncGenerator<ProvisionEvent>;
16
26
  /** Connect to the PowerLine through the port-forward tunnel. */
17
27
  connect(environmentId: string, config: Record<string, unknown>, powerlineToken: string): Promise<PowerLineConnection>;
18
28
  /** Close the port-forward tunnel without stopping the remote PowerLine. */
@@ -1 +1 @@
1
- {"version":3,"file":"codespace.d.ts","sourceRoot":"","sources":["../../src/adapters/codespace.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAuBnH,4DAA4D;AAC5D,MAAM,WAAW,0BAA2B,SAAQ,qBAAqB;IACvE,8DAA8D;IAC9D,aAAa,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AA8DD,+FAA+F;AAC/F,qBAAa,gBAAiB,YAAW,kBAAkB;IAClD,IAAI,EAAE,MAAM,CAAe;IAElC,4FAA4F;IAC9E,SAAS,CACrB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,cAAc,CAAC,cAAc,CAAC;IA4CjC,gEAAgE;IACnD,OAAO,CAClB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,mBAAmB,CAAC;IAQ/B,2EAA2E;IAC9D,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,8DAA8D;IACjD,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxF;;;OAGG;IACU,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3F,2EAA2E;IAC9D,WAAW,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CAG5E"}
1
+ {"version":3,"file":"codespace.d.ts","sourceRoot":"","sources":["../../src/adapters/codespace.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAwBnH,4DAA4D;AAC5D,MAAM,WAAW,0BAA2B,SAAQ,qBAAqB;IACvE,8DAA8D;IAC9D,aAAa,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AA8DD,+FAA+F;AAC/F,qBAAa,gBAAiB,YAAW,kBAAkB;IAClD,IAAI,EAAE,MAAM,CAAe;IAElC,4FAA4F;IAC9E,SAAS,CACrB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,cAAc,CAAC,cAAc,CAAC;IA4CjC;;;;;;;;OAQG;IACW,SAAS,CACrB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,cAAc,CAAC,cAAc,CAAC;IAmCjC,gEAAgE;IACnD,OAAO,CAClB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,mBAAmB,CAAC;IAQ/B,2EAA2E;IAC9D,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,8DAA8D;IACjD,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxF;;;OAGG;IACU,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3F,2EAA2E;IAC9D,WAAW,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CAG5E"}
@@ -1,5 +1,5 @@
1
1
  import { DEFAULT_POWERLINE_PORT } from "@grackle-ai/common";
2
- import { ProcessTunnel, bootstrapPowerLine, connectThroughTunnel, registerTunnel, getTunnel, closeTunnel, findFreePort, remoteStop, remoteDestroy, remoteHealthCheck, SSH_CONNECTIVITY_TIMEOUT_MS, REMOTE_EXEC_DEFAULT_TIMEOUT_MS, } from "./remote-adapter-utils.js";
2
+ import { ProcessTunnel, bootstrapPowerLine, connectThroughTunnel, registerTunnel, getTunnel, closeTunnel, findFreePort, remoteStop, remoteDestroy, remoteHealthCheck, startRemotePowerLine, SSH_CONNECTIVITY_TIMEOUT_MS, REMOTE_EXEC_DEFAULT_TIMEOUT_MS, } from "./remote-adapter-utils.js";
3
3
  import { exec } from "../utils/exec.js";
4
4
  const REMOTE_COPY_TIMEOUT_MS = 120_000;
5
5
  // ─── Executor ───────────────────────────────────────────────
@@ -91,6 +91,44 @@ export class CodespaceAdapter {
91
91
  registerTunnel(environmentId, { tunnel });
92
92
  yield { stage: "connecting", message: `Tunnel open, connecting on port ${localPort}...`, progress: 0.90 };
93
93
  }
94
+ /**
95
+ * Attempt fast reconnect: probe PowerLine, restart if needed, re-open tunnel.
96
+ *
97
+ * Any failure (SSH unreachable, PowerLine won't start, tunnel error) throws
98
+ * and falls through to the caller, which should trigger a full provision.
99
+ *
100
+ * Minimizes SSH round trips — probe and conditional restart run in a single
101
+ * SSH call via `startRemotePowerLine({ probeFirst: true })`.
102
+ */
103
+ async *reconnect(environmentId, config, powerlineToken) {
104
+ const cfg = config;
105
+ if (!cfg.codespaceName) {
106
+ throw new Error("Codespace adapter requires a 'codespaceName' in the configuration");
107
+ }
108
+ const executor = new CodespaceExecutor(cfg.codespaceName);
109
+ // 1. Close any stale tunnel
110
+ yield { stage: "reconnecting", message: "Closing stale tunnel...", progress: 0.10 };
111
+ await closeTunnel(environmentId);
112
+ // 2. Probe + conditional restart in a single SSH call.
113
+ // probeFirst checks if PowerLine is already listening; if not, writes
114
+ // env vars, detects workspace, starts the process, and re-probes.
115
+ yield { stage: "reconnecting", message: `Checking PowerLine on ${cfg.codespaceName}...`, progress: 0.30 };
116
+ const { alreadyRunning } = await startRemotePowerLine(executor, powerlineToken, {
117
+ extraEnv: cfg.env,
118
+ autoDetectWorkspace: true,
119
+ probeFirst: true,
120
+ });
121
+ if (!alreadyRunning) {
122
+ yield { stage: "reconnecting", message: "PowerLine restarted", progress: 0.50 };
123
+ }
124
+ // 3. Open new port-forward tunnel
125
+ const localPort = cfg.localPort || await findFreePort();
126
+ yield { stage: "reconnecting", message: `Forwarding local port ${localPort} to codespace...`, progress: 0.70 };
127
+ const tunnel = new CodespaceTunnel(localPort, cfg.codespaceName);
128
+ await tunnel.open();
129
+ registerTunnel(environmentId, { tunnel });
130
+ yield { stage: "reconnecting", message: "Reconnected to codespace", progress: 0.90 };
131
+ }
94
132
  /** Connect to the PowerLine through the port-forward tunnel. */
95
133
  async connect(environmentId, config, powerlineToken) {
96
134
  const state = getTunnel(environmentId);
@@ -1 +1 @@
1
- {"version":3,"file":"codespace.js","sourceRoot":"","sources":["../../src/adapters/codespace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codespace.js","sourceRoot":"","sources":["../../src/adapters/codespace.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAEL,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,SAAS,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,EAC3B,8BAA8B,GAC/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,MAAM,sBAAsB,GAAW,OAAO,CAAC;AAc/C,+DAA+D;AAE/D,mEAAmE;AACnE,MAAM,iBAAiB;IACJ,aAAa,CAAS;IAEvC,YAAmB,aAAqB;QACtC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,8EAA8E;IACvE,KAAK,CAAC,IAAI,CAAC,OAAe,EAAE,IAA2B;QAC5D,MAAM,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,8BAA8B,EAAE,CAAC,CAAC;QACpG,OAAO,MAAM,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,+EAA+E;IACxE,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,UAAkB;QACvD,qFAAqF;QACrF,IAAI,YAAY,GAAG,UAAU,CAAC;QAC9B,IAAI,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACpD,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACvD,CAAC;QACD,MAAM,IAAI,GAAG;YACX,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;YAC7B,IAAI,EAAE,IAAI,CAAC,aAAa;YACxB,SAAS;YACT,UAAU,YAAY,EAAE;SACzB,CAAC;QACF,MAAM,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC,CAAC;IAC9D,CAAC;CACF;AAED,+DAA+D;AAE/D,iEAAiE;AACjE,MAAM,eAAgB,SAAQ,aAAa;IACxB,aAAa,CAAS;IAEvC,YAAmB,SAAiB,EAAE,aAAqB;QACzD,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,wEAAwE;IAC9D,SAAS;QACjB,8EAA8E;QAC9E,MAAM,IAAI,GAAG;YACX,WAAW,EAAE,OAAO,EAAE,SAAS;YAC/B,GAAG,sBAAsB,IAAI,IAAI,CAAC,SAAS,EAAE;YAC7C,IAAI,EAAE,IAAI,CAAC,aAAa;SACzB,CAAC;QACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC;CACF;AAED,+DAA+D;AAE/D,+FAA+F;AAC/F,MAAM,OAAO,gBAAgB;IACpB,IAAI,GAAW,WAAW,CAAC;IAElC,4FAA4F;IACrF,KAAK,CAAC,CAAC,SAAS,CACrB,aAAqB,EACrB,MAA+B,EAC/B,cAAsB;QAEtB,MAAM,GAAG,GAAG,MAA+C,CAAC;QAC5D,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAE1D,8BAA8B;QAC9B,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,2BAA2B,GAAG,CAAC,aAAa,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC1G,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,aAAa,iBAAiB,GAAG,EAAE,CAAC,CAAC;QACtF,CAAC;QAED,6EAA6E;QAC7E,IAAI,gBAAoC,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,CACvC,4CAA4C,EAC5C,EAAE,OAAO,EAAE,2BAA2B,EAAE,CACzC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC7B,IAAI,YAAY,EAAE,CAAC;gBACjB,gBAAgB,GAAG,YAAY,CAAC;YAClC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,+CAA+C;QACjD,CAAC;QAED,uCAAuC;QACvC,KAAK,CAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAE/E,2BAA2B;QAC3B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,MAAM,YAAY,EAAE,CAAC;QACxD,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,yBAAyB,SAAS,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAE5G,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;QACjE,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,cAAc,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAE1C,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,mCAAmC,SAAS,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5G,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,CAAC,SAAS,CACrB,aAAqB,EACrB,MAA+B,EAC/B,cAAsB;QAEtB,MAAM,GAAG,GAAG,MAA+C,CAAC;QAC5D,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAE1D,4BAA4B;QAC5B,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACpF,MAAM,WAAW,CAAC,aAAa,CAAC,CAAC;QAEjC,uDAAuD;QACvD,yEAAyE;QACzE,qEAAqE;QACrE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,yBAAyB,GAAG,CAAC,aAAa,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC1G,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,oBAAoB,CAAC,QAAQ,EAAE,cAAc,EAAE;YAC9E,QAAQ,EAAE,GAAG,CAAC,GAAG;YACjB,mBAAmB,EAAE,IAAI;YACzB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAClF,CAAC;QAED,kCAAkC;QAClC,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,MAAM,YAAY,EAAE,CAAC;QACxD,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,yBAAyB,SAAS,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC/G,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;QACjE,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,cAAc,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAE1C,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,0BAA0B,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACvF,CAAC;IAED,gEAAgE;IACzD,KAAK,CAAC,OAAO,CAClB,aAAqB,EACrB,MAA+B,EAC/B,cAAsB;QAEtB,MAAM,KAAK,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,wCAAwC,aAAa,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO,oBAAoB,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACrF,CAAC;IAED,2EAA2E;IACpE,KAAK,CAAC,UAAU,CAAC,aAAqB;QAC3C,MAAM,WAAW,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC;IAED,8DAA8D;IACvD,KAAK,CAAC,IAAI,CAAC,aAAqB,EAAE,MAA+B;QACtE,MAAM,GAAG,GAAG,MAA+C,CAAC;QAC5D,MAAM,UAAU,CAAC,aAAa,EAAE,IAAI,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;IAC5E,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,OAAO,CAAC,aAAqB,EAAE,MAA+B;QACzE,MAAM,GAAG,GAAG,MAA+C,CAAC;QAC5D,MAAM,aAAa,CAAC,aAAa,EAAE,IAAI,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,2EAA2E;IACpE,KAAK,CAAC,WAAW,CAAC,UAA+B;QACtD,OAAO,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;CACF"}
@@ -66,6 +66,55 @@ export declare abstract class ProcessTunnel implements RemoteTunnel {
66
66
  /** Return true if the tunnel process is still running. */
67
67
  isAlive(): boolean;
68
68
  }
69
+ /**
70
+ * Write the environment variable file to the remote PowerLine directory.
71
+ * Used during both initial bootstrap and reconnect (tokens may have rotated).
72
+ */
73
+ export declare function writeRemoteEnvFile(executor: RemoteExecutor, powerlineToken: string, extraEnv?: Record<string, string>): Promise<void>;
74
+ /**
75
+ * Probe whether the remote PowerLine is listening on its port.
76
+ * Throws if the port is not reachable.
77
+ */
78
+ export declare function probeRemotePowerLine(executor: RemoteExecutor): Promise<void>;
79
+ /** Options for {@link startRemotePowerLine}. */
80
+ interface StartRemotePowerLineOptions {
81
+ /** Additional environment variables forwarded to the remote PowerLine. */
82
+ extraEnv?: Record<string, string>;
83
+ /** Explicit working directory for the PowerLine process. */
84
+ workingDirectory?: string;
85
+ /**
86
+ * When true, detects `/workspaces/*\/` on the remote host (codespace
87
+ * convention) and uses it as the working directory.
88
+ */
89
+ autoDetectWorkspace?: boolean;
90
+ /**
91
+ * When true, the compound script starts with a TCP probe and exits
92
+ * immediately if PowerLine is already listening. This avoids a separate
93
+ * SSH round trip for the initial health check.
94
+ */
95
+ probeFirst?: boolean;
96
+ }
97
+ /**
98
+ * Ensure the remote PowerLine process is running.
99
+ *
100
+ * Batches env-var write, process start, and port probe into a **single SSH
101
+ * call** to minimize per-call latency (each `gh codespace ssh` round trip
102
+ * takes ~10-15 s through GitHub's relay).
103
+ *
104
+ * Uses Node's `spawn({ detached: true })` to properly daemonize the
105
+ * PowerLine process, avoiding the SSH-hanging issue where `nohup ... &`
106
+ * keeps the session alive through GitHub's codespace relay.
107
+ *
108
+ * When `probeFirst` is true the script begins with a TCP port check and
109
+ * returns immediately if PowerLine is already listening, combining the
110
+ * "is it alive?" check and the "start if not" logic into one SSH call.
111
+ *
112
+ * This is the "restart" middle path — it assumes code is already installed
113
+ * and skips npm install, git checks, and artifact copies.
114
+ */
115
+ export declare function startRemotePowerLine(executor: RemoteExecutor, powerlineToken: string, options?: StartRemotePowerLineOptions): Promise<{
116
+ alreadyRunning: boolean;
117
+ }>;
69
118
  /**
70
119
  * Bootstrap the PowerLine on a remote host via the given executor.
71
120
  * Yields progress events for each stage of the process.
@@ -1 +1 @@
1
- {"version":3,"file":"remote-adapter-utils.d.ts","sourceRoot":"","sources":["../../src/adapters/remote-adapter-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote-adapter-utils.d.ts","sourceRoot":"","sources":["../../src/adapters/remote-adapter-utils.ts"],"names":[],"mappings":"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"}
@@ -156,6 +156,178 @@ const FORWARDED_ENV_VARS = [
156
156
  function shellEscape(value) {
157
157
  return value.replace(/'/g, "'\\''");
158
158
  }
159
+ /**
160
+ * Build the list of env-file lines for the PowerLine process.
161
+ * Pure helper used by both {@link writeRemoteEnvFile} and {@link startRemotePowerLine}.
162
+ */
163
+ function writeRemoteEnvFileLines(powerlineToken, extraEnv) {
164
+ const envLines = [];
165
+ if (powerlineToken) {
166
+ envLines.push(`export GRACKLE_POWERLINE_TOKEN='${shellEscape(powerlineToken)}'`);
167
+ }
168
+ for (const varName of FORWARDED_ENV_VARS) {
169
+ const value = process.env[varName];
170
+ if (value) {
171
+ envLines.push(`export ${varName}='${shellEscape(value)}'`);
172
+ }
173
+ }
174
+ if (extraEnv) {
175
+ for (const [key, value] of Object.entries(extraEnv)) {
176
+ if (!ENV_VAR_NAME_PATTERN.test(key)) {
177
+ logger.warn({ key }, "Skipping invalid env var name");
178
+ continue;
179
+ }
180
+ envLines.push(`export ${key}='${shellEscape(value)}'`);
181
+ }
182
+ }
183
+ return envLines;
184
+ }
185
+ /**
186
+ * Write the environment variable file to the remote PowerLine directory.
187
+ * Used during both initial bootstrap and reconnect (tokens may have rotated).
188
+ */
189
+ export async function writeRemoteEnvFile(executor, powerlineToken, extraEnv) {
190
+ const envLines = writeRemoteEnvFileLines(powerlineToken, extraEnv);
191
+ if (envLines.length === 0) {
192
+ return;
193
+ }
194
+ const envFileContent = envLines.join("\n") + "\n";
195
+ const envFileContentBase64 = Buffer.from(envFileContent, "utf8").toString("base64");
196
+ await executor.exec(`cd ${REMOTE_POWERLINE_DIRECTORY} && node -e "require('fs').writeFileSync('.env.sh',Buffer.from(process.argv[1],'base64').toString('utf8'))" '${shellEscape(envFileContentBase64)}'`, { timeout: REMOTE_EXEC_DEFAULT_TIMEOUT_MS });
197
+ await executor.exec(`chmod 600 ${REMOTE_POWERLINE_DIRECTORY}/.env.sh`, { timeout: REMOTE_EXEC_DEFAULT_TIMEOUT_MS });
198
+ }
199
+ /** Node.js one-liner that probes the PowerLine port and exits 0/1. */
200
+ const PROBE_SCRIPT = `node -e "const s=require('net').createConnection(${DEFAULT_POWERLINE_PORT},'127.0.0.1');`
201
+ + `s.on('connect',()=>{s.destroy();process.exit(0)});`
202
+ + `s.on('error',()=>process.exit(1))"`;
203
+ /**
204
+ * Probe whether the remote PowerLine is listening on its port.
205
+ * Throws if the port is not reachable.
206
+ */
207
+ export async function probeRemotePowerLine(executor) {
208
+ await executor.exec(PROBE_SCRIPT, { timeout: REMOTE_EXEC_DEFAULT_TIMEOUT_MS });
209
+ }
210
+ /**
211
+ * Node.js one-liner that spawns a fully detached child process.
212
+ *
213
+ * Uses `child_process.spawn()` with `detached: true` and `unref()` so the
214
+ * parent Node process exits immediately. This is the only reliable way to
215
+ * background a process through `gh codespace ssh` — the relay waits for EOF
216
+ * on all inherited FDs, and even `nohup ... < /dev/null > log 2>&1 &` leaves
217
+ * the SSH session hanging because the bash subshell created by `&` holds
218
+ * references to the SSH transport's pipes.
219
+ *
220
+ * Takes three positional arguments (passed by bash, allowing `$HOME` / `$WD`
221
+ * expansion): argv[1] = entryPoint, argv[2] = pidFilePath, argv[3] = logFile.
222
+ * Uses `process.cwd()` as the working directory (caller must `cd` first).
223
+ */
224
+ const SPAWN_SCRIPT = `node -e "`
225
+ + `const fs=require('fs');`
226
+ + `const {spawn}=require('child_process');`
227
+ + `const out=fs.openSync(process.argv[3],'w');`
228
+ + `const c=spawn('node',[process.argv[1],'--port=${DEFAULT_POWERLINE_PORT}'],`
229
+ + `{cwd:process.cwd(),detached:true,stdio:['ignore',out,out]});`
230
+ + `fs.writeFileSync(process.argv[2],String(c.pid));`
231
+ + `c.unref();"`;
232
+ /**
233
+ * Ensure the remote PowerLine process is running.
234
+ *
235
+ * Batches env-var write, process start, and port probe into a **single SSH
236
+ * call** to minimize per-call latency (each `gh codespace ssh` round trip
237
+ * takes ~10-15 s through GitHub's relay).
238
+ *
239
+ * Uses Node's `spawn({ detached: true })` to properly daemonize the
240
+ * PowerLine process, avoiding the SSH-hanging issue where `nohup ... &`
241
+ * keeps the session alive through GitHub's codespace relay.
242
+ *
243
+ * When `probeFirst` is true the script begins with a TCP port check and
244
+ * returns immediately if PowerLine is already listening, combining the
245
+ * "is it alive?" check and the "start if not" logic into one SSH call.
246
+ *
247
+ * This is the "restart" middle path — it assumes code is already installed
248
+ * and skips npm install, git checks, and artifact copies.
249
+ */
250
+ export async function startRemotePowerLine(executor, powerlineToken, options = {}) {
251
+ const { extraEnv, workingDirectory, autoDetectWorkspace, probeFirst } = options;
252
+ // Validate workingDirectory to prevent shell injection — must be an absolute POSIX path
253
+ if (workingDirectory && !/^\/[\w./-]+$/.test(workingDirectory)) {
254
+ throw new Error(`Invalid working directory: ${workingDirectory}`);
255
+ }
256
+ const envLines = writeRemoteEnvFileLines(powerlineToken, extraEnv);
257
+ const devMode = isDevMode();
258
+ const entryPoint = devMode
259
+ ? "dist/index.js"
260
+ : "node_modules/@grackle-ai/powerline/dist/index.js";
261
+ const absoluteEntryPoint = `${REMOTE_POWERLINE_DIRECTORY}/${entryPoint}`;
262
+ const logFilePath = "$HOME/.grackle/powerline.log";
263
+ const pidFilePath = `${REMOTE_POWERLINE_DIRECTORY}/powerline.pid`;
264
+ // Build a compound script that runs in a single SSH call:
265
+ // 0. (Optional) Probe — exit early if already listening
266
+ // 1. Write env file (base64 → file)
267
+ // 2. Detect working directory (optional)
268
+ // 3. Source env + spawn PowerLine (detached, exits immediately)
269
+ // 4. Brief sleep + probe
270
+ const parts = [];
271
+ // 0. Early-exit probe (saves work when PowerLine is already running).
272
+ // Uses `; ` (not `&&`) to separate from the start logic so that a
273
+ // failed probe doesn't short-circuit the rest of the script.
274
+ // `exit 0` exits the top-level bash -c, not a subshell.
275
+ let probeFirstPrefix = "";
276
+ if (probeFirst) {
277
+ probeFirstPrefix = `${PROBE_SCRIPT} && echo "__PL_ALIVE__" && exit 0; `;
278
+ }
279
+ // 1. Env file
280
+ if (envLines.length > 0) {
281
+ const envFileContent = envLines.join("\n") + "\n";
282
+ const envFileContentBase64 = Buffer.from(envFileContent, "utf8").toString("base64");
283
+ parts.push(`cd ${REMOTE_POWERLINE_DIRECTORY}`
284
+ + ` && node -e "require('fs').writeFileSync('.env.sh',Buffer.from(process.argv[1],'base64').toString('utf8'))"`
285
+ + ` '${shellEscape(envFileContentBase64)}'`
286
+ + ` && chmod 600 .env.sh`);
287
+ }
288
+ // 2. Working directory
289
+ let startDirExpr;
290
+ if (workingDirectory) {
291
+ startDirExpr = workingDirectory;
292
+ }
293
+ else if (autoDetectWorkspace) {
294
+ // Detect /workspaces/*/ inline; fall back to PowerLine directory.
295
+ // Use ${WD:-default} so the exit code is always 0 ([ -z ] && ... would
296
+ // return 1 when WD is set, breaking the && chain).
297
+ parts.push(`WD=$(ls -d /workspaces/*/ 2>/dev/null | head -1 | sed "s/\\/$//");`
298
+ + ` WD=\${WD:-${REMOTE_POWERLINE_DIRECTORY}}`);
299
+ startDirExpr = "$WD";
300
+ }
301
+ else {
302
+ startDirExpr = REMOTE_POWERLINE_DIRECTORY;
303
+ }
304
+ // 3. Source env vars and spawn PowerLine as a detached process.
305
+ // Paths are passed as bash arguments (not embedded in the Node script)
306
+ // so that shell variables like $HOME and $WD are expanded by bash.
307
+ // The spawn script exits immediately — no SSH hanging.
308
+ const sourceEnv = envLines.length > 0
309
+ ? `. ${REMOTE_POWERLINE_DIRECTORY}/.env.sh && `
310
+ : "";
311
+ parts.push(`cd "${startDirExpr}" && ${sourceEnv}`
312
+ + `${SPAWN_SCRIPT} "${absoluteEntryPoint}" "${pidFilePath}" "${logFilePath}"`);
313
+ // 4. Probe (after a brief pause for the port to bind)
314
+ parts.push(`sleep ${POWERLINE_STARTUP_DELAY_MS / 1000} && ${PROBE_SCRIPT}`);
315
+ const compoundScript = probeFirstPrefix + parts.join(" && ");
316
+ try {
317
+ const stdout = await executor.exec(`bash -c '${shellEscape(compoundScript)}'`, { timeout: REMOTE_EXEC_DEFAULT_TIMEOUT_MS });
318
+ if (probeFirst && stdout.includes("__PL_ALIVE__")) {
319
+ logger.info("Remote PowerLine was already running on port %d", DEFAULT_POWERLINE_PORT);
320
+ return { alreadyRunning: true };
321
+ }
322
+ logger.info("Remote PowerLine is listening on port %d", DEFAULT_POWERLINE_PORT);
323
+ return { alreadyRunning: false };
324
+ }
325
+ catch (err) {
326
+ const detail = err instanceof Error ? err.message : String(err);
327
+ logger.info("Failed to start remote PowerLine: %s", detail);
328
+ throw new Error(`PowerLine process died immediately after starting. Check ~/.grackle/powerline.log on the remote host. Cause: ${detail}`);
329
+ }
330
+ }
159
331
  /**
160
332
  * Bootstrap the PowerLine on a remote host via the given executor.
161
333
  * Yields progress events for each stage of the process.
@@ -195,10 +367,8 @@ export async function* bootstrapPowerLine(executor, powerlineToken, extraEnv, wo
195
367
  }
196
368
  // 3. Install PowerLine — dev mode (copy artifacts) vs production (npm install)
197
369
  const devMode = isDevMode();
198
- let entryPoint;
199
370
  if (devMode) {
200
371
  // ── Dev mode: copy local monorepo artifacts ──
201
- entryPoint = "dist/index.js";
202
372
  yield { stage: "bootstrapping", message: "Creating remote directories...", progress: 0.20 };
203
373
  await executor.exec(`mkdir -p ${REMOTE_POWERLINE_DIRECTORY}/node_modules/@grackle-ai/common`, { timeout: REMOTE_EXEC_DEFAULT_TIMEOUT_MS });
204
374
  // Resolve local artifact paths relative to server's built location.
@@ -225,14 +395,13 @@ export async function* bootstrapPowerLine(executor, powerlineToken, extraEnv, wo
225
395
  }
226
396
  else {
227
397
  // ── Production mode: npm install from registry ──
228
- entryPoint = "node_modules/@grackle-ai/powerline/dist/index.js";
229
398
  const version = getPackageVersion();
230
399
  yield { stage: "bootstrapping", message: "Creating remote directories...", progress: 0.20 };
231
400
  await executor.exec(`mkdir -p ${REMOTE_POWERLINE_DIRECTORY}`, { timeout: REMOTE_EXEC_DEFAULT_TIMEOUT_MS });
232
401
  yield { stage: "bootstrapping", message: `Installing @grackle-ai/powerline@${version}...`, progress: 0.25 };
233
402
  await executor.exec(`cd ${REMOTE_POWERLINE_DIRECTORY} && npm init -y && npm install @grackle-ai/powerline@${version} --omit=dev`, { timeout: BOOTSTRAP_NPM_INSTALL_TIMEOUT_MS });
234
403
  }
235
- logger.info({ devMode, entryPoint }, "PowerLine bootstrap mode");
404
+ logger.info({ devMode }, "PowerLine bootstrap mode");
236
405
  // 7. Copy Claude Code credentials for subscription auth (if present on host).
237
406
  // Stored under the PowerLine directory so destroy() cleans them up.
238
407
  const hostCredsPath = join(homedir(), ".claude", ".credentials.json");
@@ -259,66 +428,9 @@ export async function* bootstrapPowerLine(executor, powerlineToken, extraEnv, wo
259
428
  catch {
260
429
  // Ignore — no process to kill
261
430
  }
262
- // 9. Write env vars to a file on the remote host, then source it at startup.
263
- // This avoids shell injection from values containing quotes or special chars.
264
- const envLines = [];
265
- if (powerlineToken) {
266
- envLines.push(`export GRACKLE_POWERLINE_TOKEN='${shellEscape(powerlineToken)}'`);
267
- }
268
- for (const varName of FORWARDED_ENV_VARS) {
269
- const value = process.env[varName];
270
- if (value) {
271
- envLines.push(`export ${varName}='${shellEscape(value)}'`);
272
- }
273
- }
274
- if (extraEnv) {
275
- for (const [key, value] of Object.entries(extraEnv)) {
276
- if (!ENV_VAR_NAME_PATTERN.test(key)) {
277
- logger.warn({ key }, "Skipping invalid env var name");
278
- continue;
279
- }
280
- envLines.push(`export ${key}='${shellEscape(value)}'`);
281
- }
282
- }
283
- if (envLines.length > 0) {
284
- const envFileContent = envLines.join("\n") + "\n";
285
- const envFileContentBase64 = Buffer.from(envFileContent, "utf8").toString("base64");
286
- await executor.exec(`cd ${REMOTE_POWERLINE_DIRECTORY} && node -e "require('fs').writeFileSync('.env.sh',Buffer.from(process.argv[1],'base64').toString('utf8'))" '${shellEscape(envFileContentBase64)}'`, { timeout: REMOTE_EXEC_DEFAULT_TIMEOUT_MS });
287
- await executor.exec(`chmod 600 ${REMOTE_POWERLINE_DIRECTORY}/.env.sh`, { timeout: REMOTE_EXEC_DEFAULT_TIMEOUT_MS });
288
- }
289
- // 10. Start PowerLine by sourcing the env file and backgrounding.
290
- // We avoid capturing $! because some transports (gh codespace ssh) exit
291
- // with code 255 when the shell backgrounds a process.
431
+ // 9–11. Write env vars, start process, wait, verify
292
432
  yield { stage: "bootstrapping", message: "Starting PowerLine on remote host...", progress: 0.65 };
293
- const sourceEnv = envLines.length > 0
294
- ? `. ${REMOTE_POWERLINE_DIRECTORY}/.env.sh && `
295
- : "";
296
- const startDir = workingDirectory || REMOTE_POWERLINE_DIRECTORY;
297
- const absoluteEntryPoint = `${REMOTE_POWERLINE_DIRECTORY}/${entryPoint}`;
298
- const startScript = `cd ${startDir}`
299
- + ` && ${sourceEnv}nohup node ${absoluteEntryPoint} --port=${DEFAULT_POWERLINE_PORT}`
300
- + ` > ~/.grackle/powerline.log 2>&1 & echo $! > ${REMOTE_POWERLINE_DIRECTORY}/powerline.pid`;
301
- try {
302
- await executor.exec(`bash -c '${shellEscape(startScript)}'`, { timeout: REMOTE_EXEC_DEFAULT_TIMEOUT_MS });
303
- }
304
- catch (err) {
305
- // Some SSH transports return non-zero when the session ends after backgrounding.
306
- // We'll verify the process is running below — only log the error.
307
- logger.debug({ err }, "Start command returned non-zero (expected with background process)");
308
- }
309
- // 11. Wait for process to stabilize, then verify port is listening
310
- yield { stage: "bootstrapping", message: "Waiting for PowerLine to start...", progress: 0.70 };
311
- await sleep(POWERLINE_STARTUP_DELAY_MS);
312
- // Verify the port is listening using a Node.js one-liner (pgrep may not be in PATH)
313
- try {
314
- await executor.exec(`node -e "const s=require('net').createConnection(${DEFAULT_POWERLINE_PORT},'127.0.0.1');\
315
- s.on('connect',()=>{s.destroy();process.exit(0)});\
316
- s.on('error',()=>process.exit(1))"`, { timeout: REMOTE_EXEC_DEFAULT_TIMEOUT_MS });
317
- logger.info("Remote PowerLine is listening on port %d", DEFAULT_POWERLINE_PORT);
318
- }
319
- catch {
320
- throw new Error("PowerLine process died immediately after starting. Check ~/.grackle/powerline.log on the remote host.");
321
- }
433
+ await startRemotePowerLine(executor, powerlineToken, { extraEnv, workingDirectory });
322
434
  yield { stage: "bootstrapping", message: "PowerLine is running on remote host", progress: 0.75 };
323
435
  }
324
436
  // ─── Connect Through Tunnel ────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"remote-adapter-utils.js","sourceRoot":"","sources":["../../src/adapters/remote-adapter-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote-adapter-utils.js","sourceRoot":"","sources":["../../src/adapters/remote-adapter-utils.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,16 @@ export declare class SshAdapter implements EnvironmentAdapter {
21
21
  type: string;
22
22
  /** Provision the remote host: test connectivity, bootstrap PowerLine, open tunnel. */
23
23
  provision(environmentId: string, config: Record<string, unknown>, powerlineToken: string): AsyncGenerator<ProvisionEvent>;
24
+ /**
25
+ * Attempt fast reconnect: probe PowerLine, restart if needed, re-open tunnel.
26
+ *
27
+ * Any failure (SSH unreachable, PowerLine won't start, tunnel error) throws
28
+ * and falls through to the caller, which should trigger a full provision.
29
+ *
30
+ * Minimizes SSH round trips — probe and conditional restart run in a single
31
+ * SSH call via `startRemotePowerLine({ probeFirst: true })`.
32
+ */
33
+ reconnect(environmentId: string, config: Record<string, unknown>, powerlineToken: string): AsyncGenerator<ProvisionEvent>;
24
34
  /** Connect to the PowerLine through the SSH tunnel. */
25
35
  connect(environmentId: string, config: Record<string, unknown>, powerlineToken: string): Promise<PowerLineConnection>;
26
36
  /** Close the SSH tunnel without stopping the remote PowerLine. */
@@ -1 +1 @@
1
- {"version":3,"file":"ssh.d.ts","sourceRoot":"","sources":["../../src/adapters/ssh.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAuBnH,8CAA8C;AAC9C,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IACjE,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAkFD,mFAAmF;AACnF,qBAAa,UAAW,YAAW,kBAAkB;IAC5C,IAAI,EAAE,MAAM,CAAS;IAE5B,sFAAsF;IACxE,SAAS,CACrB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,cAAc,CAAC,cAAc,CAAC;IA8BjC,uDAAuD;IAC1C,OAAO,CAClB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,mBAAmB,CAAC;IAQ/B,kEAAkE;IACrD,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,8DAA8D;IACjD,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxF,yEAAyE;IAC5D,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3F,2EAA2E;IAC9D,WAAW,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CAG5E"}
1
+ {"version":3,"file":"ssh.d.ts","sourceRoot":"","sources":["../../src/adapters/ssh.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAwBnH,8CAA8C;AAC9C,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IACjE,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAkFD,mFAAmF;AACnF,qBAAa,UAAW,YAAW,kBAAkB;IAC5C,IAAI,EAAE,MAAM,CAAS;IAE5B,sFAAsF;IACxE,SAAS,CACrB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,cAAc,CAAC,cAAc,CAAC;IA8BjC;;;;;;;;OAQG;IACW,SAAS,CACrB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,cAAc,CAAC,cAAc,CAAC;IAgCjC,uDAAuD;IAC1C,OAAO,CAClB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,mBAAmB,CAAC;IAQ/B,kEAAkE;IACrD,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,8DAA8D;IACjD,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxF,yEAAyE;IAC5D,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3F,2EAA2E;IAC9D,WAAW,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CAG5E"}
@@ -1,5 +1,5 @@
1
1
  import { DEFAULT_POWERLINE_PORT } from "@grackle-ai/common";
2
- import { ProcessTunnel, bootstrapPowerLine, connectThroughTunnel, registerTunnel, getTunnel, closeTunnel, findFreePort, remoteStop, remoteDestroy, remoteHealthCheck, SSH_CONNECTIVITY_TIMEOUT_MS, REMOTE_EXEC_DEFAULT_TIMEOUT_MS, } from "./remote-adapter-utils.js";
2
+ import { ProcessTunnel, bootstrapPowerLine, connectThroughTunnel, registerTunnel, getTunnel, closeTunnel, findFreePort, remoteStop, remoteDestroy, remoteHealthCheck, startRemotePowerLine, SSH_CONNECTIVITY_TIMEOUT_MS, REMOTE_EXEC_DEFAULT_TIMEOUT_MS, } from "./remote-adapter-utils.js";
3
3
  import { exec } from "../utils/exec.js";
4
4
  const REMOTE_COPY_TIMEOUT_MS = 120_000;
5
5
  // ─── SSH Helpers ────────────────────────────────────────────
@@ -97,6 +97,41 @@ export class SshAdapter {
97
97
  registerTunnel(environmentId, { tunnel });
98
98
  yield { stage: "connecting", message: `Tunnel open, connecting on port ${localPort}...`, progress: 0.90 };
99
99
  }
100
+ /**
101
+ * Attempt fast reconnect: probe PowerLine, restart if needed, re-open tunnel.
102
+ *
103
+ * Any failure (SSH unreachable, PowerLine won't start, tunnel error) throws
104
+ * and falls through to the caller, which should trigger a full provision.
105
+ *
106
+ * Minimizes SSH round trips — probe and conditional restart run in a single
107
+ * SSH call via `startRemotePowerLine({ probeFirst: true })`.
108
+ */
109
+ async *reconnect(environmentId, config, powerlineToken) {
110
+ const cfg = config;
111
+ if (!cfg.host) {
112
+ throw new Error("SSH adapter requires a 'host' in the configuration");
113
+ }
114
+ const executor = new SshExecutor(cfg);
115
+ // 1. Close any stale tunnel
116
+ yield { stage: "reconnecting", message: "Closing stale tunnel...", progress: 0.10 };
117
+ await closeTunnel(environmentId);
118
+ // 2. Probe + conditional restart in a single SSH call.
119
+ yield { stage: "reconnecting", message: `Checking PowerLine on ${cfg.host}...`, progress: 0.30 };
120
+ const { alreadyRunning } = await startRemotePowerLine(executor, powerlineToken, {
121
+ extraEnv: cfg.env,
122
+ probeFirst: true,
123
+ });
124
+ if (!alreadyRunning) {
125
+ yield { stage: "reconnecting", message: "PowerLine restarted", progress: 0.50 };
126
+ }
127
+ // 3. Open new SSH tunnel
128
+ const localPort = cfg.localPort || await findFreePort();
129
+ yield { stage: "reconnecting", message: `Opening SSH tunnel on local port ${localPort}...`, progress: 0.70 };
130
+ const tunnel = new SshTunnel(localPort, cfg);
131
+ await tunnel.open();
132
+ registerTunnel(environmentId, { tunnel });
133
+ yield { stage: "reconnecting", message: "Reconnected via SSH", progress: 0.90 };
134
+ }
100
135
  /** Connect to the PowerLine through the SSH tunnel. */
101
136
  async connect(environmentId, config, powerlineToken) {
102
137
  const state = getTunnel(environmentId);
@@ -1 +1 @@
1
- {"version":3,"file":"ssh.js","sourceRoot":"","sources":["../../src/adapters/ssh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ssh.js","sourceRoot":"","sources":["../../src/adapters/ssh.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-service.d.ts","sourceRoot":"","sources":["../src/grpc-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAwGzD,iFAAiF;AACjF,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAqkBjE"}
1
+ {"version":3,"file":"grpc-service.d.ts","sourceRoot":"","sources":["../src/grpc-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAyGzD,iFAAiF;AACjF,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAukBjE"}
@@ -4,6 +4,7 @@ import { v4 as uuid } from "uuid";
4
4
  import * as envRegistry from "./env-registry.js";
5
5
  import * as sessionStore from "./session-store.js";
6
6
  import * as adapterManager from "./adapter-manager.js";
7
+ import { reconnectOrProvision } from "./adapters/adapter.js";
7
8
  import * as streamHub from "./stream-hub.js";
8
9
  import * as tokenBroker from "./token-broker.js";
9
10
  import * as projectStore from "./project-store.js";
@@ -145,7 +146,7 @@ export function registerGrackleRoutes(router) {
145
146
  envRegistry.updateEnvironmentStatus(req.id, "connecting");
146
147
  const config = JSON.parse(env.adapterConfig);
147
148
  const powerlineToken = env.powerlineToken || "";
148
- for await (const event of adapter.provision(req.id, config, powerlineToken)) {
149
+ for await (const event of reconnectOrProvision(req.id, adapter, config, powerlineToken, !!env.bootstrapped)) {
149
150
  yield create(grackle.ProvisionEventSchema, {
150
151
  stage: event.stage,
151
152
  message: event.message,
@@ -158,6 +159,7 @@ export function registerGrackleRoutes(router) {
158
159
  // Push stored tokens to newly connected environment
159
160
  await tokenBroker.pushToEnv(req.id);
160
161
  envRegistry.updateEnvironmentStatus(req.id, "connected");
162
+ envRegistry.markBootstrapped(req.id);
161
163
  yield create(grackle.ProvisionEventSchema, {
162
164
  stage: "ready",
163
165
  message: "Environment connected",
@@ -424,7 +426,7 @@ export function registerGrackleRoutes(router) {
424
426
  const task = taskStore.getTask(req.taskId);
425
427
  if (!task)
426
428
  throw new Error(`Task not found: ${req.taskId}`);
427
- if (!["pending", "assigned"].includes(task.status)) {
429
+ if (!["pending", "assigned", "failed"].includes(task.status)) {
428
430
  throw new Error(`Task ${req.taskId} cannot be started (status: ${task.status})`);
429
431
  }
430
432
  if (!taskStore.areDependenciesMet(req.taskId)) {
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-service.js","sourceRoot":"","sources":["../src/grpc-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grpc-service.js","sourceRoot":"","sources":["../src/grpc-service.ts"],"names":[],"mappings":"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"}
package/dist/ws-bridge.js CHANGED
@@ -4,6 +4,7 @@ import { grackle, powerline } from "@grackle-ai/common";
4
4
  import * as envRegistry from "./env-registry.js";
5
5
  import * as sessionStore from "./session-store.js";
6
6
  import * as adapterManager from "./adapter-manager.js";
7
+ import { reconnectOrProvision } from "./adapters/adapter.js";
7
8
  import * as streamHub from "./stream-hub.js";
8
9
  import * as tokenBroker from "./token-broker.js";
9
10
  import * as projectStore from "./project-store.js";
@@ -115,7 +116,7 @@ async function autoProvisionEnvironment(ws, environmentId, env, logContext) {
115
116
  try {
116
117
  const config = safeParseAdapterConfig(env.adapterConfig, environmentId);
117
118
  const powerlineToken = env.powerlineToken || "";
118
- for await (const provEvent of adapter.provision(environmentId, config, powerlineToken)) {
119
+ for await (const provEvent of reconnectOrProvision(environmentId, adapter, config, powerlineToken, !!env.bootstrapped)) {
119
120
  logger.info({ environmentId, stage: provEvent.stage, ...logContext }, "Auto-provision progress");
120
121
  broadcast({
121
122
  type: "provision_progress",
@@ -127,6 +128,7 @@ async function autoProvisionEnvironment(ws, environmentId, env, logContext) {
127
128
  // Push stored tokens to newly connected environment
128
129
  await tokenBroker.pushToEnv(environmentId);
129
130
  envRegistry.updateEnvironmentStatus(environmentId, "connected");
131
+ envRegistry.markBootstrapped(environmentId);
130
132
  broadcastEnvironments();
131
133
  logger.info({ environmentId, ...logContext }, "Auto-provision complete");
132
134
  broadcast({
@@ -455,7 +457,7 @@ async function handleMessage(ws, msg, subscriptions) {
455
457
  sendWs(ws, { type: "error", payload: { message: `Task not found: ${taskId}` } });
456
458
  return;
457
459
  }
458
- if (!["pending", "assigned"].includes(task.status)) {
460
+ if (!["pending", "assigned", "failed"].includes(task.status)) {
459
461
  sendWs(ws, { type: "error", payload: { message: `Task cannot be started (status: ${task.status})` } });
460
462
  return;
461
463
  }
@@ -669,8 +671,7 @@ async function handleMessage(ws, msg, subscriptions) {
669
671
  try {
670
672
  const config = safeParseAdapterConfig(env.adapterConfig, environmentId);
671
673
  const powerlineToken = env.powerlineToken || "";
672
- logger.info({ environmentId, config }, "Starting adapter.provision");
673
- for await (const event of adapter.provision(environmentId, config, powerlineToken)) {
674
+ for await (const event of reconnectOrProvision(environmentId, adapter, config, powerlineToken, !!env.bootstrapped)) {
674
675
  logger.info({ environmentId, stage: event.stage, message: event.message }, "Provision progress");
675
676
  broadcast({
676
677
  type: "provision_progress",
@@ -683,6 +684,7 @@ async function handleMessage(ws, msg, subscriptions) {
683
684
  // Push stored tokens to newly connected environment
684
685
  await tokenBroker.pushToEnv(environmentId);
685
686
  envRegistry.updateEnvironmentStatus(environmentId, "connected");
687
+ envRegistry.markBootstrapped(environmentId);
686
688
  logger.info({ environmentId }, "Environment connected");
687
689
  broadcast({
688
690
  type: "provision_progress",
@@ -1 +1 @@
1
- {"version":3,"file":"ws-bridge.js","sourceRoot":"","sources":["../src/ws-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ws-bridge.js","sourceRoot":"","sources":["../src/ws-bridge.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grackle-ai/server",
3
- "version": "0.14.3",
3
+ "version": "0.14.5",
4
4
  "description": "Central gRPC server with SQLite storage and WebSocket bridge for Grackle",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -33,8 +33,8 @@
33
33
  "pino": "^10.3.1",
34
34
  "uuid": "^11.0.0",
35
35
  "ws": "^8.0.0",
36
- "@grackle-ai/common": "0.14.3",
37
- "@grackle-ai/web": "0.14.3"
36
+ "@grackle-ai/common": "0.14.5",
37
+ "@grackle-ai/web": "0.14.5"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@rushstack/heft": "1.2.4",