@cloudflare/sandbox 0.6.5 → 0.6.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.
- package/README.md +2 -1
- package/dist/{dist-2SF6oOaz.js → dist-Dgwt0coR.js} +35 -8
- package/dist/dist-Dgwt0coR.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +771 -186
- package/dist/index.js.map +1 -1
- package/dist/openai/index.d.ts +1 -1
- package/dist/openai/index.js +1 -1
- package/dist/opencode/index.d.ts +1 -1
- package/dist/opencode/index.d.ts.map +1 -1
- package/dist/opencode/index.js +1 -1
- package/dist/{sandbox-C9WRqWBO.d.ts → sandbox-uifih-hT.d.ts} +172 -33
- package/dist/sandbox-uifih-hT.d.ts.map +1 -0
- package/package.json +3 -2
- package/dist/dist-2SF6oOaz.js.map +0 -1
- package/dist/sandbox-C9WRqWBO.d.ts.map +0 -1
package/dist/openai/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as Sandbox } from "../sandbox-
|
|
1
|
+
import { t as Sandbox } from "../sandbox-uifih-hT.js";
|
|
2
2
|
import { ApplyPatchOperation, ApplyPatchResult, Editor as Editor$1, Shell as Shell$1, ShellAction, ShellResult } from "@openai/agents";
|
|
3
3
|
|
|
4
4
|
//#region src/openai/index.d.ts
|
package/dist/openai/index.js
CHANGED
package/dist/opencode/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/opencode/types.ts","../../src/opencode/opencode.ts"],"sourcesContent":[],"mappings":";;;;;;;;AAMiB,UAAA,eAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/opencode/types.ts","../../src/opencode/opencode.ts"],"sourcesContent":[],"mappings":";;;;;;;;AAMiB,UAAA,eAAA,CAAe;EAYf;EAaA,IAAA,CAAA,EAAA,MAAA;EAUJ;EAEc,SAAA,CAAA,EAAA,MAAA;EAId;EACC,MAAA,CAAA,EApCH,MAoCG;;;;;UA9BG,cAAA;EC8OK;EACX,IAAA,EAAA,MAAA;EACC;EACD,GAAA,EAAA,MAAA;EAAR;EAAO,KAAA,EAAA,ED3OC,OC2OD,CAAA,IAAA,CAAA;AAgDV;;;;;AAGG,UDvRc,cCuRd,CAAA,UAAA,OAAA,CAAA,CAAA;EAAO;EAqDM,MAAA,ED1UN,OC0UM;EACL;EACA,MAAA,ED1UD,cC0UC;;;;;AAEU,cDtUR,oBAAA,SAA6B,KAAA,CCsUrB;;oBDpUM;wCAId,kCACC;;;;;;;AA1Cd;AAYA;AAaA;AAUA;;;;;;;;;ACuNA;;;;;;AAmDA;;;;;;;AAwDA;;;AAGU,iBA9GY,oBAAA,CA8GZ,OAAA,EA7GC,OA6GD,CAAA,OAAA,CAAA,EAAA,OAAA,CAAA,EA5GE,eA4GF,CAAA,EA3GP,OA2GO,CA3GC,cA2GD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA3DY,2CACX,4BACC,kBACT,QAAQ,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqDV,eAAA,UACL,kBACA,0BACD,iBACP,WAAW,QAAQ"}
|
package/dist/opencode/index.js
CHANGED
|
@@ -426,6 +426,13 @@ interface WaitForLogResult {
|
|
|
426
426
|
/** Regex capture groups (if condition was a RegExp) */
|
|
427
427
|
match?: RegExpMatchArray;
|
|
428
428
|
}
|
|
429
|
+
/**
|
|
430
|
+
* Result from waiting for process exit
|
|
431
|
+
*/
|
|
432
|
+
interface WaitForExitResult {
|
|
433
|
+
/** Process exit code */
|
|
434
|
+
exitCode: number;
|
|
435
|
+
}
|
|
429
436
|
/**
|
|
430
437
|
* Options for waiting for a port to become ready
|
|
431
438
|
*/
|
|
@@ -474,14 +481,13 @@ interface PortCheckRequest {
|
|
|
474
481
|
statusMax?: number;
|
|
475
482
|
}
|
|
476
483
|
/**
|
|
477
|
-
*
|
|
484
|
+
* Request body for streaming port watch endpoint
|
|
478
485
|
*/
|
|
479
|
-
interface
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
error?: string;
|
|
486
|
+
interface PortWatchRequest extends PortCheckRequest {
|
|
487
|
+
/** Process ID to monitor - stream closes if process exits */
|
|
488
|
+
processId?: string;
|
|
489
|
+
/** Internal polling interval in ms (default: 500) */
|
|
490
|
+
interval?: number;
|
|
485
491
|
}
|
|
486
492
|
interface ProcessOptions extends BaseExecOptions {
|
|
487
493
|
/**
|
|
@@ -585,6 +591,13 @@ interface Process {
|
|
|
585
591
|
* await proc.waitForPort(5432, { mode: 'tcp' });
|
|
586
592
|
*/
|
|
587
593
|
waitForPort(port: number, options?: WaitForPortOptions): Promise<void>;
|
|
594
|
+
/**
|
|
595
|
+
* Wait for the process to exit
|
|
596
|
+
*
|
|
597
|
+
* Returns the exit code. Use getProcessLogs() or streamProcessLogs()
|
|
598
|
+
* to retrieve output after the process exits.
|
|
599
|
+
*/
|
|
600
|
+
waitForExit(timeout?: number): Promise<WaitForExitResult>;
|
|
588
601
|
}
|
|
589
602
|
interface ExecEvent {
|
|
590
603
|
type: 'start' | 'stdout' | 'stderr' | 'complete' | 'error';
|
|
@@ -1103,6 +1116,11 @@ declare function isProcessStatus(value: string): value is ProcessStatus;
|
|
|
1103
1116
|
*/
|
|
1104
1117
|
interface ContainerStub {
|
|
1105
1118
|
containerFetch(url: string, options: RequestInit, port?: number): Promise<Response>;
|
|
1119
|
+
/**
|
|
1120
|
+
* Fetch that can handle WebSocket upgrades (routes through parent Container class).
|
|
1121
|
+
* Required for WebSocket transport to establish control plane connections.
|
|
1122
|
+
*/
|
|
1123
|
+
fetch(request: Request): Promise<Response>;
|
|
1106
1124
|
}
|
|
1107
1125
|
/**
|
|
1108
1126
|
* Shared HTTP client configuration options
|
|
@@ -1114,6 +1132,22 @@ interface HttpClientOptions {
|
|
|
1114
1132
|
stub?: ContainerStub;
|
|
1115
1133
|
onCommandComplete?: (success: boolean, exitCode: number, stdout: string, stderr: string, command: string) => void;
|
|
1116
1134
|
onError?: (error: string, command?: string) => void;
|
|
1135
|
+
/**
|
|
1136
|
+
* Transport mode: 'http' (default) or 'websocket'
|
|
1137
|
+
* WebSocket mode multiplexes all requests over a single connection,
|
|
1138
|
+
* reducing sub-request count in Workers/Durable Objects.
|
|
1139
|
+
*/
|
|
1140
|
+
transportMode?: TransportMode;
|
|
1141
|
+
/**
|
|
1142
|
+
* WebSocket URL for WebSocket transport mode.
|
|
1143
|
+
* Required when transportMode is 'websocket'.
|
|
1144
|
+
*/
|
|
1145
|
+
wsUrl?: string;
|
|
1146
|
+
/**
|
|
1147
|
+
* Shared transport instance (for internal use).
|
|
1148
|
+
* When provided, clients will use this transport instead of creating their own.
|
|
1149
|
+
*/
|
|
1150
|
+
transport?: ITransport;
|
|
1117
1151
|
}
|
|
1118
1152
|
/**
|
|
1119
1153
|
* Base response interface for all API responses
|
|
@@ -1148,18 +1182,69 @@ interface SessionRequest {
|
|
|
1148
1182
|
sessionId?: string;
|
|
1149
1183
|
}
|
|
1150
1184
|
//#endregion
|
|
1185
|
+
//#region src/clients/transport/types.d.ts
|
|
1186
|
+
/**
|
|
1187
|
+
* Transport mode for SDK communication
|
|
1188
|
+
*/
|
|
1189
|
+
type TransportMode = 'http' | 'websocket';
|
|
1190
|
+
/**
|
|
1191
|
+
* Transport interface - all transports must implement this
|
|
1192
|
+
*
|
|
1193
|
+
* Provides a unified abstraction over HTTP and WebSocket communication.
|
|
1194
|
+
* Both transports support fetch-compatible requests and streaming.
|
|
1195
|
+
*/
|
|
1196
|
+
interface ITransport {
|
|
1197
|
+
/**
|
|
1198
|
+
* Make a fetch-compatible request
|
|
1199
|
+
* @returns Standard Response object
|
|
1200
|
+
*/
|
|
1201
|
+
fetch(path: string, options?: RequestInit): Promise<Response>;
|
|
1202
|
+
/**
|
|
1203
|
+
* Make a streaming request
|
|
1204
|
+
* @returns ReadableStream for consuming SSE/streaming data
|
|
1205
|
+
*/
|
|
1206
|
+
fetchStream(path: string, body?: unknown, method?: 'GET' | 'POST'): Promise<ReadableStream<Uint8Array>>;
|
|
1207
|
+
/**
|
|
1208
|
+
* Get the transport mode
|
|
1209
|
+
*/
|
|
1210
|
+
getMode(): TransportMode;
|
|
1211
|
+
/**
|
|
1212
|
+
* Connect the transport (no-op for HTTP)
|
|
1213
|
+
*/
|
|
1214
|
+
connect(): Promise<void>;
|
|
1215
|
+
/**
|
|
1216
|
+
* Disconnect the transport (no-op for HTTP)
|
|
1217
|
+
*/
|
|
1218
|
+
disconnect(): void;
|
|
1219
|
+
/**
|
|
1220
|
+
* Check if connected (always true for HTTP)
|
|
1221
|
+
*/
|
|
1222
|
+
isConnected(): boolean;
|
|
1223
|
+
}
|
|
1224
|
+
//#endregion
|
|
1151
1225
|
//#region src/clients/base-client.d.ts
|
|
1152
1226
|
/**
|
|
1153
|
-
* Abstract base class providing common HTTP functionality for all domain clients
|
|
1227
|
+
* Abstract base class providing common HTTP/WebSocket functionality for all domain clients
|
|
1228
|
+
*
|
|
1229
|
+
* All requests go through the Transport abstraction layer, which handles:
|
|
1230
|
+
* - HTTP and WebSocket modes transparently
|
|
1231
|
+
* - Automatic retry for 503 errors (container starting)
|
|
1232
|
+
* - Streaming responses
|
|
1233
|
+
*
|
|
1234
|
+
* WebSocket mode is useful when running inside Workers/Durable Objects
|
|
1235
|
+
* where sub-request limits apply.
|
|
1154
1236
|
*/
|
|
1155
1237
|
declare abstract class BaseHttpClient {
|
|
1156
|
-
protected baseUrl: string;
|
|
1157
1238
|
protected options: HttpClientOptions;
|
|
1158
1239
|
protected logger: Logger;
|
|
1240
|
+
protected transport: ITransport;
|
|
1159
1241
|
constructor(options?: HttpClientOptions);
|
|
1160
1242
|
/**
|
|
1161
|
-
*
|
|
1162
|
-
|
|
1243
|
+
* Check if using WebSocket transport
|
|
1244
|
+
*/
|
|
1245
|
+
protected isWebSocketMode(): boolean;
|
|
1246
|
+
/**
|
|
1247
|
+
* Core fetch method - delegates to Transport which handles retry logic
|
|
1163
1248
|
*/
|
|
1164
1249
|
protected doFetch(path: string, options?: RequestInit): Promise<Response>;
|
|
1165
1250
|
/**
|
|
@@ -1186,6 +1271,17 @@ declare abstract class BaseHttpClient {
|
|
|
1186
1271
|
* Create a streaming response handler for Server-Sent Events
|
|
1187
1272
|
*/
|
|
1188
1273
|
protected handleStreamResponse(response: Response): Promise<ReadableStream<Uint8Array>>;
|
|
1274
|
+
/**
|
|
1275
|
+
* Stream request handler
|
|
1276
|
+
*
|
|
1277
|
+
* For HTTP mode, uses doFetch + handleStreamResponse to get proper error typing.
|
|
1278
|
+
* For WebSocket mode, uses Transport's streaming support.
|
|
1279
|
+
*
|
|
1280
|
+
* @param path - The API path to call
|
|
1281
|
+
* @param body - Optional request body (for POST requests)
|
|
1282
|
+
* @param method - HTTP method (default: POST, use GET for process logs)
|
|
1283
|
+
*/
|
|
1284
|
+
protected doStreamFetch(path: string, body?: unknown, method?: 'GET' | 'POST'): Promise<ReadableStream<Uint8Array>>;
|
|
1189
1285
|
/**
|
|
1190
1286
|
* Utility method to log successful operations
|
|
1191
1287
|
*/
|
|
@@ -1198,19 +1294,6 @@ declare abstract class BaseHttpClient {
|
|
|
1198
1294
|
* - 5xx errors (server failures, internal errors): DO log (unexpected server errors)
|
|
1199
1295
|
*/
|
|
1200
1296
|
protected logError(operation: string, error: unknown): void;
|
|
1201
|
-
/**
|
|
1202
|
-
* Check if response indicates a retryable container error
|
|
1203
|
-
* Uses fail-safe strategy: only retry known transient errors
|
|
1204
|
-
*
|
|
1205
|
-
* TODO: This relies on string matching error messages, which is brittle.
|
|
1206
|
-
* Ideally, the container API should return structured errors with a
|
|
1207
|
-
* `retryable: boolean` field to avoid coupling to error message format.
|
|
1208
|
-
*
|
|
1209
|
-
* @param response - HTTP response to check
|
|
1210
|
-
* @returns true if error is retryable container error, false otherwise
|
|
1211
|
-
*/
|
|
1212
|
-
private isRetryableContainerError;
|
|
1213
|
-
private executeFetch;
|
|
1214
1297
|
}
|
|
1215
1298
|
//#endregion
|
|
1216
1299
|
//#region src/clients/command-client.d.ts
|
|
@@ -1401,6 +1484,11 @@ declare class InterpreterClient extends BaseHttpClient {
|
|
|
1401
1484
|
runCodeStream(contextId: string | undefined, code: string, language: string | undefined, callbacks: ExecutionCallbacks, timeoutMs?: number): Promise<void>;
|
|
1402
1485
|
listCodeContexts(): Promise<CodeContext[]>;
|
|
1403
1486
|
deleteCodeContext(contextId: string): Promise<void>;
|
|
1487
|
+
/**
|
|
1488
|
+
* Get a raw stream for code execution.
|
|
1489
|
+
* Used by CodeInterpreter.runCodeStreaming() for direct stream access.
|
|
1490
|
+
*/
|
|
1491
|
+
streamCode(contextId: string, code: string, language?: string): Promise<ReadableStream<Uint8Array>>;
|
|
1404
1492
|
/**
|
|
1405
1493
|
* Execute an operation with automatic retry for transient errors
|
|
1406
1494
|
*/
|
|
@@ -1448,10 +1536,11 @@ declare class PortClient extends BaseHttpClient {
|
|
|
1448
1536
|
*/
|
|
1449
1537
|
getExposedPorts(sessionId: string): Promise<PortListResult>;
|
|
1450
1538
|
/**
|
|
1451
|
-
*
|
|
1452
|
-
* @param request - Port
|
|
1539
|
+
* Watch a port for readiness via SSE stream
|
|
1540
|
+
* @param request - Port watch configuration
|
|
1541
|
+
* @returns SSE stream that emits PortWatchEvent objects
|
|
1453
1542
|
*/
|
|
1454
|
-
|
|
1543
|
+
watchPort(request: PortWatchRequest): Promise<ReadableStream<Uint8Array>>;
|
|
1455
1544
|
}
|
|
1456
1545
|
//#endregion
|
|
1457
1546
|
//#region src/clients/process-client.d.ts
|
|
@@ -1578,6 +1667,12 @@ declare class UtilityClient extends BaseHttpClient {
|
|
|
1578
1667
|
/**
|
|
1579
1668
|
* Main sandbox client that composes all domain-specific clients
|
|
1580
1669
|
* Provides organized access to all sandbox functionality
|
|
1670
|
+
*
|
|
1671
|
+
* Supports two transport modes:
|
|
1672
|
+
* - HTTP (default): Each request is a separate HTTP call
|
|
1673
|
+
* - WebSocket: All requests multiplexed over a single connection
|
|
1674
|
+
*
|
|
1675
|
+
* WebSocket mode reduces sub-request count when running inside Workers/Durable Objects.
|
|
1581
1676
|
*/
|
|
1582
1677
|
declare class SandboxClient {
|
|
1583
1678
|
readonly commands: CommandClient;
|
|
@@ -1587,7 +1682,27 @@ declare class SandboxClient {
|
|
|
1587
1682
|
readonly git: GitClient;
|
|
1588
1683
|
readonly interpreter: InterpreterClient;
|
|
1589
1684
|
readonly utils: UtilityClient;
|
|
1685
|
+
private transport;
|
|
1590
1686
|
constructor(options: HttpClientOptions);
|
|
1687
|
+
/**
|
|
1688
|
+
* Get the current transport mode
|
|
1689
|
+
*/
|
|
1690
|
+
getTransportMode(): TransportMode;
|
|
1691
|
+
/**
|
|
1692
|
+
* Check if WebSocket is connected (only relevant in WebSocket mode)
|
|
1693
|
+
*/
|
|
1694
|
+
isWebSocketConnected(): boolean;
|
|
1695
|
+
/**
|
|
1696
|
+
* Connect WebSocket transport (no-op in HTTP mode)
|
|
1697
|
+
* Called automatically on first request, but can be called explicitly
|
|
1698
|
+
* to establish connection upfront.
|
|
1699
|
+
*/
|
|
1700
|
+
connect(): Promise<void>;
|
|
1701
|
+
/**
|
|
1702
|
+
* Disconnect WebSocket transport (no-op in HTTP mode)
|
|
1703
|
+
* Should be called when the sandbox is destroyed.
|
|
1704
|
+
*/
|
|
1705
|
+
disconnect(): void;
|
|
1591
1706
|
}
|
|
1592
1707
|
//#endregion
|
|
1593
1708
|
//#region src/sandbox.d.ts
|
|
@@ -1600,12 +1715,12 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
|
|
|
1600
1715
|
private sandboxName;
|
|
1601
1716
|
private normalizeId;
|
|
1602
1717
|
private baseUrl;
|
|
1603
|
-
private portTokens;
|
|
1604
1718
|
private defaultSession;
|
|
1605
1719
|
envVars: Record<string, string>;
|
|
1606
1720
|
private logger;
|
|
1607
1721
|
private keepAliveEnabled;
|
|
1608
1722
|
private activeMounts;
|
|
1723
|
+
private transport;
|
|
1609
1724
|
/**
|
|
1610
1725
|
* Default container startup timeouts (conservative for production)
|
|
1611
1726
|
* Based on Cloudflare docs: "Containers take several minutes to provision"
|
|
@@ -1616,6 +1731,10 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
|
|
|
1616
1731
|
* Can be set via options, env vars, or defaults
|
|
1617
1732
|
*/
|
|
1618
1733
|
private containerTimeouts;
|
|
1734
|
+
/**
|
|
1735
|
+
* Create a SandboxClient with current transport settings
|
|
1736
|
+
*/
|
|
1737
|
+
private createSandboxClient;
|
|
1619
1738
|
constructor(ctx: DurableObjectState<{}>, env: Env);
|
|
1620
1739
|
setSandboxName(name: string, normalizeId?: boolean): Promise<void>;
|
|
1621
1740
|
setBaseUrl(baseUrl: string): Promise<void>;
|
|
@@ -1684,8 +1803,24 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
|
|
|
1684
1803
|
containerFetch(requestOrUrl: Request | string | URL, portOrInit?: number | RequestInit, portParam?: number): Promise<Response>;
|
|
1685
1804
|
/**
|
|
1686
1805
|
* Helper: Check if error is "no container instance available"
|
|
1806
|
+
* This indicates the container VM is still being provisioned.
|
|
1687
1807
|
*/
|
|
1688
1808
|
private isNoInstanceError;
|
|
1809
|
+
/**
|
|
1810
|
+
* Helper: Check if error is a transient startup error that should trigger retry
|
|
1811
|
+
*
|
|
1812
|
+
* These errors occur during normal container startup and are recoverable:
|
|
1813
|
+
* - Port not yet mapped (container starting, app not listening yet)
|
|
1814
|
+
* - Connection refused (port mapped but app not ready)
|
|
1815
|
+
* - Timeouts during startup (recoverable with retry)
|
|
1816
|
+
* - Network transients (temporary connectivity issues)
|
|
1817
|
+
*
|
|
1818
|
+
* Errors NOT included (permanent failures):
|
|
1819
|
+
* - "no such image" - missing Docker image
|
|
1820
|
+
* - "container already exists" - name collision
|
|
1821
|
+
* - Configuration errors
|
|
1822
|
+
*/
|
|
1823
|
+
private isTransientStartupError;
|
|
1689
1824
|
/**
|
|
1690
1825
|
* Helper: Parse containerFetch arguments (supports multiple signatures)
|
|
1691
1826
|
*/
|
|
@@ -1702,9 +1837,9 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
|
|
|
1702
1837
|
* Ensure default session exists - lazy initialization
|
|
1703
1838
|
* This is called automatically by all public methods that need a session
|
|
1704
1839
|
*
|
|
1705
|
-
* The session is persisted to
|
|
1706
|
-
*
|
|
1707
|
-
*
|
|
1840
|
+
* The session ID is persisted to DO storage. On container restart, if the
|
|
1841
|
+
* container already has this session (from a previous instance), we sync
|
|
1842
|
+
* our state rather than failing on duplicate creation.
|
|
1708
1843
|
*/
|
|
1709
1844
|
private ensureDefaultSession;
|
|
1710
1845
|
exec(command: string, options?: ExecOptions): Promise<ExecResult>;
|
|
@@ -1729,6 +1864,11 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
|
|
|
1729
1864
|
* Wait for a port to become available (for process readiness checking)
|
|
1730
1865
|
*/
|
|
1731
1866
|
private waitForPortReady;
|
|
1867
|
+
/**
|
|
1868
|
+
* Wait for a process to exit
|
|
1869
|
+
* Returns the exit code
|
|
1870
|
+
*/
|
|
1871
|
+
private waitForProcessExit;
|
|
1732
1872
|
/**
|
|
1733
1873
|
* Match a pattern against text
|
|
1734
1874
|
*/
|
|
@@ -1823,7 +1963,6 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
|
|
|
1823
1963
|
isPortExposed(port: number): Promise<boolean>;
|
|
1824
1964
|
validatePortToken(port: number, token: string): Promise<boolean>;
|
|
1825
1965
|
private generatePortToken;
|
|
1826
|
-
private persistPortTokens;
|
|
1827
1966
|
private constructPreviewUrl;
|
|
1828
1967
|
/**
|
|
1829
1968
|
* Create isolated execution session for advanced use cases
|
|
@@ -1865,4 +2004,4 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
|
|
|
1865
2004
|
}
|
|
1866
2005
|
//#endregion
|
|
1867
2006
|
export { ProcessInfoResult as $, RequestConfig as A, FileChunk as B, WriteFileRequest as C, ContainerStub as D, BaseApiResponse as E, BucketProvider as F, ListFilesOptions as G, FileStreamEvent as H, ExecEvent as I, PortCloseResult as J, LogEvent as K, ExecOptions as L, SessionRequest as M, BaseExecOptions as N, ErrorResponse as O, BucketCredentials as P, ProcessCleanupResult as Q, ExecResult as R, ReadFileRequest as S, ExecuteResponse as T, GitCheckoutResult as U, FileMetadata as V, ISandbox as W, PortListResult as X, PortExposeResult as Y, Process as Z, GitCheckoutRequest as _, ExecutionResult as _t, CreateSessionRequest as a, ProcessStatus as at, FileOperationRequest as b, DeleteSessionResponse as c, StreamOptions as ct, ProcessClient as d, isExecResult as dt, ProcessKillResult as et, ExposePortRequest as f, isProcess as ft, InterpreterClient as g, Execution as gt, ExecutionCallbacks as h, CreateContextOptions as ht, CommandsResponse as i, ProcessStartResult as it, ResponseHandler as j, HttpClientOptions as k, PingResponse as l, WaitForLogResult as lt, UnexposePortRequest as m, CodeContext as mt, getSandbox as n, ProcessLogsResult as nt, CreateSessionResponse as o, SandboxOptions as ot, PortClient as p, isProcessStatus as pt, MountBucketOptions as q, SandboxClient as r, ProcessOptions as rt, DeleteSessionRequest as s, SessionOptions as st, Sandbox as t, ProcessListResult as tt, UtilityClient as u, WaitForPortOptions as ut, GitClient as v, RunCodeOptions as vt, CommandClient as w, MkdirRequest as x, FileClient as y, ExecutionSession as z };
|
|
1868
|
-
//# sourceMappingURL=sandbox-
|
|
2007
|
+
//# sourceMappingURL=sandbox-uifih-hT.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-uifih-hT.d.ts","names":["LogLevel","LogComponent","LogContext","Logger","Partial","Error","CreateContextOptions","Record","CodeContext","Date","RunCodeOptions","AbortSignal","OutputMessage","Promise","Result","ExecutionError","ChartData","ExecutionResult","Array","Execution","ResultImpl","CodeContext","CreateContextOptions","ExecutionResult","RunCodeOptions","BaseExecOptions","Record","ExecOptions","ExecResult","Error","AbortSignal","WaitForLogResult","RegExpMatchArray","WaitForExitResult","WaitForPortOptions","PortCheckRequest","PortCheckResponse","PortWatchRequest","PortWatchEvent","ProcessOptions","Process","ProcessStatus","isTerminalStatus","Date","Promise","RegExp","ExecEvent","LogEvent","StreamOptions","SessionOptions","SandboxOptions","MkdirResult","WriteFileResult","ReadFileResult","DeleteFileResult","RenameFileResult","MoveFileResult","FileExistsResult","FileInfo","ListFilesOptions","ListFilesResult","GitCheckoutResult","FileStreamEvent","FileMetadata","FileChunk","Uint8Array","ProcessStartResult","ProcessListResult","Array","ProcessInfoResult","ProcessKillResult","ProcessLogsResult","ProcessCleanupResult","SessionCreateResult","SessionDeleteResult","EnvSetResult","PortExposeResult","PortStatusResult","PortListResult","PortCloseResult","InterpreterHealthResult","ContextCreateResult","ContextListResult","ContextDeleteResult","HealthCheckResult","ShutdownResult","ExecutionSession","ReadableStream","MountBucketOptions","BucketProvider","BucketCredentials","ISandbox","Request","Response","isExecResult","isProcess","isProcessStatus","ChartData","ExecutionError","OutputMessage","Result","Execution","ResultImpl"],"sources":["../../shared/dist/logger/types.d.ts","../../shared/dist/interpreter-types.d.ts","../../shared/dist/types.d.ts","../src/clients/types.ts","../src/clients/transport/types.ts","../src/clients/base-client.ts","../src/clients/command-client.ts","../src/clients/file-client.ts","../src/clients/git-client.ts","../src/clients/interpreter-client.ts","../src/clients/port-client.ts","../src/clients/process-client.ts","../src/clients/utility-client.ts","../src/clients/sandbox-client.ts","../src/sandbox.ts"],"sourcesContent":["/**\n * Logger types for Cloudflare Sandbox SDK\n *\n * Provides structured, trace-aware logging across Worker, Durable Object, and Container.\n */\n/**\n * Log levels (from most to least verbose)\n */\nexport declare enum LogLevel {\n DEBUG = 0,\n INFO = 1,\n WARN = 2,\n ERROR = 3\n}\nexport type LogComponent = 'container' | 'sandbox-do' | 'executor';\n/**\n * Context metadata included in every log entry\n */\nexport interface LogContext {\n /**\n * Unique trace ID for request correlation across distributed components\n * Format: \"tr_\" + 16 hex chars (e.g., \"tr_7f3a9b2c4e5d6f1a\")\n */\n traceId: string;\n /**\n * Component that generated the log\n */\n component: LogComponent;\n /**\n * Sandbox identifier (which sandbox instance)\n */\n sandboxId?: string;\n /**\n * Session identifier (which session within sandbox)\n */\n sessionId?: string;\n /**\n * Process identifier (which background process)\n */\n processId?: string;\n /**\n * Command identifier (which command execution)\n */\n commandId?: string;\n /**\n * Operation name (e.g., 'exec', 'startProcess', 'writeFile')\n */\n operation?: string;\n /**\n * Duration in milliseconds\n */\n duration?: number;\n /**\n * Extensible for additional metadata\n */\n [key: string]: unknown;\n}\n/**\n * Logger interface for structured logging\n *\n * All methods accept optional context that gets merged with the logger's base context.\n */\nexport interface Logger {\n /**\n * Log debug-level message (most verbose, typically disabled in production)\n *\n * @param message Human-readable message\n * @param context Optional additional context\n */\n debug(message: string, context?: Partial<LogContext>): void;\n /**\n * Log info-level message (normal operational events)\n *\n * @param message Human-readable message\n * @param context Optional additional context\n */\n info(message: string, context?: Partial<LogContext>): void;\n /**\n * Log warning-level message (recoverable issues, degraded state)\n *\n * @param message Human-readable message\n * @param context Optional additional context\n */\n warn(message: string, context?: Partial<LogContext>): void;\n /**\n * Log error-level message (failures, exceptions)\n *\n * @param message Human-readable message\n * @param error Optional Error object to include\n * @param context Optional additional context\n */\n error(message: string, error?: Error, context?: Partial<LogContext>): void;\n /**\n * Create a child logger with additional context\n *\n * The child logger inherits all context from the parent and adds new context.\n * This is useful for adding operation-specific context without passing through parameters.\n *\n * @param context Additional context to merge\n * @returns New logger instance with merged context\n *\n * @example\n * const logger = createLogger({ component: 'sandbox-do', traceId: 'tr_abc123' });\n * const execLogger = logger.child({ operation: 'exec', commandId: 'cmd-456' });\n * execLogger.info('Command started'); // Includes all context: component, traceId, operation, commandId\n */\n child(context: Partial<LogContext>): Logger;\n}\n//# sourceMappingURL=types.d.ts.map","export interface CreateContextOptions {\n /**\n * Programming language for the context\n * @default 'python'\n */\n language?: 'python' | 'javascript' | 'typescript';\n /**\n * Working directory for the context\n * @default '/workspace'\n */\n cwd?: string;\n /**\n * Environment variables for the context\n */\n envVars?: Record<string, string>;\n /**\n * Request timeout in milliseconds\n * @default 30000\n */\n timeout?: number;\n}\nexport interface CodeContext {\n /**\n * Unique identifier for the context\n */\n readonly id: string;\n /**\n * Programming language of the context\n */\n readonly language: string;\n /**\n * Current working directory\n */\n readonly cwd: string;\n /**\n * When the context was created\n */\n readonly createdAt: Date;\n /**\n * When the context was last used\n */\n readonly lastUsed: Date;\n}\nexport interface RunCodeOptions {\n /**\n * Context to run the code in. If not provided, uses default context for the language\n */\n context?: CodeContext;\n /**\n * Language to use if context is not provided\n * @default 'python'\n */\n language?: 'python' | 'javascript' | 'typescript';\n /**\n * Environment variables for this execution\n */\n envVars?: Record<string, string>;\n /**\n * Execution timeout in milliseconds\n * @default 60000\n */\n timeout?: number;\n /**\n * AbortSignal for cancelling execution\n */\n signal?: AbortSignal;\n /**\n * Callback for stdout output\n */\n onStdout?: (output: OutputMessage) => void | Promise<void>;\n /**\n * Callback for stderr output\n */\n onStderr?: (output: OutputMessage) => void | Promise<void>;\n /**\n * Callback for execution results (charts, tables, etc)\n */\n onResult?: (result: Result) => void | Promise<void>;\n /**\n * Callback for execution errors\n */\n onError?: (error: ExecutionError) => void | Promise<void>;\n}\nexport interface OutputMessage {\n /**\n * The output text\n */\n text: string;\n /**\n * Timestamp of the output\n */\n timestamp: number;\n}\nexport interface Result {\n /**\n * Plain text representation\n */\n text?: string;\n /**\n * HTML representation (tables, formatted output)\n */\n html?: string;\n /**\n * PNG image data (base64 encoded)\n */\n png?: string;\n /**\n * JPEG image data (base64 encoded)\n */\n jpeg?: string;\n /**\n * SVG image data\n */\n svg?: string;\n /**\n * LaTeX representation\n */\n latex?: string;\n /**\n * Markdown representation\n */\n markdown?: string;\n /**\n * JavaScript code to execute\n */\n javascript?: string;\n /**\n * JSON data\n */\n json?: any;\n /**\n * Chart data if the result is a visualization\n */\n chart?: ChartData;\n /**\n * Raw data object\n */\n data?: any;\n /**\n * Available output formats\n */\n formats(): string[];\n}\nexport interface ChartData {\n /**\n * Type of chart\n */\n type: 'line' | 'bar' | 'scatter' | 'pie' | 'histogram' | 'heatmap' | 'unknown';\n /**\n * Chart title\n */\n title?: string;\n /**\n * Chart data (format depends on library)\n */\n data: any;\n /**\n * Chart layout/configuration\n */\n layout?: any;\n /**\n * Additional configuration\n */\n config?: any;\n /**\n * Library that generated the chart\n */\n library?: 'matplotlib' | 'plotly' | 'altair' | 'seaborn' | 'unknown';\n /**\n * Base64 encoded image if available\n */\n image?: string;\n}\nexport interface ExecutionError {\n /**\n * Error name/type (e.g., 'NameError', 'SyntaxError')\n */\n name: string;\n /**\n * Error message\n */\n message: string;\n /**\n * Stack trace\n */\n traceback: string[];\n /**\n * Line number where error occurred\n */\n lineNumber?: number;\n}\nexport interface ExecutionResult {\n code: string;\n logs: {\n stdout: string[];\n stderr: string[];\n };\n error?: ExecutionError;\n executionCount?: number;\n results: Array<{\n text?: string;\n html?: string;\n png?: string;\n jpeg?: string;\n svg?: string;\n latex?: string;\n markdown?: string;\n javascript?: string;\n json?: any;\n chart?: ChartData;\n data?: any;\n }>;\n}\nexport declare class Execution {\n readonly code: string;\n readonly context: CodeContext;\n /**\n * All results from the execution\n */\n results: Result[];\n /**\n * Accumulated stdout and stderr\n */\n logs: {\n stdout: string[];\n stderr: string[];\n };\n /**\n * Execution error if any\n */\n error?: ExecutionError;\n /**\n * Execution count (for interpreter)\n */\n executionCount?: number;\n constructor(code: string, context: CodeContext);\n /**\n * Convert to a plain object for serialization\n */\n toJSON(): ExecutionResult;\n}\nexport declare class ResultImpl implements Result {\n private raw;\n constructor(raw: any);\n get text(): string | undefined;\n get html(): string | undefined;\n get png(): string | undefined;\n get jpeg(): string | undefined;\n get svg(): string | undefined;\n get latex(): string | undefined;\n get markdown(): string | undefined;\n get javascript(): string | undefined;\n get json(): any;\n get chart(): ChartData | undefined;\n get data(): any;\n formats(): string[];\n}\n//# sourceMappingURL=interpreter-types.d.ts.map","import type { CodeContext, CreateContextOptions, ExecutionResult, RunCodeOptions } from './interpreter-types';\nexport interface BaseExecOptions {\n /**\n * Maximum execution time in milliseconds\n */\n timeout?: number;\n /**\n * Environment variables for this command invocation.\n * Values temporarily override session-level/container-level env for the\n * duration of the command but do not persist after it completes.\n */\n env?: Record<string, string>;\n /**\n * Working directory for command execution\n */\n cwd?: string;\n /**\n * Text encoding for output (default: 'utf8')\n */\n encoding?: string;\n}\nexport interface ExecOptions extends BaseExecOptions {\n /**\n * Enable real-time output streaming via callbacks\n */\n stream?: boolean;\n /**\n * Callback for real-time output data\n */\n onOutput?: (stream: 'stdout' | 'stderr', data: string) => void;\n /**\n * Callback when command completes (only when stream: true)\n */\n onComplete?: (result: ExecResult) => void;\n /**\n * Callback for execution errors\n */\n onError?: (error: Error) => void;\n /**\n * AbortSignal for cancelling execution\n */\n signal?: AbortSignal;\n}\nexport interface ExecResult {\n /**\n * Whether the command succeeded (exitCode === 0)\n */\n success: boolean;\n /**\n * Process exit code\n */\n exitCode: number;\n /**\n * Standard output content\n */\n stdout: string;\n /**\n * Standard error content\n */\n stderr: string;\n /**\n * Command that was executed\n */\n command: string;\n /**\n * Execution duration in milliseconds\n */\n duration: number;\n /**\n * ISO timestamp when command started\n */\n timestamp: string;\n /**\n * Session ID if provided\n */\n sessionId?: string;\n}\n/**\n * Result from waiting for a log pattern\n */\nexport interface WaitForLogResult {\n /** The log line that matched */\n line: string;\n /** Regex capture groups (if condition was a RegExp) */\n match?: RegExpMatchArray;\n}\n/**\n * Result from waiting for process exit\n */\nexport interface WaitForExitResult {\n /** Process exit code */\n exitCode: number;\n}\n/**\n * Options for waiting for a port to become ready\n */\nexport interface WaitForPortOptions {\n /**\n * Check mode\n * - 'http': Make an HTTP request and check for success status (default)\n * - 'tcp': Just check if TCP connection succeeds\n * @default 'http'\n */\n mode?: 'http' | 'tcp';\n /**\n * HTTP path to check (only used when mode is 'http')\n * @default '/'\n */\n path?: string;\n /**\n * Expected HTTP status code or range (only used when mode is 'http')\n * - Single number: exact match (e.g., 200)\n * - Object with min/max: range match (e.g., { min: 200, max: 399 })\n * @default { min: 200, max: 399 }\n */\n status?: number | {\n min: number;\n max: number;\n };\n /**\n * Maximum time to wait in milliseconds\n * @default no timeout\n */\n timeout?: number;\n /**\n * Interval between checks in milliseconds\n * @default 500\n */\n interval?: number;\n}\n/**\n * Request body for port readiness check endpoint\n */\nexport interface PortCheckRequest {\n port: number;\n mode: 'http' | 'tcp';\n path?: string;\n statusMin?: number;\n statusMax?: number;\n}\n/**\n * Response from port readiness check endpoint\n */\nexport interface PortCheckResponse {\n ready: boolean;\n /** HTTP status code received (only for http mode) */\n statusCode?: number;\n /** Error message if check failed */\n error?: string;\n}\n/**\n * Request body for streaming port watch endpoint\n */\nexport interface PortWatchRequest extends PortCheckRequest {\n /** Process ID to monitor - stream closes if process exits */\n processId?: string;\n /** Internal polling interval in ms (default: 500) */\n interval?: number;\n}\n/**\n * SSE event emitted by port watch stream\n */\nexport interface PortWatchEvent {\n type: 'watching' | 'ready' | 'process_exited' | 'error';\n port: number;\n /** HTTP status code (for 'ready' events with HTTP mode) */\n statusCode?: number;\n /** Process exit code (for 'process_exited' events) */\n exitCode?: number;\n /** Error message (for 'error' events) */\n error?: string;\n}\nexport interface ProcessOptions extends BaseExecOptions {\n /**\n * Custom process ID for later reference\n * If not provided, a UUID will be generated\n */\n processId?: string;\n /**\n * Automatically cleanup process record after exit (default: true)\n */\n autoCleanup?: boolean;\n /**\n * Callback when process exits\n */\n onExit?: (code: number | null) => void;\n /**\n * Callback for real-time output (background processes)\n */\n onOutput?: (stream: 'stdout' | 'stderr', data: string) => void;\n /**\n * Callback when process starts successfully\n */\n onStart?: (process: Process) => void;\n /**\n * Callback for process errors\n */\n onError?: (error: Error) => void;\n}\nexport type ProcessStatus = 'starting' | 'running' | 'completed' | 'failed' | 'killed' | 'error';\n/**\n * Check if a process status indicates the process has terminated\n */\nexport declare function isTerminalStatus(status: ProcessStatus): boolean;\nexport interface Process {\n /**\n * Unique process identifier\n */\n readonly id: string;\n /**\n * System process ID (if available and running)\n */\n readonly pid?: number;\n /**\n * Command that was executed\n */\n readonly command: string;\n /**\n * Current process status\n */\n readonly status: ProcessStatus;\n /**\n * When the process was started\n */\n readonly startTime: Date;\n /**\n * When the process ended (if completed)\n */\n readonly endTime?: Date;\n /**\n * Process exit code (if completed)\n */\n readonly exitCode?: number;\n /**\n * Session ID if provided\n */\n readonly sessionId?: string;\n /**\n * Kill the process\n */\n kill(signal?: string): Promise<void>;\n /**\n * Get current process status (refreshed)\n */\n getStatus(): Promise<ProcessStatus>;\n /**\n * Get accumulated logs\n */\n getLogs(): Promise<{\n stdout: string;\n stderr: string;\n }>;\n /**\n * Wait for a log pattern to appear in process output\n *\n * @example\n * const proc = await sandbox.startProcess(\"python train.py\");\n * await proc.waitForLog(\"Epoch 1 complete\");\n * await proc.waitForLog(/Epoch (\\d+) complete/);\n */\n waitForLog(pattern: string | RegExp, timeout?: number): Promise<WaitForLogResult>;\n /**\n * Wait for a port to become ready\n *\n * @example\n * // Wait for HTTP endpoint to return 200-399\n * const proc = await sandbox.startProcess(\"npm run dev\");\n * await proc.waitForPort(3000);\n *\n * @example\n * // Wait for specific health endpoint\n * await proc.waitForPort(3000, { path: '/health', status: 200 });\n *\n * @example\n * // TCP-only check (just verify port is accepting connections)\n * await proc.waitForPort(5432, { mode: 'tcp' });\n */\n waitForPort(port: number, options?: WaitForPortOptions): Promise<void>;\n /**\n * Wait for the process to exit\n *\n * Returns the exit code. Use getProcessLogs() or streamProcessLogs()\n * to retrieve output after the process exits.\n */\n waitForExit(timeout?: number): Promise<WaitForExitResult>;\n}\nexport interface ExecEvent {\n type: 'start' | 'stdout' | 'stderr' | 'complete' | 'error';\n timestamp: string;\n data?: string;\n command?: string;\n exitCode?: number;\n result?: ExecResult;\n error?: string;\n sessionId?: string;\n pid?: number;\n}\nexport interface LogEvent {\n type: 'stdout' | 'stderr' | 'exit' | 'error';\n timestamp: string;\n data: string;\n processId: string;\n sessionId?: string;\n exitCode?: number;\n}\nexport interface StreamOptions extends BaseExecOptions {\n /**\n * Buffer size for streaming output\n */\n bufferSize?: number;\n /**\n * AbortSignal for cancelling stream\n */\n signal?: AbortSignal;\n}\nexport interface SessionOptions {\n /**\n * Optional session ID (auto-generated if not provided)\n */\n id?: string;\n /**\n * Session name for identification\n */\n name?: string;\n /**\n * Environment variables for this session\n */\n env?: Record<string, string>;\n /**\n * Working directory\n */\n cwd?: string;\n /**\n * Enable PID namespace isolation (requires CAP_SYS_ADMIN)\n */\n isolation?: boolean;\n}\nexport interface SandboxOptions {\n /**\n * Duration after which the sandbox instance will sleep if no requests are received\n * Can be:\n * - A string like \"30s\", \"3m\", \"5m\", \"1h\" (seconds, minutes, or hours)\n * - A number representing seconds (e.g., 180 for 3 minutes)\n * Default: \"10m\" (10 minutes)\n *\n * Note: Ignored when keepAlive is true\n */\n sleepAfter?: string | number;\n /**\n * Base URL for the sandbox API\n */\n baseUrl?: string;\n /**\n * Keep the container alive indefinitely by preventing automatic shutdown\n * When true, the container will never auto-timeout and must be explicitly destroyed\n * - Any scenario where activity can't be automatically detected\n *\n * Important: You MUST call sandbox.destroy() when done to avoid resource leaks\n *\n * Default: false\n */\n keepAlive?: boolean;\n /**\n * Normalize sandbox ID to lowercase for preview URL compatibility\n *\n * Required for preview URLs because hostnames are case-insensitive (RFC 3986), which\n * would route requests to a different Durable Object instance with IDs containing uppercase letters.\n *\n * **Important:** Different normalizeId values create different Durable Object instances:\n * - `getSandbox(ns, \"MyProject\")` → DO key: \"MyProject\"\n * - `getSandbox(ns, \"MyProject\", {normalizeId: true})` → DO key: \"myproject\"\n *\n * **Future change:** In a future version, this will default to `true` (automatically lowercase all IDs).\n * IDs with uppercase letters will trigger a warning. To prepare, use lowercase IDs or explicitly\n * pass `normalizeId: true`.\n *\n * @example\n * getSandbox(ns, \"my-project\") // Works with preview URLs (lowercase)\n * getSandbox(ns, \"MyProject\", {normalizeId: true}) // Normalized to \"myproject\"\n *\n * @default false\n */\n normalizeId?: boolean;\n /**\n * Container startup timeout configuration\n *\n * Tune timeouts based on your container's characteristics. SDK defaults (30s instance, 90s ports)\n * work for most use cases. Adjust for heavy containers or fail-fast applications.\n *\n * Can also be configured via environment variables:\n * - SANDBOX_INSTANCE_TIMEOUT_MS\n * - SANDBOX_PORT_TIMEOUT_MS\n * - SANDBOX_POLL_INTERVAL_MS\n *\n * Precedence: options > env vars > SDK defaults\n *\n * @example\n * // Heavy containers (ML models, large apps)\n * getSandbox(ns, id, {\n * containerTimeouts: { portReadyTimeoutMS: 180_000 }\n * })\n *\n * @example\n * // Fail-fast for latency-sensitive apps\n * getSandbox(ns, id, {\n * containerTimeouts: {\n * instanceGetTimeoutMS: 15_000,\n * portReadyTimeoutMS: 30_000\n * }\n * })\n */\n containerTimeouts?: {\n /**\n * Time to wait for container instance provisioning\n * @default 30000 (30s) - or SANDBOX_INSTANCE_TIMEOUT_MS env var\n */\n instanceGetTimeoutMS?: number;\n /**\n * Time to wait for application startup and ports to be ready\n * @default 90000 (90s) - or SANDBOX_PORT_TIMEOUT_MS env var\n */\n portReadyTimeoutMS?: number;\n /**\n * How often to poll for container readiness\n * @default 1000 (1s) - or SANDBOX_POLL_INTERVAL_MS env var\n */\n waitIntervalMS?: number;\n };\n}\n/**\n * Execution session - isolated execution context within a sandbox\n * Returned by sandbox.createSession()\n * Provides the same API as ISandbox but bound to a specific session\n */\nexport interface MkdirResult {\n success: boolean;\n path: string;\n recursive: boolean;\n timestamp: string;\n exitCode?: number;\n}\nexport interface WriteFileResult {\n success: boolean;\n path: string;\n timestamp: string;\n exitCode?: number;\n}\nexport interface ReadFileResult {\n success: boolean;\n path: string;\n content: string;\n timestamp: string;\n exitCode?: number;\n /**\n * Encoding used for content (utf-8 for text, base64 for binary)\n */\n encoding?: 'utf-8' | 'base64';\n /**\n * Whether the file is detected as binary\n */\n isBinary?: boolean;\n /**\n * MIME type of the file (e.g., 'image/png', 'text/plain')\n */\n mimeType?: string;\n /**\n * File size in bytes\n */\n size?: number;\n}\nexport interface DeleteFileResult {\n success: boolean;\n path: string;\n timestamp: string;\n exitCode?: number;\n}\nexport interface RenameFileResult {\n success: boolean;\n path: string;\n newPath: string;\n timestamp: string;\n exitCode?: number;\n}\nexport interface MoveFileResult {\n success: boolean;\n path: string;\n newPath: string;\n timestamp: string;\n exitCode?: number;\n}\nexport interface FileExistsResult {\n success: boolean;\n path: string;\n exists: boolean;\n timestamp: string;\n}\nexport interface FileInfo {\n name: string;\n absolutePath: string;\n relativePath: string;\n type: 'file' | 'directory' | 'symlink' | 'other';\n size: number;\n modifiedAt: string;\n mode: string;\n permissions: {\n readable: boolean;\n writable: boolean;\n executable: boolean;\n };\n}\nexport interface ListFilesOptions {\n recursive?: boolean;\n includeHidden?: boolean;\n}\nexport interface ListFilesResult {\n success: boolean;\n path: string;\n files: FileInfo[];\n count: number;\n timestamp: string;\n exitCode?: number;\n}\nexport interface GitCheckoutResult {\n success: boolean;\n repoUrl: string;\n branch: string;\n targetDir: string;\n timestamp: string;\n exitCode?: number;\n}\n/**\n * SSE events for file streaming\n */\nexport type FileStreamEvent = {\n type: 'metadata';\n mimeType: string;\n size: number;\n isBinary: boolean;\n encoding: 'utf-8' | 'base64';\n} | {\n type: 'chunk';\n data: string;\n} | {\n type: 'complete';\n bytesRead: number;\n} | {\n type: 'error';\n error: string;\n};\n/**\n * File metadata from streaming\n */\nexport interface FileMetadata {\n mimeType: string;\n size: number;\n isBinary: boolean;\n encoding: 'utf-8' | 'base64';\n}\n/**\n * File stream chunk - either string (text) or Uint8Array (binary, auto-decoded)\n */\nexport type FileChunk = string | Uint8Array;\nexport interface ProcessStartResult {\n success: boolean;\n processId: string;\n pid?: number;\n command: string;\n timestamp: string;\n}\nexport interface ProcessListResult {\n success: boolean;\n processes: Array<{\n id: string;\n pid?: number;\n command: string;\n status: ProcessStatus;\n startTime: string;\n endTime?: string;\n exitCode?: number;\n }>;\n timestamp: string;\n}\nexport interface ProcessInfoResult {\n success: boolean;\n process: {\n id: string;\n pid?: number;\n command: string;\n status: ProcessStatus;\n startTime: string;\n endTime?: string;\n exitCode?: number;\n };\n timestamp: string;\n}\nexport interface ProcessKillResult {\n success: boolean;\n processId: string;\n signal?: string;\n timestamp: string;\n}\nexport interface ProcessLogsResult {\n success: boolean;\n processId: string;\n stdout: string;\n stderr: string;\n timestamp: string;\n}\nexport interface ProcessCleanupResult {\n success: boolean;\n cleanedCount: number;\n timestamp: string;\n}\nexport interface SessionCreateResult {\n success: boolean;\n sessionId: string;\n name?: string;\n cwd?: string;\n timestamp: string;\n}\nexport interface SessionDeleteResult {\n success: boolean;\n sessionId: string;\n timestamp: string;\n}\nexport interface EnvSetResult {\n success: boolean;\n timestamp: string;\n}\nexport interface PortExposeResult {\n success: boolean;\n port: number;\n url: string;\n timestamp: string;\n}\nexport interface PortStatusResult {\n success: boolean;\n port: number;\n status: 'active' | 'inactive';\n url?: string;\n timestamp: string;\n}\nexport interface PortListResult {\n success: boolean;\n ports: Array<{\n port: number;\n url: string;\n status: 'active' | 'inactive';\n }>;\n timestamp: string;\n}\nexport interface PortCloseResult {\n success: boolean;\n port: number;\n timestamp: string;\n}\nexport interface InterpreterHealthResult {\n success: boolean;\n status: 'healthy' | 'unhealthy';\n timestamp: string;\n}\nexport interface ContextCreateResult {\n success: boolean;\n contextId: string;\n language: string;\n cwd?: string;\n timestamp: string;\n}\nexport interface ContextListResult {\n success: boolean;\n contexts: Array<{\n id: string;\n language: string;\n cwd?: string;\n }>;\n timestamp: string;\n}\nexport interface ContextDeleteResult {\n success: boolean;\n contextId: string;\n timestamp: string;\n}\nexport interface HealthCheckResult {\n success: boolean;\n status: 'healthy' | 'unhealthy';\n timestamp: string;\n}\nexport interface ShutdownResult {\n success: boolean;\n message: string;\n timestamp: string;\n}\nexport interface ExecutionSession {\n /** Unique session identifier */\n readonly id: string;\n exec(command: string, options?: ExecOptions): Promise<ExecResult>;\n execStream(command: string, options?: StreamOptions): Promise<ReadableStream<Uint8Array>>;\n startProcess(command: string, options?: ProcessOptions): Promise<Process>;\n listProcesses(): Promise<Process[]>;\n getProcess(id: string): Promise<Process | null>;\n killProcess(id: string, signal?: string): Promise<void>;\n killAllProcesses(): Promise<number>;\n cleanupCompletedProcesses(): Promise<number>;\n getProcessLogs(id: string): Promise<{\n stdout: string;\n stderr: string;\n processId: string;\n }>;\n streamProcessLogs(processId: string, options?: {\n signal?: AbortSignal;\n }): Promise<ReadableStream<Uint8Array>>;\n writeFile(path: string, content: string, options?: {\n encoding?: string;\n }): Promise<WriteFileResult>;\n readFile(path: string, options?: {\n encoding?: string;\n }): Promise<ReadFileResult>;\n readFileStream(path: string): Promise<ReadableStream<Uint8Array>>;\n mkdir(path: string, options?: {\n recursive?: boolean;\n }): Promise<MkdirResult>;\n deleteFile(path: string): Promise<DeleteFileResult>;\n renameFile(oldPath: string, newPath: string): Promise<RenameFileResult>;\n moveFile(sourcePath: string, destinationPath: string): Promise<MoveFileResult>;\n listFiles(path: string, options?: ListFilesOptions): Promise<ListFilesResult>;\n exists(path: string): Promise<FileExistsResult>;\n gitCheckout(repoUrl: string, options?: {\n branch?: string;\n targetDir?: string;\n }): Promise<GitCheckoutResult>;\n setEnvVars(envVars: Record<string, string>): Promise<void>;\n createCodeContext(options?: CreateContextOptions): Promise<CodeContext>;\n runCode(code: string, options?: RunCodeOptions): Promise<ExecutionResult>;\n runCodeStream(code: string, options?: RunCodeOptions): Promise<ReadableStream<Uint8Array>>;\n listCodeContexts(): Promise<CodeContext[]>;\n deleteCodeContext(contextId: string): Promise<void>;\n mountBucket(bucket: string, mountPath: string, options: MountBucketOptions): Promise<void>;\n unmountBucket(mountPath: string): Promise<void>;\n}\n/**\n * Supported S3-compatible storage providers\n */\nexport type BucketProvider = 'r2' | 's3' | 'gcs';\n/**\n * Credentials for S3-compatible storage\n */\nexport interface BucketCredentials {\n accessKeyId: string;\n secretAccessKey: string;\n}\n/**\n * Options for mounting an S3-compatible bucket\n */\nexport interface MountBucketOptions {\n /**\n * S3-compatible endpoint URL\n *\n * Examples:\n * - R2: 'https://abc123.r2.cloudflarestorage.com'\n * - AWS S3: 'https://s3.us-west-2.amazonaws.com'\n * - GCS: 'https://storage.googleapis.com'\n *\n * Required field\n */\n endpoint: string;\n /**\n * Optional provider hint for automatic s3fs flag configuration\n * If not specified, will attempt to detect from endpoint URL.\n *\n * Examples:\n * - 'r2' - Cloudflare R2 (adds nomixupload)\n * - 's3' - Amazon S3 (standard configuration)\n * - 'gcs' - Google Cloud Storage (no special flags needed)\n */\n provider?: BucketProvider;\n /**\n * Explicit credentials (overrides env var auto-detection)\n */\n credentials?: BucketCredentials;\n /**\n * Mount filesystem as read-only\n * Default: false\n */\n readOnly?: boolean;\n /**\n * Advanced: Override or extend s3fs options\n *\n * These will be merged with provider-specific defaults.\n * To override defaults completely, specify all options here.\n *\n * Common options:\n * - 'use_path_request_style' - Use path-style URLs (bucket/path vs bucket.host/path)\n * - 'nomixupload' - Disable mixed multipart uploads (needed for some providers)\n * - 'nomultipart' - Disable all multipart operations\n * - 'sigv2' - Use signature version 2 instead of v4\n * - 'no_check_certificate' - Skip SSL certificate validation (dev/testing only)\n */\n s3fsOptions?: string[];\n}\nexport interface ISandbox {\n exec(command: string, options?: ExecOptions): Promise<ExecResult>;\n startProcess(command: string, options?: ProcessOptions): Promise<Process>;\n listProcesses(): Promise<Process[]>;\n getProcess(id: string): Promise<Process | null>;\n killProcess(id: string, signal?: string): Promise<void>;\n killAllProcesses(): Promise<number>;\n execStream(command: string, options?: StreamOptions): Promise<ReadableStream<Uint8Array>>;\n streamProcessLogs(processId: string, options?: {\n signal?: AbortSignal;\n }): Promise<ReadableStream<Uint8Array>>;\n cleanupCompletedProcesses(): Promise<number>;\n getProcessLogs(id: string): Promise<{\n stdout: string;\n stderr: string;\n processId: string;\n }>;\n writeFile(path: string, content: string, options?: {\n encoding?: string;\n }): Promise<WriteFileResult>;\n readFile(path: string, options?: {\n encoding?: string;\n }): Promise<ReadFileResult>;\n readFileStream(path: string): Promise<ReadableStream<Uint8Array>>;\n mkdir(path: string, options?: {\n recursive?: boolean;\n }): Promise<MkdirResult>;\n deleteFile(path: string): Promise<DeleteFileResult>;\n renameFile(oldPath: string, newPath: string): Promise<RenameFileResult>;\n moveFile(sourcePath: string, destinationPath: string): Promise<MoveFileResult>;\n listFiles(path: string, options?: ListFilesOptions): Promise<ListFilesResult>;\n exists(path: string, sessionId?: string): Promise<FileExistsResult>;\n gitCheckout(repoUrl: string, options?: {\n branch?: string;\n targetDir?: string;\n }): Promise<GitCheckoutResult>;\n setEnvVars(envVars: Record<string, string>): Promise<void>;\n mountBucket(bucket: string, mountPath: string, options: MountBucketOptions): Promise<void>;\n unmountBucket(mountPath: string): Promise<void>;\n createSession(options?: SessionOptions): Promise<ExecutionSession>;\n deleteSession(sessionId: string): Promise<SessionDeleteResult>;\n createCodeContext(options?: CreateContextOptions): Promise<CodeContext>;\n runCode(code: string, options?: RunCodeOptions): Promise<ExecutionResult>;\n runCodeStream(code: string, options?: RunCodeOptions): Promise<ReadableStream>;\n listCodeContexts(): Promise<CodeContext[]>;\n deleteCodeContext(contextId: string): Promise<void>;\n wsConnect(request: Request, port: number): Promise<Response>;\n}\nexport declare function isExecResult(value: any): value is ExecResult;\nexport declare function isProcess(value: any): value is Process;\nexport declare function isProcessStatus(value: string): value is ProcessStatus;\nexport type { ChartData, CodeContext, CreateContextOptions, ExecutionError, ExecutionResult, OutputMessage, Result, RunCodeOptions } from './interpreter-types';\nexport { Execution, ResultImpl } from './interpreter-types';\n//# sourceMappingURL=types.d.ts.map"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudflare/sandbox",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.7",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/cloudflare/sandbox-sdk"
|
|
@@ -41,7 +41,8 @@
|
|
|
41
41
|
"typecheck": "tsc --noEmit",
|
|
42
42
|
"docker:local": "cd ../.. && docker build -f packages/sandbox/Dockerfile --target default --platform linux/amd64 --build-arg SANDBOX_VERSION=$npm_package_version -t cloudflare/sandbox-test:$npm_package_version . && docker build -f packages/sandbox/Dockerfile --target python --platform linux/amd64 --build-arg SANDBOX_VERSION=$npm_package_version -t cloudflare/sandbox-test:$npm_package_version-python . && docker build -f packages/sandbox/Dockerfile --target opencode --platform linux/amd64 --build-arg SANDBOX_VERSION=$npm_package_version -t cloudflare/sandbox-test:$npm_package_version-opencode . && cd tests/e2e/test-worker && sed -E \"s|cloudflare/sandbox-test:[0-9]+\\.[0-9]+\\.[0-9]+|cloudflare/sandbox-test:$npm_package_version|g\" Dockerfile.standalone > Dockerfile.standalone.tmp && docker build -f Dockerfile.standalone.tmp --platform linux/amd64 -t cloudflare/sandbox-test:$npm_package_version-standalone . && rm Dockerfile.standalone.tmp",
|
|
43
43
|
"test": "vitest run --config vitest.config.ts \"$@\"",
|
|
44
|
-
"test:e2e": "cd ../../tests/e2e/test-worker && ./generate-config.sh && cd ../../.. && vitest run --config vitest.e2e.config.ts \"$@\""
|
|
44
|
+
"test:e2e": "cd ../../tests/e2e/test-worker && ./generate-config.sh && cd ../../.. && vitest run --config vitest.e2e.config.ts \"$@\"",
|
|
45
|
+
"test:perf": "cd ../.. && vitest run --config vitest.perf.config.ts \"$@\""
|
|
45
46
|
},
|
|
46
47
|
"exports": {
|
|
47
48
|
".": {
|