@openai/agents-core
Version:
The OpenAI Agents SDK is a lightweight yet powerful framework for building multi-agent workflows.
390 lines • 16 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SandboxSnapshotNotRestorableError = exports.SandboxSnapshotRestoreError = exports.SandboxSnapshotPersistError = exports.SandboxConfigError = exports.SandboxSkillsConfigError = exports.SandboxMountConfigError = exports.SandboxMountCommandError = exports.SandboxMountToolMissingError = exports.SandboxGitCopyError = exports.SandboxGitSubpathError = exports.SandboxGitCloneError = exports.SandboxGitMissingInImageError = exports.SandboxGitArtifactError = exports.SandboxLocalChecksumError = exports.SandboxLocalDirReadError = exports.SandboxLocalFileReadError = exports.SandboxLocalArtifactError = exports.SandboxWorkspaceRootNotFoundError = exports.SandboxWorkspaceStartError = exports.SandboxWorkspaceStopError = exports.SandboxWorkspaceWriteTypeError = exports.SandboxWorkspaceArchiveWriteError = exports.SandboxWorkspaceArchiveReadError = exports.SandboxWorkspaceReadNotFoundError = exports.SandboxWorkspaceError = exports.SandboxApplyPatchDecodeError = exports.SandboxApplyPatchFileNotFoundError = exports.SandboxApplyPatchDiffError = exports.SandboxApplyPatchPathError = exports.SandboxApplyPatchError = exports.SandboxPtySessionNotFoundError = exports.SandboxExecTransportError = exports.SandboxExecTimeoutError = exports.SandboxExecNonZeroError = exports.SandboxExecError = exports.SandboxExposedPortUnavailableError = exports.SandboxInvalidCompressionSchemeError = exports.SandboxInvalidManifestPathError = exports.SandboxProviderError = exports.SandboxPathResolutionError = exports.SandboxUnsupportedFeatureError = exports.SandboxPtyError = exports.SandboxLifecycleError = exports.SandboxMountError = exports.SandboxArchiveError = exports.SandboxSnapshotError = exports.SandboxArtifactError = exports.SandboxRuntimeError = exports.SandboxConfigurationError = exports.SandboxError = void 0;
const errors_1 = require("../errors.js");
class SandboxError extends errors_1.UserError {
code;
details;
retryable;
constructor(message, code = 'runtime_error', details) {
super(message);
this.code = code;
this.details = details;
this.retryable = inferSandboxErrorRetryability(code, details);
}
}
exports.SandboxError = SandboxError;
class SandboxConfigurationError extends SandboxError {
constructor(message, details, code = 'configuration_error') {
super(message, code, details);
}
}
exports.SandboxConfigurationError = SandboxConfigurationError;
class SandboxRuntimeError extends SandboxError {
constructor(message, details, code = 'runtime_error') {
super(message, code, details);
}
}
exports.SandboxRuntimeError = SandboxRuntimeError;
class SandboxArtifactError extends SandboxError {
constructor(message, details, code = 'artifact_error') {
super(message, code, details);
}
}
exports.SandboxArtifactError = SandboxArtifactError;
class SandboxSnapshotError extends SandboxError {
constructor(message, details, code = 'snapshot_error') {
super(message, code, details);
}
}
exports.SandboxSnapshotError = SandboxSnapshotError;
class SandboxArchiveError extends SandboxError {
constructor(message, details) {
super(message, 'archive_error', details);
}
}
exports.SandboxArchiveError = SandboxArchiveError;
class SandboxMountError extends SandboxError {
constructor(message, details, code = 'mount_error') {
super(message, code, details);
}
}
exports.SandboxMountError = SandboxMountError;
class SandboxLifecycleError extends SandboxError {
constructor(message, details) {
super(message, 'lifecycle_error', details);
}
}
exports.SandboxLifecycleError = SandboxLifecycleError;
class SandboxPtyError extends SandboxError {
constructor(message, details, code = 'pty_error') {
super(message, code, details);
}
}
exports.SandboxPtyError = SandboxPtyError;
class SandboxUnsupportedFeatureError extends SandboxError {
constructor(message, details) {
super(message, 'unsupported_feature', details);
}
}
exports.SandboxUnsupportedFeatureError = SandboxUnsupportedFeatureError;
class SandboxPathResolutionError extends SandboxError {
constructor(message, details) {
super(message, 'path_resolution_error', details);
}
}
exports.SandboxPathResolutionError = SandboxPathResolutionError;
class SandboxProviderError extends SandboxError {
constructor(message, details) {
super(message, 'provider_error', details);
}
}
exports.SandboxProviderError = SandboxProviderError;
class SandboxInvalidManifestPathError extends SandboxError {
constructor(message, details) {
super(message, 'invalid_manifest_path', details);
}
}
exports.SandboxInvalidManifestPathError = SandboxInvalidManifestPathError;
class SandboxInvalidCompressionSchemeError extends SandboxError {
constructor(message, details) {
super(message, 'invalid_compression_scheme', details);
}
}
exports.SandboxInvalidCompressionSchemeError = SandboxInvalidCompressionSchemeError;
class SandboxExposedPortUnavailableError extends SandboxRuntimeError {
constructor(message, details) {
super(message, details, 'exposed_port_unavailable');
}
}
exports.SandboxExposedPortUnavailableError = SandboxExposedPortUnavailableError;
class SandboxExecError extends SandboxRuntimeError {
constructor(message, code, details) {
super(message, details, code);
}
}
exports.SandboxExecError = SandboxExecError;
class SandboxExecNonZeroError extends SandboxExecError {
constructor(message, details) {
super(message, 'exec_nonzero', details);
}
}
exports.SandboxExecNonZeroError = SandboxExecNonZeroError;
class SandboxExecTimeoutError extends SandboxExecError {
constructor(message, details) {
super(message, 'exec_timeout', details);
}
}
exports.SandboxExecTimeoutError = SandboxExecTimeoutError;
class SandboxExecTransportError extends SandboxExecError {
constructor(message, details) {
super(message, 'exec_transport_error', details);
}
}
exports.SandboxExecTransportError = SandboxExecTransportError;
class SandboxPtySessionNotFoundError extends SandboxPtyError {
constructor(message, details) {
super(message, details, 'pty_session_not_found');
}
}
exports.SandboxPtySessionNotFoundError = SandboxPtySessionNotFoundError;
class SandboxApplyPatchError extends SandboxError {
constructor(message, code, details) {
super(message, code, details);
}
}
exports.SandboxApplyPatchError = SandboxApplyPatchError;
class SandboxApplyPatchPathError extends SandboxApplyPatchError {
constructor(message, details) {
super(message, 'apply_patch_invalid_path', details);
}
}
exports.SandboxApplyPatchPathError = SandboxApplyPatchPathError;
class SandboxApplyPatchDiffError extends SandboxApplyPatchError {
constructor(message, details) {
super(message, 'apply_patch_invalid_diff', details);
}
}
exports.SandboxApplyPatchDiffError = SandboxApplyPatchDiffError;
class SandboxApplyPatchFileNotFoundError extends SandboxApplyPatchError {
constructor(message, details) {
super(message, 'apply_patch_file_not_found', details);
}
}
exports.SandboxApplyPatchFileNotFoundError = SandboxApplyPatchFileNotFoundError;
class SandboxApplyPatchDecodeError extends SandboxApplyPatchError {
constructor(message, details) {
super(message, 'apply_patch_decode_error', details);
}
}
exports.SandboxApplyPatchDecodeError = SandboxApplyPatchDecodeError;
class SandboxWorkspaceError extends SandboxRuntimeError {
constructor(message, code, details) {
super(message, details, code);
}
}
exports.SandboxWorkspaceError = SandboxWorkspaceError;
class SandboxWorkspaceReadNotFoundError extends SandboxWorkspaceError {
constructor(message, details) {
super(message, 'workspace_read_not_found', details);
}
}
exports.SandboxWorkspaceReadNotFoundError = SandboxWorkspaceReadNotFoundError;
class SandboxWorkspaceArchiveReadError extends SandboxWorkspaceError {
constructor(message, details) {
super(message, 'workspace_archive_read_error', details);
}
}
exports.SandboxWorkspaceArchiveReadError = SandboxWorkspaceArchiveReadError;
class SandboxWorkspaceArchiveWriteError extends SandboxWorkspaceError {
constructor(message, details) {
super(message, 'workspace_archive_write_error', details);
}
}
exports.SandboxWorkspaceArchiveWriteError = SandboxWorkspaceArchiveWriteError;
class SandboxWorkspaceWriteTypeError extends SandboxWorkspaceError {
constructor(message, details) {
super(message, 'workspace_write_type_error', details);
}
}
exports.SandboxWorkspaceWriteTypeError = SandboxWorkspaceWriteTypeError;
class SandboxWorkspaceStopError extends SandboxWorkspaceError {
constructor(message, details) {
super(message, 'workspace_stop_error', details);
}
}
exports.SandboxWorkspaceStopError = SandboxWorkspaceStopError;
class SandboxWorkspaceStartError extends SandboxWorkspaceError {
constructor(message, details) {
super(message, 'workspace_start_error', details);
}
}
exports.SandboxWorkspaceStartError = SandboxWorkspaceStartError;
class SandboxWorkspaceRootNotFoundError extends SandboxWorkspaceError {
constructor(message, details) {
super(message, 'workspace_root_not_found', details);
}
}
exports.SandboxWorkspaceRootNotFoundError = SandboxWorkspaceRootNotFoundError;
class SandboxLocalArtifactError extends SandboxArtifactError {
constructor(message, code, details) {
super(message, details, code);
}
}
exports.SandboxLocalArtifactError = SandboxLocalArtifactError;
class SandboxLocalFileReadError extends SandboxLocalArtifactError {
constructor(message, details) {
super(message, 'local_file_read_error', details);
}
}
exports.SandboxLocalFileReadError = SandboxLocalFileReadError;
class SandboxLocalDirReadError extends SandboxLocalArtifactError {
constructor(message, details) {
super(message, 'local_dir_read_error', details);
}
}
exports.SandboxLocalDirReadError = SandboxLocalDirReadError;
class SandboxLocalChecksumError extends SandboxLocalArtifactError {
constructor(message, details) {
super(message, 'local_checksum_error', details);
}
}
exports.SandboxLocalChecksumError = SandboxLocalChecksumError;
class SandboxGitArtifactError extends SandboxArtifactError {
constructor(message, code, details) {
super(message, details, code);
}
}
exports.SandboxGitArtifactError = SandboxGitArtifactError;
class SandboxGitMissingInImageError extends SandboxGitArtifactError {
constructor(message, details) {
super(message, 'git_missing_in_image', details);
}
}
exports.SandboxGitMissingInImageError = SandboxGitMissingInImageError;
class SandboxGitCloneError extends SandboxGitArtifactError {
constructor(message, details) {
super(message, 'git_clone_error', details);
}
}
exports.SandboxGitCloneError = SandboxGitCloneError;
class SandboxGitSubpathError extends SandboxGitArtifactError {
constructor(message, details) {
super(message, 'git_subpath_error', details);
}
}
exports.SandboxGitSubpathError = SandboxGitSubpathError;
class SandboxGitCopyError extends SandboxGitArtifactError {
constructor(message, details) {
super(message, 'git_copy_error', details);
}
}
exports.SandboxGitCopyError = SandboxGitCopyError;
class SandboxMountToolMissingError extends SandboxMountError {
constructor(message, details) {
super(message, details, 'mount_missing_tool');
}
}
exports.SandboxMountToolMissingError = SandboxMountToolMissingError;
class SandboxMountCommandError extends SandboxMountError {
constructor(message, details) {
super(message, details, 'mount_failed');
}
}
exports.SandboxMountCommandError = SandboxMountCommandError;
class SandboxMountConfigError extends SandboxMountError {
constructor(message, details) {
super(message, details, 'mount_config_invalid');
}
}
exports.SandboxMountConfigError = SandboxMountConfigError;
class SandboxSkillsConfigError extends SandboxError {
constructor(message, details) {
super(message, 'skills_config_invalid', details);
}
}
exports.SandboxSkillsConfigError = SandboxSkillsConfigError;
class SandboxConfigError extends SandboxConfigurationError {
constructor(message, details) {
super(message, details, 'sandbox_config_invalid');
}
}
exports.SandboxConfigError = SandboxConfigError;
class SandboxSnapshotPersistError extends SandboxSnapshotError {
constructor(message, details) {
super(message, details, 'snapshot_persist_error');
}
}
exports.SandboxSnapshotPersistError = SandboxSnapshotPersistError;
class SandboxSnapshotRestoreError extends SandboxSnapshotError {
constructor(message, details) {
super(message, details, 'snapshot_restore_error');
}
}
exports.SandboxSnapshotRestoreError = SandboxSnapshotRestoreError;
class SandboxSnapshotNotRestorableError extends SandboxSnapshotError {
constructor(message, details) {
super(message, details, 'snapshot_not_restorable');
}
}
exports.SandboxSnapshotNotRestorableError = SandboxSnapshotNotRestorableError;
function inferSandboxErrorRetryability(code, details) {
const retryable = details?.retryable;
if (typeof retryable === 'boolean') {
return retryable;
}
const cause = details?.cause;
if (cause instanceof SandboxError) {
return cause.retryable;
}
const providerRetryability = inferProviderDetailsRetryability(details);
if (providerRetryability !== null) {
return providerRetryability;
}
switch (code) {
case 'configuration_error':
case 'unsupported_feature':
case 'path_resolution_error':
case 'invalid_manifest_path':
case 'invalid_compression_scheme':
case 'exposed_port_unavailable':
case 'exec_nonzero':
case 'exec_timeout':
case 'pty_session_not_found':
case 'apply_patch_invalid_path':
case 'apply_patch_invalid_diff':
case 'apply_patch_file_not_found':
case 'apply_patch_decode_error':
case 'workspace_read_not_found':
case 'workspace_write_type_error':
case 'workspace_root_not_found':
case 'git_missing_in_image':
case 'git_subpath_error':
case 'mount_missing_tool':
case 'mount_config_invalid':
case 'skills_config_invalid':
case 'sandbox_config_invalid':
case 'snapshot_not_restorable':
return false;
default:
return null;
}
}
function inferProviderDetailsRetryability(details) {
const status = readStatus(details);
if (status !== undefined) {
if ([408, 425, 429, 500, 502, 503, 504].includes(status)) {
return true;
}
if ([400, 401, 403, 404, 409, 422].includes(status)) {
return false;
}
}
const code = details?.errorCode ?? details?.providerErrorCode;
if (typeof code === 'string') {
const normalized = code.toLowerCase();
if (/(rate.?limit|timeout|connection|unavailable)/u.test(normalized)) {
return true;
}
if (/(authentication|authorization|permission|forbidden|not.?found|validation|bad.?request|conflict|unprocessable)/u.test(normalized)) {
return false;
}
}
return null;
}
function readStatus(details) {
if (!details) {
return undefined;
}
for (const key of ['status', 'httpStatus', 'responseStatus']) {
const value = details[key];
if (typeof value === 'number' && Number.isInteger(value)) {
return value;
}
if (typeof value === 'string' && /^\d+$/u.test(value)) {
return Number(value);
}
}
return undefined;
}
//# sourceMappingURL=errors.js.map