Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR extracts Darc’s SQLite storage layer into a dedicated
darc-storecrate and tightens the architecture boundary between indexing, storage, and querying.Before this change,
darc-querydepended ondarc-indexto access SQLite schema/opening helpers, which made the read side depend on the write-side indexing crate. This PR moves the shared persistence concerns intodarc-store, sodarc-indexcan focus on archive ingestion anddarc-querycan read through the shared storage boundary.Changes
darc-storeworkspace cratedarc-indexdarc-querydarc-indexdarc-storefor evidence fields, policies, and DB openingschemacrate-private indarc-storedarc_index::schemare-exportCompatibility
This narrows internal Rust crate APIs by no longer exposing raw SQLite schema details outside the storage crate. CLI behavior and JSON query protocol behavior are unchanged.