|
|
|
@@ -3342,7 +3342,7 @@ func (q *sqlQuerier) GetChatDiffStatusesByChatIDs(ctx context.Context, chatIds [
|
|
|
|
|
|
|
|
|
|
const getChatMessageByID = `-- name: GetChatMessageByID :one
|
|
|
|
|
SELECT
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed, created_by
|
|
|
|
|
FROM
|
|
|
|
|
chat_messages
|
|
|
|
|
WHERE
|
|
|
|
@@ -3368,13 +3368,14 @@ func (q *sqlQuerier) GetChatMessageByID(ctx context.Context, id int64) (ChatMess
|
|
|
|
|
&i.CacheReadTokens,
|
|
|
|
|
&i.ContextLimit,
|
|
|
|
|
&i.Compressed,
|
|
|
|
|
&i.CreatedBy,
|
|
|
|
|
)
|
|
|
|
|
return i, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const getChatMessagesByChatID = `-- name: GetChatMessagesByChatID :many
|
|
|
|
|
SELECT
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed, created_by
|
|
|
|
|
FROM
|
|
|
|
|
chat_messages
|
|
|
|
|
WHERE
|
|
|
|
@@ -3415,6 +3416,7 @@ func (q *sqlQuerier) GetChatMessagesByChatID(ctx context.Context, arg GetChatMes
|
|
|
|
|
&i.CacheReadTokens,
|
|
|
|
|
&i.ContextLimit,
|
|
|
|
|
&i.Compressed,
|
|
|
|
|
&i.CreatedBy,
|
|
|
|
|
); err != nil {
|
|
|
|
|
return nil, err
|
|
|
|
|
}
|
|
|
|
@@ -3446,7 +3448,7 @@ WITH latest_compressed_summary AS (
|
|
|
|
|
1
|
|
|
|
|
)
|
|
|
|
|
SELECT
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed, created_by
|
|
|
|
|
FROM
|
|
|
|
|
chat_messages
|
|
|
|
|
WHERE
|
|
|
|
@@ -3511,6 +3513,7 @@ func (q *sqlQuerier) GetChatMessagesForPromptByChatID(ctx context.Context, chatI
|
|
|
|
|
&i.CacheReadTokens,
|
|
|
|
|
&i.ContextLimit,
|
|
|
|
|
&i.Compressed,
|
|
|
|
|
&i.CreatedBy,
|
|
|
|
|
); err != nil {
|
|
|
|
|
return nil, err
|
|
|
|
|
}
|
|
|
|
@@ -3654,7 +3657,7 @@ func (q *sqlQuerier) GetChatsByOwnerID(ctx context.Context, arg GetChatsByOwnerI
|
|
|
|
|
|
|
|
|
|
const getLastChatMessageByRole = `-- name: GetLastChatMessageByRole :one
|
|
|
|
|
SELECT
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed, created_by
|
|
|
|
|
FROM
|
|
|
|
|
chat_messages
|
|
|
|
|
WHERE
|
|
|
|
@@ -3690,6 +3693,7 @@ func (q *sqlQuerier) GetLastChatMessageByRole(ctx context.Context, arg GetLastCh
|
|
|
|
|
&i.CacheReadTokens,
|
|
|
|
|
&i.ContextLimit,
|
|
|
|
|
&i.Compressed,
|
|
|
|
|
&i.CreatedBy,
|
|
|
|
|
)
|
|
|
|
|
return i, err
|
|
|
|
|
}
|
|
|
|
@@ -3809,13 +3813,14 @@ WITH updated_chat AS (
|
|
|
|
|
UPDATE
|
|
|
|
|
chats
|
|
|
|
|
SET
|
|
|
|
|
last_model_config_id = $2::uuid
|
|
|
|
|
last_model_config_id = $3::uuid
|
|
|
|
|
WHERE
|
|
|
|
|
id = $1::uuid
|
|
|
|
|
AND $2::uuid IS NOT NULL
|
|
|
|
|
AND $3::uuid IS NOT NULL
|
|
|
|
|
)
|
|
|
|
|
INSERT INTO chat_messages (
|
|
|
|
|
chat_id,
|
|
|
|
|
created_by,
|
|
|
|
|
model_config_id,
|
|
|
|
|
role,
|
|
|
|
|
content,
|
|
|
|
@@ -3831,24 +3836,26 @@ INSERT INTO chat_messages (
|
|
|
|
|
) VALUES (
|
|
|
|
|
$1::uuid,
|
|
|
|
|
$2::uuid,
|
|
|
|
|
$3::text,
|
|
|
|
|
$4::jsonb,
|
|
|
|
|
$5::chat_message_visibility,
|
|
|
|
|
$6::bigint,
|
|
|
|
|
$3::uuid,
|
|
|
|
|
$4::text,
|
|
|
|
|
$5::jsonb,
|
|
|
|
|
$6::chat_message_visibility,
|
|
|
|
|
$7::bigint,
|
|
|
|
|
$8::bigint,
|
|
|
|
|
$9::bigint,
|
|
|
|
|
$10::bigint,
|
|
|
|
|
$11::bigint,
|
|
|
|
|
$12::bigint,
|
|
|
|
|
COALESCE($13::boolean, FALSE)
|
|
|
|
|
$13::bigint,
|
|
|
|
|
COALESCE($14::boolean, FALSE)
|
|
|
|
|
)
|
|
|
|
|
RETURNING
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed, created_by
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
type InsertChatMessageParams struct {
|
|
|
|
|
ChatID uuid.UUID `db:"chat_id" json:"chat_id"`
|
|
|
|
|
CreatedBy uuid.NullUUID `db:"created_by" json:"created_by"`
|
|
|
|
|
ModelConfigID uuid.NullUUID `db:"model_config_id" json:"model_config_id"`
|
|
|
|
|
Role string `db:"role" json:"role"`
|
|
|
|
|
Content pqtype.NullRawMessage `db:"content" json:"content"`
|
|
|
|
@@ -3866,6 +3873,7 @@ type InsertChatMessageParams struct {
|
|
|
|
|
func (q *sqlQuerier) InsertChatMessage(ctx context.Context, arg InsertChatMessageParams) (ChatMessage, error) {
|
|
|
|
|
row := q.db.QueryRowContext(ctx, insertChatMessage,
|
|
|
|
|
arg.ChatID,
|
|
|
|
|
arg.CreatedBy,
|
|
|
|
|
arg.ModelConfigID,
|
|
|
|
|
arg.Role,
|
|
|
|
|
arg.Content,
|
|
|
|
@@ -3896,6 +3904,7 @@ func (q *sqlQuerier) InsertChatMessage(ctx context.Context, arg InsertChatMessag
|
|
|
|
|
&i.CacheReadTokens,
|
|
|
|
|
&i.ContextLimit,
|
|
|
|
|
&i.Compressed,
|
|
|
|
|
&i.CreatedBy,
|
|
|
|
|
)
|
|
|
|
|
return i, err
|
|
|
|
|
}
|
|
|
|
@@ -4130,7 +4139,7 @@ SET
|
|
|
|
|
WHERE
|
|
|
|
|
id = $3::bigint
|
|
|
|
|
RETURNING
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed
|
|
|
|
|
id, chat_id, model_config_id, created_at, role, content, visibility, input_tokens, output_tokens, total_tokens, reasoning_tokens, cache_creation_tokens, cache_read_tokens, context_limit, compressed, created_by
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
type UpdateChatMessageByIDParams struct {
|
|
|
|
@@ -4158,6 +4167,7 @@ func (q *sqlQuerier) UpdateChatMessageByID(ctx context.Context, arg UpdateChatMe
|
|
|
|
|
&i.CacheReadTokens,
|
|
|
|
|
&i.ContextLimit,
|
|
|
|
|
&i.Compressed,
|
|
|
|
|
&i.CreatedBy,
|
|
|
|
|
)
|
|
|
|
|
return i, err
|
|
|
|
|
}
|
|
|
|
|