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

# `flow/run/snapshot`

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

The snapshot of a run: what its validation read, kept in its run directory
at the first start with the input and the settings, so that a resume runs
the flow the run started with, whatever the disk says by then.

`snapshot.json` holds every flow file reached, each agent named, each check
script's content, the input and the settings. The skills an agent names
are copied under `agents/<agent>/skills/`, where a definition keeps its
own: read back, the agent lives there, so its skills resolve to the copies
at the check and at the spawn alike.

## `readSnapshot`

*function*

```typescript
export function readSnapshot(runDir: string): Snapshot { /* … */ }
```

The snapshot in `runDir`. Throws when there is none, or one of another version.

## `Settings`

*type*

```typescript
export type Settings = {
	/** The working tree it was checked against. */
	readonly cwd: string;
	/** Whether a person could answer when it started. */
	readonly somebodyThere: boolean;
	/** The model it was started with, over the flow's and each agent's own. */
	readonly model?: string;
	/** The bound of every agent turn it was started with. */
	readonly timeoutMs?: number;
};
```

What a run was started with, beside its flow: frozen, so a resume is the same run.

## `Snapshot`

*type*

```typescript
export type Snapshot = {
	/** The flow's name. */
	readonly flow: string;
	/** Exactly what the check read: the flow's file, the files it reaches, the agents it names. */
	readonly catalogue: FlowCatalogue;
	/** Each check script's content, by its path. */
	readonly scripts: ReadonlyMap<string, string>;
	/** What the run was started on. */
	readonly input: unknown;
	/** What it was started with, beside its flow. */
	readonly settings: Settings;
};
```

A snapshot read back: the flow's name, a catalogue holding exactly what its check read, and what the run was started with.
