diff options
| author | Kujtim Hoxha <[email protected]> | 2025-03-27 22:35:48 +0100 |
|---|---|---|
| committer | Kujtim Hoxha <[email protected]> | 2025-04-01 13:38:54 +0200 |
| commit | afd9ad0560d76c2a6d161dad52553b10ff428905 (patch) | |
| tree | 69f78b05ff0d7952cd3e3c9332f001e66abb2faf /internal/db/messages.sql.go | |
| parent | 904061c243f70696bfe781e97bf4e392e6954d07 (diff) | |
| download | opencode-afd9ad0560d76c2a6d161dad52553b10ff428905.tar.gz opencode-afd9ad0560d76c2a6d161dad52553b10ff428905.zip | |
rework llm
Diffstat (limited to 'internal/db/messages.sql.go')
| -rw-r--r-- | internal/db/messages.sql.go | 89 |
1 files changed, 77 insertions, 12 deletions
diff --git a/internal/db/messages.sql.go b/internal/db/messages.sql.go index d0f69458f..3f2846740 100644 --- a/internal/db/messages.sql.go +++ b/internal/db/messages.sql.go @@ -7,34 +7,56 @@ package db import ( "context" + "database/sql" ) const createMessage = `-- name: CreateMessage :one INSERT INTO messages ( id, session_id, - message_data, + role, + finished, + content, + tool_calls, + tool_results, created_at, updated_at ) VALUES ( - ?, ?, ?, strftime('%s', 'now'), strftime('%s', 'now') + ?, ?, ?, ?, ?, ?, ?, strftime('%s', 'now'), strftime('%s', 'now') ) -RETURNING id, session_id, message_data, created_at, updated_at +RETURNING id, session_id, role, content, thinking, finished, tool_calls, tool_results, created_at, updated_at ` type CreateMessageParams struct { - ID string `json:"id"` - SessionID string `json:"session_id"` - MessageData string `json:"message_data"` + ID string `json:"id"` + SessionID string `json:"session_id"` + Role string `json:"role"` + Finished bool `json:"finished"` + Content string `json:"content"` + ToolCalls sql.NullString `json:"tool_calls"` + ToolResults sql.NullString `json:"tool_results"` } func (q *Queries) CreateMessage(ctx context.Context, arg CreateMessageParams) (Message, error) { - row := q.queryRow(ctx, q.createMessageStmt, createMessage, arg.ID, arg.SessionID, arg.MessageData) + row := q.queryRow(ctx, q.createMessageStmt, createMessage, + arg.ID, + arg.SessionID, + arg.Role, + arg.Finished, + arg.Content, + arg.ToolCalls, + arg.ToolResults, + ) var i Message err := row.Scan( &i.ID, &i.SessionID, - &i.MessageData, + &i.Role, + &i.Content, + &i.Thinking, + &i.Finished, + &i.ToolCalls, + &i.ToolResults, &i.CreatedAt, &i.UpdatedAt, ) @@ -62,7 +84,7 @@ func (q *Queries) DeleteSessionMessages(ctx context.Context, sessionID string) e } const getMessage = `-- name: GetMessage :one -SELECT id, session_id, message_data, created_at, updated_at +SELECT id, session_id, role, content, thinking, finished, tool_calls, tool_results, created_at, updated_at FROM messages WHERE id = ? LIMIT 1 ` @@ -73,7 +95,12 @@ func (q *Queries) GetMessage(ctx context.Context, id string) (Message, error) { err := row.Scan( &i.ID, &i.SessionID, - &i.MessageData, + &i.Role, + &i.Content, + &i.Thinking, + &i.Finished, + &i.ToolCalls, + &i.ToolResults, &i.CreatedAt, &i.UpdatedAt, ) @@ -81,7 +108,7 @@ func (q *Queries) GetMessage(ctx context.Context, id string) (Message, error) { } const listMessagesBySession = `-- name: ListMessagesBySession :many -SELECT id, session_id, message_data, created_at, updated_at +SELECT id, session_id, role, content, thinking, finished, tool_calls, tool_results, created_at, updated_at FROM messages WHERE session_id = ? ORDER BY created_at ASC @@ -99,7 +126,12 @@ func (q *Queries) ListMessagesBySession(ctx context.Context, sessionID string) ( if err := rows.Scan( &i.ID, &i.SessionID, - &i.MessageData, + &i.Role, + &i.Content, + &i.Thinking, + &i.Finished, + &i.ToolCalls, + &i.ToolResults, &i.CreatedAt, &i.UpdatedAt, ); err != nil { @@ -115,3 +147,36 @@ func (q *Queries) ListMessagesBySession(ctx context.Context, sessionID string) ( } return items, nil } + +const updateMessage = `-- name: UpdateMessage :exec +UPDATE messages +SET + content = ?, + thinking = ?, + tool_calls = ?, + tool_results = ?, + finished = ?, + updated_at = strftime('%s', 'now') +WHERE id = ? +` + +type UpdateMessageParams struct { + Content string `json:"content"` + Thinking string `json:"thinking"` + ToolCalls sql.NullString `json:"tool_calls"` + ToolResults sql.NullString `json:"tool_results"` + Finished bool `json:"finished"` + ID string `json:"id"` +} + +func (q *Queries) UpdateMessage(ctx context.Context, arg UpdateMessageParams) error { + _, err := q.exec(ctx, q.updateMessageStmt, updateMessage, + arg.Content, + arg.Thinking, + arg.ToolCalls, + arg.ToolResults, + arg.Finished, + arg.ID, + ) + return err +} |
