Member Junction
    Preparing search index...

    One historical caption turn of a reviewed session (a persisted MJ: Conversation Details row).

    Carries BOTH the thread-rendering fields (Role/Text/At) AND the raw fields the time-aligned evidence player reads (ID, Message, __mj_CreatedAt, UtteranceStartMs, UtteranceEndMs) so a review's turns can be handed straight to RealtimeEvidencePlaybackComponent for the Recording tab — this shape structurally satisfies that player's EvidencePlaybackTurn input.

    interface RealtimeSessionReviewTurn {
        __mj_CreatedAt: Date | null;
        At: Date | null;
        ID: string;
        Message: string | null;
        Role: "User" | "Assistant";
        Text: string;
        UtteranceEndMs: number | null;
        UtteranceStartMs: number | null;
    }
    Index

    Properties

    __mj_CreatedAt: Date | null

    When the turn was persisted (__mj_CreatedAt), or null when unknown. Aliases At.

    At: Date | null

    When the turn was persisted (__mj_CreatedAt), or null when unknown.

    ID: string

    MJ: Conversation Details.ID — the player's @for track key.

    Message: string | null

    The raw transcript text (mirrors Text) — the player reads Message.

    Role: "User" | "Assistant"

    Who spoke the turn. Persisted AI rows map to Assistant.

    Text: string

    The transcript text.

    UtteranceEndMs: number | null

    Precise media-relative end (ms from recording t0), or null.

    UtteranceStartMs: number | null

    Precise media-relative start (ms from recording t0), or null when the driver supplied no timing.