Circle V2 API Docs
    Preparing search index...

    Variable aiFeedbackTableConst

    aiFeedbackTable: PgTableWithColumns<
        {
            columns: {
                addressedAt: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgTimestampString";
                        data: DbDate;
                        dataType: "string";
                        driverParam: string;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "addressed_at";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: DbDate },
                >;
                addressedBy: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgUUID";
                        data: UserId;
                        dataType: "string";
                        driverParam: string;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "addressed_by";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: UserId },
                >;
                assignedTo: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgUUID";
                        data: UserId;
                        dataType: "string";
                        driverParam: string;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "assigned_to";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: UserId },
                >;
                auditQuestionId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgBigInt53";
                        data: AuditQuestionId;
                        dataType: "number";
                        driverParam: string
                        | number;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "audit_question_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: AuditQuestionId },
                >;
                auditResponseId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgBigInt53";
                        data: AuditResponseId;
                        dataType: "number";
                        driverParam: string
                        | number;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "audit_response_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: AuditResponseId },
                >;
                auditRunId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgBigInt53";
                        data: AuditRunId;
                        dataType: "number";
                        driverParam: string
                        | number;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "audit_run_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: AuditRunId },
                >;
                comment: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "comment";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                conversationId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "conversation_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                correction: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "correction";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                createdAt: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgTimestampString";
                        data: Generated;
                        dataType: "string";
                        driverParam: string;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: true;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "created_at";
                        notNull: true;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: Generated },
                >;
                createdBy: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgUUID";
                        data: UserId;
                        dataType: "string";
                        driverParam: string;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: true;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "created_by";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: UserId },
                >;
                entityId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgInteger";
                        data: EntityId;
                        dataType: "number";
                        driverParam: string
                        | number;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "entity_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: EntityId },
                >;
                feedbackKey: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: true;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "feedback_key";
                        notNull: true;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                flow: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgEnumColumn";
                        data: | "case_chat"
                        | "chart_review"
                        | "note_generation"
                        | "note_validation";
                        dataType: "string";
                        driverParam: string;
                        enumValues: [
                            "case_chat",
                            "chart_review",
                            "note_generation",
                            "note_validation",
                        ];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "flow";
                        notNull: true;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                id: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgUUID";
                        data: Generated;
                        dataType: "string";
                        driverParam: string;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: true;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: true;
                        name: "id";
                        notNull: true;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: Generated },
                >;
                langsmithFeedbackId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgUUID";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "langsmith_feedback_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                langsmithRunId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "langsmith_run_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                langsmithThreadId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "langsmith_thread_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                linearIssueUrl: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "linear_issue_url";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                messageId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "message_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                model: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "model";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                patientId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgBigInt53";
                        data: PatientId;
                        dataType: "number";
                        driverParam: string
                        | number;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "patient_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: PatientId },
                >;
                patientSessionId: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgBigInt53";
                        data: SessionId;
                        dataType: "number";
                        driverParam: string
                        | number;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "patient_session_id";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: SessionId },
                >;
                promptTag: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "prompt_tag";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                promptVersion: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "prompt_version";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                rating: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgEnumColumn";
                        data: "thumbs_up"
                        | "thumbs_down";
                        dataType: "string";
                        driverParam: string;
                        enumValues: ["thumbs_up", "thumbs_down"];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "rating";
                        notNull: true;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                resolutionNote: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "resolution_note";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                resolutionRef: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "resolution_ref";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                severity: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgEnumColumn";
                        data: "low"
                        | "medium"
                        | "high"
                        | "critical";
                        dataType: "string";
                        driverParam: string;
                        enumValues: ["low", "medium", "high", "critical"];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "severity";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                status: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgEnumColumn";
                        data: | "open"
                        | "acknowledged"
                        | "in_progress"
                        | "addressed"
                        | "reopened"
                        | "dismissed";
                        dataType: "string";
                        driverParam: string;
                        enumValues: [
                            "open",
                            "acknowledged",
                            "in_progress",
                            "addressed",
                            "reopened",
                            "dismissed",
                        ];
                        generated: undefined;
                        hasDefault: true;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "status";
                        notNull: true;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                targetRef: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "target_ref";
                        notNull: true;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                targetSnapshot: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgText";
                        data: string;
                        dataType: "string";
                        driverParam: string;
                        enumValues: [string, ...string[]];
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "target_snapshot";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    {},
                >;
                threadSnapshot: PgColumn<
                    {
                        baseColumn: never;
                        columnType: "PgJsonb";
                        data: AiFeedbackThreadTurn[];
                        dataType: "json";
                        driverParam: unknown;
                        enumValues: undefined;
                        generated: undefined;
                        hasDefault: false;
                        hasRuntimeDefault: false;
                        identity: undefined;
                        isAutoincrement: false;
                        isPrimaryKey: false;
                        name: "thread_snapshot";
                        notNull: false;
                        tableName: "ai_feedback";
                    },
                    {},
                    { $type: AiFeedbackThreadTurn[] },
                >;
            };
            dialect: "pg";
            name: "ai_feedback";
            schema: undefined;
        },
    > = ...

    A single user 👍/👎 on an AI output, tagged to the LangSmith run that produced it.

    Durability: feedback is an INDEPENDENT record. Every domain reference (patient_id, patient_session_id, audit_run_id, audit_response_id, audit_question_id, entity_id) is ON DELETE SET NULL — deleting a patient / session / audit run must never cascade into or delete feedback. The durable target_ref / langsmith_run_id / langsmith_thread_id and the snapshotted prompt_version/model keep the row meaningful after its domain parent is gone.