mirror of
https://github.com/pchuan98/codex.git
synced 2026-07-01 00:31:56 +08:00
6e72f0dbfd
- Add a "remote" thread store implementation - Implement the remote thread store as a thin wrapper that makes grpc calls to a configurable service endpoint - Implement only the thread/list method to start - Encode the grpc method/param shape as protobufs in the remote implementation A wart: the proto generation script is an "example" binary target. This is an example target only because Cargo lets examples use dev-dependencies, which keeps tonic-prost-build out of the normal codex-thread-store dependency surface. A regular bin would either need to add proto generation deps as normal runtime deps, or use a feature-gated optional dep, which this repo’s manifest checks explicitly reject.
37 lines
1.1 KiB
Rust
37 lines
1.1 KiB
Rust
//! Storage-neutral thread persistence interfaces.
|
|
//!
|
|
//! Application code should treat [`codex_protocol::ThreadId`] as the only durable thread handle.
|
|
//! Implementations are responsible for resolving that id to local rollout files, RPC requests, or
|
|
//! any other backing store.
|
|
|
|
mod error;
|
|
mod local;
|
|
mod recorder;
|
|
mod remote;
|
|
mod store;
|
|
mod types;
|
|
|
|
pub use error::ThreadStoreError;
|
|
pub use error::ThreadStoreResult;
|
|
pub use local::LocalThreadStore;
|
|
pub use recorder::ThreadRecorder;
|
|
pub use remote::RemoteThreadStore;
|
|
pub use store::ThreadStore;
|
|
pub use types::AppendThreadItemsParams;
|
|
pub use types::ArchiveThreadParams;
|
|
pub use types::CreateThreadParams;
|
|
pub use types::GitInfoPatch;
|
|
pub use types::ListThreadsParams;
|
|
pub use types::LoadThreadHistoryParams;
|
|
pub use types::OptionalStringPatch;
|
|
pub use types::ReadThreadParams;
|
|
pub use types::ResumeThreadRecorderParams;
|
|
pub use types::SetThreadNameParams;
|
|
pub use types::StoredThread;
|
|
pub use types::StoredThreadHistory;
|
|
pub use types::ThreadEventPersistenceMode;
|
|
pub use types::ThreadMetadataPatch;
|
|
pub use types::ThreadPage;
|
|
pub use types::ThreadSortKey;
|
|
pub use types::UpdateThreadMetadataParams;
|