Ctrl K
ComunidadGuías…

migrations/0031_conversation_entries_unique_message.sql

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
UPDATE conversation_entries
SET meta_json = json_object(
    'uiMessageId', substr(meta_json, 17, instr(substr(meta_json, 17), '"') - 1),
    'legacyTruncatedMeta', meta_json
)
WHERE meta_json IS NOT NULL
  AND json_valid(meta_json) = 0
  AND meta_json LIKE '{"uiMessageId":"%'
  AND instr(substr(meta_json, 17), '"') > 1;

UPDATE conversation_entries
SET meta_json = json_object('legacyTruncatedMeta', meta_json)
WHERE meta_json IS NOT NULL
  AND json_valid(meta_json) = 0;

DELETE FROM conversation_entries
WHERE ui_message_id IS NOT NULL
  AND id NOT IN (
    SELECT MIN(id) FROM conversation_entries
    WHERE ui_message_id IS NOT NULL
    GROUP BY session_id, owner_email, role, ui_message_id
  );

CREATE UNIQUE INDEX IF NOT EXISTS idx_conversation_entries_unique_message
    ON conversation_entries(session_id, owner_email, role, ui_message_id);