> ## Documentation Index
> Fetch the complete documentation index at: https://botmesh.afaya.com.co/llms.txt
> Use this file to discover all available pages before exploring further.

# FlowCheckpoint

> Interface exported by @botmesh/core.

Defined in: [core/provider.ts:1361](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1361)

Saved position of a conversation (flow id, step and `c.state`), written by
`.persistent()` flows so they can resume after a restart.

## Properties

### flowId

```ts theme={null}
flowId: string;
```

Defined in: [core/provider.ts:1362](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1362)

***

### step

```ts theme={null}
step: number;
```

Defined in: [core/provider.ts:1363](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1363)

***

### state

```ts theme={null}
state: Record<string, unknown>;
```

Defined in: [core/provider.ts:1364](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1364)

***

### updatedAt

```ts theme={null}
updatedAt: number;
```

Defined in: [core/provider.ts:1365](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1365)

***

### parked?

```ts theme={null}
parked?: boolean;
```

Defined in: [core/provider.ts:1371](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1371)

Multi-replica coordination only: `true` while the flow is parked on the FIRST wait of
`step` with its prompt already sent, so the replica that resumes it takes the waking
message as that wait's answer. Absent or `false`: the step re-runs from its start.

***

### inboundId?

```ts theme={null}
inboundId?: string;
```

Defined in: [core/provider.ts:1378](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1378)

Durability (`BotConfig.durability`): id of the inbound journal record whose effects this
checkpoint captures (the message that entered the flow or that the step consumed). A replay
of that record after a crash resumes the flow's pending steps without delivering the message
to it again. Stores persist it opaquely with the rest of the checkpoint.

***

### cause?

```ts theme={null}
cause?: object;
```

Defined in: [core/provider.ts:1384](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1384)

Durability: the causation (inbound record id + send sequence) the next step's sends
continue from. A step re-run on replay re-derives the same outbox keys, so a prompt
that already went out is not sent twice.

#### id

```ts theme={null}
id: string;
```

#### seq

```ts theme={null}
seq: number;
```

***

### answer?

```ts theme={null}
answer?: CheckpointAnswer;
```

Defined in: [core/provider.ts:1392](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1392)

Multi-replica coordination: the message the FIRST wait of `step` consumed while the step
had not completed yet (a slow validator, a `.do()` running after its first `c.ask`). The
replica that resumes the flow feeds it to that wait instead of asking again. The next
step's checkpoint drops it; a later wait of the same step parking drops it too (the step
then re-runs from its start, as without it).

***

### handover?

```ts theme={null}
handover?: CheckpointHandover;
```

Defined in: [core/provider.ts:1394](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1394)

Multi-replica hand-over metadata (`coordination.handover`): an ephemeral checkpoint or a stub.

***

### trace?

```ts theme={null}
trace?: CheckpointTrace;
```

Defined in: [core/provider.ts:1402](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1402)

Tracing (`BotConfig.telemetry`) only: the W3C trace context of the conversation turn
that wrote this checkpoint. The replica (or restarted process) that resumes it LINKS
its first turn to that span (the resumed turn's parent stays the waking message's
dispatch). Absent without telemetry or when the tracer's ids are not W3C-shaped.
Stores persist it opaquely, as JSON.

***

### revision?

```ts theme={null}
revision?: number;
```

Defined in: [core/provider.ts:1410](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L1410)

Store revision of this checkpoint row (compare-and-set writes only, see
[IStore.setCheckpointIf](https://botmesh.afaya.com.co/api/core/interfaces/IStore.md#setcheckpointif)). Set by the runtime: the revision it last read or
wrote for the key, plus one. Absent on rows written with `setCheckpoint()` (treated
as revision `0` by the conditional writes). Stores persist it opaquely with the rest
of the checkpoint and never interpret it beyond the comparison.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.