# `HoloBusyError`

> Contract 2.0.0 · package sha256 `a857eca95b35921109faf997094bb4192f12527d9d0fcd4be7e97f06425bad6e` · generated from `configurator-runtime.d.ts` by `services/onsite-scripter/scripts/build-contract-docs.mjs`; edit the source, not this file.

Class · `import { HoloBusyError } from '@holostep-configurators/runtime-client';` · stable · since 2.0.0 · section 3. Errors

The runtime cannot serve the call now.
- 'capture-held': a capture while a transaction holds the display or runs its [`beforeCommit`](Session.beforeCommit.md)
  functions; it rejects at once. To wait:
  `await session.idle({ signal })`, then capture again. [`idle()`](Session.idle.md) waits for that transaction:
  finish or abort your own first when its `work` waits on you, or it rolls back on its timeout.
- 'capture-gpu-lost': the graphics context was lost and no live one came back within
  `readyTimeoutMs` (the runtime restores or rebuilds it; spec 6.4). Capture again later.
- 'code-unavailable': the member's code loads on demand and failed to load (spec 6.3). Call
  again later: the call retries the load. [`assembly.candidates()`](Assembly.candidates.md) is start-up code and never
  throws it.

## Members

| Member | Kind | Summary |
| --- | --- | --- |
| <a id="constructor"></a>[`constructor`](HoloBusyError.constructor.md) | constructor | As the runtime builds it. |
| <a id="reason"></a>[`reason`](HoloBusyError.reason.md) | property | Why the runtime is busy. |

## Declaration

```ts
export declare class HoloBusyError extends Error {
  constructor(reason: HoloBusyError['reason'], message?: string);
  readonly reason: 'capture-held' | 'capture-gpu-lost' | 'code-unavailable' | 'other';
}
```

## Generic-API test (spec 3.1)

| Rule | Result |
| --- | --- |
| 1. Neutral name | pass: `HoloBusyError` names no product |
| 2. A precedent | not recorded: no ledger row (coverage.json) names this member or its owner |
| 3. Two apps, or labs | not recorded: no ledger row names this member or its owner |
| 4. The cheaper fix first | not recorded per member (Appendix B decides it per need) |
