---
url: 'https://adk.nht.io/api/@nhtio/adk/batteries/interfaces/IsolationReport.md'
description: >-
  A single normalized isolation observability report. Every phase stamps
  `phase`/`at`/`spawnCount` plus its own extra fields (see the per-phase hook
  docs on [`IsolationObservabilityHooks`](https://adk.nht.io/api/@nhtio/adk/batteries/interfaces/IsolationObservabilityHooks) for which extra fields a given
  `phase` populates).
---

# Interface: IsolationReport

Defined in: [src/batteries/isolation/observability.ts:44](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L44)

A single normalized isolation observability report. Every phase stamps `phase`/`at`/`spawnCount` plus
its own extra fields (see the per-phase hook docs on [IsolationObservabilityHooks](IsolationObservabilityHooks.md) for which
extra fields a given `phase` populates).

## Properties

| Property                                               | Type                                                              | Description                                                                                                                                                                                       | Defined in                                                                                                                                      |
| ------------------------------------------------------ | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
|  `approxBytes?`       | `number`                                                          | `wire:out` / `wire:in` — a cheap `JSON.stringify(...).length`-style size estimate; computed ONLY when a wire hook is registered (see [emitIsolationReport](../functions/emitIsolationReport.md)). | [src/batteries/isolation/observability.ts:93](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L93) |
|  `argPath?`               | `string`                                                          | `codec:escalate` — the argument path that needed to escalate past the `'raw'` tier.                                                                                                               | [src/batteries/isolation/observability.ts:95](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L95) |
|  `at`                          | `string`                                                          | ISO-8601 timestamp stamped when the report was emitted.                                                                                                                                           | [src/batteries/isolation/observability.ts:48](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L48) |
|  `bootMs?`                 | `number`                                                          | `spawn:ready` — time from `connect()` call to the `ready` envelope, in ms.                                                                                                                        | [src/batteries/isolation/observability.ts:54](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L54) |
|  `code?`                     | `number` | `null`                                                | `crash` — process exit code, when known.                                                                                                                                                          | [src/batteries/isolation/observability.ts:62](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L62) |
|  `deltaCount?`         | `number`                                                          | `stream:end` / `stream:cancel` — total deltas observed before end/cancel.                                                                                                                         | [src/batteries/isolation/observability.ts:82](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L82) |
|  `durationMs?`         | `number`                                                          | `call:settle` — wall-clock duration of the call, in ms.                                                                                                                                           | [src/batteries/isolation/observability.ts:74](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L74) |
|  `error?`                   | `unknown`                                                         | `spawn:error` / `crash` — the underlying error/reason.                                                                                                                                            | [src/batteries/isolation/observability.ts:56](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L56) |
|  `errorMessage?`     | `string`                                                          | `call:settle` (when `ok` is `false`) — the rejection's message.                                                                                                                                   | [src/batteries/isolation/observability.ts:78](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L78) |
|  `escalateReason?` | `string`                                                          | `codec:escalate` — why it escalated (e.g. `'function'`, `'error'`, `'custom-encodable'`).                                                                                                         | [src/batteries/isolation/observability.ts:97](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L97) |
|  `firstDeltaMs?`     | `number`                                                          | `stream:end` — ms from `stream:start` to the first delta (`undefined` if none arrived).                                                                                                           | [src/batteries/isolation/observability.ts:84](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L84) |
|  `forced?`                 | `boolean`                                                         | `dispose:done` — `true` when the grace period elapsed and `transport.terminate()` was forced.                                                                                                     | [src/batteries/isolation/observability.ts:58](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L58) |
|  `id?`                         | `string`                                                          | `call:start` / `call:settle` — the correlation id.                                                                                                                                                | [src/batteries/isolation/observability.ts:72](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L72) |
|  `inFlight?`             | `number`                                                          | `crash` — number of calls that were in flight (and rejected) at the moment of the crash.                                                                                                          | [src/batteries/isolation/observability.ts:66](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L66) |
|  `kind?`                     | `string`                                                          | `wire:out` / `wire:in` — the envelope's discriminant (`'call'`, `'result'`, `'stream:delta'`, …).                                                                                                 | [src/batteries/isolation/observability.ts:88](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L88) |
|  `method?`                 | `string`                                                          | `call:start` / `call:settle` — the method name.                                                                                                                                                   | [src/batteries/isolation/observability.ts:70](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L70) |
|  `ok?`                         | `boolean`                                                         | `call:settle` — `true` when the call resolved; `false` when it rejected.                                                                                                                          | [src/batteries/isolation/observability.ts:76](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L76) |
|  `payload?`               | `unknown`                                                         | With `debugPayloads: true` on a `call:*`/`wire:*` report — the raw payload body.                                                                                                                  | [src/batteries/isolation/observability.ts:99](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L99) |
|  `phase`                    | [`IsolationReportPhase`](../type-aliases/IsolationReportPhase.md) | The phase this report describes.                                                                                                                                                                  | [src/batteries/isolation/observability.ts:46](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L46) |
|  `reason?`                 | `string`                                                          | `crash` — the transport-reported crash reason.                                                                                                                                                    | [src/batteries/isolation/observability.ts:60](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L60) |
|  `serviceName?`       | `string`                                                          | The service's `name` (from its spec), when available.                                                                                                                                             | [src/batteries/isolation/observability.ts:50](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L50) |
|  `signal?`                 | `string` | `null`                                                | `crash` — process exit signal, when known.                                                                                                                                                        | [src/batteries/isolation/observability.ts:64](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L64) |
|  `spawnCount`          | `number`                                                          | How many times this service's guest has been (re)spawned, including the current spawn.                                                                                                            | [src/batteries/isolation/observability.ts:52](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L52) |
|  `streamError?`       | `unknown`                                                         | `stream:error` — the stream's terminal error.                                                                                                                                                     | [src/batteries/isolation/observability.ts:86](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L86) |
|  `streamName?`         | `string`                                                          | `stream:start` / `stream:end` / `stream:error` / `stream:cancel` — the stream name.                                                                                                               | [src/batteries/isolation/observability.ts:80](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L80) |
|  `tier?`                     | `string`                                                          | `wire:out` / `wire:in` — which codec tier carried the payload (`'raw'` or `'nhtio'`), when known.                                                                                                 | [src/batteries/isolation/observability.ts:90](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L90) |
|  `verdict?`               | `"respawn"` | `"giveUp"`                                         | `respawn:auto` — the crash-policy verdict that was consulted.                                                                                                                                     | [src/batteries/isolation/observability.ts:68](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/isolation/observability.ts#L68) |
