Cite Engine: catch quotes that silently went stale

Disclaimer
Is this project open source? Yes
Is this project completely free? Yes
Is this project beyond the author’s abilities to maintain or fix? No

Community directory: https://community.obsidian.md/plugins/cite-engine


built a tiny plugin to solve one specific thing and id rather you break it than praise it.

the problem: you paste a quote into a writeup, later edit the source, and the block ref link still resolves so obsidian shows all good, but the quoted words are now stale and nothing tells you. native block refs check the pointer, not the text.

how it works: stamping a source note gives it a stable citekey and a block id per passage. citing snapshots the quote text at cite time into the link. an integrity check re-reads the sources and flags any quote that no longer matches its block, dumps them in a review list. no model touches the citation, it cant invent one, and it never rewrites your prose, it just tells you to look.

where i want you to tear it apart: does the normalized-text diff throw false positives on whitespace/footnotes for you. does treating “id moved but text still findable nearby” as a suggested rebind rather than a drift match how you think about it. and what breaks on a real 200 source vault.

a clearer way to say what this does, since “citation drift” wasnt landing for people:

say you keep your sources as notes in your vault. could be a zotero export, the web clipper, or typed by hand. you pull a quote from one of them into a literature review or a writeup. a few weeks later you tidy up that source note and reword the exact line you quoted. the link still resolves, so obsidian shows everything as fine, but the words sitting in your writeup no longer match the source and nothing warns you.

cite engine snapshots the quote at the moment you cite it, and an integrity check re-reads your sources and flags any quote that has drifted. it never touches your prose, it just hands you a list of quotes to go check.

if you do literature reviews with a lot of sources on one page, id genuinely like to know whether this is useful or whether you already catch these by eye.