Member Junction
    Preparing search index...

    Cached data for a single conversation's details (messages) and peripheral data. Populated by the efficient GetConversationComplete query in one round-trip.

    interface ConversationDetailCache {
        AgentRunsByDetailId: Map<string, MJAIAgentRunEntity>;
        ArtifactsByDetailId: Map<string, ArtifactJSON[]>;
        Details: MJConversationDetailEntity[];
        LoadedAt: Date;
        PeripheralDataStale: boolean;
        RatingsByDetailId: Map<string, RatingJSON[]>;
        RawData: ConversationDetailComplete[];
        UserAvatars: Map<string, UserAvatarInfo>;
    }
    Index

    Properties

    AgentRunsByDetailId: Map<string, MJAIAgentRunEntity>

    Agent runs keyed by conversation detail ID

    ArtifactsByDetailId: Map<string, ArtifactJSON[]>

    Parsed artifacts keyed by conversation detail ID

    The conversation detail (message) entities

    LoadedAt: Date

    Timestamp of when this cache entry was populated

    PeripheralDataStale: boolean

    When true, peripheral data (artifacts/ratings) has changed externally and needs to be re-fetched via a full query reload. Set by entity event handlers for junction entities whose joined fields can't be reconstructed from events alone.

    RatingsByDetailId: Map<string, RatingJSON[]>

    Ratings keyed by conversation detail ID

    Raw query result rows (used for peripheral data parsing)

    UserAvatars: Map<string, UserAvatarInfo>

    User avatars keyed by UserID