mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2026-08-26 20:53:20 +00:00
usage.md linked to tantivy's QueryParser documentation, promising a grammar paperless neither implements nor intends to. Replace the link with a description of the surface that was verified end-to-end against a real index, and correct the claims that did not survive that verification. - checksum: the field is stored verbatim, so only a complete lowercase checksum matches. The old a1b2c3d4 example matched nothing. - A leading - is not negation. Separators are stripped at index time, so "invoice -secret" requires "secret", the opposite of the intent. Document NOT as the way to exclude a term. - Document the aliases type: and path:, num_notes:, numeric ranges, quoted phrases, tag:'s comma list (which requires all listed tags, not any), and the date forms that resolve to a real span: tomorrow, ISO dates, month names, "next monday"/"last monday". - Warn about now/noon/midnight and offsets like "-3 days": they parse, but resolve to a single instant rather than a span, so they match nothing. Likewise a T/Z timestamp, whose time portion is split off as loose text. Add test_documented_syntax.py, which asserts on matched document IDs rather than on parsed queries, so the docs cannot drift from the code again. Its negative cases pin the behaviours the warnings describe. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>