MCPcopy Create free account
hub / github.com/GongShichen/LuminaCode / loadSQLiteMessages

Method loadSQLiteMessages

session/store.go:266–297  ·  view source on GitHub ↗
(sessionID string)

Source from the content-addressed store, hash-verified

264 SessionID: stringFromAny(data["session_id"]),
265 CreatedAt: floatFromAny(data["created_at"]),
266 LastUpdated: floatFromAny(data["last_updated"]),
267 MessageCount: intFromAny(data["message_count"]),
268 TurnCount: intFromAny(data["turn_count"]),
269 Pinned: boolFromAny(data["pinned"]),
270 }
271 if meta.SessionID == "" {
272 return nil
273 }
274 return meta
275}
276
277func (s *Store) loadSQLiteMessages(sessionID string) []map[string]any {
278 path := s.sqliteReadPath(sessionID)
279 if _, err := os.Stat(path); err != nil {
280 return nil
281 }
282 db, err := sql.Open("sqlite", path)
283 if err != nil {
284 return nil
285 }
286 defer db.Close()
287 rows, err := db.Query(`SELECT role, content_json FROM messages ORDER BY id`)
288 if err != nil {
289 return nil
290 }
291 defer rows.Close()
292 var messages []map[string]any
293 for rows.Next() {
294 var role, contentJSON string
295 if err := rows.Scan(&role, &contentJSON); err != nil {
296 continue
297 }
298 var content any
299 if err := json.Unmarshal([]byte(contentJSON), &content); err != nil {
300 continue

Callers 1

LoadMethod · 0.95

Calls 2

sqliteReadPathMethod · 0.95
CloseMethod · 0.65

Tested by

no test coverage detected