@openkaiden/opnshll-sdk 0.1.3 → 0.1.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.
- package/dist/client.d.ts +109 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +184 -5
- package/dist/client.js.map +1 -1
- package/dist/gen/openshell_pb.d.ts +717 -14
- package/dist/gen/openshell_pb.d.ts.map +1 -1
- package/dist/gen/openshell_pb.js +279 -148
- package/dist/gen/openshell_pb.js.map +1 -1
- package/dist/gen/options_pb.d.ts +2 -1
- package/dist/gen/options_pb.d.ts.map +1 -1
- package/dist/gen/options_pb.js.map +1 -1
- package/dist/gen/sandbox_pb.d.ts +95 -2
- package/dist/gen/sandbox_pb.d.ts.map +1 -1
- package/dist/gen/sandbox_pb.js +9 -4
- package/dist/gen/sandbox_pb.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/providers.d.ts +38 -0
- package/dist/providers.d.ts.map +1 -0
- package/dist/providers.js +78 -0
- package/dist/providers.js.map +1 -0
- package/package.json +3 -3
package/dist/client.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import type { SandboxWorkloadTemplate } from './gen/openshell_pb.js';
|
|
|
5
5
|
import { type ExecSandboxInputSchema, OpenShell, SandboxPhase, type SandboxSpecSchema, type SandboxWorkloadTemplateSchema, ServiceStatus, type TcpForwardFrameSchema } from './gen/openshell_pb.js';
|
|
6
6
|
import type { SandboxPolicy, SettingValue } from './gen/sandbox_pb.js';
|
|
7
7
|
import { PolicySource, type SandboxPolicySchema, SettingScope, type SettingValueSchema } from './gen/sandbox_pb.js';
|
|
8
|
+
import { ProviderClient } from './providers.js';
|
|
8
9
|
import { type ConnectOptions } from './transport.js';
|
|
9
10
|
export type { SandboxResources, SandboxServiceLevel, SandboxStartup, SandboxWorkloadConfig, SandboxWorkloadTemplate, SandboxWorkloadTemplateSpec, } from './gen/openshell_pb.js';
|
|
10
11
|
export type { SandboxPolicy, SettingValue } from './gen/sandbox_pb.js';
|
|
@@ -114,6 +115,8 @@ export interface SandboxRef {
|
|
|
114
115
|
/** Service URLs returned by creation, keyed by service name. */
|
|
115
116
|
serviceUrls: Record<string, string>;
|
|
116
117
|
restartCount: number;
|
|
118
|
+
/** Creation time in epoch milliseconds; absent when the gateway omits it. */
|
|
119
|
+
createdAtMs?: number;
|
|
117
120
|
nextRestartAtMs?: number;
|
|
118
121
|
mainProcessStartedAtMs?: number;
|
|
119
122
|
}
|
|
@@ -227,6 +230,68 @@ export interface ExecInteractiveSessionControl extends ExecInteractiveSession {
|
|
|
227
230
|
/** Observed process exit, retained even if final RPC completion fails. */
|
|
228
231
|
readonly exitCode: number | undefined;
|
|
229
232
|
}
|
|
233
|
+
/** A curated log line delivered by `watchLogs`. */
|
|
234
|
+
export interface LogLine {
|
|
235
|
+
sandboxId: string;
|
|
236
|
+
/** Milliseconds since epoch. 0 if the wire timestamp was absent or unrepresentable. */
|
|
237
|
+
timestampMs: number;
|
|
238
|
+
level: string;
|
|
239
|
+
target: string;
|
|
240
|
+
message: string;
|
|
241
|
+
/** Log source (e.g. `'gateway'`, `'sandbox'`). An empty wire value is normalized to `'gateway'`. */
|
|
242
|
+
source: string;
|
|
243
|
+
fields: Record<string, string>;
|
|
244
|
+
}
|
|
245
|
+
/** A curated platform (compute-backend) event delivered by `watchLogs`. */
|
|
246
|
+
export interface PlatformEvent {
|
|
247
|
+
/** Milliseconds since epoch. 0 if the wire timestamp was absent or unrepresentable. */
|
|
248
|
+
timestampMs: number;
|
|
249
|
+
source: string;
|
|
250
|
+
type: string;
|
|
251
|
+
reason: string;
|
|
252
|
+
message: string;
|
|
253
|
+
metadata: Record<string, string>;
|
|
254
|
+
}
|
|
255
|
+
export interface WatchLogEvent {
|
|
256
|
+
kind: 'log';
|
|
257
|
+
line: LogLine;
|
|
258
|
+
/** Opaque high-water-mark cursor. Feed back as `WatchOptions.resumeAfterCursor` to resume. */
|
|
259
|
+
cursor: string;
|
|
260
|
+
}
|
|
261
|
+
export interface WatchPlatformEvent {
|
|
262
|
+
kind: 'event';
|
|
263
|
+
event: PlatformEvent;
|
|
264
|
+
/** Opaque high-water-mark cursor. Feed back as `WatchOptions.resumeAfterCursor` to resume. */
|
|
265
|
+
cursor: string;
|
|
266
|
+
}
|
|
267
|
+
/** Recoverable server-side loss notice. The stream continues; never advances the cursor. */
|
|
268
|
+
export interface WatchWarningEvent {
|
|
269
|
+
kind: 'warning';
|
|
270
|
+
message: string;
|
|
271
|
+
}
|
|
272
|
+
/** One item from `watchLogs`. Discriminate on `kind`. */
|
|
273
|
+
export type WatchEvent = WatchLogEvent | WatchPlatformEvent | WatchWarningEvent;
|
|
274
|
+
export interface WatchOptions extends SandboxWorkspaceOptions {
|
|
275
|
+
/** Stream server/supervisor log lines. Defaults to `true` when neither this nor `followEvents` is set. */
|
|
276
|
+
followLogs?: boolean;
|
|
277
|
+
/** Stream platform (compute-backend) events. */
|
|
278
|
+
followEvents?: boolean;
|
|
279
|
+
/** Restrict to these log sources (e.g. `'gateway'`, `'sandbox'`). Omit or empty for no filter. */
|
|
280
|
+
logSources?: string[];
|
|
281
|
+
/** Minimum log level to include (e.g. `'INFO'`, `'WARN'`, `'ERROR'`). Omit for no filter. */
|
|
282
|
+
logMinLevel?: string;
|
|
283
|
+
/**
|
|
284
|
+
* Opaque cursor to resume after, taken from a previous `WatchEvent`'s `cursor`.
|
|
285
|
+
* Omit or leave empty to start from the tail. Do not construct or parse one.
|
|
286
|
+
*/
|
|
287
|
+
resumeAfterCursor?: string;
|
|
288
|
+
/** Replay the last N log lines (best-effort) before following. */
|
|
289
|
+
logTailLines?: number;
|
|
290
|
+
/** Replay the last N platform events (best-effort) before following. */
|
|
291
|
+
eventTail?: number;
|
|
292
|
+
/** Abort the watch (including any pending reconnect backoff) early. */
|
|
293
|
+
signal?: AbortSignal;
|
|
294
|
+
}
|
|
230
295
|
/** Cancellation for the poll-based wait helpers. */
|
|
231
296
|
export interface WaitOptions extends SandboxWorkspaceOptions {
|
|
232
297
|
/** Abort the wait (and the in-flight poll RPC) early. */
|
|
@@ -323,6 +388,12 @@ export declare const PHASE_NAMES: Record<SandboxPhase, SandboxPhaseName>;
|
|
|
323
388
|
export declare const STATUS_NAMES: Record<ServiceStatus, HealthStatus>;
|
|
324
389
|
export declare const SCOPE_NAMES: Record<SettingScope, SettingScopeName>;
|
|
325
390
|
export declare const POLICY_SOURCE_NAMES: Record<PolicySource, PolicySourceName>;
|
|
391
|
+
/**
|
|
392
|
+
* Test-only seam for the `watchLogs` reconnect backoff delay. Not part of the
|
|
393
|
+
* public API surface — not re-exported from index.ts. Call with no argument
|
|
394
|
+
* to restore the real timer-based sleep.
|
|
395
|
+
*/
|
|
396
|
+
export declare function __setWatchLogsBackoffSleepForTests(fn?: (delayMs: number, signal?: AbortSignal) => Promise<void>): void;
|
|
326
397
|
export declare class Pushable<T> implements AsyncIterable<T> {
|
|
327
398
|
private readonly queue;
|
|
328
399
|
private readonly waiting;
|
|
@@ -505,6 +576,11 @@ export declare class SandboxTemplateClient {
|
|
|
505
576
|
input: typeof import("./gen/openshell_pb.js").GetProviderRequestSchema;
|
|
506
577
|
output: typeof import("./gen/openshell_pb.js").ProviderResponseSchema;
|
|
507
578
|
};
|
|
579
|
+
getProviderCredentials: {
|
|
580
|
+
methodKind: "unary";
|
|
581
|
+
input: typeof import("./gen/openshell_pb.js").GetProviderCredentialsRequestSchema;
|
|
582
|
+
output: typeof import("./gen/openshell_pb.js").GetProviderCredentialsResponseSchema;
|
|
583
|
+
};
|
|
508
584
|
listProviders: {
|
|
509
585
|
methodKind: "unary";
|
|
510
586
|
input: typeof import("./gen/openshell_pb.js").ListProvidersRequestSchema;
|
|
@@ -675,6 +751,11 @@ export declare class SandboxTemplateClient {
|
|
|
675
751
|
input: typeof import("./gen/openshell_pb.js").GetSandboxProviderStatusRequestSchema;
|
|
676
752
|
output: typeof import("./gen/openshell_pb.js").GetSandboxProviderStatusResponseSchema;
|
|
677
753
|
};
|
|
754
|
+
peerNotifyConfigUpdate: {
|
|
755
|
+
methodKind: "unary";
|
|
756
|
+
input: typeof import("./gen/openshell_pb.js").PeerNotifyConfigUpdateRequestSchema;
|
|
757
|
+
output: typeof import("./gen/openshell_pb.js").PeerNotifyConfigUpdateResponseSchema;
|
|
758
|
+
};
|
|
678
759
|
watchSandbox: {
|
|
679
760
|
methodKind: "server_streaming";
|
|
680
761
|
input: typeof import("./gen/openshell_pb.js").WatchSandboxRequestSchema;
|
|
@@ -935,6 +1016,11 @@ export declare class SandboxClient {
|
|
|
935
1016
|
input: typeof import("./gen/openshell_pb.js").GetProviderRequestSchema;
|
|
936
1017
|
output: typeof import("./gen/openshell_pb.js").ProviderResponseSchema;
|
|
937
1018
|
};
|
|
1019
|
+
getProviderCredentials: {
|
|
1020
|
+
methodKind: "unary";
|
|
1021
|
+
input: typeof import("./gen/openshell_pb.js").GetProviderCredentialsRequestSchema;
|
|
1022
|
+
output: typeof import("./gen/openshell_pb.js").GetProviderCredentialsResponseSchema;
|
|
1023
|
+
};
|
|
938
1024
|
listProviders: {
|
|
939
1025
|
methodKind: "unary";
|
|
940
1026
|
input: typeof import("./gen/openshell_pb.js").ListProvidersRequestSchema;
|
|
@@ -1105,6 +1191,11 @@ export declare class SandboxClient {
|
|
|
1105
1191
|
input: typeof import("./gen/openshell_pb.js").GetSandboxProviderStatusRequestSchema;
|
|
1106
1192
|
output: typeof import("./gen/openshell_pb.js").GetSandboxProviderStatusResponseSchema;
|
|
1107
1193
|
};
|
|
1194
|
+
peerNotifyConfigUpdate: {
|
|
1195
|
+
methodKind: "unary";
|
|
1196
|
+
input: typeof import("./gen/openshell_pb.js").PeerNotifyConfigUpdateRequestSchema;
|
|
1197
|
+
output: typeof import("./gen/openshell_pb.js").PeerNotifyConfigUpdateResponseSchema;
|
|
1198
|
+
};
|
|
1108
1199
|
watchSandbox: {
|
|
1109
1200
|
methodKind: "server_streaming";
|
|
1110
1201
|
input: typeof import("./gen/openshell_pb.js").WatchSandboxRequestSchema;
|
|
@@ -1217,6 +1308,22 @@ export declare class SandboxClient {
|
|
|
1217
1308
|
waitDeleted(name: string, timeoutSecs: number, options?: WaitDeletedOptions | null): Promise<void>;
|
|
1218
1309
|
execStream(name: string, command: string[], options?: ExecOptions | null): AsyncGenerator<ExecStreamEvent, void, void>;
|
|
1219
1310
|
exec(name: string, command: string[], options?: ExecOptions | null): Promise<ExecResult>;
|
|
1311
|
+
/**
|
|
1312
|
+
* Watch a sandbox's log lines and platform events with loss-aware resume.
|
|
1313
|
+
*
|
|
1314
|
+
* Reconnects transparently on a transient stream drop, resuming from the
|
|
1315
|
+
* highest cursor already delivered. A recoverable server-side lag surfaces
|
|
1316
|
+
* as a `{ kind: 'warning' }` item and the stream continues.
|
|
1317
|
+
*
|
|
1318
|
+
* An `SdkError` with `connectCode === Code.OutOfRange` is terminal and not
|
|
1319
|
+
* retried: the resume point is gone (trimmed from the buffer, or issued by a
|
|
1320
|
+
* cursor space the gateway no longer has), so events between it and now are
|
|
1321
|
+
* unrecoverable. Auto-restarting from scratch would hide that loss, which is
|
|
1322
|
+
* exactly what this method exists to surface. Callers who accept the gap can
|
|
1323
|
+
* start a new watch with an empty `resumeAfterCursor`; retrying the same
|
|
1324
|
+
* cursor fails identically.
|
|
1325
|
+
*/
|
|
1326
|
+
watchLogs(name: string, options?: WatchOptions | null): AsyncGenerator<WatchEvent, void, void>;
|
|
1220
1327
|
execInteractive(name: string, command: string[], options?: ExecInteractiveOptions | null): Promise<ExecInteractiveSessionControl>;
|
|
1221
1328
|
forward(name: string, opts: ForwardOptions): Promise<ForwardHandle>;
|
|
1222
1329
|
private forwardConnection;
|
|
@@ -1237,6 +1344,8 @@ export declare class OpenShellClient {
|
|
|
1237
1344
|
readonly sandbox: SandboxClient;
|
|
1238
1345
|
/** Reusable sandbox workload template lifecycle. */
|
|
1239
1346
|
readonly sandboxTemplates: SandboxTemplateClient;
|
|
1347
|
+
/** Privileged provider credential retrieval; requires direct operator mTLS. */
|
|
1348
|
+
readonly providers: ProviderClient;
|
|
1240
1349
|
/**
|
|
1241
1350
|
* Advanced escape hatch: a generated client for every gateway RPC, including
|
|
1242
1351
|
* surface the curated sub-clients do not wrap yet (gateway config, provider
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
import * as net from 'node:net';
|
|
4
4
|
import { durationFromMs } from '@bufbuild/protobuf/wkt';
|
|
5
|
-
import { createClient } from '@connectrpc/connect';
|
|
5
|
+
import { Code, createClient } from '@connectrpc/connect';
|
|
6
6
|
import { errorCode, fromConnect, SdkError } from './errors.js';
|
|
7
7
|
import { OpenShell, ServiceAuthorizationMode as ProtoServiceAuthorizationMode, SandboxPhase, SandboxRestartPolicy, ServiceStatus, } from './gen/openshell_pb.js';
|
|
8
8
|
import { PolicySource, SettingScope } from './gen/sandbox_pb.js';
|
|
9
|
+
import { ProviderClient } from './providers.js';
|
|
9
10
|
import { validateSshResponse } from './ssh-validate.js';
|
|
10
11
|
import { buildTransport } from './transport.js';
|
|
11
12
|
function durationFromSeconds(seconds) {
|
|
@@ -14,12 +15,24 @@ function durationFromSeconds(seconds) {
|
|
|
14
15
|
}
|
|
15
16
|
return seconds === 0 ? undefined : durationFromMs(seconds * 1000);
|
|
16
17
|
}
|
|
18
|
+
// Distinct from timestampMillis(): LogLine/PlatformEvent timestamps are
|
|
19
|
+
// always-present numbers that default to 0 when absent or unrepresentable,
|
|
20
|
+
// not an optional string field like expiresAtMs.
|
|
21
|
+
function eventTimeMillis(timestamp) {
|
|
22
|
+
if (!timestamp)
|
|
23
|
+
return 0;
|
|
24
|
+
return Number(timestamp.seconds * 1000n + BigInt(Math.trunc(timestamp.nanos / 1_000_000)));
|
|
25
|
+
}
|
|
17
26
|
function timestampMillis(timestamp) {
|
|
18
27
|
if (!timestamp)
|
|
19
28
|
return undefined;
|
|
20
29
|
const millis = timestamp.seconds * 1000n + BigInt(Math.trunc(timestamp.nanos / 1_000_000));
|
|
21
30
|
return millis === 0n ? undefined : millis.toString();
|
|
22
31
|
}
|
|
32
|
+
function timestampEpochMs(timestamp) {
|
|
33
|
+
const millis = timestampMillis(timestamp);
|
|
34
|
+
return millis ? Number(millis) : undefined;
|
|
35
|
+
}
|
|
23
36
|
export { errorCode };
|
|
24
37
|
function deletionResult(response) {
|
|
25
38
|
const names = {
|
|
@@ -108,8 +121,6 @@ function sandboxRef(sandbox, serviceUrls = {}) {
|
|
|
108
121
|
if (!meta?.id || !meta.name) {
|
|
109
122
|
throw new SdkError('invalid_config', 'sandbox metadata.id and metadata.name are required in gateway responses');
|
|
110
123
|
}
|
|
111
|
-
const nextRestartAtMs = timestampMillis(sandbox.status?.nextRestartTime);
|
|
112
|
-
const mainProcessStartedAtMs = timestampMillis(sandbox.status?.mainProcessStartedTime);
|
|
113
124
|
return {
|
|
114
125
|
id: meta.id,
|
|
115
126
|
name: meta.name,
|
|
@@ -128,8 +139,9 @@ function sandboxRef(sandbox, serviceUrls = {}) {
|
|
|
128
139
|
: undefined,
|
|
129
140
|
serviceUrls,
|
|
130
141
|
restartCount: sandbox.status?.restartCount ?? 0,
|
|
131
|
-
|
|
132
|
-
|
|
142
|
+
createdAtMs: timestampEpochMs(meta.createdTime),
|
|
143
|
+
nextRestartAtMs: timestampEpochMs(sandbox.status?.nextRestartTime),
|
|
144
|
+
mainProcessStartedAtMs: timestampEpochMs(sandbox.status?.mainProcessStartedTime),
|
|
133
145
|
};
|
|
134
146
|
}
|
|
135
147
|
function sandboxTemplate(template) {
|
|
@@ -256,6 +268,91 @@ function waitSleep(delayMs, deadline, signal) {
|
|
|
256
268
|
signal.addEventListener('abort', onAbort, { once: true });
|
|
257
269
|
});
|
|
258
270
|
}
|
|
271
|
+
// Reconnect backoff for watchLogs: uncapped deadline, just a capped delay
|
|
272
|
+
// interruptible by the caller signal. Distinct from waitSleep, which is
|
|
273
|
+
// deadline-bounded for poll loops.
|
|
274
|
+
function defaultWatchLogsBackoffSleep(delayMs, signal) {
|
|
275
|
+
return new Promise((resolve, reject) => {
|
|
276
|
+
const timer = setTimeout(() => {
|
|
277
|
+
signal?.removeEventListener('abort', onAbort);
|
|
278
|
+
resolve();
|
|
279
|
+
}, delayMs);
|
|
280
|
+
const onAbort = () => {
|
|
281
|
+
clearTimeout(timer);
|
|
282
|
+
reject(new SdkError('canceled', 'watchLogs aborted'));
|
|
283
|
+
};
|
|
284
|
+
if (signal)
|
|
285
|
+
signal.addEventListener('abort', onAbort, { once: true });
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
let watchLogsBackoffSleep = defaultWatchLogsBackoffSleep;
|
|
289
|
+
/**
|
|
290
|
+
* Test-only seam for the `watchLogs` reconnect backoff delay. Not part of the
|
|
291
|
+
* public API surface — not re-exported from index.ts. Call with no argument
|
|
292
|
+
* to restore the real timer-based sleep.
|
|
293
|
+
*/
|
|
294
|
+
export function __setWatchLogsBackoffSleepForTests(fn) {
|
|
295
|
+
watchLogsBackoffSleep = fn ?? defaultWatchLogsBackoffSleep;
|
|
296
|
+
}
|
|
297
|
+
// Only Unavailable (connection drop, gateway restart) is retryable. Every
|
|
298
|
+
// other status — including OUT_OF_RANGE — is terminal so the caller sees it
|
|
299
|
+
// instead of the loop silently restarting from an empty cursor and hiding a gap.
|
|
300
|
+
function isRetryableWatchLogsError(err) {
|
|
301
|
+
return err.connectCode === Code.Unavailable;
|
|
302
|
+
}
|
|
303
|
+
function toLogLine(value) {
|
|
304
|
+
return {
|
|
305
|
+
sandboxId: value.sandboxId,
|
|
306
|
+
timestampMs: eventTimeMillis(value.eventTime),
|
|
307
|
+
level: value.level,
|
|
308
|
+
target: value.target,
|
|
309
|
+
message: value.message,
|
|
310
|
+
source: value.source || 'gateway',
|
|
311
|
+
fields: { ...value.fields },
|
|
312
|
+
};
|
|
313
|
+
}
|
|
314
|
+
function toPlatformEvent(value) {
|
|
315
|
+
return {
|
|
316
|
+
timestampMs: eventTimeMillis(value.eventTime),
|
|
317
|
+
source: value.source,
|
|
318
|
+
type: value.type,
|
|
319
|
+
reason: value.reason,
|
|
320
|
+
message: value.message,
|
|
321
|
+
metadata: { ...value.metadata },
|
|
322
|
+
};
|
|
323
|
+
}
|
|
324
|
+
// Converts one wire watch event into a curated WatchEvent, returning the
|
|
325
|
+
// (possibly advanced) cursor alongside it. `cursor` is a high-water mark, not
|
|
326
|
+
// "last seen": the gateway reads the log and platform sources independently
|
|
327
|
+
// during live delivery, so arrival order can differ from cursor order. Taking
|
|
328
|
+
// the max keeps the resume point monotonic; assigning directly would let a
|
|
329
|
+
// later lower-cursor event rewind it and replay already-delivered events after
|
|
330
|
+
// a reconnect. The comparison is a plain byte-wise string compare on an opaque
|
|
331
|
+
// token — well defined only because both cursors come from the same stream.
|
|
332
|
+
function convertWatchEvent(wireEvent, cursor) {
|
|
333
|
+
switch (wireEvent.payload.case) {
|
|
334
|
+
case 'log': {
|
|
335
|
+
const next = wireEvent.cursor > cursor ? wireEvent.cursor : cursor;
|
|
336
|
+
return {
|
|
337
|
+
event: { kind: 'log', line: toLogLine(wireEvent.payload.value), cursor: wireEvent.cursor },
|
|
338
|
+
cursor: next,
|
|
339
|
+
};
|
|
340
|
+
}
|
|
341
|
+
case 'event': {
|
|
342
|
+
const next = wireEvent.cursor > cursor ? wireEvent.cursor : cursor;
|
|
343
|
+
return {
|
|
344
|
+
event: { kind: 'event', event: toPlatformEvent(wireEvent.payload.value), cursor: wireEvent.cursor },
|
|
345
|
+
cursor: next,
|
|
346
|
+
};
|
|
347
|
+
}
|
|
348
|
+
case 'warning':
|
|
349
|
+
return { event: { kind: 'warning', message: wireEvent.payload.value.message }, cursor };
|
|
350
|
+
default:
|
|
351
|
+
// Sandbox snapshots and draft-policy updates are not part of this
|
|
352
|
+
// curated log/event stream.
|
|
353
|
+
return { cursor };
|
|
354
|
+
}
|
|
355
|
+
}
|
|
259
356
|
// Wait for a socket to drain before writing more. Resolves on 'drain', and
|
|
260
357
|
// also on 'close'/'error' so a pending await never leaks when the socket is
|
|
261
358
|
// torn down mid-backpressure; short-circuits if it is already gone.
|
|
@@ -802,6 +899,85 @@ export class SandboxClient {
|
|
|
802
899
|
stderr: Buffer.concat(stderr),
|
|
803
900
|
};
|
|
804
901
|
}
|
|
902
|
+
/**
|
|
903
|
+
* Watch a sandbox's log lines and platform events with loss-aware resume.
|
|
904
|
+
*
|
|
905
|
+
* Reconnects transparently on a transient stream drop, resuming from the
|
|
906
|
+
* highest cursor already delivered. A recoverable server-side lag surfaces
|
|
907
|
+
* as a `{ kind: 'warning' }` item and the stream continues.
|
|
908
|
+
*
|
|
909
|
+
* An `SdkError` with `connectCode === Code.OutOfRange` is terminal and not
|
|
910
|
+
* retried: the resume point is gone (trimmed from the buffer, or issued by a
|
|
911
|
+
* cursor space the gateway no longer has), so events between it and now are
|
|
912
|
+
* unrecoverable. Auto-restarting from scratch would hide that loss, which is
|
|
913
|
+
* exactly what this method exists to surface. Callers who accept the gap can
|
|
914
|
+
* start a new watch with an empty `resumeAfterCursor`; retrying the same
|
|
915
|
+
* cursor fails identically.
|
|
916
|
+
*/
|
|
917
|
+
async *watchLogs(name, options) {
|
|
918
|
+
let ref;
|
|
919
|
+
try {
|
|
920
|
+
ref = await this.get(name, {
|
|
921
|
+
workspace: options?.workspace,
|
|
922
|
+
...(options?.signal ? { signal: options.signal } : {}),
|
|
923
|
+
});
|
|
924
|
+
}
|
|
925
|
+
catch (e) {
|
|
926
|
+
throw e instanceof SdkError ? e : fromConnect(e);
|
|
927
|
+
}
|
|
928
|
+
const signal = options?.signal;
|
|
929
|
+
let followLogs = options?.followLogs ?? false;
|
|
930
|
+
const followEvents = options?.followEvents ?? false;
|
|
931
|
+
// With both resolved false — whether from an explicit `false` or from
|
|
932
|
+
// omitting both options — the request would stream nothing and never
|
|
933
|
+
// complete or error. Mirror the Go SDK's guard and default to logs, since
|
|
934
|
+
// that footgun is worse than this one-line divergence from Rust's bare
|
|
935
|
+
// pass-through default.
|
|
936
|
+
if (!followLogs && !followEvents)
|
|
937
|
+
followLogs = true;
|
|
938
|
+
let cursor = options?.resumeAfterCursor ?? '';
|
|
939
|
+
let backoffMs = 100;
|
|
940
|
+
for (;;) {
|
|
941
|
+
if (signal?.aborted)
|
|
942
|
+
throw new SdkError('canceled', 'watchLogs aborted');
|
|
943
|
+
// connect-es returns this AsyncIterable synchronously and unconditionally;
|
|
944
|
+
// the stream only opens on first iteration, so "dial" and "drain" failures
|
|
945
|
+
// both land in the single catch below (unlike tonic's separate Result).
|
|
946
|
+
const stream = this.grpc.watchSandbox({
|
|
947
|
+
...sandboxTarget(ref.name, options),
|
|
948
|
+
followStatus: false,
|
|
949
|
+
followLogs,
|
|
950
|
+
followEvents,
|
|
951
|
+
logTailLines: options?.logTailLines ?? 0,
|
|
952
|
+
eventTail: options?.eventTail ?? 0,
|
|
953
|
+
logSources: options?.logSources ?? [],
|
|
954
|
+
logMinLevel: options?.logMinLevel ?? '',
|
|
955
|
+
resumeAfterCursor: cursor,
|
|
956
|
+
}, { signal });
|
|
957
|
+
let cleanEof = true;
|
|
958
|
+
try {
|
|
959
|
+
for await (const wireEvent of stream) {
|
|
960
|
+
// A delivered event means the connection is healthy again; reset the
|
|
961
|
+
// backoff so a later drop retries promptly instead of at the cap.
|
|
962
|
+
backoffMs = 100;
|
|
963
|
+
const converted = convertWatchEvent(wireEvent, cursor);
|
|
964
|
+
cursor = converted.cursor;
|
|
965
|
+
if (converted.event)
|
|
966
|
+
yield converted.event;
|
|
967
|
+
}
|
|
968
|
+
}
|
|
969
|
+
catch (e) {
|
|
970
|
+
cleanEof = false;
|
|
971
|
+
const err = e instanceof SdkError ? e : fromConnect(e);
|
|
972
|
+
if (!isRetryableWatchLogsError(err))
|
|
973
|
+
throw err;
|
|
974
|
+
await watchLogsBackoffSleep(backoffMs, signal);
|
|
975
|
+
backoffMs = Math.min(backoffMs * 2, 2000);
|
|
976
|
+
}
|
|
977
|
+
if (cleanEof)
|
|
978
|
+
break;
|
|
979
|
+
}
|
|
980
|
+
}
|
|
805
981
|
// TTY + stdin transport half of an interactive exec. The first client frame
|
|
806
982
|
// is the `start` variant carrying the exec request; subsequent frames are
|
|
807
983
|
// `stdin`/`resize`. No terminal glue: raw mode, signal forwarding, and
|
|
@@ -1315,6 +1491,8 @@ export class OpenShellClient {
|
|
|
1315
1491
|
sandbox;
|
|
1316
1492
|
/** Reusable sandbox workload template lifecycle. */
|
|
1317
1493
|
sandboxTemplates;
|
|
1494
|
+
/** Privileged provider credential retrieval; requires direct operator mTLS. */
|
|
1495
|
+
providers;
|
|
1318
1496
|
/**
|
|
1319
1497
|
* Advanced escape hatch: a generated client for every gateway RPC, including
|
|
1320
1498
|
* surface the curated sub-clients do not wrap yet (gateway config, provider
|
|
@@ -1332,6 +1510,7 @@ export class OpenShellClient {
|
|
|
1332
1510
|
this.raw = this.grpc;
|
|
1333
1511
|
this.sandbox = new SandboxClient(transport, this.grpc);
|
|
1334
1512
|
this.sandboxTemplates = new SandboxTemplateClient(transport, this.grpc);
|
|
1513
|
+
this.providers = new ProviderClient(transport);
|
|
1335
1514
|
}
|
|
1336
1515
|
/**
|
|
1337
1516
|
* Constructs a lazy Connect client. No network request is made until the
|