Add Inspeximus document store integration - #554
Conversation
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
Someone is attempting to deploy a commit to the deepset Team on Vercel. A member of the Team first needs to authorize it. |
There was a problem hiding this comment.
Pull request overview
- Adds a new integration documentation page for the
inspeximusPython package, describingInspeximusDocumentStoreas a persistent, file-backed HaystackDocumentStorewith provable deletion semantics.
Changes:
- Adds
integrations/inspeximus.mdwith overview, install instructions, and end-to-end usage snippets. - Documents persistence + receipted erasure behavior and positions it as a drop-in alternative to
InMemoryDocumentStore.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - **Its delete leaves nothing behind.** `delete_documents` removes the value from the bytes on disk, and | ||
| with receipts enabled it writes a signed, content-free tombstone — so a deletion made for a data-subject | ||
| request is provable, not merely done. |
| repo: https://github.com/DanceNitra/inspeximus | ||
| type: Document Store | ||
| report_issue: https://github.com/DanceNitra/inspeximus/issues | ||
| version: Haystack 2.0 |
kacperlukawski
left a comment
There was a problem hiding this comment.
Thank you, @DanceNitra Could you please help me understand if the integration comes from an actual need of any user? I would like to know if that's going to be helpful for broader audience.
|
Honest answer: no, this didn't come from a user request. I built the adapter because inspeximus ships a document store and Haystack was a natural target, and I wanted the "drop-in" claim to be tested rather than asserted — so it runs against your own But that's an answer about correctness, not about demand, and demand is what you asked about. I don't have a user to point to. If your bar for the integrations catalogue is demonstrated need, this doesn't clear it, and I'd rather you close or park it than have it sit there implying an adoption that doesn't exist. For what it's worth on the "broader audience" question: the thing inspeximus does differently from an in-memory store is deletion — Happy either way. Thanks for looking at it. |
Adds a Document Store integration page for Inspeximus (MIT, on PyPI as
inspeximus).InspeximusDocumentStoreimplements Haystack'sDocumentStoreprotocol as a drop-in forInMemoryDocumentStore, with two differences that matter for long-running or regulated pipelines: it persists to a file, and itsdelete_documentsremoves the value from disk (with receipts enabled, leaving a signed, content-free tombstone so a deletion is provable).It is a faithful drop-in — the duplicate policies (
SKIP,OVERWRITE,NONE,FAIL) matchInMemoryDocumentStoreexactly (captured from the reference, not guessed), and filtering reuses Haystack's owndocument_matches_filter, soFilterRetrieverand pipeline serialization work unchanged. Parity is verified in CI againstInMemoryDocumentStore, operation by operation, with a falsification control that must fail.The usage example in the page was run end to end against
haystack-ai 3.0.0andinspeximus 1.29.0, and produces the output shown.No logo included for now; happy to add one if you'd like it before merge.
This page was drafted with AI assistance; a human reviewed it and ran the example.