@cloudflare/sandbox 0.8.11 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -744,10 +744,6 @@ interface SandboxOptions {
744
744
  * Note: Ignored when keepAlive is true
745
745
  */
746
746
  sleepAfter?: string | number;
747
- /**
748
- * Base URL for the sandbox API
749
- */
750
- baseUrl?: string;
751
747
  /**
752
748
  * Keep the container alive indefinitely by preventing automatic shutdown
753
749
  * When true, the container will never auto-timeout and must be explicitly destroyed
@@ -824,6 +820,23 @@ interface SandboxOptions {
824
820
  */
825
821
  waitIntervalMS?: number;
826
822
  };
823
+ /**
824
+ * Transport protocol for communication between the Sandbox DO and the container runtime.
825
+ *
826
+ * - `"http"` (default): Standard HTTP request/response. Works everywhere.
827
+ * - `"websocket"`: Multiplexes requests over a single WebSocket connection,
828
+ * avoiding sub-request limits in Workers and Durable Objects.
829
+ *
830
+ * When set via `getSandbox()` options, this overrides the `SANDBOX_TRANSPORT` env var.
831
+ *
832
+ * **Important:** Set this once at creation time and pass the same value on every
833
+ * subsequent `getSandbox()` call for a given sandbox ID. Changing the transport after
834
+ * the sandbox is in use disconnects the active client, which drops any in-flight
835
+ * requests and resets WebSocket connections.
836
+ *
837
+ * @default "http"
838
+ */
839
+ transport?: 'http' | 'websocket';
827
840
  }
828
841
  /**
829
842
  * Execution session - isolated execution context within a sandbox
@@ -1215,6 +1228,12 @@ interface BackupOptions {
1215
1228
  * @example ['node_modules', '*.log', '.cache']
1216
1229
  */
1217
1230
  excludes?: string[];
1231
+ /**
1232
+ * Use local R2 binding for backup storage instead of presigned URLs.
1233
+ * Required for local development where presigned URLs and FUSE are unavailable.
1234
+ * When true, the DO resolves BACKUP_BUCKET from its own env as an R2 binding.
1235
+ */
1236
+ localBucket?: boolean;
1218
1237
  }
1219
1238
  /**
1220
1239
  * Handle representing a stored directory backup.
@@ -1226,6 +1245,8 @@ interface DirectoryBackup {
1226
1245
  readonly id: string;
1227
1246
  /** Directory to restore into. Must be under `/workspace`, `/home`, `/tmp`, `/var/tmp`, or `/app`. */
1228
1247
  readonly dir: string;
1248
+ /** Whether this backup was created with local R2 binding mode. */
1249
+ readonly localBucket?: boolean;
1229
1250
  }
1230
1251
  /**
1231
1252
  * Result returned from a successful restoreBackup() call
@@ -2294,10 +2315,10 @@ type SandboxConfiguration = {
2294
2315
  name: string;
2295
2316
  normalizeId?: boolean;
2296
2317
  };
2297
- baseUrl?: string;
2298
2318
  sleepAfter?: string | number;
2299
2319
  keepAlive?: boolean;
2300
2320
  containerTimeouts?: NonNullable<SandboxOptions['containerTimeouts']>;
2321
+ transport?: 'http' | 'websocket';
2301
2322
  };
2302
2323
  declare function getSandbox<T extends Sandbox<any>>(ns: DurableObjectNamespace<T>, id: string, options?: SandboxOptions): T;
2303
2324
  declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox {
@@ -2307,13 +2328,21 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
2307
2328
  private codeInterpreter;
2308
2329
  private sandboxName;
2309
2330
  private normalizeId;
2310
- private baseUrl;
2311
2331
  private defaultSession;
2332
+ private containerGeneration;
2333
+ private defaultSessionInit;
2312
2334
  envVars: Record<string, string>;
2313
2335
  private logger;
2314
2336
  private keepAliveEnabled;
2315
2337
  private activeMounts;
2316
2338
  private transport;
2339
+ /**
2340
+ * True once transport has been written to storage at least once (either
2341
+ * via setTransport or restored on cold start). Gates the idempotency
2342
+ * check so a first explicit call persists even when the requested value
2343
+ * already equals the env-derived in-memory default.
2344
+ */
2345
+ private hasStoredTransport;
2317
2346
  private backupBucket;
2318
2347
  /**
2319
2348
  * Serializes backup operations to prevent concurrent create/restore on the same sandbox.
@@ -2342,6 +2371,15 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
2342
2371
  * Can be set via options, env vars, or defaults
2343
2372
  */
2344
2373
  private containerTimeouts;
2374
+ /**
2375
+ * True once containerTimeouts has been written to storage at least once
2376
+ * (either via setContainerTimeouts or restored on cold start). Gates the
2377
+ * idempotency check in setContainerTimeouts so a first explicit call
2378
+ * persists even when the requested values already equal the in-memory
2379
+ * defaults, distinguishing "user intent recorded" from "running on
2380
+ * env/SDK defaults".
2381
+ */
2382
+ private hasStoredContainerTimeouts;
2345
2383
  /**
2346
2384
  * Desktop environment operations.
2347
2385
  * Within the DO, this getter provides direct access to DesktopClient.
@@ -2377,14 +2415,23 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
2377
2415
  constructor(ctx: DurableObjectState<{}>, env: Env);
2378
2416
  setSandboxName(name: string, normalizeId?: boolean): Promise<void>;
2379
2417
  configure(configuration: SandboxConfiguration): Promise<void>;
2380
- setBaseUrl(baseUrl: string): Promise<void>;
2381
2418
  setSleepAfter(sleepAfter: string | number): Promise<void>;
2382
2419
  setKeepAlive(keepAlive: boolean): Promise<void>;
2383
2420
  setEnvVars(envVars: Record<string, string | undefined>): Promise<void>;
2384
2421
  /**
2385
- * RPC method to configure container startup timeouts
2422
+ * RPC method to configure container startup timeouts. Idempotent once
2423
+ * the values have been persisted: re-applying the same timeout set is a
2424
+ * no-op. The transport retry budget is recomputed only when at least
2425
+ * one timeout actually changes. Storage is written before the in-memory
2426
+ * mirror and derived state are updated.
2386
2427
  */
2387
2428
  setContainerTimeouts(timeouts: NonNullable<SandboxOptions['containerTimeouts']>): Promise<void>;
2429
+ /**
2430
+ * RPC method to set the transport protocol. Idempotent once the value
2431
+ * has been persisted: re-applying the same transport is a no-op.
2432
+ * Storage is written before the in-memory state and client are updated.
2433
+ */
2434
+ setTransport(transport: 'http' | 'websocket'): Promise<void>;
2388
2435
  /**
2389
2436
  * Validate a timeout value is within acceptable range
2390
2437
  * Throws error if invalid - used for user-provided values
@@ -2449,7 +2496,26 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
2449
2496
  * Cleanup and destroy the sandbox container
2450
2497
  */
2451
2498
  destroy(): Promise<void>;
2452
- onStart(): void;
2499
+ onStart(): Promise<void>;
2500
+ /**
2501
+ * Re-expose ports on the container runtime using tokens persisted in DO
2502
+ * storage. Called from onStart() after a container (re)start.
2503
+ *
2504
+ * The DO storage holds the source of truth for which ports should be
2505
+ * exposed, which tokens authorize them, and the friendly name (if any)
2506
+ * that the caller set when first exposing the port. If a port is already
2507
+ * exposed on the container this is a no-op for that port. Individual port
2508
+ * failures are logged but do not abort the overall restore — a transient
2509
+ * failure for one port must not prevent the others from being restored.
2510
+ */
2511
+ private restoreExposedPorts;
2512
+ /**
2513
+ * Read the `portTokens` map from DO storage, normalizing the legacy
2514
+ * string-valued format (just a token) to the current object format
2515
+ * ({ token, name? }). The legacy format predates port-name persistence and
2516
+ * can appear on any DO whose storage was written before that change.
2517
+ */
2518
+ private readPortTokens;
2453
2519
  /**
2454
2520
  * Check if the container version matches the SDK version
2455
2521
  * Logs a warning if there's a mismatch
@@ -2508,14 +2574,13 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
2508
2574
  wsConnect(request: Request, port: number): Promise<Response>;
2509
2575
  private determinePort;
2510
2576
  /**
2511
- * Ensure default session exists - lazy initialization
2512
- * This is called automatically by all public methods that need a session
2513
- *
2514
- * The session ID is persisted to DO storage. On container restart, if the
2515
- * container already has this session (from a previous instance), we sync
2516
- * our state rather than failing on duplicate creation.
2577
+ * Return the default session id, lazily creating the container session
2578
+ * on first use. Called by every public method that needs a session.
2579
+ * Concurrent callers that target the same sessionId share one
2580
+ * in-flight initialization promise.
2517
2581
  */
2518
2582
  private ensureDefaultSession;
2583
+ private initializeDefaultSession;
2519
2584
  exec(command: string, options?: ExecOptions): Promise<ExecResult>;
2520
2585
  /**
2521
2586
  * Execute an infrastructure command (backup, mount, env setup, etc.)
@@ -2674,6 +2739,12 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
2674
2739
  /**
2675
2740
  * Expose a port and get a preview URL for accessing services running in the sandbox
2676
2741
  *
2742
+ * Preview URLs survive transient container restarts: the token and any
2743
+ * friendly name are persisted in Durable Object storage, and the port is
2744
+ * automatically re-exposed on the container when it comes back up. Tokens
2745
+ * are cleared only on explicit `unexposePort()` or full sandbox
2746
+ * `destroy()`.
2747
+ *
2677
2748
  * @param port - Port number to expose (1024-65535)
2678
2749
  * @param options - Configuration options
2679
2750
  * @param options.hostname - Your Worker's domain name (required for preview URL construction)
@@ -2772,11 +2843,6 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
2772
2843
  * All credential fields plus the R2 binding are required for backup to work.
2773
2844
  */
2774
2845
  private requirePresignedUrlSupport;
2775
- /**
2776
- * Generate a presigned GET URL for downloading an object from R2.
2777
- * The container can curl this URL directly without credentials.
2778
- */
2779
- private generatePresignedGetUrl;
2780
2846
  /**
2781
2847
  * Generate a presigned PUT URL for uploading an object to R2.
2782
2848
  * The container can curl PUT to this URL directly without credentials.
@@ -2822,10 +2888,16 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
2822
2888
  */
2823
2889
  createBackup(options: BackupOptions): Promise<DirectoryBackup>;
2824
2890
  private doCreateBackup;
2891
+ /**
2892
+ * Local-dev implementation of createBackup.
2893
+ * Uses the R2 binding directly instead of presigned URLs.
2894
+ * Archive format is identical to production (squashfs + meta.json).
2895
+ */
2896
+ private doCreateBackupLocal;
2825
2897
  /**
2826
2898
  * Restore a backup from R2 into a directory.
2827
2899
  *
2828
- * Flow:
2900
+ * **Production flow** (`localBucket` not set):
2829
2901
  * 1. DO reads metadata from R2 and checks TTL
2830
2902
  * 2. Container mounts the backup archive from R2 via s3fs
2831
2903
  * 3. Container mounts the squashfs archive with FUSE overlayfs
@@ -2840,6 +2912,11 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
2840
2912
  * backup handle to recover. This is an ephemeral restore, not a persistent
2841
2913
  * extraction.
2842
2914
  *
2915
+ * **Local-dev flow** (`localBucket: true` on the originating `createBackup` call):
2916
+ * 1. DO reads metadata and checks TTL via R2 binding
2917
+ * 2. DO downloads the archive from R2 and writes it to the container
2918
+ * 3. Container extracts the archive with `unsquashfs` (no FUSE needed)
2919
+ *
2843
2920
  * The backup is restored into `backup.dir`. This may differ from the
2844
2921
  * directory that was originally backed up, allowing cross-directory restore.
2845
2922
  *
@@ -2851,7 +2928,13 @@ declare class Sandbox<Env = unknown> extends Container<Env> implements ISandbox
2851
2928
  */
2852
2929
  restoreBackup(backup: DirectoryBackup): Promise<RestoreBackupResult>;
2853
2930
  private doRestoreBackup;
2931
+ /**
2932
+ * Local-dev implementation of restoreBackup.
2933
+ * Uses the R2 binding directly instead of presigned URLs, and
2934
+ * unsquashfs for extraction instead of squashfuse + fuse-overlayfs.
2935
+ */
2936
+ private doRestoreBackupLocal;
2854
2937
  }
2855
2938
  //#endregion
2856
2939
  export { CheckChangesOptions as $, DesktopStopResponse as A, SandboxOptions as At, ExecuteResponse as B, ExposePortRequest as Bt, ClickOptions as C, ProcessListResult as Ct, DesktopStartOptions as D, ProcessStatus as Dt, DesktopClient as E, ProcessStartResult as Et, ScreenshotRegion as F, WatchOptions as Ft, HttpClientOptions as G, Execution as Gt, BaseApiResponse as H, PtyOptions as Ht, ScreenshotResponse as I, isExecResult as It, SessionRequest as J, RequestConfig as K, ExecutionResult as Kt, ScrollDirection as L, isProcess as Lt, ScreenSizeResponse as M, StreamOptions as Mt, ScreenshotBytesResponse as N, WaitForLogResult as Nt, DesktopStartResponse as O, RemoteMountBucketOptions as Ot, ScreenshotOptions as P, WaitForPortOptions as Pt, BucketProvider as Q, TypeOptions as R, isProcessStatus as Rt, WriteFileRequest as S, ProcessKillResult as St, Desktop as T, ProcessOptions as Tt, ContainerStub as U, CodeContext as Ut, BackupClient as V, StartProcessRequest as Vt, ErrorResponse as W, CreateContextOptions as Wt, BaseExecOptions as X, BackupOptions as Y, BucketCredentials as Z, GitClient as _, PortExposeResult as _t, CreateSessionRequest as a, ExecutionSession as at, MkdirRequest as b, ProcessCleanupResult as bt, DeleteSessionResponse as c, FileStreamEvent as ct, ProcessClient as d, ISandbox as dt, CheckChangesResult as et, PortClient as f, ListFilesOptions as ft, GitCheckoutRequest as g, PortCloseResult as gt, InterpreterClient as h, MountBucketOptions as ht, CommandsResponse as i, ExecResult as it, KeyInput as j, SessionOptions as jt, DesktopStatusResponse as k, RestoreBackupResult as kt, PingResponse as l, FileWatchSSEEvent as lt, ExecutionCallbacks as m, LogEvent as mt, getSandbox as n, ExecEvent as nt, CreateSessionResponse as o, FileChunk as ot, UnexposePortRequest as p, LocalMountBucketOptions as pt, ResponseHandler as q, RunCodeOptions as qt, SandboxClient as r, ExecOptions as rt, DeleteSessionRequest as s, FileMetadata as st, Sandbox as t, DirectoryBackup as tt, UtilityClient as u, GitCheckoutResult as ut, FileClient as v, PortListResult as vt, CursorPositionResponse as w, ProcessLogsResult as wt, ReadFileRequest as x, ProcessInfoResult as xt, FileOperationRequest as y, Process as yt, CommandClient as z, ExecuteRequest as zt };
2857
- //# sourceMappingURL=sandbox-C0Tjs0dj.d.ts.map
2940
+ //# sourceMappingURL=sandbox-Chr1Ebo-.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox-Chr1Ebo-.d.ts","names":["LogLevel","LogComponent","LogContext","Logger","Partial","Error","CreateContextOptions","Record","CodeContext","Date","RunCodeOptions","AbortSignal","OutputMessage","Promise","Result","ExecutionError","ChartData","ExecutionResult","Array","Execution","ResultImpl","PtyOptions","PtyControlMessage","PtyStatusMessage","ExecuteRequest","Record","StartProcessRequest","ReadFileRequest","WriteFileRequest","DeleteFileRequest","RenameFileRequest","MoveFileRequest","MkdirRequest","FileExistsRequest","ExposePortRequest","GitCheckoutRequest","ListFilesRequest","SessionCreateRequest","SessionDeleteRequest","CreateBackupRequest","CreateBackupResponse","RestoreBackupRequest","RestoreBackupResponse","CodeContext","CreateContextOptions","ExecutionResult","RunCodeOptions","PtyOptions","Disposable","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","WatchOptions","CheckChangesOptions","FileWatchEventType","WatchRequest","CheckChangesRequest","FileWatchSSEEvent","CheckChangesResult","ProcessStartResult","ProcessListResult","Array","ProcessInfoResult","ProcessKillResult","ProcessLogsResult","ProcessCleanupResult","SessionCreateResult","SessionDeleteResult","EnvSetResult","PortExposeResult","PortStatusResult","PortListResult","PortCloseResult","InterpreterHealthResult","ContextCreateResult","ContextListResult","ContextDeleteResult","HealthCheckResult","ShutdownResult","ExecutionSession","ReadableStream","Omit","MountBucketOptions","BackupOptions","DirectoryBackup","RestoreBackupResult","Request","Response","BucketProvider","BucketCredentials","RemoteMountBucketOptions","LocalMountBucketOptions","ISandbox","isExecResult","isProcess","isProcessStatus","ChartData","ExecutionError","OutputMessage","Result","Execution","ResultImpl"],"sources":["../../shared/dist/logger/types.d.ts","../../shared/dist/interpreter-types.d.ts","../../shared/dist/pty-types.d.ts","../../shared/dist/request-types.d.ts","../../shared/dist/types.d.ts","../src/clients/types.ts","../src/clients/transport/types.ts","../src/clients/base-client.ts","../src/clients/backup-client.ts","../src/clients/command-client.ts","../src/clients/desktop-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/watch-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 * Duration in milliseconds\n */\n durationMs?: number;\n /**\n * Service version (from SANDBOX_VERSION env var)\n */\n serviceVersion?: string;\n /**\n * Instance identifier (hostname or container ID)\n */\n instanceId?: string;\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 request-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({ commandId: 'cmd-456' });\n * execLogger.info('Command started'); // Includes all context: component, traceId, 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 * Undefined values are skipped (treated as \"not configured\").\n */\n envVars?: Record<string, string | undefined>;\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 * Undefined values are skipped (treated as \"not configured\").\n */\n envVars?: Record<string, string | undefined>;\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","export interface PtyOptions {\n cols?: number;\n rows?: number;\n shell?: string;\n}\nexport type PtyControlMessage = {\n type: 'resize';\n cols: number;\n rows: number;\n};\nexport type PtyStatusMessage = {\n type: 'ready';\n} | {\n type: 'exit';\n code: number;\n signal?: string;\n} | {\n type: 'error';\n message: string;\n};\n//# sourceMappingURL=pty-types.d.ts.map","/**\n * Request types for API calls to the container\n * Single source of truth for the contract between SDK clients and container handlers\n */\n/**\n * Request to execute a command\n */\nexport interface ExecuteRequest {\n command: string;\n sessionId?: string;\n background?: boolean;\n timeoutMs?: number;\n env?: Record<string, string | undefined>;\n cwd?: string;\n origin?: 'user' | 'internal';\n}\n/**\n * Request to start a background process\n * Uses flat structure consistent with other endpoints\n */\nexport interface StartProcessRequest {\n command: string;\n sessionId?: string;\n processId?: string;\n timeoutMs?: number;\n env?: Record<string, string | undefined>;\n cwd?: string;\n encoding?: string;\n autoCleanup?: boolean;\n origin?: 'user' | 'internal';\n}\n/**\n * Request to read a file\n */\nexport interface ReadFileRequest {\n path: string;\n encoding?: string;\n sessionId?: string;\n}\n/**\n * Request to write a file\n */\nexport interface WriteFileRequest {\n path: string;\n content: string;\n encoding?: string;\n sessionId?: string;\n}\n/**\n * Request to delete a file\n */\nexport interface DeleteFileRequest {\n path: string;\n sessionId?: string;\n}\n/**\n * Request to rename a file\n */\nexport interface RenameFileRequest {\n oldPath: string;\n newPath: string;\n sessionId?: string;\n}\n/**\n * Request to move a file\n */\nexport interface MoveFileRequest {\n sourcePath: string;\n destinationPath: string;\n sessionId?: string;\n}\n/**\n * Request to create a directory\n */\nexport interface MkdirRequest {\n path: string;\n recursive?: boolean;\n sessionId?: string;\n}\n/**\n * Request to check if a file or directory exists\n */\nexport interface FileExistsRequest {\n path: string;\n sessionId?: string;\n}\n/**\n * Request to expose a port\n */\nexport interface ExposePortRequest {\n port: number;\n name?: string;\n}\n/**\n * Request to clone a Git repository\n */\nexport interface GitCheckoutRequest {\n repoUrl: string;\n branch?: string;\n targetDir?: string;\n sessionId?: string;\n /** Clone depth for shallow clones (e.g., 1 for latest commit only) */\n depth?: number;\n /** Maximum wall-clock time for the git clone subprocess in milliseconds */\n timeoutMs?: number;\n}\n/**\n * Request to list files in a directory\n */\nexport interface ListFilesRequest {\n path: string;\n options?: {\n recursive?: boolean;\n includeHidden?: boolean;\n };\n sessionId?: string;\n}\n/**\n * Request to create a session\n */\nexport interface SessionCreateRequest {\n id?: string;\n name?: string;\n env?: Record<string, string | undefined>;\n cwd?: string;\n}\n/**\n * Request to delete a session\n */\nexport interface SessionDeleteRequest {\n sessionId: string;\n}\n/**\n * Request to create a backup archive from a directory.\n * The container creates a squashfs archive at archivePath.\n * The DO then reads it and uploads to R2.\n */\nexport interface CreateBackupRequest {\n /** Directory to back up */\n dir: string;\n /** Path where the container should write the archive */\n archivePath: string;\n /** Respect git ignore rules when the directory is inside a git repository */\n gitignore?: boolean;\n /** Glob patterns to exclude from the backup */\n excludes?: string[];\n sessionId?: string;\n}\n/**\n * Response from the container after creating a backup archive\n */\nexport interface CreateBackupResponse {\n success: boolean;\n /** Size of the archive in bytes */\n sizeBytes: number;\n /** Path to the archive file in the container */\n archivePath: string;\n}\n/**\n * Request to restore a backup from an archive file.\n * The DO writes the archive to archivePath first, then tells the container to extract it.\n */\nexport interface RestoreBackupRequest {\n /** Directory to restore into */\n dir: string;\n /** Path to the archive file in the container */\n archivePath: string;\n sessionId?: string;\n}\n/**\n * Response from the container after restoring a backup\n */\nexport interface RestoreBackupResponse {\n success: boolean;\n /** Directory that was restored */\n dir: string;\n}\n//# sourceMappingURL=request-types.d.ts.map","import type { CodeContext, CreateContextOptions, ExecutionResult, RunCodeOptions } from './interpreter-types';\nimport type { PtyOptions } from './pty-types';\n/**\n * Represents a disposable resource with a cleanup function.\n * Common pattern used by VS Code, xterm.js, RxJS, and others.\n */\nexport interface Disposable {\n dispose(): void;\n}\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 * Undefined values are skipped (treated as \"not configured\").\n */\n env?: Record<string, string | undefined>;\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 /**\n * Whether this command was initiated by the user or by internal\n * infrastructure (backup, bucket mount, env setup, etc.).\n * Defaults to 'user' when omitted.\n */\n origin?: 'user' | 'internal';\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 * Undefined values are skipped (treated as \"not configured\").\n */\n env?: Record<string, string | undefined>;\n /**\n * Working directory\n */\n cwd?: string;\n /**\n * Enable PID namespace isolation (requires CAP_SYS_ADMIN)\n */\n isolation?: boolean;\n /**\n * Maximum amount of time a command can run in milliseconds\n */\n commandTimeoutMs?: number;\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 * 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 300 (300ms) - or SANDBOX_POLL_INTERVAL_MS env var\n */\n waitIntervalMS?: number;\n };\n /**\n * Transport protocol for communication between the Sandbox DO and the container runtime.\n *\n * - `\"http\"` (default): Standard HTTP request/response. Works everywhere.\n * - `\"websocket\"`: Multiplexes requests over a single WebSocket connection,\n * avoiding sub-request limits in Workers and Durable Objects.\n *\n * When set via `getSandbox()` options, this overrides the `SANDBOX_TRANSPORT` env var.\n *\n * **Important:** Set this once at creation time and pass the same value on every\n * subsequent `getSandbox()` call for a given sandbox ID. Changing the transport after\n * the sandbox is in use disconnects the active client, which drops any in-flight\n * requests and resets WebSocket connections.\n *\n * @default \"http\"\n */\n transport?: 'http' | 'websocket';\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;\n/**\n * Options for watching a directory.\n *\n * `watch()` resolves only after the watcher is established on the filesystem.\n * The returned SSE stream can be consumed with `parseSSEStream()`.\n */\nexport interface WatchOptions {\n /**\n * Watch subdirectories recursively\n * @default true\n */\n recursive?: boolean;\n /**\n * Glob patterns to include (e.g., '*.ts', '*.js').\n * If not specified, all files are included.\n * Cannot be used together with `exclude`.\n */\n include?: string[];\n /**\n * Glob patterns to exclude (e.g., 'node_modules', '.git').\n * Cannot be used together with `include`.\n * @default ['.git', 'node_modules', '.DS_Store']\n */\n exclude?: string[];\n /**\n * Session to run the watch in.\n * If omitted, the default session is used.\n */\n sessionId?: string;\n}\n/**\n * Options for checking whether a path changed while disconnected.\n *\n * Pass the `version` returned from a previous `checkChanges()` call to learn\n * whether the path is unchanged, changed, or needs a full resync because the\n * retained change state was reset. Change state lives only for the current\n * container lifetime and may expire while idle.\n */\nexport interface CheckChangesOptions extends WatchOptions {\n /**\n * Version returned by a previous `checkChanges()` call.\n */\n since?: string;\n}\n/**\n * @internal SSE event types for container communication\n */\nexport type FileWatchEventType = 'create' | 'modify' | 'delete' | 'move_from' | 'move_to' | 'attrib';\n/**\n * @internal Request body for starting a file watch\n */\nexport interface WatchRequest {\n path: string;\n recursive?: boolean;\n events?: FileWatchEventType[];\n include?: string[];\n exclude?: string[];\n sessionId?: string;\n}\n/**\n * @internal Request body for checking retained change state.\n */\nexport interface CheckChangesRequest extends WatchRequest {\n since?: string;\n}\n/**\n * SSE events emitted by `sandbox.watch()`.\n */\nexport type FileWatchSSEEvent = {\n type: 'watching';\n path: string;\n watchId: string;\n} | {\n type: 'event';\n eventType: FileWatchEventType;\n path: string;\n isDirectory: boolean;\n timestamp: string;\n} | {\n type: 'error';\n error: string;\n} | {\n type: 'stopped';\n reason: string;\n};\n/**\n * Result returned by `checkChanges()`.\n */\nexport type CheckChangesResult = {\n success: true;\n status: 'unchanged' | 'changed';\n version: string;\n timestamp: string;\n} | {\n success: true;\n status: 'resync';\n reason: 'expired' | 'restarted';\n version: string;\n timestamp: string;\n};\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 watch(path: string, options?: Omit<WatchOptions, 'sessionId'>): Promise<ReadableStream<Uint8Array>>;\n checkChanges(path: string, options?: Omit<CheckChangesOptions, 'sessionId'>): Promise<CheckChangesResult>;\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 /** Clone depth for shallow clones (e.g., 1 for latest commit only) */\n depth?: number;\n /** Maximum wall-clock time for the git clone subprocess in milliseconds */\n cloneTimeoutMs?: number;\n }): Promise<GitCheckoutResult>;\n setEnvVars(envVars: Record<string, string | undefined>): 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 createBackup(options: BackupOptions): Promise<DirectoryBackup>;\n restoreBackup(backup: DirectoryBackup): Promise<RestoreBackupResult>;\n terminal(request: Request, options?: PtyOptions): Promise<Response>;\n}\n/**\n * Options for creating a directory backup\n */\nexport interface BackupOptions {\n /** Directory to back up. Must be absolute and under `/workspace`, `/home`, `/tmp`, `/var/tmp`, or `/app`. */\n dir: string;\n /** Human-readable name for this backup. Optional. */\n name?: string;\n /** Seconds until automatic garbage collection. Default: 259200 (3 days). No upper limit. */\n ttl?: number;\n /**\n * Respect git ignore rules for the backup directory when it is inside a git repository.\n *\n * Default: false.\n * If the directory is not inside a git repository, no git-based exclusions are applied.\n * If git is not installed in the container, a warning is logged and gitignore rules are skipped.\n */\n gitignore?: boolean;\n /**\n * Glob patterns to exclude from the backup.\n * These are passed directly to mksquashfs as wildcard exclude patterns.\n *\n * @example ['node_modules', '*.log', '.cache']\n */\n excludes?: string[];\n /**\n * Use local R2 binding for backup storage instead of presigned URLs.\n * Required for local development where presigned URLs and FUSE are unavailable.\n * When true, the DO resolves BACKUP_BUCKET from its own env as an R2 binding.\n */\n localBucket?: boolean;\n}\n/**\n * Handle representing a stored directory backup.\n * Serializable metadata returned by createBackup().\n * Store it anywhere and later pass it to restoreBackup().\n */\nexport interface DirectoryBackup {\n /** Unique backup identifier */\n readonly id: string;\n /** Directory to restore into. Must be under `/workspace`, `/home`, `/tmp`, `/var/tmp`, or `/app`. */\n readonly dir: string;\n /** Whether this backup was created with local R2 binding mode. */\n readonly localBucket?: boolean;\n}\n/**\n * Result returned from a successful restoreBackup() call\n */\nexport interface RestoreBackupResult {\n success: boolean;\n /** The directory that was restored */\n dir: string;\n /** Backup ID that was restored */\n id: string;\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 via s3fs-FUSE (production)\n */\nexport interface RemoteMountBucketOptions {\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 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 /**\n * Optional prefix/subdirectory within the bucket to mount.\n *\n * When specified, only the contents under this prefix will be visible\n * at the mount point, enabling multi-tenant isolation within a single bucket.\n *\n * Must start with '/' (e.g., '/sessions/user123' or '/data/uploads/')\n */\n prefix?: string;\n}\n/**\n * Options for mounting a local R2 binding via bidirectional sync (local dev)\n *\n * Used during local development with `wrangler dev`. The Durable Object\n * resolves the R2 binding from its own env using the `bucket` parameter\n * and syncs files via polling instead of s3fs-FUSE.\n */\nexport interface LocalMountBucketOptions {\n /**\n * Must be true to indicate local R2 binding mode.\n */\n localBucket: true;\n /**\n * Optional prefix/subdirectory within the bucket to sync.\n *\n * When specified, only the contents under this prefix will be visible\n * at the mount point.\n */\n prefix?: string;\n /**\n * Mount filesystem as read-only\n * Default: false\n */\n readOnly?: boolean;\n}\n/**\n * Options for mounting a bucket — either remote (s3fs-FUSE) or local (R2 binding sync)\n */\nexport type MountBucketOptions = RemoteMountBucketOptions | LocalMountBucketOptions;\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 watch(path: string, options?: WatchOptions): Promise<ReadableStream<Uint8Array>>;\n checkChanges(path: string, options?: CheckChangesOptions): Promise<CheckChangesResult>;\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 sessionId?: string;\n /** Clone depth for shallow clones (e.g., 1 for latest commit only) */\n depth?: number;\n /** Maximum wall-clock time for the git clone subprocess in milliseconds */\n cloneTimeoutMs?: number;\n }): Promise<GitCheckoutResult>;\n setEnvVars(envVars: Record<string, string | undefined>): 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 createBackup(options: BackupOptions): Promise<DirectoryBackup>;\n restoreBackup(backup: DirectoryBackup): Promise<RestoreBackupResult>;\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.8.11",
3
+ "version": "0.9.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/cloudflare/sandbox-sdk"
@@ -1 +0,0 @@
1
- {"version":3,"file":"contexts-icMN26lE.d.ts","names":["ErrorCode","ErrorCode","Operation","OperationType","ErrorResponse","TContext","Record","ServiceError","ServiceResult","T","OperationType","FileNotFoundContext","FileExistsContext","FileTooLargeContext","FileSystemContext","CommandNotFoundContext","CommandErrorContext","ProcessNotFoundContext","ProcessErrorContext","SessionAlreadyExistsContext","SessionDestroyedContext","ProcessReadyTimeoutContext","ProcessExitedBeforeReadyContext","PortAlreadyExposedContext","PortNotExposedContext","InvalidPortContext","PortErrorContext","GitRepositoryNotFoundContext","GitAuthFailedContext","GitBranchNotFoundContext","GitErrorContext","InterpreterNotReadyContext","ContextNotFoundContext","CodeExecutionContext","ValidationFailedContext","Array","BucketMountContext","MissingCredentialsContext","InvalidMountConfigContext","BackupCreateContext","BackupRestoreContext","BackupNotFoundContext","BackupExpiredContext","InvalidBackupConfigContext","OpencodeStartupContext","InternalErrorContext","DesktopErrorContext","DesktopCoordinateErrorContext"],"sources":["../../shared/dist/errors/codes.d.ts","../../shared/dist/errors/types.d.ts","../../shared/dist/errors/contexts.d.ts"],"sourcesContent":["/**\n * Centralized error code registry\n * Each code maps to a specific error type with consistent semantics\n */\nexport declare const ErrorCode: {\n readonly FILE_NOT_FOUND: \"FILE_NOT_FOUND\";\n readonly PERMISSION_DENIED: \"PERMISSION_DENIED\";\n readonly FILE_EXISTS: \"FILE_EXISTS\";\n readonly IS_DIRECTORY: \"IS_DIRECTORY\";\n readonly NOT_DIRECTORY: \"NOT_DIRECTORY\";\n readonly FILE_TOO_LARGE: \"FILE_TOO_LARGE\";\n readonly NO_SPACE: \"NO_SPACE\";\n readonly TOO_MANY_FILES: \"TOO_MANY_FILES\";\n readonly RESOURCE_BUSY: \"RESOURCE_BUSY\";\n readonly READ_ONLY: \"READ_ONLY\";\n readonly NAME_TOO_LONG: \"NAME_TOO_LONG\";\n readonly TOO_MANY_LINKS: \"TOO_MANY_LINKS\";\n readonly FILESYSTEM_ERROR: \"FILESYSTEM_ERROR\";\n readonly COMMAND_NOT_FOUND: \"COMMAND_NOT_FOUND\";\n readonly COMMAND_PERMISSION_DENIED: \"COMMAND_PERMISSION_DENIED\";\n readonly INVALID_COMMAND: \"INVALID_COMMAND\";\n readonly COMMAND_EXECUTION_ERROR: \"COMMAND_EXECUTION_ERROR\";\n readonly STREAM_START_ERROR: \"STREAM_START_ERROR\";\n readonly PROCESS_NOT_FOUND: \"PROCESS_NOT_FOUND\";\n readonly PROCESS_PERMISSION_DENIED: \"PROCESS_PERMISSION_DENIED\";\n readonly PROCESS_ERROR: \"PROCESS_ERROR\";\n readonly SESSION_ALREADY_EXISTS: \"SESSION_ALREADY_EXISTS\";\n readonly SESSION_DESTROYED: \"SESSION_DESTROYED\";\n readonly PORT_ALREADY_EXPOSED: \"PORT_ALREADY_EXPOSED\";\n readonly PORT_IN_USE: \"PORT_IN_USE\";\n readonly PORT_NOT_EXPOSED: \"PORT_NOT_EXPOSED\";\n readonly INVALID_PORT_NUMBER: \"INVALID_PORT_NUMBER\";\n readonly INVALID_PORT: \"INVALID_PORT\";\n readonly SERVICE_NOT_RESPONDING: \"SERVICE_NOT_RESPONDING\";\n readonly PORT_OPERATION_ERROR: \"PORT_OPERATION_ERROR\";\n readonly CUSTOM_DOMAIN_REQUIRED: \"CUSTOM_DOMAIN_REQUIRED\";\n readonly GIT_REPOSITORY_NOT_FOUND: \"GIT_REPOSITORY_NOT_FOUND\";\n readonly GIT_BRANCH_NOT_FOUND: \"GIT_BRANCH_NOT_FOUND\";\n readonly GIT_AUTH_FAILED: \"GIT_AUTH_FAILED\";\n readonly GIT_NETWORK_ERROR: \"GIT_NETWORK_ERROR\";\n readonly INVALID_GIT_URL: \"INVALID_GIT_URL\";\n readonly GIT_CLONE_FAILED: \"GIT_CLONE_FAILED\";\n readonly GIT_CHECKOUT_FAILED: \"GIT_CHECKOUT_FAILED\";\n readonly GIT_OPERATION_FAILED: \"GIT_OPERATION_FAILED\";\n readonly BUCKET_MOUNT_ERROR: \"BUCKET_MOUNT_ERROR\";\n readonly BUCKET_UNMOUNT_ERROR: \"BUCKET_UNMOUNT_ERROR\";\n readonly S3FS_MOUNT_ERROR: \"S3FS_MOUNT_ERROR\";\n readonly MISSING_CREDENTIALS: \"MISSING_CREDENTIALS\";\n readonly INVALID_MOUNT_CONFIG: \"INVALID_MOUNT_CONFIG\";\n readonly BACKUP_CREATE_FAILED: \"BACKUP_CREATE_FAILED\";\n readonly BACKUP_RESTORE_FAILED: \"BACKUP_RESTORE_FAILED\";\n readonly BACKUP_NOT_FOUND: \"BACKUP_NOT_FOUND\";\n readonly BACKUP_EXPIRED: \"BACKUP_EXPIRED\";\n readonly INVALID_BACKUP_CONFIG: \"INVALID_BACKUP_CONFIG\";\n readonly INTERPRETER_NOT_READY: \"INTERPRETER_NOT_READY\";\n readonly CONTEXT_NOT_FOUND: \"CONTEXT_NOT_FOUND\";\n readonly CODE_EXECUTION_ERROR: \"CODE_EXECUTION_ERROR\";\n readonly PYTHON_NOT_AVAILABLE: \"PYTHON_NOT_AVAILABLE\";\n readonly JAVASCRIPT_NOT_AVAILABLE: \"JAVASCRIPT_NOT_AVAILABLE\";\n readonly OPENCODE_STARTUP_FAILED: \"OPENCODE_STARTUP_FAILED\";\n readonly PROCESS_READY_TIMEOUT: \"PROCESS_READY_TIMEOUT\";\n readonly PROCESS_EXITED_BEFORE_READY: \"PROCESS_EXITED_BEFORE_READY\";\n readonly DESKTOP_NOT_STARTED: \"DESKTOP_NOT_STARTED\";\n readonly DESKTOP_START_FAILED: \"DESKTOP_START_FAILED\";\n readonly DESKTOP_UNAVAILABLE: \"DESKTOP_UNAVAILABLE\";\n readonly DESKTOP_PROCESS_CRASHED: \"DESKTOP_PROCESS_CRASHED\";\n readonly DESKTOP_INVALID_OPTIONS: \"DESKTOP_INVALID_OPTIONS\";\n readonly DESKTOP_INVALID_COORDINATES: \"DESKTOP_INVALID_COORDINATES\";\n readonly WATCH_NOT_FOUND: \"WATCH_NOT_FOUND\";\n readonly WATCH_START_ERROR: \"WATCH_START_ERROR\";\n readonly WATCH_STOP_ERROR: \"WATCH_STOP_ERROR\";\n readonly VALIDATION_FAILED: \"VALIDATION_FAILED\";\n readonly INVALID_JSON_RESPONSE: \"INVALID_JSON_RESPONSE\";\n readonly UNKNOWN_ERROR: \"UNKNOWN_ERROR\";\n readonly INTERNAL_ERROR: \"INTERNAL_ERROR\";\n};\nexport type ErrorCode = (typeof ErrorCode)[keyof typeof ErrorCode];\n//# sourceMappingURL=codes.d.ts.map","import type { ErrorCode } from './codes';\n/**\n * Standard operation types\n */\nexport declare const Operation: {\n readonly FILE_READ: \"file.read\";\n readonly FILE_WRITE: \"file.write\";\n readonly FILE_DELETE: \"file.delete\";\n readonly FILE_MOVE: \"file.move\";\n readonly FILE_RENAME: \"file.rename\";\n readonly FILE_STAT: \"file.stat\";\n readonly DIRECTORY_CREATE: \"directory.create\";\n readonly DIRECTORY_LIST: \"directory.list\";\n readonly COMMAND_EXECUTE: \"command.execute\";\n readonly COMMAND_STREAM: \"command.stream\";\n readonly PROCESS_START: \"process.start\";\n readonly PROCESS_KILL: \"process.kill\";\n readonly PROCESS_LIST: \"process.list\";\n readonly PROCESS_GET: \"process.get\";\n readonly PROCESS_LOGS: \"process.logs\";\n readonly PORT_EXPOSE: \"port.expose\";\n readonly PORT_UNEXPOSE: \"port.unexpose\";\n readonly PORT_LIST: \"port.list\";\n readonly PORT_PROXY: \"port.proxy\";\n readonly GIT_CLONE: \"git.clone\";\n readonly GIT_CHECKOUT: \"git.checkout\";\n readonly GIT_OPERATION: \"git.operation\";\n readonly BACKUP_CREATE: \"backup.create\";\n readonly BACKUP_RESTORE: \"backup.restore\";\n readonly BACKUP_UNMOUNT: \"backup.unmount\";\n readonly DESKTOP_START: \"desktop.start\";\n readonly DESKTOP_STOP: \"desktop.stop\";\n readonly DESKTOP_SCREENSHOT: \"desktop.screenshot\";\n readonly DESKTOP_MOUSE: \"desktop.mouse\";\n readonly DESKTOP_KEYBOARD: \"desktop.keyboard\";\n readonly DESKTOP_STATUS: \"desktop.status\";\n readonly CODE_EXECUTE: \"code.execute\";\n readonly CODE_CONTEXT_CREATE: \"code.context.create\";\n readonly CODE_CONTEXT_DELETE: \"code.context.delete\";\n};\nexport type OperationType = (typeof Operation)[keyof typeof Operation];\n/**\n * Standard error response format with generic context type\n * TContext allows type-safe access to error-specific context\n */\nexport interface ErrorResponse<TContext = Record<string, unknown>> {\n /**\n * Error type code (machine-readable)\n */\n code: ErrorCode;\n /**\n * Human-readable error message\n */\n message: string;\n /**\n * Operation that was attempted (useful for debugging and logging)\n */\n operation?: OperationType;\n /**\n * Structured error context with relevant details\n * Type varies based on error code\n */\n context: TContext;\n /**\n * HTTP status code (for client SDK)\n */\n httpStatus: number;\n /**\n * Timestamp when error occurred\n */\n timestamp: string;\n /**\n * Actionable suggestion for fixing the error\n */\n suggestion?: string;\n /**\n * Link to documentation\n */\n documentation?: string;\n}\n/**\n * Container ServiceError (lightweight, enriched by handlers)\n */\nexport interface ServiceError {\n message: string;\n code: ErrorCode;\n details?: Record<string, unknown>;\n}\n/**\n * ServiceResult type for container services\n */\nexport type ServiceResult<T> = {\n success: true;\n data: T;\n} | {\n success: false;\n error: ServiceError;\n};\n//# sourceMappingURL=types.d.ts.map","import type { OperationType } from './types';\n/**\n * File system error contexts\n */\nexport interface FileNotFoundContext {\n path: string;\n operation: OperationType;\n}\nexport interface FileExistsContext {\n path: string;\n operation: OperationType;\n}\nexport interface FileTooLargeContext {\n path: string;\n operation: OperationType;\n maxSize: number;\n actualSize: number;\n}\nexport interface FileSystemContext {\n path: string;\n operation: OperationType;\n stderr?: string;\n exitCode?: number;\n}\n/**\n * Command error contexts\n */\nexport interface CommandNotFoundContext {\n command: string;\n}\nexport interface CommandErrorContext {\n command: string;\n exitCode?: number;\n stdout?: string;\n stderr?: string;\n}\n/**\n * Process error contexts\n */\nexport interface ProcessNotFoundContext {\n processId: string;\n}\nexport interface ProcessErrorContext {\n processId: string;\n pid?: number;\n exitCode?: number;\n stderr?: string;\n}\nexport interface SessionAlreadyExistsContext {\n sessionId: string;\n}\nexport interface SessionDestroyedContext {\n sessionId: string;\n}\n/**\n * Process readiness error contexts\n */\nexport interface ProcessReadyTimeoutContext {\n processId: string;\n command: string;\n condition: string;\n timeout: number;\n}\nexport interface ProcessExitedBeforeReadyContext {\n processId: string;\n command: string;\n condition: string;\n exitCode: number;\n}\n/**\n * Port error contexts\n */\nexport interface PortAlreadyExposedContext {\n port: number;\n portName?: string;\n}\nexport interface PortNotExposedContext {\n port: number;\n}\nexport interface InvalidPortContext {\n port: number;\n reason: string;\n}\nexport interface PortErrorContext {\n port: number;\n portName?: string;\n stderr?: string;\n}\n/**\n * Git error contexts\n */\nexport interface GitRepositoryNotFoundContext {\n repository: string;\n}\nexport interface GitAuthFailedContext {\n repository: string;\n}\nexport interface GitBranchNotFoundContext {\n branch: string;\n repository?: string;\n}\nexport interface GitErrorContext {\n repository?: string;\n branch?: string;\n targetDir?: string;\n stderr?: string;\n exitCode?: number;\n}\n/**\n * Code interpreter error contexts\n */\nexport interface InterpreterNotReadyContext {\n retryAfter?: number;\n progress?: number;\n}\nexport interface ContextNotFoundContext {\n contextId: string;\n}\nexport interface CodeExecutionContext {\n contextId?: string;\n ename?: string;\n evalue?: string;\n traceback?: string[];\n}\n/**\n * Validation error contexts\n */\nexport interface ValidationFailedContext {\n validationErrors: Array<{\n field: string;\n message: string;\n code?: string;\n }>;\n}\n/**\n * Bucket mounting error contexts\n */\nexport interface BucketMountContext {\n bucket: string;\n mountPath: string;\n endpoint: string;\n stderr?: string;\n exitCode?: number;\n}\nexport interface MissingCredentialsContext {\n bucket: string;\n endpoint: string;\n}\nexport interface InvalidMountConfigContext {\n bucket?: string;\n mountPath?: string;\n endpoint?: string;\n reason?: string;\n}\n/**\n * Backup error contexts\n */\nexport interface BackupCreateContext {\n dir: string;\n backupId?: string;\n stderr?: string;\n exitCode?: number;\n}\nexport interface BackupRestoreContext {\n dir: string;\n backupId: string;\n stderr?: string;\n exitCode?: number;\n}\nexport interface BackupNotFoundContext {\n backupId: string;\n}\nexport interface BackupExpiredContext {\n backupId: string;\n expiredAt?: string;\n}\nexport interface InvalidBackupConfigContext {\n reason: string;\n}\n/**\n * OpenCode error contexts\n */\nexport interface OpencodeStartupContext {\n port: number;\n stderr?: string;\n command?: string;\n}\n/**\n * Generic error contexts\n */\nexport interface InternalErrorContext {\n originalError?: string;\n stack?: string;\n [key: string]: unknown;\n}\n/**\n * Desktop error contexts\n */\nexport interface DesktopErrorContext {\n process?: string;\n stderr?: string;\n crashedProcess?: string;\n reason?: string;\n}\nexport interface DesktopCoordinateErrorContext {\n x: number;\n y: number;\n displayWidth: number;\n displayHeight: number;\n}\n//# sourceMappingURL=contexts.d.ts.map"],"mappings":";;AAIA;AAwEA;;cAxEqBA;;ECAAE,SAAAA,iBAmCpB,EAAA,mBAAA;EACWC,SAAAA,WAAa,EAAA,aAAWD;EAKnBE,SAAAA,YAAa,EAAAC,cAAA;EAAYC,SAAAA,aAAAA,EAAAA,eAAAA;EAIhCL,SAAAA,cAAAA,EAAAA,gBAAAA;EAQME,SAAAA,QAAAA,EAAAA,UAAAA;EAKHE,SAAAA,cAAAA,EAAAA,gBAAAA;EAAQ,SAAA,aAAA,EAAA,eAAA;;;;ECLJgB,SAAAA,gBAAAA,EAAAA,kBAA0B;EAM1BC,SAAAA,iBAAAA,EAAAA,mBAA+B;EA8F/BiB,SAAAA,yBAAmB,EAAA,2BAAA;EAMnBC,SAAAA,eAAoB,EAAA,iBAAA;EAMpBC,SAAAA,uBAAqB,EAAA,yBAAA;EAGrBC,SAAAA,kBAAoB,EAAA,oBAAA;EAIpBC,SAAAA,iBAAAA,EAAAA,mBAA0B;EAM1BC,SAAAA,yBAAsB,EAAA,2BAAA;EAgBtBE,SAAAA,aAAmB,EAAA,eAAA;EAMnBC,SAAAA,sBAAAA,EAA6B,wBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KFhIlC/C,SAAAA,WAAoBA,wBAAwBA;;;AAxExD;AAwEA;;cCxEqBE;;EAAAA,SAAAA,UAmCpB,EAAA,YAAA;EACWC,SAAAA,WAAa,EAAA,aAAWD;EAKnBE,SAAAA,SAAa,EAAA,WAAAC;EAAYC,SAAAA,WAAAA,EAAAA,aAAAA;EAIhCL,SAAAA,SAAAA,EAAAA,WAAAA;EAQME,SAAAA,gBAAAA,EAAAA,kBAAAA;EAKHE,SAAAA,cAAAA,EAAAA,gBAAAA;EAAQ,SAAA,eAAA,EAAA,iBAAA;;;;ECLJgB,SAAAA,YAAAA,EAAAA,cAA0B;EAM1BC,SAAAA,WAAAA,EAAAA,aAA+B;EA8F/BiB,SAAAA,YAAAA,EAAmB,cAAA;EAMnBC,SAAAA,WAAAA,EAAAA,aAAoB;EAMpBC,SAAAA,aAAAA,EAAqB,eAAA;EAGrBC,SAAAA,SAAAA,EAAAA,WAAoB;EAIpBC,SAAAA,UAAAA,EAAAA,YAA0B;EAM1BC,SAAAA,SAAAA,EAAAA,WAAsB;EAgBtBE,SAAAA,YAAAA,EAAmB,cAAA;EAMnBC,SAAAA,aAAAA,EAAAA,eAA6B;;;;;;;;;;;;;;KDpKlC5C,aAAAA,WAAwBD,wBAAwBA;;;;;UAK3CE,yBAAyBE;;;;QAIhCL;;;;;;;;cAQME;;;;;WAKHE;;;;;;;;;;;;;;;;;;;;;;;;UCLIgB,0BAAAA;;;;;;UAMAC,+BAAAA;;;;;;;;;UA8FAiB,mBAAAA;;;;;;UAMAC,oBAAAA;;;;;;UAMAC,qBAAAA;;;UAGAC,oBAAAA;;;;UAIAC,0BAAAA;;;;;;UAMAC,sBAAAA;;;;;;;;UAgBAE,mBAAAA;;;;;;UAMAC,6BAAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors-Bz21XTBJ.js","names":[],"sources":["../../shared/dist/errors/codes.js","../../shared/dist/errors/status-map.js"],"sourcesContent":["/**\n * Centralized error code registry\n * Each code maps to a specific error type with consistent semantics\n */\nexport const ErrorCode = {\n // File System Errors (404)\n FILE_NOT_FOUND: 'FILE_NOT_FOUND',\n // Permission Errors (403)\n PERMISSION_DENIED: 'PERMISSION_DENIED',\n // File System Errors (409)\n FILE_EXISTS: 'FILE_EXISTS',\n // File System Errors (400)\n IS_DIRECTORY: 'IS_DIRECTORY',\n NOT_DIRECTORY: 'NOT_DIRECTORY',\n // File Too Large Errors (413)\n FILE_TOO_LARGE: 'FILE_TOO_LARGE',\n // File System Errors (500)\n NO_SPACE: 'NO_SPACE',\n TOO_MANY_FILES: 'TOO_MANY_FILES',\n RESOURCE_BUSY: 'RESOURCE_BUSY',\n READ_ONLY: 'READ_ONLY',\n NAME_TOO_LONG: 'NAME_TOO_LONG',\n TOO_MANY_LINKS: 'TOO_MANY_LINKS',\n FILESYSTEM_ERROR: 'FILESYSTEM_ERROR',\n // Command Errors (404)\n COMMAND_NOT_FOUND: 'COMMAND_NOT_FOUND',\n // Command Errors (403/400)\n COMMAND_PERMISSION_DENIED: 'COMMAND_PERMISSION_DENIED',\n INVALID_COMMAND: 'INVALID_COMMAND',\n // Command Errors (500)\n COMMAND_EXECUTION_ERROR: 'COMMAND_EXECUTION_ERROR',\n STREAM_START_ERROR: 'STREAM_START_ERROR',\n // Process Errors (404)\n PROCESS_NOT_FOUND: 'PROCESS_NOT_FOUND',\n // Process Errors (403/500)\n PROCESS_PERMISSION_DENIED: 'PROCESS_PERMISSION_DENIED',\n PROCESS_ERROR: 'PROCESS_ERROR',\n // Session Errors (409)\n SESSION_ALREADY_EXISTS: 'SESSION_ALREADY_EXISTS',\n // Session Errors (410)\n SESSION_DESTROYED: 'SESSION_DESTROYED',\n // Port Errors (409)\n PORT_ALREADY_EXPOSED: 'PORT_ALREADY_EXPOSED',\n PORT_IN_USE: 'PORT_IN_USE',\n // Port Errors (404)\n PORT_NOT_EXPOSED: 'PORT_NOT_EXPOSED',\n // Port Errors (400)\n INVALID_PORT_NUMBER: 'INVALID_PORT_NUMBER',\n INVALID_PORT: 'INVALID_PORT',\n // Port Errors (502/500)\n SERVICE_NOT_RESPONDING: 'SERVICE_NOT_RESPONDING',\n PORT_OPERATION_ERROR: 'PORT_OPERATION_ERROR',\n // Port Errors (400)\n CUSTOM_DOMAIN_REQUIRED: 'CUSTOM_DOMAIN_REQUIRED',\n // Git Errors (404)\n GIT_REPOSITORY_NOT_FOUND: 'GIT_REPOSITORY_NOT_FOUND',\n GIT_BRANCH_NOT_FOUND: 'GIT_BRANCH_NOT_FOUND',\n // Git Errors (401)\n GIT_AUTH_FAILED: 'GIT_AUTH_FAILED',\n // Git Errors (502)\n GIT_NETWORK_ERROR: 'GIT_NETWORK_ERROR',\n // Git Errors (400)\n INVALID_GIT_URL: 'INVALID_GIT_URL',\n // Git Errors (500)\n GIT_CLONE_FAILED: 'GIT_CLONE_FAILED',\n GIT_CHECKOUT_FAILED: 'GIT_CHECKOUT_FAILED',\n GIT_OPERATION_FAILED: 'GIT_OPERATION_FAILED',\n // Bucket mounting errors\n BUCKET_MOUNT_ERROR: 'BUCKET_MOUNT_ERROR',\n BUCKET_UNMOUNT_ERROR: 'BUCKET_UNMOUNT_ERROR',\n S3FS_MOUNT_ERROR: 'S3FS_MOUNT_ERROR',\n MISSING_CREDENTIALS: 'MISSING_CREDENTIALS',\n INVALID_MOUNT_CONFIG: 'INVALID_MOUNT_CONFIG',\n // Backup Errors (500)\n BACKUP_CREATE_FAILED: 'BACKUP_CREATE_FAILED',\n BACKUP_RESTORE_FAILED: 'BACKUP_RESTORE_FAILED',\n // Backup Errors (404)\n BACKUP_NOT_FOUND: 'BACKUP_NOT_FOUND',\n // Backup Errors (400)\n BACKUP_EXPIRED: 'BACKUP_EXPIRED',\n INVALID_BACKUP_CONFIG: 'INVALID_BACKUP_CONFIG',\n // Code Interpreter Errors (503)\n INTERPRETER_NOT_READY: 'INTERPRETER_NOT_READY',\n // Code Interpreter Errors (404)\n CONTEXT_NOT_FOUND: 'CONTEXT_NOT_FOUND',\n // Code Interpreter Errors (500)\n CODE_EXECUTION_ERROR: 'CODE_EXECUTION_ERROR',\n // Code Interpreter Errors (501) - Feature not available in image variant\n PYTHON_NOT_AVAILABLE: 'PYTHON_NOT_AVAILABLE',\n JAVASCRIPT_NOT_AVAILABLE: 'JAVASCRIPT_NOT_AVAILABLE',\n // OpenCode Errors (503)\n OPENCODE_STARTUP_FAILED: 'OPENCODE_STARTUP_FAILED',\n // Process Readiness Errors (408/500)\n PROCESS_READY_TIMEOUT: 'PROCESS_READY_TIMEOUT',\n PROCESS_EXITED_BEFORE_READY: 'PROCESS_EXITED_BEFORE_READY',\n // Desktop Errors (409)\n DESKTOP_NOT_STARTED: 'DESKTOP_NOT_STARTED',\n // Desktop Errors (500)\n DESKTOP_START_FAILED: 'DESKTOP_START_FAILED',\n // Desktop Errors (503)\n DESKTOP_UNAVAILABLE: 'DESKTOP_UNAVAILABLE',\n // Desktop Errors (500)\n DESKTOP_PROCESS_CRASHED: 'DESKTOP_PROCESS_CRASHED',\n // Desktop Errors (400)\n DESKTOP_INVALID_OPTIONS: 'DESKTOP_INVALID_OPTIONS',\n DESKTOP_INVALID_COORDINATES: 'DESKTOP_INVALID_COORDINATES',\n // File Watch Errors (404)\n WATCH_NOT_FOUND: 'WATCH_NOT_FOUND',\n // File Watch Errors (500)\n WATCH_START_ERROR: 'WATCH_START_ERROR',\n WATCH_STOP_ERROR: 'WATCH_STOP_ERROR',\n // Validation Errors (400)\n VALIDATION_FAILED: 'VALIDATION_FAILED',\n // Generic Errors (400/500)\n INVALID_JSON_RESPONSE: 'INVALID_JSON_RESPONSE',\n UNKNOWN_ERROR: 'UNKNOWN_ERROR',\n INTERNAL_ERROR: 'INTERNAL_ERROR'\n};\n","import { ErrorCode } from './codes';\n/**\n * Maps error codes to HTTP status codes\n * Centralized mapping ensures consistency across SDK\n */\nexport const ERROR_STATUS_MAP = {\n // 404 Not Found\n [ErrorCode.FILE_NOT_FOUND]: 404,\n [ErrorCode.COMMAND_NOT_FOUND]: 404,\n [ErrorCode.PROCESS_NOT_FOUND]: 404,\n [ErrorCode.PORT_NOT_EXPOSED]: 404,\n [ErrorCode.GIT_REPOSITORY_NOT_FOUND]: 404,\n [ErrorCode.GIT_BRANCH_NOT_FOUND]: 404,\n [ErrorCode.CONTEXT_NOT_FOUND]: 404,\n [ErrorCode.WATCH_NOT_FOUND]: 404,\n // 400 Bad Request\n [ErrorCode.IS_DIRECTORY]: 400,\n [ErrorCode.NOT_DIRECTORY]: 400,\n [ErrorCode.INVALID_COMMAND]: 400,\n [ErrorCode.INVALID_PORT_NUMBER]: 400,\n [ErrorCode.INVALID_PORT]: 400,\n [ErrorCode.INVALID_GIT_URL]: 400,\n [ErrorCode.CUSTOM_DOMAIN_REQUIRED]: 400,\n [ErrorCode.INVALID_JSON_RESPONSE]: 400,\n [ErrorCode.NAME_TOO_LONG]: 400,\n [ErrorCode.VALIDATION_FAILED]: 400,\n [ErrorCode.MISSING_CREDENTIALS]: 400,\n [ErrorCode.INVALID_MOUNT_CONFIG]: 400,\n // 401 Unauthorized\n [ErrorCode.GIT_AUTH_FAILED]: 401,\n // 403 Forbidden\n [ErrorCode.PERMISSION_DENIED]: 403,\n [ErrorCode.COMMAND_PERMISSION_DENIED]: 403,\n [ErrorCode.PROCESS_PERMISSION_DENIED]: 403,\n [ErrorCode.READ_ONLY]: 403,\n // 409 Conflict\n [ErrorCode.FILE_EXISTS]: 409,\n [ErrorCode.PORT_ALREADY_EXPOSED]: 409,\n [ErrorCode.PORT_IN_USE]: 409,\n [ErrorCode.RESOURCE_BUSY]: 409,\n [ErrorCode.SESSION_ALREADY_EXISTS]: 409,\n // 410 Gone\n [ErrorCode.SESSION_DESTROYED]: 410,\n // 413 Content Too Large\n [ErrorCode.FILE_TOO_LARGE]: 413,\n // 502 Bad Gateway\n [ErrorCode.SERVICE_NOT_RESPONDING]: 502,\n [ErrorCode.GIT_NETWORK_ERROR]: 502,\n // Backup errors\n [ErrorCode.BACKUP_NOT_FOUND]: 404,\n [ErrorCode.BACKUP_EXPIRED]: 400,\n [ErrorCode.INVALID_BACKUP_CONFIG]: 400,\n [ErrorCode.BACKUP_CREATE_FAILED]: 500,\n [ErrorCode.BACKUP_RESTORE_FAILED]: 500,\n // 501 Not Implemented (feature not available in image variant)\n [ErrorCode.PYTHON_NOT_AVAILABLE]: 501,\n [ErrorCode.JAVASCRIPT_NOT_AVAILABLE]: 501,\n // Desktop errors\n [ErrorCode.DESKTOP_NOT_STARTED]: 409,\n [ErrorCode.DESKTOP_START_FAILED]: 500,\n [ErrorCode.DESKTOP_UNAVAILABLE]: 503,\n [ErrorCode.DESKTOP_PROCESS_CRASHED]: 500,\n [ErrorCode.DESKTOP_INVALID_OPTIONS]: 400,\n [ErrorCode.DESKTOP_INVALID_COORDINATES]: 400,\n // 503 Service Unavailable\n [ErrorCode.INTERPRETER_NOT_READY]: 503,\n [ErrorCode.OPENCODE_STARTUP_FAILED]: 503,\n // 408 Request Timeout\n [ErrorCode.PROCESS_READY_TIMEOUT]: 408,\n // 500 Internal Server Error\n [ErrorCode.PROCESS_EXITED_BEFORE_READY]: 500,\n [ErrorCode.NO_SPACE]: 500,\n [ErrorCode.TOO_MANY_FILES]: 500,\n [ErrorCode.TOO_MANY_LINKS]: 500,\n [ErrorCode.FILESYSTEM_ERROR]: 500,\n [ErrorCode.COMMAND_EXECUTION_ERROR]: 500,\n [ErrorCode.STREAM_START_ERROR]: 500,\n [ErrorCode.PROCESS_ERROR]: 500,\n [ErrorCode.PORT_OPERATION_ERROR]: 500,\n [ErrorCode.GIT_CLONE_FAILED]: 500,\n [ErrorCode.GIT_CHECKOUT_FAILED]: 500,\n [ErrorCode.GIT_OPERATION_FAILED]: 500,\n [ErrorCode.CODE_EXECUTION_ERROR]: 500,\n [ErrorCode.BUCKET_MOUNT_ERROR]: 500,\n [ErrorCode.BUCKET_UNMOUNT_ERROR]: 500,\n [ErrorCode.S3FS_MOUNT_ERROR]: 500,\n [ErrorCode.WATCH_START_ERROR]: 500,\n [ErrorCode.WATCH_STOP_ERROR]: 500,\n [ErrorCode.UNKNOWN_ERROR]: 500,\n [ErrorCode.INTERNAL_ERROR]: 500\n};\n/**\n * Get HTTP status code for an error code\n * Falls back to 500 for unknown errors\n */\nexport function getHttpStatus(code) {\n return ERROR_STATUS_MAP[code] || 500;\n}\n"],"mappings":"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"}