The minimal document surface the schedule mutators need.

interface Schedulable {
    logic?: SohlLogic<any>;
    system: { scheduledActions?: ScheduledAction[] };
    uuid: string;
    update(data: Record<string, unknown>): Promise<unknown>;
}

Properties

Methods

Properties

logic?: SohlLogic<any>

The document's Logic — parents an event-driven schedule's ScheduledAction.predicate (issue #569). Every SoHL document exposes it; only an event schedule with a predicate reads it.

system: { scheduledActions?: ScheduledAction[] }

The document's system data (carries scheduledActions).

uuid: string

The document's uuid.

Methods

  • Persist a partial update to the document.

    Parameters

    • data: Record<string, unknown>

    Returns Promise<unknown>