@tanstack/ai-sandbox
Version:
Provider-agnostic sandbox layer for TanStack AI — run harness adapters inside isolated sandboxes (defineSandbox, defineWorkspace, withSandbox) with a uniform SandboxHandle, workspace bootstrap, policy, and resumable lifecycle.
29 lines (28 loc) • 1.14 kB
JavaScript
//#region src/errors.ts
/**
* Thrown when code invokes an optional sandbox capability that the active
* provider does not support. Core/middleware should check
* `handle.capabilities` BEFORE using an optional capability and degrade
* gracefully; this error exists so that a direct call to an unsupported
* optional method fails loud instead of silently no-opping.
*/
var UnsupportedCapabilityError = class extends Error {
provider;
capability;
constructor(provider, capability, hint) {
super(`Sandbox provider "${provider}" does not support the "${capability}" capability.` + (hint ? ` ${hint}` : ""));
this.name = "UnsupportedCapabilityError";
this.provider = provider;
this.capability = capability;
}
};
/** Thrown when a harness adapter requires a sandbox but none was provided. */
var MissingSandboxError = class extends Error {
constructor(adapterName) {
super(`Adapter "${adapterName}" requires a sandbox. Add withSandbox(defineSandbox({ ... })) to chat() middleware.`);
this.name = "MissingSandboxError";
}
};
//#endregion
export { MissingSandboxError, UnsupportedCapabilityError };
//# sourceMappingURL=errors.js.map