[**zonegaze-flow**](../../../../README.md)

***

[zonegaze-flow](../../../../README.md) / [flow/contracts/src](../README.md) / runtimeBoardDataSchema

# Variable: runtimeBoardDataSchema

> `const` **runtimeBoardDataSchema**: `ZodPipe`\<`ZodObject`\<\{ `columns`: `ZodArray`\<`ZodPipe`\<`ZodObject`\<\{ `cards`: `ZodArray`\<`ZodPipe`\<`ZodObject`\<\{ `agentId`: ...; `archiveInfo`: ...; `autoReviewEnabled`: ...; `autoReviewMode`: ...; `baseRef`: ...; `clineModelId`: ...; `clineProviderId`: ...; `clineReasoningEffort`: ...; `clineSettings`: ...; `createdAt`: ...; `generatedFromPlanLaterTaskId`: ...; `id`: ...; `images`: ...; `parentTaskId`: ...; `prompt`: ...; `startInPlanMode`: ...; `tags`: ...; `title`: ...; `updatedAt`: ...; `workspaceTaskId`: ...; `workTypeId`: ...; \}, `$strip`\>, `ZodTransform`\<\{ `agentId?`: ...; `archiveInfo?`: ...; `autoReviewEnabled?`: ...; `autoReviewMode?`: ...; `baseRef`: ...; `clineSettings?`: ...; `createdAt`: ...; `generatedFromPlanLaterTaskId?`: ...; `id`: ...; `images?`: ...; `parentTaskId?`: ...; `prompt`: ...; `startInPlanMode`: ...; `tags`: ...; `title`: ...; `updatedAt`: ...; `workspaceTaskId?`: ...; `workTypeId`: ...; \}, \{ `agentId?`: ...; `archiveInfo?`: ...; `autoReviewEnabled?`: ...; `autoReviewMode?`: ...; `baseRef`: ...; `clineModelId?`: ...; `clineProviderId?`: ...; `clineReasoningEffort?`: ...; `clineSettings?`: ...; `createdAt`: ...; `generatedFromPlanLaterTaskId?`: ...; `id`: ...; `images?`: ...; `parentTaskId?`: ...; `prompt`: ...; `startInPlanMode`: ...; `tags?`: ...; `title?`: ...; `updatedAt`: ...; `workspaceTaskId?`: ...; `workTypeId?`: ...; \}\>\>\>; `id`: `ZodString`; `title`: `ZodString`; \}, `$strip`\>, `ZodTransform`\<\{ `cards`: `object`[]; `id`: `"backlog"` \| `"in_progress"` \| `"review"` \| `"trash"` \| `"plan_later"` \| `"plan_review"` \| `"next_up"` \| `"archive"`; `title`: `string`; \}, \{ `cards`: `object`[]; `id`: `string`; `title`: `string`; \}\>\>\>; `dependencies`: `ZodDefault`\<`ZodArray`\<`ZodObject`\<\{ `createdAt`: `ZodNumber`; `fromTaskId`: `ZodString`; `id`: `ZodString`; `toTaskId`: `ZodString`; \}, `$strip`\>\>\>; `workTypeRegistry`: `ZodPipe`\<`ZodDefault`\<`ZodObject`\<\{ `types`: `ZodDefault`\<`ZodArray`\<`ZodObject`\<\{ `allowedParentTypeIds`: ...; `behavior`: ...; `color`: ...; `enabled`: ...; `icon`: ...; `id`: ...; `label`: ...; `parentRequired`: ...; `pluralLabel`: ...; \}, `$strip`\>\>\>; `version`: `ZodDefault`\<`ZodLiteral`\<`1`\>\>; \}, `$strip`\>\>, `ZodTransform`\<`RuntimeWorkTypeRegistry`, \{ `types`: `object`[]; `version`: `1`; \}\>\>; \}, `$strip`\>, `ZodTransform`\<\{ `columns`: `object`[]; `dependencies`: `object`[]; `workTypeRegistry`: `RuntimeWorkTypeRegistry`; \}, \{ `columns`: `object`[]; `dependencies`: `object`[]; `workTypeRegistry`: `RuntimeWorkTypeRegistry`; \}\>\>

Defined in: [flow/contracts/src/api-contract.ts:356](https://github.com/neuralpilot08/zonegaze-flow/blob/ee47e8308e50071e712017a7f8b0db560a4746ee/flow/contracts/src/api-contract.ts#L356)

Persisted board schema. Normalization always emits the canonical column order
so consumers can render and mutate state without handling missing columns.
