SQLite backend: the memories_fts FTS5 table, ranked by bm25() (title 10, topics 5, body 1).
The table is an external-content index that triggers keep in step with memories, so a note is
searchable in the transaction that wrote it. Words reach MATCH as quoted terms joined by OR.
Limit: the unicode61 tokenizer splits on anything that is not a letter or digit, so it does not
segment languages written without spaces; a CJK note matches as one long token.