summaryrefslogtreecommitdiffhomepage
path: root/internal/db/sql
diff options
context:
space:
mode:
authorKujtim Hoxha <[email protected]>2025-03-27 22:35:48 +0100
committerKujtim Hoxha <[email protected]>2025-04-01 13:38:54 +0200
commitafd9ad0560d76c2a6d161dad52553b10ff428905 (patch)
tree69f78b05ff0d7952cd3e3c9332f001e66abb2faf /internal/db/sql
parent904061c243f70696bfe781e97bf4e392e6954d07 (diff)
downloadopencode-afd9ad0560d76c2a6d161dad52553b10ff428905.tar.gz
opencode-afd9ad0560d76c2a6d161dad52553b10ff428905.zip
rework llm
Diffstat (limited to 'internal/db/sql')
-rw-r--r--internal/db/sql/messages.sql19
-rw-r--r--internal/db/sql/sessions.sql3
2 files changed, 20 insertions, 2 deletions
diff --git a/internal/db/sql/messages.sql b/internal/db/sql/messages.sql
index db5e192fc..0674e62c1 100644
--- a/internal/db/sql/messages.sql
+++ b/internal/db/sql/messages.sql
@@ -13,14 +13,29 @@ ORDER BY created_at ASC;
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 *;
+-- name: UpdateMessage :exec
+UPDATE messages
+SET
+ content = ?,
+ thinking = ?,
+ tool_calls = ?,
+ tool_results = ?,
+ finished = ?,
+ updated_at = strftime('%s', 'now')
+WHERE id = ?;
+
-- name: DeleteMessage :exec
DELETE FROM messages
WHERE id = ?;
diff --git a/internal/db/sql/sessions.sql b/internal/db/sql/sessions.sql
index 2be8b7ccc..f065b5f56 100644
--- a/internal/db/sql/sessions.sql
+++ b/internal/db/sql/sessions.sql
@@ -1,6 +1,7 @@
-- name: CreateSession :one
INSERT INTO sessions (
id,
+ parent_session_id,
title,
message_count,
prompt_tokens,
@@ -15,6 +16,7 @@ INSERT INTO sessions (
?,
?,
?,
+ ?,
strftime('%s', 'now'),
strftime('%s', 'now')
) RETURNING *;
@@ -27,6 +29,7 @@ WHERE id = ? LIMIT 1;
-- name: ListSessions :many
SELECT *
FROM sessions
+WHERE parent_session_id is NULL
ORDER BY created_at DESC;
-- name: UpdateSession :one