Interface ITranscriptStore

A run's transcript turns. Behind the fence it refuses new turns; a purge removes the turns and keeps the fence.

interface ITranscriptStore {
    forget?(runId): Promise<void>;
    append(turn): Promise<void>;
    appendNext?(turn): Promise<TranscriptTurn>;
    read(runId, fromSeq, limit?): Promise<TranscriptTurn[]>;
    fence(runId): Promise<void>;
    isFenced(runId): Promise<boolean>;
    purge(runId): Promise<void>;
}

Implemented by

Methods

  • Optional whole-run eviction for in-memory hosts after terminal cleanup and the retention grace. Durable stores omit it to retain their records. Call only after producers have stopped; forgetting removes fences too.

    Parameters

    • runId: string

    Returns Promise<void>

  • Assigns the next seq and turnId for this run and stores the turn atomically, under the same anchor as the fence. Continues after the largest stored or allocated seq across sink instances. Optional for existing store implementers; required by MeetingTranscriptSink, which checks it at construction.

    Parameters

    Returns Promise<TranscriptTurn>