CommitMergeAnalysis

class dsviper.CommitMergeAnalysis

Bases: object

The result of one merge analysis.

The base when the two heads had an unambiguous one, and the list of reconstructed conflicts between them.

Note: Not directly instantiable.

base() → ValueCommitId | None

Return the structural merge base commit identifier, or None when the analysis fell back to a base-free 2-way scan.

conflicts() → list[CommitMergeConflict]

Return every reconstructed locus, flattened across documents.

documents() → list[CommitMergeDocument]

Return the list of CommitMergeDocument - the reconstructed loci grouped per document (attachment, key), the unit reconcile operates on.

has_conflicts() → bool

Return True if the analysis reconstructed at least one locus where an intent was lost.

merge_commit() → ValueCommitId | None

Return the merge commit identifier this analysis read, or None for a virtual (pre-merge) analysis computed without a persisted merge commit.

ours() → ValueCommitId

Return the parent (ours) commit identifier.

theirs() → ValueCommitId

Return the target (theirs) commit identifier.

two_way() → bool

Return True when no unambiguous structural base existed and detection fell back to a base-free 2-way divergence scan.