pub struct RecordChunk {
pub record_id: RecordId,
pub source: SourceId,
pub section_idx: usize,
pub view: ChunkView,
pub text: String,
pub tokens_estimate: usize,
pub quality: QualityScore,
pub kvp_meta: HashMap<String, Vec<String>>,
pub embedding: Option<Arc<[f32]>>,
}Expand description
A chunked view over a section.
Fields§
§record_id: RecordIdParent record id this chunk belongs to (unique within RecordChunk::source).
source: SourceIdSource that produced the parent record. Together with record_id this
forms the chunk’s RecordKey: a structured
field populated from the parent record, never parsed from strings.
Required (no #[serde(default)]): a chunk without a source resolves
split lookups against the wrong identity — that must fail loudly at
the boundary, not default to "".
section_idx: usizeIndex of the source section in DataRecord.sections.
view: ChunkViewChunk view metadata (window position or summary fallback).
text: StringRendered chunk text (possibly with metadata prefix decoration).
tokens_estimate: usizeApproximate token count for scheduling/weighting heuristics.
quality: QualityScoreTrust/quality inherited from the parent record.
kvp_meta: HashMap<String, Vec<String>>All KVP metadata defined on the source record’s meta_prefix, exposed for
downstream inspection and debugging. Contains every key with all its possible
values across all variants — unaffected by presence probability, dropout, or
which variant was sampled into this chunk’s text.
Populated unconditionally by the sampler during chunk decoration. Empty when the
record has no meta_prefix configured.
embedding: Option<Arc<[f32]>>Optional precomputed embedding inherited from the parent section.
Stamped by the sampler when materializing chunks; None when the
source section carries no vector. Opaque payload — never interpreted,
compared, or persisted.
Trait Implementations§
Source§impl Clone for RecordChunk
impl Clone for RecordChunk
Source§impl Debug for RecordChunk
impl Debug for RecordChunk
Source§impl<'de> Deserialize<'de> for RecordChunk
impl<'de> Deserialize<'de> for RecordChunk
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>,
Auto Trait Implementations§
impl Freeze for RecordChunk
impl RefUnwindSafe for RecordChunk
impl Send for RecordChunk
impl Sync for RecordChunk
impl Unpin for RecordChunk
impl UnsafeUnpin for RecordChunk
impl UnwindSafe for RecordChunk
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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> ⓘ
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> ⓘ
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