Skip to main content

Crate khive_storage

Crate khive_storage 

Source
Expand description

Storage capability traits: SqlAccess, VectorStore, TextSearch, GraphStore, NoteStore, EntityStore, EventStore, SparseStore, BlobStore, and AttachmentStore.

Re-exports§

pub use agent::AgentStore;
pub use attachment::Attachment;
pub use attachment::AttachmentReadReport;
pub use attachment::AttachmentStore;
pub use attachment::AttachmentSubstrate;
pub use attachment::NewAttachment;
pub use blob::BlobOrphanSweepConfig;
pub use blob::BlobOrphanSweepResult;
pub use blob::BlobStore;
pub use blob::ContentRef;
pub use blob::UploadId;
pub use blob::MAX_BLOB_WHOLE_BYTES;
pub use capability::StorageCapability;
pub use entity::Entity;
pub use entity::EntityFilter;
pub use entity::EntityStore;
pub use error::CapacityUnavailablePhase;
pub use error::StorageError;
pub use error::WriterTaskRequestState;
pub use event::Event;
pub use event::EventFilter;
pub use event::EventObservation;
pub use event::EventStore;
pub use event::EventView;
pub use event::ObservationRole;
pub use event::ReferentKind;
pub use graph::GraphStore;
pub use note::FilterOp;
pub use note::Note;
pub use note::NoteFilter;
pub use note::NoteStore;
pub use note::NoteVisibility;
pub use note::SortDir;
pub use request_context::await_request_read_phase;
pub use request_context::capture_request_read_context;
pub use request_context::effective_request_read_deadline;
pub use request_context::ensure_request_read_active;
pub use request_context::inherit_request_read_cancellation;
pub use request_context::inherit_request_read_context;
pub use request_context::request_read_is_cancelled;
pub use request_context::request_read_timeout_from_env;
pub use request_context::scope_request_read_cancellation;
pub use request_context::scope_request_read_deadline;
pub use request_context::scope_request_read_deadline_at;
pub use request_context::wait_for_request_read_cancellation;
pub use request_context::RequestReadContext;
pub use request_context::RequestReadDeadline;
pub use request_context::RequestReadStopReason;
pub use request_context::DEFAULT_REQUEST_READ_TIMEOUT_SECS;
pub use sparse::SparseStore;
pub use sql::AtomicUnitOp;
pub use sql::BoxFuture;
pub use sql::SqlAccess;
pub use sql::SqlReader;
pub use sql::SqlWriter;
pub use sql::TopLevelMaintenance;
pub use telemetry::ChannelBackoffArmedPayload;
pub use telemetry::ChannelBackoffResetPayload;
pub use telemetry::ChannelHeartbeatPersistFailedPayload;
pub use telemetry::ChannelPollFailedPayload;
pub use telemetry::ChannelPollStartedPayload;
pub use telemetry::ChannelPollSucceededPayload;
pub use telemetry::CheckpointOutcomeRecordedPayload;
pub use telemetry::ConfigLockedPayload;
pub use telemetry::LifecycleEvent;
pub use telemetry::PhaseCancelledPayload;
pub use telemetry::PhaseCompletedPayload;
pub use telemetry::PhaseStartedPayload;
pub use text::TextSearch;
pub use types::StorageResult;
pub use vectors::VectorStore;
pub use types::BatchWriteError;
pub use types::BatchWriteErrorClass;
pub use types::BatchWriteErrorCount;
pub use types::BatchWriteRetryability;
pub use types::BatchWriteSummary;
pub use types::BoundedCount;
pub use types::DeleteMode;
pub use types::DirectedNeighborHit;
pub use types::Direction;
pub use types::Edge;
pub use types::EdgeFilter;
pub use types::EdgeSeekPage;
pub use types::EdgeSortField;
pub use types::EdgeUpsertDisposition;
pub use types::EdgeUpsertRefusal;
pub use types::EdgeUpsertRequest;
pub use types::EdgeUpsertResult;
pub use types::GraphPath;
pub use types::GuardedBatchOutcome;
pub use types::GuardedBatchRefusal;
pub use types::GuardedEdgeBatchRefusal;
pub use types::GuardedEdgeBatchUpsertOutcome;
pub use types::GuardedEdgeUpsertOutcome;
pub use types::GuardedWriteOutcome;
pub use types::IndexRebuildScope;
pub use types::LimitReport;
pub use types::LinkId;
pub use types::MissingEndpoints;
pub use types::NeighborCursor;
pub use types::NeighborHit;
pub use types::NeighborQuery;
pub use types::OrphanSweepConfig;
pub use types::OrphanSweepResult;
pub use types::Page;
pub use types::PageRequest;
pub use types::PathNode;
pub use types::PropertyFilter;
pub use types::PropertyOp;
pub use types::SeekCursor;
pub use types::SeekPage;
pub use types::SortDirection;
pub use types::SortOrder;
pub use types::SparseRecord;
pub use types::SparseSearchHit;
pub use types::SparseSearchRequest;
pub use types::SparseVector;
pub use types::SqlRow;
pub use types::SqlStatement;
pub use types::SqlValue;
pub use types::TextDocument;
pub use types::TextFilter;
pub use types::TextGatherMode;
pub use types::TextIndexStats;
pub use types::TextQueryMode;
pub use types::TextSearchHit;
pub use types::TextSearchOptions;
pub use types::TextSearchRequest;
pub use types::TextTermStats;
pub use types::TextTermStatsRequest;
pub use types::TimeRange;
pub use types::TraversalExecutionBudget;
pub use types::TraversalOptions;
pub use types::TraversalRequest;
pub use types::VectorIndexKind;
pub use types::VectorMetadataFilter;
pub use types::VectorRecord;
pub use types::VectorSearchHit;
pub use types::VectorSearchRequest;
pub use types::VectorStoreCapabilities;
pub use types::VectorStoreInfo;
pub use types::DEFAULT_TRAVERSAL_LIMIT;
pub use types::MAX_BATCH_WRITE_ERROR_DETAILS;
pub use types::MAX_BATCH_WRITE_ERROR_MESSAGE_CHARS;
pub use types::MAX_SPARSE_SEARCH_TOP_K;
pub use types::MAX_TRAVERSAL_DEPTH;
pub use types::MAX_TRAVERSAL_LIMIT;
pub use types::MAX_TRAVERSAL_MILLIS;
pub use types::MAX_TRAVERSAL_ROOTS;
pub use types::MAX_TRAVERSAL_WORK;

Modules§

agent
Agent process store capability (ADR-142 §1, “Process model”).
attachment
Role-keyed binary attachments for entity and note records.
blob
Blob storage capability — content-addressed binary object CRUD.
capability
Storage capability surface identifiers.
entity
Entity storage capability — graph node CRUD.
error
Storage error types shared across all backend implementations.
event
Event storage capability — append-only operation log.
graph
Graph storage capability — edge CRUD and traversal.
note
Note storage capability — temporal-referential record CRUD.
operation_context
Request-runner attribution captured before event persistence crosses tasks.
request_context
Backend-neutral request cancellation and deadline propagation.
sparse
Sparse vector storage and lexical-semantic search capability.
sql
SQL access capability traits.
telemetry
Typed payload structs for the ADR-094 lifecycle telemetry events.
text
Full-text search capability.
tx_registry
Process-wide open-transaction registry (ADR-091 Plank 0).
types
Shared types used across storage capability traits.
usage
ADR-103 Amendment 2: dispatch-scoped executed-usage counters.
vectors
Vector embedding storage and similarity search capability.

Structs§

AgentRecord
The runtime-owned agent process record (ADR-142 §1, “Persistent process record”).
VectorCodecError
A byte slice cannot contain a whole number of f32 values.

Enums§

AgentState
One of the four lifecycle states an agent process record can occupy.
EdgeCategory
The 10 semantic categories that group the 20 canonical edge relations.
EdgeRelation
Closed set of 20 canonical edge relations.
EventOutcome
Outcome of a verb execution recorded in an event log entry.
SubstrateKind
The 3 substrate types in khive OSS.
TerminalReason
Why a record reached Terminal. Set exactly once, at the transition into Terminal.

Functions§

decode_f32_le
Decode little-endian values, refusing an incomplete final value. Empty input is valid; finite-value and dimension policies belong to callers.
decode_f32_native
Decode the host-native f32 ABI, refusing an incomplete final value.
encode_f32_le
Encode portable little-endian IEEE 754 values, without filtering any bit pattern.
encode_f32_native
Encode the host-native f32 ABI used by sqlite-vec. This is not a portable format.
now_micros
The current time as microseconds since the Unix epoch, the unit stored rows use for their timestamps.
read_env_number
Read a trimmed environment value as a number.