Dashboard › opencode-lore › Temporal embedding scheduling, validati…
01a0a9ba-fc9f-79d5-9448-a2bfb3890240| Project | Hits | Last recalled |
|---|---|---|
| cli | 1 | 7d ago |
Backfills use length(CAST(content AS BLOB)) because SQLite TEXT length stops at NUL. Enqueue first; invalidate an existing vector and increment scheduled only when enqueue changes a row, while always advancing the cursor. Mixed drains must finish inference, abort/cardinality checks, and full vector validation before committing any job; failures preserve queue rows and prior vectors. Normalize valid vectors at the exported embed() chokepoint so JavaScript dot-product and sqlite-vec cosine rankings agree; copy first and leave zero or non-finite vectors unchanged. Global vector GC must page lean canonical keys on a read worker and guarded-delete only returned keys, resetting cursors after final short pages. Keep read jobs parameterized and structured-cloneable. Clone query vectors, retire timed-out workers, preserve cursors, and never fall back to synchronous whole-table scans.