Mergeable
Whether a contribution can be merged as it stands.
asText: names both sides edited, apart, which the merge merges as text (if that typechecks, which merging finds).
export type Mergeable = | { kind: "up-to-date" | "fast-forward" } | { kind: "clean"; asText?: string[] } | { kind: "conflicts"; names: string[] };