Sanity Library Reference Docs
    Preparing search index...

    name is a lake-id-segment (^[a-z0-9][a-z0-9-]*$) that interpolates into every deployed document id (<tag>.<name>.v<version>) — stable identity that instances pin to and subworkflows resolve by. lifecycle: 'child' marks a spawn-only definition, instantiated by a parent via an action's spawn, never started cold from a picker (omitted ⇒ 'standalone', startable); advisory only — consumers filter start pickers on it (see isStartableDefinition), the engine does not itself refuse a startInstance on a 'child' definition. start is meaningless (deploy-rejected) on a spawn-only definition; omitted, it means interactive semantics with no predicates. predicates are nullary named conditions — each name: groq entry is pre-evaluated and bound as the boolean $name var; redefining a built-in var is a deploy error, never a silent shadow.

    interface WorkflowDefinition {
        description?: string;
        fields?: FieldEntry[];
        groups?: Group[];
        initialStage: string;
        lifecycle?: WorkflowLifecycle;
        name: string;
        predicates?: Record<string, string>;
        roleAliases?: RoleAliases;
        semantics?: Semantic[];
        stages: Stage[];
        start?: StartBlock;
        title: string;
    }
    Index

    Properties

    description?: string
    fields?: FieldEntry[]
    groups?: Group[]
    initialStage: string
    lifecycle?: WorkflowLifecycle
    name: string
    predicates?: Record<string, string>
    roleAliases?: RoleAliases
    semantics?: Semantic[]
    stages: Stage[]
    start?: StartBlock
    title: string