返回 CodeWhale
eligible.sql
根目录 / crates / memory / src / sql / eligible.sql
1 m.scope IN (SELECT value FROM json_each(:scopes))
2 AND NOT EXISTS (SELECT 1 FROM memory_preferences mp WHERE mp.memory_id=m.id AND mp.suppressed=1)
3 AND (m.status='active' OR (:include_stale=1 AND m.status='stale'))
4 AND (:include_stale=1 OR (
5 (m.expires_at IS NULL OR m.expires_at>:now)
6 AND (json_extract(m.payload,'$.valid_from') IS NULL OR json_extract(m.payload,'$.valid_from')<=:now)
7 AND (json_extract(m.payload,'$.valid_until') IS NULL OR json_extract(m.payload,'$.valid_until')>:now)
8 AND NOT EXISTS (
9 SELECT 1 FROM dependencies d
10 WHERE d.memory_id=m.id AND NOT EXISTS (
11 SELECT 1 FROM json_each(:files) f
12 WHERE f.key=d.path AND f.value=d.digest
13 )
14 )
15 AND NOT EXISTS (
16 WITH RECURSIVE ancestors(id) AS (
17 SELECT parent_id FROM lineage WHERE child_id=m.id
18 UNION
19 SELECT l.parent_id FROM lineage l JOIN ancestors a ON l.child_id=a.id
20 )
21 SELECT 1 FROM ancestors a JOIN memories p ON p.id=a.id
22 WHERE p.status!='active'
23 OR json_extract(p.payload,'$.valid_from')>:now
24 OR json_extract(p.payload,'$.valid_until')<=:now
25 OR (p.expires_at IS NOT NULL AND p.expires_at<=:now)
26 OR NOT EXISTS (SELECT 1 FROM json_each(:scopes) g WHERE g.value=p.scope)
27 OR EXISTS (
28 SELECT 1 FROM dependencies d WHERE d.memory_id=p.id
29 AND NOT EXISTS (SELECT 1 FROM json_each(:files) f WHERE f.key=d.path AND f.value=d.digest)
30 )
31 OR (p.repo_revision IS NOT NULL AND (p.repo_revision!=:repo OR :repo IS NULL)
32 AND NOT EXISTS (SELECT 1 FROM dependencies d WHERE d.memory_id=p.id))
33 )
34 AND (
35 m.repo_revision IS NULL OR m.repo_revision=:repo
36 OR EXISTS(SELECT 1 FROM dependencies d WHERE d.memory_id=m.id)
37 )
38 ))
39
39 lines SQL