Table of Contents

Class IngestedChunk

Namespace
Qavren.Edge.Ingestion
Assembly
Qavren.Edge.Ingestion.dll

The typed view of one stored row. SP3 writes Dictionary<string, object?> through the dynamic collection; this is the mapper both directions.

public sealed record IngestedChunk : IEquatable<IngestedChunk>
Inheritance
IngestedChunk
Implements
Inherited Members

Constructors

IngestedChunk(string, string, string, int, string, string?, int, int, int, int, string, string, string, ContentHash, DateTimeOffset)

The typed view of one stored row. SP3 writes Dictionary<string, object?> through the dynamic collection; this is the mapper both directions.

Properties

BlockKind

The originating DocumentBlockKind's name.

Breadcrumb

The stored breadcrumb, verbatim. Null when there is no heading path.

CharEnd

Exclusive offset into ExtractedDocument.Text.

CharStart

Inclusive offset into ExtractedDocument.Text.

ContentHash

The chunk's content hash — over the EMBED text (spec 9.3).

CreatedUtc

When the row was written.

DocumentId

The document it came from.

ExtractorId

The extractor that produced the document.

HeadingPath

Breadcrumb split on HeadingPathSeparator. Empty when there is none. This is the ONLY place the structural array comes back; there is no array column, because SP2's SqliteTypeMap has no array type but byte[].

Key

Spec 9.3's 32-hex identity.

MediaType

The document's media type.

Ordinal

Position in the document. Stored, but NOT part of identity.

Page

The page, or -1 when unknown.

SourceId

The source that produced it.

Text

The stored text — never the embed text.

TokenCount

What the chunk cost.

Methods

FromRecord(IReadOnlyDictionary<string, object?>)

Reads one dynamic record back into the typed view.

ToRecord(ReadOnlyMemory<float>)

Renders this chunk plus its vector as the dynamic record the collection upserts.