Patch release with this week's merged fixes.
Added
- Opt-in collection filter for the semantic search database — set
semantic_search.collection_keysinconfig.jsonto index only those collections (subcollections included). Unset, behavior is unchanged (#370, thanks @JohanVisser97)
Fixed
- Chunking no longer re-extracts and re-embeds the whole library on every fulltext update — chunked items were never recognized as already indexed, so every
update-dbrun withsemantic_search.chunkingenabled silently rebuilt everything. If you run chunking in local mode, this fix ends the CPU-heavy run on every sync (#380, thanks @finnrogosch) - Local database auto-discovery honors a custom Zotero data directory — reads
extensions.zotero.dataDirfrom the Zotero profile's prefs.js, implements the documentedZOTERO_DB_PATHenv var, and fixesbaseAttachmentPathresolution for linked attachments (#379, #68, thanks @danmackinlay) - Items whose fulltext extraction once failed retry when their attachments change — previously they were permanently locked out of fulltext indexing because attaching a PDF doesn't bump the parent's dateModified (#373, thanks @josk0)
- ChromaDB upserts split to the backend's max batch size — no more failed mega-batches degrading to one-record-at-a-time retries on chunked libraries (#369, thanks @JohanVisser97)
- Created annotations land correctly on PDFs with a non-zero page box origin — highlight rects are now mapped to native PDF user space, handling offset MediaBoxes and page rotation (#381, thanks @28Smiles)