<!-- Generated by scripts/gen-docs.ts from the TSDoc in src/. Do not edit by hand. -->

# `flow/run/resume-point`

Source: [`src/flow/run/resume-point.ts`](https://github.com/AI-for-dev/combo/blob/main/src/flow/run/resume-point.ts)

`resumePoint`: where a run picks up from its journal, or why it may not.

It is the runner's own reading, shared by a real resume and a dry run's
`from: journal`, so a resume can be tried offline and read the same. The
walk itself decides what runs, visit by visit, from the {@link Replay};
`from` only says, for whoever asked, the first visit in the order of the
file that did not end.

## `resumePoint`

*function*

```typescript
export function resumePoint(checked: CheckedFlow, journal: readonly JournalEntry[]): ResumePoint { /* … */ }
```

Where the run of `checked` that wrote `journal` picks up. A run that ended
well has nothing left; one that failed by a decision of the flow would
fail the same. A journal naming a visit the flow has not was written by
another flow.

## `ResumePoint`

*type*

```typescript
export type ResumePoint = { readonly ok: true; readonly from: string; readonly replay: Replay } | { readonly ok: false; readonly refused: string };
```

Where a run picks up: `from`, the first visit that did not end, `""` when
every root node did, and what the walk replays; or why it may not resume.
