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§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.