pub struct ProviderSchema {
pub version: SchemaVersion,
pub extension_version_min: Option<String>,
pub extension_version_max: Option<String>,
pub host_version_min: Option<String>,
pub introduced: Option<String>,
pub deprecated: Option<String>,
pub storage: StorageLocation,
pub session_schema: SessionFormatSchema,
pub db_keys: Vec<DbKeySchema>,
pub notes: Vec<String>,
pub breaking_changes: Vec<String>,
pub tags: Vec<String>,
}Expand description
Complete schema definition for one provider at one version.
This is the primary unit of the schema registry — it fully describes how a provider stores, structures, and indexes chat session data.
Fields§
§version: SchemaVersionUnique version identifier
extension_version_min: Option<String>Extension/application version range this schema applies to e.g., “0.25.0” .. “0.36.99” for Copilot JSON
extension_version_max: Option<String>§host_version_min: Option<String>Minimum host application version (e.g., VS Code 1.98.0)
introduced: Option<String>When this schema was first observed / introduced
deprecated: Option<String>When this schema was deprecated (superseded by a newer version)
storage: StorageLocationWhere session data is stored
session_schema: SessionFormatSchemaSession file/record schema
db_keys: Vec<DbKeySchema>Database keys and their schemas (for SQLite key-value stores like state.vscdb)
notes: Vec<String>Human-readable notes about this schema version
breaking_changes: Vec<String>Known breaking changes from the previous version
Tags for ontology classification
Implementations§
Trait Implementations§
Source§impl Clone for ProviderSchema
impl Clone for ProviderSchema
Source§fn clone(&self) -> ProviderSchema
fn clone(&self) -> ProviderSchema
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ProviderSchema
impl Debug for ProviderSchema
Source§impl<'de> Deserialize<'de> for ProviderSchema
impl<'de> Deserialize<'de> for ProviderSchema
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ProviderSchema
impl RefUnwindSafe for ProviderSchema
impl Send for ProviderSchema
impl Sync for ProviderSchema
impl Unpin for ProviderSchema
impl UnsafeUnpin for ProviderSchema
impl UnwindSafe for ProviderSchema
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more