Every hunk runs through a classifier of pattern recognizers — 8 of them resolve deterministically on their own, each with its own confidence profile. Conflicts that carry no decision are resolved without you. The rest is surfaced with a full decision trace — never a black box.
GitWand reads code semantics, not just lines — and picks the right resolution for you.
8 deterministic patterns in the registry resolve on their own; the rest either propose a merge you confirm, are opt-in, or hand the hunk back with its trace. generated_file sits apart: it is not a registry pattern but a post-classification pass that rescues lockfiles and build output already classified as complex. The classifier never guesses; when it can't be certain, it stops.
same_changecertainBoth branches made the exact same edit.
one_side_changecertainOnly one branch touched this block.
delete_no_changecertainOne side deleted the block, the other left it untouched.
non_overlappinghighAdditions at different positions in the block.
whitespace_onlyhighSame logic, different indentation or spacing.
reorder_onlyhighSame lines, different order.
insertion_at_boundaryhighNew lines added at the edge of a hunk.
value_only_changehighA scalar value (version, timestamp, hash) updated on both sides — keeps the higher semver / later timestamp.
token_level_mergemediumBoth sides changed disjoint tokens on the same line — proposes a merge you confirm, never auto-applied.
refactoring_aware_mergehighRename/move detected and replayed across the conflict (opt-in).
llm_proposedmediumAI-proposed resolution, validated post-merge (opt-in).
complexlowOverlapping edits — surfaced with full classification trace.
generated_filehighPath matches a generated-file glob (lockfile, minified bundle, dist/). Reclassified out of complex and resolved to theirs: the file will be regenerated.
Post-classification pass, not a classifier pattern.
Performance measured on an M-series chip with typical repositories.