Struct CommitEvent
pub struct CommitEvent {
pub rev: String,
pub author_email: String,
pub author_name: String,
pub committer_email: String,
pub date: OffsetDateTime,
pub committer_date: OffsetDateTime,
pub message: String,
pub parents: Vec<String>,
pub changes: Vec<FileChange>,
pub canonical_author: Option<String>,
pub ai_attribution: Option<String>,
pub kamei: Option<KameiFeatures>,
}Expand description
One commit, as observed by the parser stage. Immutable event.
Fields§
§rev: String§committer_email: String§date: OffsetDateTimeAuthor time as a full OffsetDateTime. Stored in DuckDB as TIMESTAMP
(UTC-normalised). The original tz offset is not currently persisted —
see the commits table comment for the tz-preservation roadmap.
committer_date: OffsetDateTimeCommitter time as a full OffsetDateTime. Stored in DuckDB as
TIMESTAMP (UTC-normalised). On linear-history workflows (rebase,
squash) this often equals date; on merge-via-merge-commit and
review workflows the delta (committer_date - date) is the
in-flight time the lead-time and delivery-friction analyses
surface. Both backends (GixRepo, GitCliRepo) populate this
from the raw commit object — the differential test gate
asserts they agree.
message: String§parents: Vec<String>§changes: Vec<FileChange>Canonical author email after .mailmap resolution. None means not yet resolved.
ai_attribution: Option<String>AI authorship classification. None means not yet classified. Values: “human” | “ai-assisted” | “ai-authored”
kamei: Option<KameiFeatures>Populated by the enrich_kamei pipeline stage, NOT at gix walk-time.
Trait Implementations§
§impl Clone for CommitEvent
impl Clone for CommitEvent
§fn clone(&self) -> CommitEvent
fn clone(&self) -> CommitEvent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for CommitEvent
impl Debug for CommitEvent
§impl<'de> Deserialize<'de> for CommitEvent
impl<'de> Deserialize<'de> for CommitEvent
§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>,
§impl PartialEq for CommitEvent
impl PartialEq for CommitEvent
§impl Serialize for CommitEvent
impl Serialize for CommitEvent
impl StructuralPartialEq for CommitEvent
Auto Trait Implementations§
impl Freeze for CommitEvent
impl RefUnwindSafe for CommitEvent
impl Send for CommitEvent
impl Sync for CommitEvent
impl Unpin for CommitEvent
impl UnsafeUnpin for CommitEvent
impl UnwindSafe for CommitEvent
Blanket Implementations§
impl<T> Allocation for T
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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