Store.Project.CommitDocument (fnord v0.9.29)
View SourceBuilds the bounded canonical text used to embed git commits for a project.
The document keeps commit semantics isolated from file and conversation indexing while still producing a stable text form that can be hashed for stale detection when the document format or embedding model changes.
Summary
Functions
Builds the bounded canonical commit document used for embeddings.
Hashes the canonical commit document so callers can compare stable semantic content rather than raw commit metadata.
Types
Functions
@spec build(%{ sha: binary(), parent_shas: [binary()], subject: binary(), body: binary(), author: binary(), committed_at: binary() | non_neg_integer() | DateTime.t(), changed_files: [binary()], diffstat: binary() | [map()] }) :: {binary(), binary()}
Builds the bounded canonical commit document used for embeddings.
The shape stays deliberately small so commit histories can be hashed and reindexed deterministically without embedding unbounded patch text.
Hashes the canonical commit document so callers can compare stable semantic content rather than raw commit metadata.
@spec version() :: non_neg_integer()