Interface DeliveryFence

Where a FencedOutbox keeps the runs whose deliveries are fenced. A durable implementation keeps a fence across a restart and between processes; MemoryDeliveryFence keeps it in this process alone.

interface DeliveryFence {
    isFenced(runId): Promise<boolean>;
    fence(runId): Promise<void>;
    forget?(runId): Promise<void>;
}

Implemented by

Methods

  • Optional. Drops the run's fence when its outbox forgets the run (an in-memory host's whole-run eviction after the retention grace). A durable fence omits it and keeps its fences.

    Parameters

    • runId: string

    Returns Promise<void>