11 lines
535 B
SQL
11 lines
535 B
SQL
ALTER TABLE tasks ADD COLUMN ready TEXT NOT NULL DEFAULT '';
|
|||
|
|
UPDATE tasks SET ready = coalesce((
|
||
|
|
SELECT CASE e.kind WHEN 'task.ready' THEN 'merge' ELSE 'discard' END FROM events e
|
||
|
|
WHERE e.task_id = tasks.id AND e.kind IN ('task.ready', 'task.discard_suggested')
|
||
|
|
AND NOT EXISTS (
|
||
|
|
SELECT 1 FROM events l WHERE l.task_id = tasks.id AND l.seq > e.seq
|
||
|
|
AND (l.kind = 'inbox.created' OR (l.kind = 'snapshot.created' AND json_extract(l.payload, '$.trigger') != 'answer'))
|
||
|
|
)
|
||
|
|
ORDER BY e.seq DESC LIMIT 1
|
||
|
|
), '') WHERE status = 'active';
|