Sanity Library Reference Docs
    Preparing search index...

    The OperationArgs of the verbs that own a discrete commit — fireAction, editField, completeEffect, commitEffectOps, setStage, abortInstance. tick deliberately takes the plain base: it owns no commit of its own and re-derives everything, so retrying it blind is already safe.

    interface CommitEffectOpsArgs {
        claimToken: string;
        effectKey: string;
        grantsFromPath?: string;
        idempotencyKey: string;
        instanceId: string;
        leaseMs?: number;
        ops: FieldOp[];
    }

    Hierarchy (View Summary)

    Index

    Properties

    claimToken: string

    The exact-claim identity handed to the reporting dispatch. The commit re-reads the instance and rejects (writing nothing) unless the entry's live claim carries this token unexpired — so an expired, released, or superseded handler cannot update state. A successful commit renews the claim's lease.

    effectKey: string

    The _key of the pending effect being reported on.

    grantsFromPath?: string

    URL path for grant resolution — see StartInstanceArgs.grantsFromPath.

    idempotencyKey: string

    Required here, unlike the other dedupable verbs: the engine cannot assume a supplied field op is idempotent, so every mid-dispatch report must be retry-safe. (The runtime check remains for untyped callers.)

    instanceId: string
    leaseMs?: number

    Lease duration the successful commit renews the claim to — the drain's effects.leaseMs. Default DEFAULT_EFFECT_LEASE_MS (5 min).

    ops: FieldOp[]

    Mid-dispatch field state, field.* ops only — validated and applied exactly like completion ops (same applier, same target resolution against the current open stage, workflow-/stage-scope only, never status.set). Must be non-empty. Completion ops remain the final atomic result committed when the handler returns; these are separately committed and observable before it.