pub struct OpenReport {
pub schema_version_before: u32,
pub schema_version_after: u32,
pub migration_steps: Vec<MigrationStepReport>,
pub embedder_warmup_ms: u64,
pub query_backend: &'static str,
pub default_embedder: EmbedderIdentity,
pub embedder_download_ms: Option<u64>,
pub embedder_events: Vec<EmbedderEvent>,
pub embedder_mean_centering_required: bool,
pub embedder_mean_vec_pinned: bool,
}Fields§
§schema_version_before: u32§schema_version_after: u32§migration_steps: Vec<MigrationStepReport>§embedder_warmup_ms: u64§query_backend: &'static str§default_embedder: EmbedderIdentity§embedder_download_ms: Option<u64>Total wall time the loader spent materializing default-embedder weights — covers HF GETs, sha256 verification, atomic rename, parent-dir fsync (POSIX), and cache directory writes. This is the “engine open paid by the embedder” envelope, useful for SLA budgeting; it is intentionally wider than just the bytes-flowing time so callers see the full first-use cost.
Some(ms) when network bytes flowed (bytes_downloaded > 0);
None for caller-supplied embedders (loader bypassed) and on
full cache hits (no bytes flowed). For pure per-file network
analysis, use the DefaultEmbedderDownload events on
embedder_events — each event carries
the file’s bytes + sha256 + cache path.
embedder_events: Vec<EmbedderEvent>Structured loader events (dev/design/embedder.md §7). Empty for
caller-supplied embedders; populated from LoadedWeights.events
for the Default path.
embedder_mean_centering_required: boolStatic identity capability (dev/design/embedder.md §0.6). True
iff the live embedder identity is the bge-small default, which is
the only identity that ships with the EU-5a2 mean-centering apply
paths. false for fathomdb-noop and for any other
caller-supplied identity. EU-5b’s identity flip makes the Default
path return true here.
embedder_mean_vec_pinned: boolDynamic workspace state (dev/design/embedder.md §0.6). True iff
_fathomdb_embedder_profiles.mean_vec IS NOT NULL for the default
profile. EU-5a2 reads from the schema column added in migration
step 10; the value is dimension-validated (§0.2) at open time
and fails closed via EmbedderIdentityMismatch on drift.
Trait Implementations§
Source§impl Clone for OpenReport
impl Clone for OpenReport
Source§fn clone(&self) -> OpenReport
fn clone(&self) -> OpenReport
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 OpenReport
impl Debug for OpenReport
Source§impl PartialEq for OpenReport
impl PartialEq for OpenReport
Source§fn eq(&self, other: &OpenReport) -> bool
fn eq(&self, other: &OpenReport) -> bool
self and other values to be equal, and is used by ==.