Capability first · transport second

AsyncBoundary.js

Runs one asynchronous operation with timeout, abort, result validation, and stable boundary errors.

SDK 0.5.18Runtime 0.8.12Protocol arcane/1
On this page

Overview

Runs one asynchronous operation with timeout, abort, result validation, and stable boundary errors.

  • Artifact
    AsyncBoundary.js · esm
  • Classification
    public first party
  • Availability
    Cross-host
  • Normalization
    Fully normalized timeout/abort errors.

Import and lifecycle

JavaScript
import * as module from '/arcane/modules/AsyncBoundary.js';

Creates a child AbortController and finite timer; function operations must cooperatively stop when signaled.

Application-facing behavior: AsyncBoundaryTimeoutError, AsyncBoundaryAbortError, defaults, runAsyncBoundary(), and default alias.

Protocol and host implementation

AbortController and timers This detail does not widen the application-facing API or grant authority.

Exports, signatures, parameters, and results

BindingFormDeclaration or signatureParameter syntax
AsyncBoundaryTimeoutErrorclassclass AsyncBoundaryTimeoutError extends Error
AsyncBoundaryAbortErrorclassclass AsyncBoundaryAbortError extends Error
asyncBoundaryDefaultsvariable · valuevariable asyncBoundaryDefaults
runAsyncBoundaryfunctionfunction runAsyncBoundary(operation,options={})operation,options={}
defaultdefault · functionfunction runAsyncBoundary(operation,options={})operation,options={}
CallableKindExact public signatureParameter syntax
defaultexported-functionfunction runAsyncBoundary(operation,options={})operation,options={}
MemberKindExact public declarationParameter syntax
AsyncBoundaryTimeoutError.constructorconstructorconstructor(timeoutMs)timeoutMs
AsyncBoundaryAbortError.constructorconstructorconstructor(reason)reason

Parameter meanings and results

runAsyncBoundary(operation, {timeoutMs, signal}) accepts a promise or a signal-aware function and resolves its value; defaults are 10,000 ms with a 300,000 ms maximum.

Events, side effects, and errors

Source-literal CustomEvent dispatches

No source-literal CustomEvent dispatch is part of this artifact.

Lifecycle and event flow

This artifact has no additional documented lifecycle event flow.

Direct coded failures

This artifact directly assigns no stable coded failure.

Exported Error subclasses

  • AsyncBoundaryTimeoutError extends Error
  • AsyncBoundaryAbortError extends Error

Documented failure behavior

  • ASYNC_BOUNDARY_TIMEOUT
  • ASYNC_BOUNDARY_ABORTED
  • ASYNC_BOUNDARY_INVALID_OPTIONS
  • ASYNC_BOUNDARY_INVALID_OPERATION
  • ASYNC_BOUNDARY_UNAVAILABLE

Availability and capabilities

Cross-host. Fully normalized timeout/abort errors.

Cross-host async safety primitive with no Core dependency.

Contract example

JavaScript
import {runAsyncBoundary} from '/arcane/modules/AsyncBoundary.js';

const value=await runAsyncBoundary(async signal=>{
    if(signal.aborted) throw signal.reason;
    return 42;
},{timeoutMs:1000});
console.log(value);

No direct Core call is claimed for this artifact. Any injected provider or consuming module retains its own documented authority.