Skip to main content

orbok_core/
lib.rs

1//! # orbok-core
2//!
3//! Shared vocabulary for the `orbok` local-first document search
4//! application: typed identifiers, the RFC-001 data lifecycle classes,
5//! lifecycle status enums shared between the catalog (RFC-002) and the
6//! scanner (RFC-004), pipeline version constants, error types, and time
7//! helpers.
8//!
9//! This crate is dependency-light by design. It must not depend on the
10//! database, the file system layer, or the UI.
11
12pub mod data_class;
13pub mod error;
14pub mod history;
15pub mod id;
16pub mod privacy;
17pub mod status;
18pub mod timeutil;
19pub mod versions;
20
21#[cfg(test)]
22mod tests;
23
24pub use data_class::{CleanupAction, CleanupPlan, DataClass, StorageCategory};
25pub use error::{ErrorCategory, OrbokError, OrbokResult};
26pub use history::{
27    SearchHistoryEntry, SearchHistoryId, SearchHistorySettings, StoredChangedFilter,
28    StoredKindFilter, StoredLanguageFilter, StoredReadyFilter, StoredSearchFilter,
29    StoredSearchStyle,
30};
31pub use id::{
32    ChunkId, EmbeddingId, EventId, ExtractionId, FileId, JobId, ModelId, QueryId, SourceId,
33};
34pub use privacy::{DiagnosticsPolicy, LocalDataCategory, PrivacyMode, PrivacySettings};
35pub use status::{
36    FileStatus, HiddenFilePolicy, IndexMode, JobStatus, JobType, PersistenceMode, SourceStatus,
37    SourceType, SymlinkPolicy,
38};
39pub use timeutil::{now_iso8601, system_time_iso8601};