pub struct CacheManifest {
pub service_name: String,
pub service_version: String,
pub broker_envelope_version: String,
pub created_at_unix_ms: u64,
pub last_active_unix_ms: u64,
pub roots: Vec<CacheRoot>,
pub broker_instance: String,
pub bundle_id: String,
}Expand description
v2 cache manifest envelope.
Carries the daemon’s identity (service + version), heartbeat
timestamps, and the list of cache roots brokers care about.
broker_envelope_version is “v2” for files written under this
schema.
Field numbers shared with v1 (service_name=1, service_version=2, broker_envelope_version=3, created_at_unix_ms=4, last_active_unix_ms=5, roots=10, broker_instance=40, bundle_id=70) keep the human-readable diff between v1 and v2 manifests obvious and make the consumer-side migration mechanical.
Fields§
§service_name: StringService this manifest describes. Same validation as ServiceDefinition.service_name.
service_version: StringSemver of the daemon binary that wrote this manifest.
broker_envelope_version: StringAlways “v2” for files written under this schema. Pinning this in the proto rather than relying on the file extension alone lets a broker mis-route detection work even when the file has been renamed.
created_at_unix_ms: u64Unix-ms timestamp the daemon first wrote this manifest.
last_active_unix_ms: u64Unix-ms timestamp of the daemon’s last heartbeat write.
roots: Vec<CacheRoot>Cache roots the daemon exposes for broker-side discovery (eviction, observability, etc.). Order is not significant.
broker_instance: StringBroker instance label this daemon is registered under. Empty for
private brokers; mirrors ServiceDefinition.explicit_instance
for shared-broker deployments.
bundle_id: StringOpaque bundle identifier for deployments that ship multiple related services. Empty when unused.
Trait Implementations§
Source§impl Clone for CacheManifest
impl Clone for CacheManifest
Source§fn clone(&self) -> CacheManifest
fn clone(&self) -> CacheManifest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CacheManifest
impl Debug for CacheManifest
Source§impl Default for CacheManifest
impl Default for CacheManifest
Source§impl Message for CacheManifest
impl Message for CacheManifest
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.